Code Monkey home page Code Monkey logo

geo-gis-utils's Introduction

geo-gis-utils

geo gis utils.

Exceptions

found non-noded intersection between LINESTRING

com.vividsolutions.jts.geom.TopologyException: found non-noded intersection between LINESTRING ( 116.26451237493255 39.91605493967855, 116.271980875453 39.925889370081514 ) and LINESTRING ( 116.28210414799756 39.933904772275405, 116.25531773218691 39.90853459945099 ) [ (116.26772659308502, 39.92028738294261, NaN) ]
	at com.vividsolutions.jts.noding.FastNodingValidator.checkValid(FastNodingValidator.java:130)
	at com.vividsolutions.jts.geomgraph.EdgeNodingValidator.checkValid(EdgeNodingValidator.java:94)
	at com.vividsolutions.jts.geomgraph.EdgeNodingValidator.checkValid(EdgeNodingValidator.java:59)
	at com.vividsolutions.jts.operation.overlay.OverlayOp.computeOverlay(OverlayOp.java:170)
	at com.vividsolutions.jts.operation.overlay.OverlayOp.getResultGeometry(OverlayOp.java:127)
	at com.vividsolutions.jts.operation.overlay.OverlayOp.overlayOp(OverlayOp.java:66)
	at com.vividsolutions.jts.operation.overlay.snap.SnapIfNeededOverlayOp.getResultGeometry(SnapIfNeededOverlayOp.java:96)
	at com.vividsolutions.jts.operation.overlay.snap.SnapIfNeededOverlayOp.overlayOp(SnapIfNeededOverlayOp.java:58)
	at com.vividsolutions.jts.geom.Geometry.intersection(Geometry.java:1342)
	at com.forestar.geometry.utils.GeometryUtil.intersectionGeo(GeometryUtil.java:122)
	at test.GeometryTest.main(GeometryTest.java:84)

Solution:

 /**
     * 计算线条与几何图像的交集内外里程长度-米
     * @param lineString
     * @param polygon
     * @return
     * @throws ParseException 
     */
	public static Map<String,Double> getDistances(LineString lineString,Polygon polygon) throws ParseException {
		Geometry multiLineString = GeometryUtil.intersectionGeo(lineString,polygon);
		return getDistances((Geometry)lineString,multiLineString);
	}
	

Please do not use two Geometrys.

 /** 
     * 两个几何对象的交集 
     * @param a 
     * @param b 
     * @return 
     */  
    public static Geometry intersectionGeo(Geometry a,Geometry b){  
        return a.intersection(b);  
    }  

geo-gis-utils's People

Contributors

boonyachengdu avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.