├── PKGBUILD ├── include ├── gdal │ ├── cpl_atomic_ops.h │ ├── cpl_aws.h │ ├── cpl_config.h │ ├── cpl_config_extras.h │ ├── cpl_conv.h │ ├── cpl_cpu_features.h │ ├── cpl_csv.h │ ├── cpl_error.h │ ├── cpl_google_cloud.h │ ├── cpl_hash_set.h │ ├── cpl_http.h │ ├── cpl_list.h │ ├── cpl_minixml.h │ ├── cpl_minizip_ioapi.h │ ├── cpl_minizip_unzip.h │ ├── cpl_minizip_zip.h │ ├── cpl_multiproc.h │ ├── cpl_odbc.h │ ├── cpl_port.h │ ├── cpl_progress.h │ ├── cpl_quad_tree.h │ ├── cpl_sha1.h │ ├── cpl_sha256.h │ ├── cpl_spawn.h │ ├── cpl_string.h │ ├── cpl_time.h │ ├── cpl_virtualmem.h │ ├── cpl_vsi.h │ ├── cpl_vsi_error.h │ ├── cpl_vsi_virtual.h │ ├── cpl_vsil_curl_priv.h │ ├── cpl_worker_thread_pool.h │ ├── cplkeywordparser.h │ ├── gdal.h │ ├── gdal_alg.h │ ├── gdal_alg_priv.h │ ├── gdal_csv.h │ ├── gdal_frmts.h │ ├── gdal_mdreader.h │ ├── gdal_pam.h │ ├── gdal_priv.h │ ├── gdal_proxy.h │ ├── gdal_rat.h │ ├── gdal_simplesurf.h │ ├── gdal_utils.h │ ├── gdal_version.h │ ├── gdal_vrt.h │ ├── gdalexif.h │ ├── gdalgeorefpamdataset.h │ ├── gdalgrid.h │ ├── gdalgrid_priv.h │ ├── gdaljp2abstractdataset.h │ ├── gdaljp2metadata.h │ ├── gdaljp2metadatagenerator.h │ ├── gdalpansharpen.h │ ├── gdalsse_priv.h │ ├── gdalwarper.h │ ├── gdalwarpkernel_opencl.h │ ├── gnm.h │ ├── gnm_api.h │ ├── gnmgraph.h │ ├── gvgcpfit.h │ ├── internal_qhull_headers.h │ ├── memdataset.h │ ├── ogr_api.h │ ├── ogr_core.h │ ├── ogr_feature.h │ ├── ogr_featurestyle.h │ ├── ogr_geocoding.h │ ├── ogr_geometry.h │ ├── ogr_p.h │ ├── ogr_spatialref.h │ ├── ogr_srs_api.h │ ├── ogrsf_frmts.h │ ├── rawdataset.h │ ├── thinplatespline.h │ └── vrtdataset.h ├── geos │ ├── geos │ │ ├── algorithm │ │ │ ├── Angle.h │ │ │ ├── BoundaryNodeRule.h │ │ │ ├── CGAlgorithms.h │ │ │ ├── CentralEndpointIntersector.h │ │ │ ├── Centroid.h │ │ │ ├── CentroidArea.h │ │ │ ├── CentroidLine.h │ │ │ ├── CentroidPoint.h │ │ │ ├── ConvexHull.h │ │ │ ├── ConvexHull.inl │ │ │ ├── HCoordinate.h │ │ │ ├── InteriorPointArea.h │ │ │ ├── InteriorPointLine.h │ │ │ ├── InteriorPointPoint.h │ │ │ ├── LineIntersector.h │ │ │ ├── MCPointInRing.h │ │ │ ├── MinimumDiameter.h │ │ │ ├── NotRepresentableException.h │ │ │ ├── PointInRing.h │ │ │ ├── PointLocator.h │ │ │ ├── RayCrossingCounter.h │ │ │ ├── RobustDeterminant.h │ │ │ ├── SIRtreePointInRing.h │ │ │ ├── SimplePointInRing.h │ │ │ ├── distance │ │ │ │ ├── DiscreteHausdorffDistance.h │ │ │ │ ├── DistanceToPoint.h │ │ │ │ └── PointPairDistance.h │ │ │ └── locate │ │ │ │ ├── IndexedPointInAreaLocator.h │ │ │ │ ├── PointOnGeometryLocator.h │ │ │ │ └── SimplePointInAreaLocator.h │ │ ├── export.h │ │ ├── geom.h │ │ ├── geom │ │ │ ├── BinaryOp.h │ │ │ ├── Coordinate.h │ │ │ ├── Coordinate.inl │ │ │ ├── CoordinateArraySequence.h │ │ │ ├── CoordinateArraySequenceFactory.h │ │ │ ├── CoordinateArraySequenceFactory.inl │ │ │ ├── CoordinateFilter.h │ │ │ ├── CoordinateList.h │ │ │ ├── CoordinateSequence.h │ │ │ ├── CoordinateSequenceFactory.h │ │ │ ├── CoordinateSequenceFilter.h │ │ │ ├── Dimension.h │ │ │ ├── Envelope.h │ │ │ ├── Envelope.inl │ │ │ ├── Geometry.h │ │ │ ├── GeometryCollection.h │ │ │ ├── GeometryCollection.inl │ │ │ ├── GeometryComponentFilter.h │ │ │ ├── GeometryFactory.h │ │ │ ├── GeometryFactory.inl │ │ │ ├── GeometryFilter.h │ │ │ ├── GeometryList.h │ │ │ ├── IntersectionMatrix.h │ │ │ ├── LineSegment.h │ │ │ ├── LineSegment.inl │ │ │ ├── LineString.h │ │ │ ├── Lineal.h │ │ │ ├── LinearRing.h │ │ │ ├── Location.h │ │ │ ├── MultiLineString.h │ │ │ ├── MultiLineString.inl │ │ │ ├── MultiPoint.h │ │ │ ├── MultiPolygon.h │ │ │ ├── MultiPolygon.inl │ │ │ ├── Point.h │ │ │ ├── Polygon.h │ │ │ ├── Polygonal.h │ │ │ ├── PrecisionModel.h │ │ │ ├── PrecisionModel.inl │ │ │ ├── Puntal.h │ │ │ ├── Triangle.h │ │ │ ├── prep │ │ │ │ ├── AbstractPreparedPolygonContains.h │ │ │ │ ├── BasicPreparedGeometry.h │ │ │ │ ├── PreparedGeometry.h │ │ │ │ ├── PreparedGeometryFactory.h │ │ │ │ ├── PreparedLineString.h │ │ │ │ ├── PreparedLineStringIntersects.h │ │ │ │ ├── PreparedPoint.h │ │ │ │ ├── PreparedPolygon.h │ │ │ │ ├── PreparedPolygonContains.h │ │ │ │ ├── PreparedPolygonContainsProperly.h │ │ │ │ ├── PreparedPolygonCovers.h │ │ │ │ ├── PreparedPolygonIntersects.h │ │ │ │ └── PreparedPolygonPredicate.h │ │ │ └── util │ │ │ │ ├── ComponentCoordinateExtracter.h │ │ │ │ ├── CoordinateOperation.h │ │ │ │ ├── GeometryCombiner.h │ │ │ │ ├── GeometryEditor.h │ │ │ │ ├── GeometryEditorOperation.h │ │ │ │ ├── GeometryExtracter.h │ │ │ │ ├── GeometryTransformer.h │ │ │ │ ├── LinearComponentExtracter.h │ │ │ │ ├── PointExtracter.h │ │ │ │ ├── PolygonExtracter.h │ │ │ │ ├── ShortCircuitedGeometryVisitor.h │ │ │ │ └── SineStarFactory.h │ │ ├── geomUtil.h │ │ ├── geomgraph.h │ │ ├── geomgraph │ │ │ ├── Depth.h │ │ │ ├── DirectedEdge.h │ │ │ ├── DirectedEdge.inl │ │ │ ├── DirectedEdgeStar.h │ │ │ ├── Edge.h │ │ │ ├── EdgeEnd.h │ │ │ ├── EdgeEndStar.h │ │ │ ├── EdgeIntersection.h │ │ │ ├── EdgeIntersectionList.h │ │ │ ├── EdgeList.h │ │ │ ├── EdgeNodingValidator.h │ │ │ ├── EdgeRing.h │ │ │ ├── GeometryGraph.h │ │ │ ├── GeometryGraph.inl │ │ │ ├── GraphComponent.h │ │ │ ├── Label.h │ │ │ ├── Node.h │ │ │ ├── NodeFactory.h │ │ │ ├── NodeMap.h │ │ │ ├── PlanarGraph.h │ │ │ ├── Position.h │ │ │ ├── Quadrant.h │ │ │ ├── TopologyLocation.h │ │ │ └── index │ │ │ │ ├── EdgeSetIntersector.h │ │ │ │ ├── MonotoneChain.h │ │ │ │ ├── MonotoneChainEdge.h │ │ │ │ ├── MonotoneChainIndexer.h │ │ │ │ ├── SegmentIntersector.h │ │ │ │ ├── SimpleEdgeSetIntersector.h │ │ │ │ ├── SimpleMCSweepLineIntersector.h │ │ │ │ ├── SimpleSweepLineIntersector.h │ │ │ │ ├── SweepLineEvent.h │ │ │ │ ├── SweepLineEventObj.h │ │ │ │ └── SweepLineSegment.h │ │ ├── geomgraphindex.h │ │ ├── geos.h │ │ ├── geosAlgorithm.h │ │ ├── index │ │ │ ├── ItemVisitor.h │ │ │ ├── SpatialIndex.h │ │ │ ├── bintree │ │ │ │ ├── Bintree.h │ │ │ │ ├── Interval.h │ │ │ │ ├── Key.h │ │ │ │ ├── Node.h │ │ │ │ ├── NodeBase.h │ │ │ │ └── Root.h │ │ │ ├── chain │ │ │ │ ├── MonotoneChain.h │ │ │ │ ├── MonotoneChainBuilder.h │ │ │ │ ├── MonotoneChainOverlapAction.h │ │ │ │ └── MonotoneChainSelectAction.h │ │ │ ├── intervalrtree │ │ │ │ ├── IntervalRTreeBranchNode.h │ │ │ │ ├── IntervalRTreeLeafNode.h │ │ │ │ ├── IntervalRTreeNode.h │ │ │ │ └── SortedPackedIntervalRTree.h │ │ │ ├── quadtree │ │ │ │ ├── DoubleBits.h │ │ │ │ ├── IntervalSize.h │ │ │ │ ├── Key.h │ │ │ │ ├── Node.h │ │ │ │ ├── NodeBase.h │ │ │ │ ├── Quadtree.h │ │ │ │ └── Root.h │ │ │ ├── strtree │ │ │ │ ├── AbstractNode.h │ │ │ │ ├── AbstractSTRtree.h │ │ │ │ ├── Boundable.h │ │ │ │ ├── BoundablePair.h │ │ │ │ ├── GeometryItemDistance.h │ │ │ │ ├── Interval.h │ │ │ │ ├── ItemBoundable.h │ │ │ │ ├── ItemDistance.h │ │ │ │ ├── SIRtree.h │ │ │ │ └── STRtree.h │ │ │ └── sweepline │ │ │ │ ├── SweepLineEvent.h │ │ │ │ ├── SweepLineIndex.h │ │ │ │ ├── SweepLineInterval.h │ │ │ │ └── SweepLineOverlapAction.h │ │ ├── indexBintree.h │ │ ├── indexChain.h │ │ ├── indexQuadtree.h │ │ ├── indexStrtree.h │ │ ├── indexSweepline.h │ │ ├── inline.h │ │ ├── io.h │ │ ├── io │ │ │ ├── ByteOrderDataInStream.h │ │ │ ├── ByteOrderDataInStream.inl │ │ │ ├── ByteOrderValues.h │ │ │ ├── CLocalizer.h │ │ │ ├── ParseException.h │ │ │ ├── StringTokenizer.h │ │ │ ├── WKBConstants.h │ │ │ ├── WKBReader.h │ │ │ ├── WKBWriter.h │ │ │ ├── WKTReader.h │ │ │ ├── WKTReader.inl │ │ │ ├── WKTWriter.h │ │ │ └── Writer.h │ │ ├── linearref │ │ │ ├── ExtractLineByLocation.h │ │ │ ├── LengthIndexOfPoint.h │ │ │ ├── LengthIndexedLine.h │ │ │ ├── LengthLocationMap.h │ │ │ ├── LinearGeometryBuilder.h │ │ │ ├── LinearIterator.h │ │ │ ├── LinearLocation.h │ │ │ ├── LocationIndexOfLine.h │ │ │ ├── LocationIndexOfPoint.h │ │ │ └── LocationIndexedLine.h │ │ ├── noding.h │ │ ├── noding │ │ │ ├── BasicSegmentString.h │ │ │ ├── FastNodingValidator.h │ │ │ ├── FastSegmentSetIntersectionFinder.h │ │ │ ├── GeometryNoder.h │ │ │ ├── IntersectionAdder.h │ │ │ ├── IntersectionFinderAdder.h │ │ │ ├── IteratedNoder.h │ │ │ ├── MCIndexNoder.h │ │ │ ├── MCIndexNoder.inl │ │ │ ├── MCIndexSegmentSetMutualIntersector.h │ │ │ ├── NodableSegmentString.h │ │ │ ├── NodedSegmentString.h │ │ │ ├── Noder.h │ │ │ ├── NodingValidator.h │ │ │ ├── Octant.h │ │ │ ├── OrientedCoordinateArray.h │ │ │ ├── ScaledNoder.h │ │ │ ├── SegmentIntersectionDetector.h │ │ │ ├── SegmentIntersector.h │ │ │ ├── SegmentNode.h │ │ │ ├── SegmentNodeList.h │ │ │ ├── SegmentPointComparator.h │ │ │ ├── SegmentSetMutualIntersector.h │ │ │ ├── SegmentString.h │ │ │ ├── SegmentStringUtil.h │ │ │ ├── SimpleNoder.h │ │ │ ├── SingleInteriorIntersectionFinder.h │ │ │ ├── SinglePassNoder.h │ │ │ └── snapround │ │ │ │ ├── HotPixel.h │ │ │ │ ├── HotPixel.inl │ │ │ │ ├── MCIndexPointSnapper.h │ │ │ │ ├── MCIndexSnapRounder.h │ │ │ │ └── SimpleSnapRounder.h │ │ ├── nodingSnapround.h │ │ ├── opBuffer.h │ │ ├── opDistance.h │ │ ├── opLinemerge.h │ │ ├── opOverlay.h │ │ ├── opPolygonize.h │ │ ├── opPredicate.h │ │ ├── opRelate.h │ │ ├── opValid.h │ │ ├── operation.h │ │ ├── operation │ │ │ ├── GeometryGraphOperation.h │ │ │ ├── IsSimpleOp.h │ │ │ ├── buffer │ │ │ │ ├── BufferBuilder.h │ │ │ │ ├── BufferInputLineSimplifier.h │ │ │ │ ├── BufferOp.h │ │ │ │ ├── BufferParameters.h │ │ │ │ ├── BufferSubgraph.h │ │ │ │ ├── OffsetCurveBuilder.h │ │ │ │ ├── OffsetCurveSetBuilder.h │ │ │ │ ├── OffsetSegmentGenerator.h │ │ │ │ ├── OffsetSegmentString.h │ │ │ │ ├── RightmostEdgeFinder.h │ │ │ │ └── SubgraphDepthLocater.h │ │ │ ├── distance │ │ │ │ ├── ConnectedElementLocationFilter.h │ │ │ │ ├── ConnectedElementPointFilter.h │ │ │ │ ├── DistanceOp.h │ │ │ │ ├── FacetSequence.h │ │ │ │ ├── FacetSequenceTreeBuilder.h │ │ │ │ └── GeometryLocation.h │ │ │ ├── intersection │ │ │ │ ├── Rectangle.h │ │ │ │ ├── RectangleIntersection.h │ │ │ │ └── RectangleIntersectionBuilder.h │ │ │ ├── linemerge │ │ │ │ ├── EdgeString.h │ │ │ │ ├── LineMergeDirectedEdge.h │ │ │ │ ├── LineMergeEdge.h │ │ │ │ ├── LineMergeGraph.h │ │ │ │ ├── LineMerger.h │ │ │ │ └── LineSequencer.h │ │ │ ├── overlay │ │ │ │ ├── EdgeSetNoder.h │ │ │ │ ├── ElevationMatrix.h │ │ │ │ ├── ElevationMatrixCell.h │ │ │ │ ├── LineBuilder.h │ │ │ │ ├── MaximalEdgeRing.h │ │ │ │ ├── MinimalEdgeRing.h │ │ │ │ ├── MinimalEdgeRing.inl │ │ │ │ ├── OverlayNodeFactory.h │ │ │ │ ├── OverlayOp.h │ │ │ │ ├── PointBuilder.h │ │ │ │ ├── PolygonBuilder.h │ │ │ │ ├── snap │ │ │ │ │ ├── GeometrySnapper.h │ │ │ │ │ ├── LineStringSnapper.h │ │ │ │ │ ├── SnapIfNeededOverlayOp.h │ │ │ │ │ └── SnapOverlayOp.h │ │ │ │ └── validate │ │ │ │ │ ├── FuzzyPointLocator.h │ │ │ │ │ ├── OffsetPointGenerator.h │ │ │ │ │ └── OverlayResultValidator.h │ │ │ ├── polygonize │ │ │ │ ├── EdgeRing.h │ │ │ │ ├── PolygonizeDirectedEdge.h │ │ │ │ ├── PolygonizeEdge.h │ │ │ │ ├── PolygonizeGraph.h │ │ │ │ └── Polygonizer.h │ │ │ ├── predicate │ │ │ │ ├── RectangleContains.h │ │ │ │ ├── RectangleIntersects.h │ │ │ │ └── SegmentIntersectionTester.h │ │ │ ├── relate │ │ │ │ ├── EdgeEndBuilder.h │ │ │ │ ├── EdgeEndBundle.h │ │ │ │ ├── EdgeEndBundleStar.h │ │ │ │ ├── RelateComputer.h │ │ │ │ ├── RelateNode.h │ │ │ │ ├── RelateNodeFactory.h │ │ │ │ ├── RelateNodeGraph.h │ │ │ │ └── RelateOp.h │ │ │ ├── sharedpaths │ │ │ │ └── SharedPathsOp.h │ │ │ ├── union │ │ │ │ ├── CascadedPolygonUnion.h │ │ │ │ ├── CascadedUnion.h │ │ │ │ ├── GeometryListHolder.h │ │ │ │ ├── PointGeometryUnion.h │ │ │ │ └── UnaryUnionOp.h │ │ │ └── valid │ │ │ │ ├── ConnectedInteriorTester.h │ │ │ │ ├── ConsistentAreaTester.h │ │ │ │ ├── IsValidOp.h │ │ │ │ ├── QuadtreeNestedRingTester.h │ │ │ │ ├── RepeatedPointTester.h │ │ │ │ ├── SimpleNestedRingTester.h │ │ │ │ ├── SweeplineNestedRingTester.h │ │ │ │ └── TopologyValidationError.h │ │ ├── planargraph.h │ │ ├── planargraph │ │ │ ├── DirectedEdge.h │ │ │ ├── DirectedEdgeStar.h │ │ │ ├── Edge.h │ │ │ ├── GraphComponent.h │ │ │ ├── Node.h │ │ │ ├── NodeMap.h │ │ │ ├── PlanarGraph.h │ │ │ ├── Subgraph.h │ │ │ └── algorithm │ │ │ │ └── ConnectedSubgraphFinder.h │ │ ├── platform.h │ │ ├── precision.h │ │ ├── precision │ │ │ ├── CommonBits.h │ │ │ ├── CommonBitsOp.h │ │ │ ├── CommonBitsRemover.h │ │ │ ├── EnhancedPrecisionOp.h │ │ │ ├── GeometryPrecisionReducer.h │ │ │ ├── MinimumClearance.h │ │ │ ├── PrecisionReducerCoordinateOperation.h │ │ │ └── SimpleGeometryPrecisionReducer.h │ │ ├── profiler.h │ │ ├── simplify │ │ │ ├── DouglasPeuckerLineSimplifier.h │ │ │ ├── DouglasPeuckerSimplifier.h │ │ │ ├── LineSegmentIndex.h │ │ │ ├── TaggedLineSegment.h │ │ │ ├── TaggedLineString.h │ │ │ ├── TaggedLineStringSimplifier.h │ │ │ ├── TaggedLinesSimplifier.h │ │ │ └── TopologyPreservingSimplifier.h │ │ ├── spatialIndex.h │ │ ├── timeval.h │ │ ├── triangulate │ │ │ ├── DelaunayTriangulationBuilder.h │ │ │ ├── IncrementalDelaunayTriangulator.h │ │ │ ├── VoronoiDiagramBuilder.h │ │ │ └── quadedge │ │ │ │ ├── LastFoundQuadEdgeLocator.h │ │ │ │ ├── LocateFailureException.h │ │ │ │ ├── QuadEdge.h │ │ │ │ ├── QuadEdgeLocator.h │ │ │ │ ├── QuadEdgeSubdivision.h │ │ │ │ ├── TrianglePredicate.h │ │ │ │ ├── TriangleVisitor.h │ │ │ │ └── Vertex.h │ │ ├── unload.h │ │ ├── util.h │ │ ├── util │ │ │ ├── Assert.h │ │ │ ├── AssertionFailedException.h │ │ │ ├── CoordinateArrayFilter.h │ │ │ ├── GEOSException.h │ │ │ ├── GeometricShapeFactory.h │ │ │ ├── IllegalArgumentException.h │ │ │ ├── IllegalStateException.h │ │ │ ├── Interrupt.h │ │ │ ├── Machine.h │ │ │ ├── TopologyException.h │ │ │ ├── UniqueCoordinateArrayFilter.h │ │ │ ├── UnsupportedOperationException.h │ │ │ └── math.h │ │ └── version.h │ └── geos_c.h └── proj │ ├── geodesic.h │ ├── org_proj4_PJ.h │ ├── org_proj4_Projections.h │ ├── proj_api.h │ └── projects.h ├── lib ├── i386 │ ├── libcfitsio.a │ ├── libcrypto.a │ ├── libcurl.a │ ├── libdf.a │ ├── libexpat.a │ ├── libfreexl.a │ ├── libgdal.a │ ├── libgeos.a │ ├── libgeos_c.a │ ├── libgeotiff.a │ ├── libgif.a │ ├── libhdf5.a │ ├── libhdf5_cpp.a │ ├── libhdf5_hl.a │ ├── libhdf5_hl_cpp.a │ ├── libintl.a │ ├── libjasper.a │ ├── libjpeg.a │ ├── libjson-c.a │ ├── libkea.a │ ├── liblzma.a │ ├── libmariadbclient.a │ ├── libmfhdf.a │ ├── libnetcdf.a │ ├── libopenjp2.a │ ├── libpng16.a │ ├── libpq.a │ ├── libproj.a │ ├── libspatialite.a │ ├── libsqlite3.a │ ├── libssh2.a │ ├── libssl.a │ ├── libszip.a │ ├── libtiff.a │ ├── libwebp.a │ ├── libxdr.a │ └── libxml2.a └── x64 │ ├── libcfitsio.a │ ├── libcrypto.a │ ├── libcurl.a │ ├── libdf.a │ ├── libexpat.a │ ├── libfreexl.a │ ├── libgdal.a │ ├── libgeos.a │ ├── libgeos_c.a │ ├── libgeotiff.a │ ├── libgif.a │ ├── libhdf5.a │ ├── libhdf5_cpp.a │ ├── libhdf5_hl.a │ ├── libhdf5_hl_cpp.a │ ├── libintl.a │ ├── libjasper.a │ ├── libjpeg.a │ ├── libjson-c.a │ ├── libkea.a │ ├── liblzma.a │ ├── libmariadbclient.a │ ├── libmfhdf.a │ ├── libnetcdf.a │ ├── libopenjp2.a │ ├── libpng16.a │ ├── libpq.a │ ├── libproj.a │ ├── libspatialite.a │ ├── libsqlite3.a │ ├── libssh2.a │ ├── libssl.a │ ├── libszip.a │ ├── libtiff.a │ ├── libwebp.a │ ├── libxdr.a │ └── libxml2.a ├── readme.md ├── rtools32.sh ├── rtools64.sh └── share ├── gdal ├── GDALLogoBW.svg ├── GDALLogoColor.svg ├── GDALLogoGS.svg ├── LICENSE.TXT ├── compdcs.csv ├── coordinate_axis.csv ├── cubewerx_extra.wkt ├── datum_shift.csv ├── default.rsc ├── ecw_cs.wkt ├── ellipsoid.csv ├── epsg.wkt ├── esri_StatePlane_extra.wkt ├── esri_Wisconsin_extra.wkt ├── esri_extra.wkt ├── gcs.csv ├── gcs.override.csv ├── gdal_datum.csv ├── gdalicon.png ├── gdalvrt.xsd ├── geoccs.csv ├── gml_registry.xml ├── gmlasconf.xml ├── gmlasconf.xsd ├── gt_datum.csv ├── gt_ellips.csv ├── header.dxf ├── inspire_cp_BasicPropertyUnit.gfs ├── inspire_cp_CadastralBoundary.gfs ├── inspire_cp_CadastralParcel.gfs ├── inspire_cp_CadastralZoning.gfs ├── jpfgdgml_AdmArea.gfs ├── jpfgdgml_AdmBdry.gfs ├── jpfgdgml_AdmPt.gfs ├── jpfgdgml_BldA.gfs ├── jpfgdgml_BldL.gfs ├── jpfgdgml_Cntr.gfs ├── jpfgdgml_CommBdry.gfs ├── jpfgdgml_CommPt.gfs ├── jpfgdgml_Cstline.gfs ├── jpfgdgml_ElevPt.gfs ├── jpfgdgml_GCP.gfs ├── jpfgdgml_LeveeEdge.gfs ├── jpfgdgml_RailCL.gfs ├── jpfgdgml_RdASL.gfs ├── jpfgdgml_RdArea.gfs ├── jpfgdgml_RdCompt.gfs ├── jpfgdgml_RdEdg.gfs ├── jpfgdgml_RdMgtBdry.gfs ├── jpfgdgml_RdSgmtA.gfs ├── jpfgdgml_RvrMgtBdry.gfs ├── jpfgdgml_SBAPt.gfs ├── jpfgdgml_SBArea.gfs ├── jpfgdgml_SBBdry.gfs ├── jpfgdgml_WA.gfs ├── jpfgdgml_WL.gfs ├── jpfgdgml_WStrA.gfs ├── jpfgdgml_WStrL.gfs ├── netcdf_config.xsd ├── nitf_spec.xml ├── nitf_spec.xsd ├── ogrvrt.xsd ├── osmconf.ini ├── ozi_datum.csv ├── ozi_ellips.csv ├── pci_datum.txt ├── pci_ellips.txt ├── pcs.csv ├── pcs.override.csv ├── plscenesconf.json ├── prime_meridian.csv ├── projop_wparm.csv ├── ruian_vf_ob_v1.gfs ├── ruian_vf_st_uvoh_v1.gfs ├── ruian_vf_st_v1.gfs ├── ruian_vf_v1.gfs ├── s57agencies.csv ├── s57attributes.csv ├── s57expectedinput.csv ├── s57objectclasses.csv ├── seed_2d.dgn ├── seed_3d.dgn ├── stateplane.csv ├── trailer.dxf ├── unit_of_measure.csv ├── vdv452.xml ├── vdv452.xsd ├── vertcs.csv └── vertcs.override.csv └── proj ├── CH ├── FL ├── GL27 ├── IGNF ├── MD ├── README.DATUMGRID ├── TN ├── WI ├── WO ├── alaska ├── conus ├── epsg ├── esri ├── esri.extra ├── hawaii ├── nad.lst ├── nad27 ├── nad83 ├── ntf_r93.gsb ├── ntv1_can.dat ├── null ├── nzgd2kgrid0005.gsb ├── other.extra ├── proj_def.dat ├── prvi ├── stgeorge ├── stlrnc ├── stpaul └── world /include/gdal/cpl_config_extras.h: -------------------------------------------------------------------------------- 1 | /* $Id: cpl_config_extras.h 37003 2016-12-23 14:54:07Z goatbar $ */ 2 | 3 | #ifndef INCLUDED_CPL_CONFIG_EXTRAS 4 | #define INCLUDED_CPL_CONFIG_EXTRAS 5 | 6 | #if defined(__APPLE__) 7 | 8 | #ifdef __BIG_ENDIAN__ 9 | #define HOST_FILLORDER FILLORDER_MSB2LSB 10 | #else 11 | #define HOST_FILLORDER FILLORDER_LSB2MSB 12 | #endif 13 | 14 | #ifdef __LP64__ 15 | #define SIZEOF_UNSIGNED_LONG 8 16 | #else 17 | #define SIZEOF_UNSIGNED_LONG 4 18 | #endif 19 | 20 | #ifdef __LP64__ 21 | #define SIZEOF_VOIDP 8 22 | #else 23 | #define SIZEOF_VOIDP 4 24 | #endif 25 | 26 | #ifdef __BIG_ENDIAN__ 27 | #define WORDS_BIGENDIAN 1 28 | #else 29 | #undef WORDS_BIGENDIAN 30 | #endif 31 | 32 | #undef VSI_STAT64 33 | #undef VSI_STAT64_T 34 | 35 | #define VSI_STAT64 stat 36 | #define VSI_STAT64_T stat 37 | 38 | #endif // APPLE 39 | 40 | #endif // INCLUDED_CPL_CONFIG_EXTRAS 41 | -------------------------------------------------------------------------------- /include/gdal/gdal_version.h: -------------------------------------------------------------------------------- 1 | /* $Id: gdal_version.h 40767 2017-11-20 10:39:34Z rouault $ */ 2 | 3 | /* -------------------------------------------------------------------- */ 4 | /* GDAL Version Information. */ 5 | /* -------------------------------------------------------------------- */ 6 | 7 | #ifndef GDAL_VERSION_MAJOR 8 | # define GDAL_VERSION_MAJOR 2 9 | # define GDAL_VERSION_MINOR 2 10 | # define GDAL_VERSION_REV 3 11 | # define GDAL_VERSION_BUILD 0 12 | #endif 13 | 14 | /* GDAL_COMPUTE_VERSION macro introduced in GDAL 1.10 */ 15 | /* Must be used ONLY to compare with version numbers for GDAL >= 1.10 */ 16 | #ifndef GDAL_COMPUTE_VERSION 17 | #define GDAL_COMPUTE_VERSION(maj,min,rev) ((maj)*1000000+(min)*10000+(rev)*100) 18 | #endif 19 | 20 | /* Note: the formula to compute GDAL_VERSION_NUM has changed in GDAL 1.10 */ 21 | #ifndef GDAL_VERSION_NUM 22 | # define GDAL_VERSION_NUM (GDAL_COMPUTE_VERSION(GDAL_VERSION_MAJOR,GDAL_VERSION_MINOR,GDAL_VERSION_REV)+GDAL_VERSION_BUILD) 23 | #endif 24 | 25 | #ifndef GDAL_RELEASE_DATE 26 | # define GDAL_RELEASE_DATE 20171120 27 | #endif 28 | #ifndef GDAL_RELEASE_NAME 29 | # define GDAL_RELEASE_NAME "2.2.3" 30 | #endif 31 | -------------------------------------------------------------------------------- /include/geos/geos/algorithm/CentroidPoint.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_ALGORITHM_CENTROIDPOINT_H 17 | #define GEOS_ALGORITHM_CENTROIDPOINT_H 18 | 19 | #include 20 | #include 21 | 22 | // Forward declarations 23 | namespace geos { 24 | namespace geom { 25 | class Geometry; 26 | } 27 | } 28 | 29 | 30 | namespace geos { 31 | namespace algorithm { // geos::algorithm 32 | 33 | /// @deprecated use Centroid instead 34 | class GEOS_DLL CentroidPoint { 35 | 36 | private: 37 | 38 | int ptCount; 39 | 40 | geom::Coordinate centSum; 41 | 42 | public: 43 | 44 | CentroidPoint() 45 | : 46 | ptCount(0), 47 | centSum(0.0, 0.0) 48 | {} 49 | 50 | ~CentroidPoint() 51 | {} 52 | 53 | /** 54 | * Adds the point(s) defined by a Geometry to the centroid total. 55 | * If the geometry is not of dimension 0 it does not contribute to the 56 | * centroid. 57 | * @param geom the geometry to add 58 | */ 59 | void add(const geom::Geometry *geom); 60 | 61 | void add(const geom::Coordinate *pt); 62 | 63 | geom::Coordinate* getCentroid() const; 64 | 65 | /// Return false if centroid could not be computed 66 | bool getCentroid(geom::Coordinate& ret) const; 67 | }; 68 | 69 | } // namespace geos::algorithm 70 | } // namespace geos 71 | 72 | #endif // GEOS_ALGORITHM_CENTROIDPOINT_H 73 | -------------------------------------------------------------------------------- /include/geos/geos/algorithm/ConvexHull.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: algorithm/ConvexHull.java r407 (JTS-1.12+) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_ALGORITHM_CONVEXHULL_INL 20 | #define GEOS_ALGORITHM_CONVEXHULL_INL 21 | 22 | #include 23 | #include 24 | #include 25 | #include 26 | 27 | namespace geos { 28 | namespace algorithm { // geos::algorithm 29 | 30 | INLINE 31 | ConvexHull::ConvexHull(const geom::Geometry *newGeometry) 32 | : 33 | geomFactory(newGeometry->getFactory()) 34 | { 35 | extractCoordinates(newGeometry); 36 | } 37 | 38 | INLINE 39 | ConvexHull::~ConvexHull() 40 | { 41 | } 42 | 43 | INLINE void 44 | ConvexHull::extractCoordinates(const geom::Geometry *geom) 45 | { 46 | util::UniqueCoordinateArrayFilter filter(inputPts); 47 | geom->apply_ro(&filter); 48 | } 49 | 50 | } // namespace geos::algorithm 51 | } // namespace geos 52 | 53 | #endif // GEOS_ALGORITHM_CONVEXHULL_INL 54 | -------------------------------------------------------------------------------- /include/geos/geos/algorithm/NotRepresentableException.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_ALGORITHM_NOTREPRESENTABLEEXCEPTION_H 17 | #define GEOS_ALGORITHM_NOTREPRESENTABLEEXCEPTION_H 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | namespace geos { 24 | namespace algorithm { // geos::algorithm 25 | 26 | /** 27 | * \class NotRepresentableException geosAlgorithm.h geos/geosAlgorithm.h 28 | * \brief 29 | * Indicates that a HCoordinate has been computed which is 30 | * not representable on the Cartesian plane. 31 | * 32 | * @version 1.4 33 | * @see HCoordinate 34 | */ 35 | class GEOS_DLL NotRepresentableException: public util::GEOSException { 36 | public: 37 | NotRepresentableException(); 38 | NotRepresentableException(std::string msg); 39 | ~NotRepresentableException() throw() {} 40 | }; 41 | 42 | } // namespace geos::algorithm 43 | } // namespace geos 44 | 45 | #endif 46 | 47 | -------------------------------------------------------------------------------- /include/geos/geos/algorithm/PointInRing.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_ALGORITHM_POINTINRING_H 17 | #define GEOS_ALGORITHM_POINTINRING_H 18 | 19 | #include 20 | 21 | // Forward declarations 22 | namespace geos { 23 | namespace geom { 24 | class Coordinate; 25 | } 26 | } 27 | 28 | namespace geos { 29 | namespace algorithm { // geos::algorithm 30 | 31 | class GEOS_DLL PointInRing{ 32 | public: 33 | virtual ~PointInRing(){} 34 | virtual bool isInside(const geom::Coordinate& pt)=0; 35 | }; 36 | 37 | } // namespace geos::algorithm 38 | } // namespace geos 39 | 40 | 41 | #endif 42 | 43 | -------------------------------------------------------------------------------- /include/geos/geos/algorithm/SIRtreePointInRing.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_ALGORITHM_SIRTREEPOINTINRING_H 17 | #define GEOS_ALGORITHM_SIRTREEPOINTINRING_H 18 | 19 | #include 20 | #include // for inheritance 21 | 22 | #include 23 | 24 | // Forward declarations 25 | namespace geos { 26 | namespace geom { 27 | class Coordinate; 28 | class LineSegment; 29 | class LinearRing; 30 | } 31 | namespace index { 32 | namespace strtree { 33 | class SIRtree; 34 | } 35 | } 36 | } 37 | 38 | 39 | namespace geos { 40 | namespace algorithm { // geos::algorithm 41 | 42 | class GEOS_DLL SIRtreePointInRing: public PointInRing { 43 | private: 44 | geom::LinearRing *ring; 45 | index::strtree::SIRtree *sirTree; 46 | int crossings; // number of segment/ray crossings 47 | void buildIndex(); 48 | void testLineSegment(const geom::Coordinate& p, 49 | geom::LineSegment *seg); 50 | public: 51 | SIRtreePointInRing(geom::LinearRing *newRing); 52 | ~SIRtreePointInRing(); 53 | bool isInside(const geom::Coordinate& pt); 54 | }; 55 | 56 | } // namespace geos::algorithm 57 | } // namespace geos 58 | 59 | 60 | #endif // GEOS_ALGORITHM_SIRTREEPOINTINRING_H 61 | 62 | -------------------------------------------------------------------------------- /include/geos/geos/algorithm/SimplePointInRing.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_ALGORITHM_SIMPLEPOINTINRING_H 17 | #define GEOS_ALGORITHM_SIMPLEPOINTINRING_H 18 | 19 | #include 20 | #include // for inheritance 21 | 22 | // Forward declarations 23 | namespace geos { 24 | namespace geom { 25 | class Coordinate; 26 | class LinearRing; 27 | class CoordinateSequence; 28 | } 29 | } 30 | 31 | namespace geos { 32 | namespace algorithm { // geos::algorithm 33 | 34 | class GEOS_DLL SimplePointInRing: public PointInRing { 35 | public: 36 | SimplePointInRing(geom::LinearRing *ring); 37 | virtual ~SimplePointInRing(); 38 | bool isInside(const geom::Coordinate& pt); 39 | private: 40 | const geom::CoordinateSequence* pts; 41 | }; 42 | 43 | } // namespace geos::algorithm 44 | } // namespace geos 45 | 46 | 47 | #endif // GEOS_ALGORITHM_SIMPLEPOINTINRING_H 48 | 49 | -------------------------------------------------------------------------------- /include/geos/geos/algorithm/locate/PointOnGeometryLocator.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_ALGORITHM_LOCATE_POINTONGEOMETRYLOCATOR_H 17 | #define GEOS_ALGORITHM_LOCATE_POINTONGEOMETRYLOCATOR_H 18 | 19 | namespace geos { 20 | namespace geom { 21 | class Coordinate; 22 | } 23 | } 24 | 25 | namespace geos { 26 | namespace algorithm { // geos::algorithm 27 | namespace locate { // geos::algorithm::locate 28 | 29 | /** \brief 30 | * An interface for classes which determine the {@link Location} of 31 | * points in {@link Polygon} or {@link MultiPolygon} geometries. 32 | * 33 | * @author Martin Davis 34 | */ 35 | class PointOnGeometryLocator 36 | { 37 | private: 38 | protected: 39 | public: 40 | virtual ~PointOnGeometryLocator() 41 | { } 42 | 43 | /** 44 | * Determines the {@link Location} of a point in an areal {@link Geometry}. 45 | * 46 | * @param p the point to test 47 | * @return the location of the point in the geometry 48 | */ 49 | virtual int locate( const geom::Coordinate * /*const*/ p) =0; 50 | }; 51 | 52 | } // geos::algorithm::locate 53 | } // geos::algorithm 54 | } // geos 55 | 56 | #endif // GEOS_ALGORITHM_LOCATE_POINTONGEOMETRYLOCATOR_H 57 | -------------------------------------------------------------------------------- /include/geos/geos/export.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2009 Ragi Y. Burhum 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | #ifndef GEOS_EXPORT_H 15 | #define GEOS_EXPORT_H 16 | 17 | #if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) || \ 18 | defined( __BCPLUSPLUS__) || defined( __MWERKS__) 19 | 20 | # if defined(GEOS_DLL_EXPORT) 21 | # define GEOS_DLL __declspec(dllexport) 22 | # elif defined(GEOS_DLL_IMPORT) 23 | # define GEOS_DLL __declspec(dllimport) 24 | # else 25 | # define GEOS_DLL 26 | # endif 27 | #else 28 | # define GEOS_DLL 29 | #endif 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /include/geos/geos/geom/CoordinateArraySequenceFactory.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_GEOM_COORDINATEARRAYSEQUENCEFACTORY_INL 16 | #define GEOS_GEOM_COORDINATEARRAYSEQUENCEFACTORY_INL 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | namespace geos { 23 | namespace geom { // geos::geom 24 | 25 | INLINE CoordinateSequence * 26 | CoordinateArraySequenceFactory::create() const 27 | { 28 | return new CoordinateArraySequence( 29 | reinterpret_cast*>(0), 0); 30 | } 31 | 32 | INLINE CoordinateSequence * 33 | CoordinateArraySequenceFactory::create(std::vector *coords, 34 | size_t dimension ) const 35 | { 36 | return new CoordinateArraySequence(coords,dimension); 37 | } 38 | 39 | INLINE CoordinateSequence * 40 | CoordinateArraySequenceFactory::create(std::size_t size, std::size_t dimension) 41 | const 42 | { 43 | return new CoordinateArraySequence(size,dimension); 44 | } 45 | 46 | INLINE CoordinateSequence * 47 | CoordinateArraySequenceFactory::create(const CoordinateSequence& seq) 48 | const 49 | { 50 | return new CoordinateArraySequence(seq); 51 | } 52 | 53 | 54 | } // namespace geos::geom 55 | } // namespace geos 56 | 57 | #endif // GEOS_GEOM_COORDINATEARRAYSEQUENCEFACTORY_INL 58 | 59 | -------------------------------------------------------------------------------- /include/geos/geos/geom/GeometryCollection.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: geom/GeometryCollection.java rev. 1.41 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_GEOMETRYCOLLECTION_INL 20 | #define GEOS_GEOMETRYCOLLECTION_INL 21 | 22 | #include 23 | 24 | #include 25 | 26 | namespace geos { 27 | namespace geom { // geos::geom 28 | 29 | INLINE GeometryCollection::const_iterator 30 | GeometryCollection::begin() const 31 | { 32 | return geometries->begin(); 33 | } 34 | 35 | INLINE GeometryCollection::const_iterator 36 | GeometryCollection::end() const 37 | { 38 | return geometries->end(); 39 | } 40 | 41 | 42 | } // namespace geos::geom 43 | } // namespace geos 44 | 45 | #endif // GEOS_GEOMETRYCOLLECTION_INL 46 | -------------------------------------------------------------------------------- /include/geos/geos/geom/GeometryFactory.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: geom/GeometryFactory.java rev. 1.48 16 | * 17 | ********************************************************************** 18 | * 19 | * This is just a stub, there are a lot of candidates for inlining 20 | * but it's not worth checking that at the moment 21 | * 22 | **********************************************************************/ 23 | 24 | #ifndef GEOS_GEOM_GEOMETRYFACTORY_INL 25 | #define GEOS_GEOM_GEOMETRYFACTORY_INL 26 | 27 | #include 28 | 29 | namespace geos { 30 | namespace geom { // geos::geom 31 | 32 | INLINE int 33 | GeometryFactory::getSRID() const 34 | { 35 | return SRID; 36 | } 37 | 38 | INLINE const CoordinateSequenceFactory* 39 | GeometryFactory::getCoordinateSequenceFactory() const 40 | { 41 | return coordinateListFactory; 42 | } 43 | 44 | } // namespace geos::geom 45 | } // namespace geos 46 | 47 | #endif // GEOS_GEOM_GEOMETRYFACTORY_INL 48 | 49 | 50 | -------------------------------------------------------------------------------- /include/geos/geos/geom/Lineal.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2011 Sandro Santilli 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: geom/Lineal.java r320 (JTS-1.12) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_GEOM_LINEAL_H 20 | #define GEOS_GEOM_LINEAL_H 21 | 22 | #include 23 | #include // for inheritance 24 | 25 | namespace geos { 26 | namespace geom { // geos::geom 27 | 28 | /** 29 | * Identifies {@link Geometry} subclasses which 30 | * are 1-dimensional and with components which are {@link LineString}s. 31 | */ 32 | class GEOS_DLL Lineal : public virtual Geometry 33 | { 34 | protected: 35 | Lineal(): Geometry(0) {} 36 | }; 37 | 38 | } // namespace geos::geom 39 | } // namespace geos 40 | 41 | #endif // ndef GEOS_GEOM_LINEAL_H 42 | -------------------------------------------------------------------------------- /include/geos/geos/geom/MultiLineString.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2011 Sandro Santilli 7 | * Copyright (C) 2005-2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: geom/MultiLineString.java r320 (JTS-1.12) 17 | * 18 | **********************************************************************/ 19 | 20 | #ifndef GEOS_GEOM_MULTILINESTRING_INL 21 | #define GEOS_GEOM_MULTILINESTRING_INL 22 | 23 | #include 24 | #include 25 | 26 | //#include 27 | 28 | namespace geos { 29 | namespace geom { // geos::geom 30 | 31 | INLINE 32 | MultiLineString::MultiLineString(const MultiLineString &mp) 33 | : 34 | Geometry(mp), 35 | GeometryCollection(mp) 36 | { 37 | } 38 | 39 | INLINE Geometry* 40 | MultiLineString::clone() const 41 | { 42 | return new MultiLineString(*this); 43 | } 44 | 45 | } // namespace geos::geom 46 | } // namespace geos 47 | 48 | #endif // GEOS_GEOM_MULTILINESTRING_INL 49 | 50 | 51 | -------------------------------------------------------------------------------- /include/geos/geos/geom/MultiPolygon.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: geom/MultiPolygon.java rev 1.34 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_GEOM_MULTIPOLYGON_INL 20 | #define GEOS_GEOM_MULTIPOLYGON_INL 21 | 22 | #include 23 | #include 24 | 25 | namespace geos { 26 | namespace geom { // geos::geom 27 | 28 | INLINE 29 | MultiPolygon::MultiPolygon(const MultiPolygon &mp) 30 | : 31 | Geometry(mp), 32 | GeometryCollection(mp) 33 | { 34 | } 35 | 36 | INLINE Geometry* 37 | MultiPolygon::clone() const 38 | { 39 | return new MultiPolygon(*this); 40 | } 41 | 42 | } // namespace geos::geom 43 | } // namespace geos 44 | 45 | #endif // GEOS_GEOM_MULTIPOLYGON_INL 46 | 47 | 48 | -------------------------------------------------------------------------------- /include/geos/geos/geom/Polygonal.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2011 Sandro Santilli 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: geom/Polygonal.java r320 (JTS-1.12) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_GEOM_POLYGONAL_H 20 | #define GEOS_GEOM_POLYGONAL_H 21 | 22 | #include 23 | #include // for inheritance 24 | 25 | namespace geos { 26 | namespace geom { // geos::geom 27 | 28 | /** 29 | * Identifies {@link Geometry} subclasses which 30 | * are 2-dimensional and with components which are {@link Polygon}s. 31 | */ 32 | class GEOS_DLL Polygonal : public virtual Geometry 33 | { 34 | protected: 35 | Polygonal(): Geometry(0) {} 36 | }; 37 | 38 | } // namespace geos::geom 39 | } // namespace geos 40 | 41 | #endif // ndef GEOS_GEOM_POLYGONAL_H 42 | -------------------------------------------------------------------------------- /include/geos/geos/geom/PrecisionModel.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2011 Sandro Santilli 7 | * Copyright (C) 2005-2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: geom/PrecisionModel.java r378 (JTS-1.12) 17 | * 18 | **********************************************************************/ 19 | 20 | #ifndef GEOS_GEOM_PRECISIONMODEL_INL 21 | #define GEOS_GEOM_PRECISIONMODEL_INL 22 | 23 | #include 24 | 25 | #include 26 | 27 | namespace geos { 28 | namespace geom { // geos::geom 29 | 30 | /*public*/ 31 | INLINE 32 | PrecisionModel::~PrecisionModel(void) 33 | { 34 | } 35 | 36 | /*public*/ 37 | INLINE void 38 | PrecisionModel::makePrecise(Coordinate* coord) const 39 | { 40 | assert(coord); 41 | return makePrecise(*coord); 42 | } 43 | 44 | /*public*/ 45 | INLINE PrecisionModel::Type 46 | PrecisionModel::getType() const 47 | { 48 | return modelType; 49 | } 50 | 51 | /*public*/ 52 | INLINE double 53 | PrecisionModel::getScale() const 54 | { 55 | assert(!(scale < 0)); 56 | return scale; 57 | } 58 | 59 | 60 | } // namespace geos::geom 61 | } // namespace geos 62 | 63 | #endif // GEOS_GEOM_PRECISIONMODEL_INL 64 | 65 | -------------------------------------------------------------------------------- /include/geos/geos/geom/Puntal.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2011 Sandro Santilli 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: geom/Puntal.java r320 (JTS-1.12) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_GEOM_PUNTAL_H 20 | #define GEOS_GEOM_PUNTAL_H 21 | 22 | #include 23 | #include // for inheritance 24 | 25 | namespace geos { 26 | namespace geom { // geos::geom 27 | 28 | /** 29 | * Identifies {@link Geometry} subclasses which 30 | * are 0-dimensional and with components which are {@link Point}s. 31 | */ 32 | class GEOS_DLL Puntal : public virtual Geometry 33 | { 34 | protected: 35 | Puntal(): Geometry(0) {} 36 | }; 37 | 38 | } // namespace geos::geom 39 | } // namespace geos 40 | 41 | #endif // ndef GEOS_GEOM_PUNTAL_H 42 | -------------------------------------------------------------------------------- /include/geos/geos/geom/prep/PreparedPoint.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: geom/prep/PreparedPoint.java rev. 1.2 (JTS-1.10) 17 | * 18 | **********************************************************************/ 19 | 20 | #ifndef GEOS_GEOM_PREP_PREPAREDPOINT_H 21 | #define GEOS_GEOM_PREP_PREPAREDPOINT_H 22 | 23 | #include // for inheritance 24 | 25 | namespace geos { 26 | namespace geom { // geos::geom 27 | namespace prep { // geos::geom::prep 28 | 29 | /** 30 | * \brief 31 | * A prepared version of {@link Point} or {@link MultiPoint} geometries. 32 | * 33 | * @author Martin Davis 34 | * 35 | */ 36 | class PreparedPoint: public BasicPreparedGeometry 37 | { 38 | private: 39 | protected: 40 | public: 41 | PreparedPoint(const Geometry * geom) 42 | : BasicPreparedGeometry( geom) 43 | { } 44 | 45 | /** 46 | * Tests whether this point intersects a {@link Geometry}. 47 | * 48 | * The optimization here is that computing topology for the test 49 | * geometry is avoided. This can be significant for large geometries. 50 | */ 51 | bool intersects(const geom::Geometry* g) const; 52 | 53 | }; 54 | 55 | } // namespace geos::geom::prep 56 | } // namespace geos::geom 57 | } // namespace geos 58 | 59 | #endif // GEOS_GEOM_PREP_PREPAREDPOINT_H 60 | -------------------------------------------------------------------------------- /include/geos/geos/geom/util/ShortCircuitedGeometryVisitor.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_GEOM_UTIL_SHORTCIRCUITEDGEOMETRYVISITOR_H 17 | #define GEOS_GEOM_UTIL_SHORTCIRCUITEDGEOMETRYVISITOR_H 18 | 19 | #include 20 | 21 | // Forward declarations 22 | namespace geos { 23 | namespace geom { 24 | class Geometry; 25 | } 26 | } 27 | 28 | 29 | namespace geos { 30 | namespace geom { // geos.geom 31 | namespace util { // geos.geom.util 32 | 33 | /** \brief 34 | * A visitor to Geometry elements which can 35 | * be short-circuited by a given condition 36 | * 37 | * Last port: geom/util/ShortCircuitedGeometryVisitor.java rev. 1.1 (JTS-1.7) 38 | */ 39 | class GEOS_DLL ShortCircuitedGeometryVisitor 40 | { 41 | 42 | private: 43 | 44 | bool done; 45 | 46 | protected: 47 | 48 | virtual void visit(const Geometry &element)=0; 49 | virtual bool isDone()=0; 50 | 51 | public: 52 | 53 | ShortCircuitedGeometryVisitor() 54 | : 55 | done(false) 56 | {} 57 | 58 | void applyTo(const Geometry &geom); 59 | 60 | virtual ~ShortCircuitedGeometryVisitor() {} 61 | 62 | }; 63 | 64 | } // namespace geos.geom.util 65 | } // namespace geos.geom 66 | } // namespace geos 67 | 68 | #endif 69 | -------------------------------------------------------------------------------- /include/geos/geos/geomUtil.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_GEOMUTIL_H 17 | #define GEOS_GEOMUTIL_H 18 | 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include 26 | 27 | namespace geos { 28 | namespace geom { // geos.geom 29 | 30 | /** \brief 31 | * Provides classes that parse and modify Geometry objects. 32 | */ 33 | namespace util { // geos.geom.util 34 | 35 | } // namespace geos.geom.util 36 | } // namespace geos.geom 37 | } // namespace geos 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /include/geos/geos/geomgraph/GeometryGraph.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2011 Sandro Santilli 7 | * Copyright (C) 2005-2006 Refractions Research Inc. 8 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 9 | * 10 | * This is free software; you can redistribute and/or modify it under 11 | * the terms of the GNU Lesser General Public Licence as published 12 | * by the Free Software Foundation. 13 | * See the COPYING file for more information. 14 | * 15 | ********************************************************************** 16 | * 17 | * Last port: geomgraph/GeometryGraph.java r428 (JTS-1.12+) 18 | * 19 | **********************************************************************/ 20 | 21 | #ifndef GEOS_GEOMGRAPH_GEOMETRYGRAPH_INL 22 | #define GEOS_GEOMGRAPH_GEOMETRYGRAPH_INL 23 | 24 | #include 25 | 26 | namespace geos { 27 | namespace geomgraph { // geos::geomgraph 28 | 29 | INLINE void 30 | GeometryGraph::getBoundaryNodes(std::vector&bdyNodes) 31 | { 32 | nodes->getBoundaryNodes(argIndex, bdyNodes); 33 | } 34 | 35 | INLINE const geom::Geometry* 36 | GeometryGraph::getGeometry() 37 | { 38 | return parentGeom; 39 | } 40 | 41 | INLINE 42 | GeometryGraph::~GeometryGraph() 43 | { 44 | } 45 | 46 | } // namespace geos::geomgraph 47 | } // namespace geos 48 | 49 | #endif // GEOS_GEOMGRAPH_GEOMETRYGRAPH_INL 50 | -------------------------------------------------------------------------------- /include/geos/geos/geomgraph/NodeFactory.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: geomgraph/NodeFactory.java rev. 1.3 (JTS-1.10) 17 | * 18 | **********************************************************************/ 19 | 20 | 21 | #ifndef GEOS_GEOMGRAPH_NODEFACTORY_H 22 | #define GEOS_GEOMGRAPH_NODEFACTORY_H 23 | 24 | #include 25 | #include 26 | 27 | // Forward declarations 28 | namespace geos { 29 | namespace geom { 30 | class Coordinate; 31 | } 32 | namespace geomgraph { 33 | class Node; 34 | } 35 | } 36 | 37 | namespace geos { 38 | namespace geomgraph { // geos.geomgraph 39 | 40 | class GEOS_DLL NodeFactory { 41 | public: 42 | virtual Node* createNode(const geom::Coordinate &coord) const; 43 | static const NodeFactory &instance(); 44 | virtual ~NodeFactory() {} 45 | protected: 46 | NodeFactory() {} 47 | }; 48 | 49 | 50 | } // namespace geos.geomgraph 51 | } // namespace geos 52 | 53 | #endif // ifndef GEOS_GEOMGRAPH_NODEFACTORY_H 54 | -------------------------------------------------------------------------------- /include/geos/geos/geomgraph/Position.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: geomgraph/Position.java rev. 1.4 (JTS-1.10) 17 | * 18 | **********************************************************************/ 19 | 20 | 21 | #ifndef GEOS_GEOMGRAPH_POSITION_H 22 | #define GEOS_GEOMGRAPH_POSITION_H 23 | 24 | #include 25 | #include 26 | #include 27 | #include 28 | 29 | #include 30 | 31 | 32 | namespace geos { 33 | namespace geomgraph { // geos.geomgraph 34 | 35 | class GEOS_DLL Position { 36 | public: 37 | enum { 38 | /* 39 | * An indicator that a Location is on 40 | * a GraphComponent 41 | */ 42 | ON=0, 43 | 44 | /* 45 | * An indicator that a Location is to the 46 | * left of a GraphComponent 47 | */ 48 | LEFT, 49 | 50 | /* 51 | * An indicator that a Location is to the 52 | * right of a GraphComponent 53 | */ 54 | RIGHT 55 | }; 56 | 57 | /** 58 | * Returns LEFT if the position is RIGHT, RIGHT if 59 | * the position is LEFT, or the position otherwise. 60 | */ 61 | static int opposite(int position); 62 | }; 63 | 64 | } // namespace geos.geomgraph 65 | } // namespace geos 66 | 67 | #endif // ifndef GEOS_GEOMGRAPH_POSITION_H 68 | 69 | -------------------------------------------------------------------------------- /include/geos/geos/geomgraph/index/MonotoneChainIndexer.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_GEOMGRAPH_INDEX_MONOTONECHAININDEXER_H 17 | #define GEOS_GEOMGRAPH_INDEX_MONOTONECHAININDEXER_H 18 | 19 | #include 20 | #include 21 | 22 | // Forward declarations 23 | namespace geos { 24 | namespace geom { 25 | class CoordinateSequence; 26 | } 27 | } 28 | 29 | namespace geos { 30 | namespace geomgraph { // geos::geomgraph 31 | namespace index { // geos::geomgraph::index 32 | 33 | 34 | class GEOS_DLL MonotoneChainIndexer{ 35 | 36 | public: 37 | 38 | MonotoneChainIndexer(){} 39 | 40 | void getChainStartIndices(const geom::CoordinateSequence*, std::vector&); 41 | 42 | private: 43 | 44 | int findChainEnd(const geom::CoordinateSequence* pts, int start); 45 | 46 | }; 47 | 48 | } // namespace geos.geomgraph.index 49 | } // namespace geos.geomgraph 50 | } // namespace geos 51 | 52 | #endif // GEOS_GEOMGRAPH_INDEX_MONOTONECHAININDEXER_H 53 | 54 | -------------------------------------------------------------------------------- /include/geos/geos/geomgraph/index/SimpleEdgeSetIntersector.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_GEOMGRAPH_INDEX_SIMPLEEDGESETINTERSECTOR_H 17 | #define GEOS_GEOMGRAPH_INDEX_SIMPLEEDGESETINTERSECTOR_H 18 | 19 | #include 20 | #include 21 | 22 | #include // for inheritance 23 | 24 | // Forward declarations 25 | namespace geos { 26 | namespace geomgraph { 27 | class Edge; 28 | namespace index { 29 | class SegmentIntersector; 30 | } 31 | } 32 | } 33 | 34 | namespace geos { 35 | namespace geomgraph { // geos::geomgraph 36 | namespace index { // geos::geomgraph::index 37 | 38 | class GEOS_DLL SimpleEdgeSetIntersector: public EdgeSetIntersector { 39 | 40 | public: 41 | 42 | SimpleEdgeSetIntersector(); 43 | 44 | void computeIntersections(std::vector *edges, 45 | SegmentIntersector *si, bool testAllSegments); 46 | 47 | void computeIntersections(std::vector *edges0, 48 | std::vector *edges1, SegmentIntersector *si); 49 | 50 | private: 51 | 52 | int nOverlaps; 53 | 54 | void computeIntersects(Edge *e0, Edge *e1, SegmentIntersector *si); 55 | }; 56 | 57 | } // namespace geos.geomgraph.index 58 | } // namespace geos.geomgraph 59 | } // namespace geos 60 | 61 | #endif // GEOS_GEOMGRAPH_INDEX_SIMPLEEDGESETINTERSECTOR_H 62 | 63 | -------------------------------------------------------------------------------- /include/geos/geos/geomgraph/index/SweepLineEventObj.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_GEOMGRAPH_INDEX_SWEEPLINEEVENTOBJ_H 17 | #define GEOS_GEOMGRAPH_INDEX_SWEEPLINEEVENTOBJ_H 18 | 19 | #include 20 | 21 | namespace geos { 22 | namespace geomgraph { // geos::geomgraph 23 | namespace index { // geos::geomgraph::index 24 | 25 | // This is here so that SweepLineEvent constructor 26 | // can use it as argument type. 27 | // Both SweepLineSegment and MonotoneChain will 28 | // inherit from it. 29 | class GEOS_DLL SweepLineEventOBJ { 30 | public: 31 | virtual ~SweepLineEventOBJ(){} 32 | }; 33 | 34 | 35 | } // namespace geos.geomgraph.index 36 | } // namespace geos.geomgraph 37 | } // namespace geos 38 | 39 | #endif 40 | 41 | -------------------------------------------------------------------------------- /include/geos/geos/geomgraph/index/SweepLineSegment.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_GEOMGRAPH_INDEX_SWEEPLINESEGMENT_H 17 | #define GEOS_GEOMGRAPH_INDEX_SWEEPLINESEGMENT_H 18 | 19 | 20 | #include 21 | #include // for inheritance 22 | 23 | // Forward declarations 24 | namespace geos { 25 | namespace geom { 26 | class CoordinateSequence; 27 | } 28 | namespace geomgraph { 29 | class Edge; 30 | namespace index { 31 | class SegmentIntersector; 32 | } 33 | } 34 | } 35 | 36 | namespace geos { 37 | namespace geomgraph { // geos::geomgraph 38 | namespace index { // geos::geomgraph::index 39 | 40 | class GEOS_DLL SweepLineSegment: public SweepLineEventOBJ { 41 | public: 42 | SweepLineSegment(Edge *newEdge, int newPtIndex); 43 | ~SweepLineSegment(); 44 | double getMinX(); 45 | double getMaxX(); 46 | void computeIntersections(SweepLineSegment *ss, SegmentIntersector *si); 47 | protected: 48 | Edge *edge; 49 | const geom::CoordinateSequence* pts; 50 | int ptIndex; 51 | }; 52 | 53 | 54 | 55 | } // namespace geos.geomgraph.index 56 | } // namespace geos.geomgraph 57 | } // namespace geos 58 | 59 | #endif 60 | 61 | -------------------------------------------------------------------------------- /include/geos/geos/geomgraphindex.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2005 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_GEOMGRAPH_INDEX_H 17 | #define GEOS_GEOMGRAPH_INDEX_H 18 | 19 | namespace geos { 20 | namespace geomgraph { 21 | namespace index { 22 | } 23 | } 24 | } 25 | 26 | #include 27 | # include 28 | # include 29 | # include 30 | 31 | #include 32 | #include 33 | #include 34 | #include 35 | #include 36 | #include 37 | 38 | #endif 39 | 40 | 41 | -------------------------------------------------------------------------------- /include/geos/geos/geos.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_H 16 | #define GEOS_H 17 | 18 | /* 19 | * \file geos.h 20 | * \brief 21 | * This file is intended as an include wrapper for client application. 22 | * It includes commonly needed GEOS headers. 23 | */ 24 | 25 | #include 26 | #include 27 | #include 28 | #include 29 | #include 30 | 31 | /// Basic namespace for all GEOS functionalities. 32 | namespace geos { 33 | } 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /include/geos/geos/index/ItemVisitor.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_INDEX_ITEMVISITOR_H 17 | #define GEOS_INDEX_ITEMVISITOR_H 18 | 19 | #include 20 | 21 | namespace geos { 22 | namespace index { 23 | 24 | /** \brief 25 | * A visitor for items in an index. 26 | * 27 | * Last port: index/ItemVisitor.java rev. 1.2 (JTS-1.7) 28 | */ 29 | class GEOS_DLL ItemVisitor { 30 | public: 31 | virtual void visitItem(void *)=0; 32 | 33 | virtual ~ItemVisitor() {} 34 | }; 35 | 36 | } // namespace geos.index 37 | } // namespace geos 38 | 39 | #endif // GEOS_INDEX_ITEMVISITOR_H 40 | 41 | -------------------------------------------------------------------------------- /include/geos/geos/index/bintree/Interval.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_IDX_BINTREE_INTERVAL_H 16 | #define GEOS_IDX_BINTREE_INTERVAL_H 17 | 18 | #include 19 | 20 | namespace geos { 21 | namespace index { // geos::index 22 | namespace bintree { // geos::index::bintree 23 | 24 | /// Represents an (1-dimensional) closed interval on the Real number line. 25 | class GEOS_DLL Interval { 26 | 27 | public: 28 | 29 | double min, max; 30 | 31 | Interval(); 32 | 33 | ~Interval(); 34 | 35 | Interval(double nmin, double nmax); 36 | 37 | /// TODO: drop this, rely on copy ctor 38 | Interval(const Interval *interval); 39 | 40 | void init(double nmin, double nmax); 41 | 42 | double getMin() const; 43 | 44 | double getMax() const; 45 | 46 | double getWidth() const; 47 | 48 | void expandToInclude(Interval *interval); 49 | 50 | bool overlaps(const Interval *interval) const; 51 | 52 | bool overlaps(double nmin, double nmax) const; 53 | 54 | bool contains(const Interval *interval) const; 55 | 56 | bool contains(double nmin, double nmax) const; 57 | 58 | bool contains(double p) const; 59 | }; 60 | 61 | } // namespace geos::index::bintree 62 | } // namespace geos::index 63 | } // namespace geos 64 | 65 | #endif // GEOS_IDX_BINTREE_INTERVAL_H 66 | 67 | -------------------------------------------------------------------------------- /include/geos/geos/index/bintree/Key.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_IDX_BINTREE_KEY_H 16 | #define GEOS_IDX_BINTREE_KEY_H 17 | 18 | #include 19 | 20 | // Forward declarations 21 | namespace geos { 22 | namespace index { 23 | namespace bintree { 24 | class Interval; 25 | } 26 | } 27 | } 28 | 29 | namespace geos { 30 | namespace index { // geos::index 31 | namespace bintree { // geos::index::bintree 32 | 33 | /** \brief 34 | * A Key is a unique identifier for a node in a tree. 35 | * 36 | * It contains a lower-left point and a level number. 37 | * The level number is the power of two for the size of the node envelope 38 | */ 39 | class GEOS_DLL Key { 40 | 41 | public: 42 | 43 | static int computeLevel(Interval *newInterval); 44 | 45 | Key(Interval *newInterval); 46 | 47 | ~Key(); 48 | 49 | double getPoint(); 50 | 51 | int getLevel(); 52 | 53 | Interval* getInterval(); 54 | 55 | void computeKey(Interval *itemInterval); 56 | 57 | private: 58 | 59 | // the fields which make up the key 60 | double pt; 61 | int level; 62 | 63 | // auxiliary data which is derived from the key for use in computation 64 | Interval *interval; 65 | 66 | void computeInterval(int level, Interval *itemInterval); 67 | }; 68 | 69 | } // namespace geos::index::bintree 70 | } // namespace geos::index 71 | } // namespace geos 72 | 73 | #endif // GEOS_IDX_BINTREE_KEY_H 74 | 75 | -------------------------------------------------------------------------------- /include/geos/geos/index/bintree/Node.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_IDX_BINTREE_NODE_H 16 | #define GEOS_IDX_BINTREE_NODE_H 17 | 18 | #include 19 | #include // for inheritance 20 | 21 | // Forward declarations 22 | namespace geos { 23 | namespace index { 24 | namespace bintree { 25 | class Interval; 26 | } 27 | } 28 | } 29 | 30 | namespace geos { 31 | namespace index { // geos::index 32 | namespace bintree { // geos::index::bintree 33 | 34 | /// A node of a Bintree. 35 | class GEOS_DLL Node: public NodeBase { 36 | 37 | public: 38 | 39 | static Node* createNode(Interval *itemInterval); 40 | 41 | static Node* createExpanded(Node *node,Interval *addInterval); 42 | 43 | Node(Interval *newInterval,int newLevel); 44 | 45 | ~Node(); 46 | 47 | Interval* getInterval(); 48 | 49 | Node* getNode(Interval *searchInterval); 50 | 51 | NodeBase* find(Interval *searchInterval); 52 | 53 | void insert(Node *node); 54 | 55 | private: 56 | 57 | Interval *interval; 58 | 59 | double centre; 60 | 61 | int level; 62 | 63 | Node* getSubnode(int index); 64 | 65 | Node* createSubnode(int index); 66 | 67 | protected: 68 | 69 | bool isSearchMatch(Interval *itemInterval); 70 | }; 71 | 72 | } // namespace geos::index::bintree 73 | } // namespace geos::index 74 | } // namespace geos 75 | 76 | #endif // GEOS_IDX_BINTREE_NODE_H 77 | 78 | -------------------------------------------------------------------------------- /include/geos/geos/index/intervalrtree/IntervalRTreeLeafNode.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_INDEX_INTERVALRTREE_INTERVALRTREELEAFNODE_H 17 | #define GEOS_INDEX_INTERVALRTREE_INTERVALRTREELEAFNODE_H 18 | 19 | 20 | #include // inherited 21 | 22 | 23 | // forward declarations 24 | namespace geos { 25 | namespace index { 26 | class ItemVisitor; 27 | } 28 | } 29 | 30 | 31 | namespace geos { 32 | namespace index { 33 | namespace intervalrtree { 34 | 35 | class IntervalRTreeLeafNode : public IntervalRTreeNode 36 | { 37 | private: 38 | /// externally owned 39 | void * item; 40 | 41 | protected: 42 | public: 43 | 44 | /// @param item externally owned 45 | IntervalRTreeLeafNode( double min, double max, void * item) 46 | : IntervalRTreeNode( min, max), 47 | item( item) 48 | { } 49 | 50 | ~IntervalRTreeLeafNode() 51 | { 52 | } 53 | 54 | void query( double queryMin, double queryMax, index::ItemVisitor * visitor) const; 55 | 56 | }; 57 | 58 | } // geos::intervalrtree 59 | } // geos::index 60 | } // geos 61 | 62 | #endif // GEOS_INDEX_INTERVALRTREE_INTERVALRTREELEAFNODE_H 63 | -------------------------------------------------------------------------------- /include/geos/geos/index/strtree/Boundable.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_INDEX_STRTREE_BOUNDABLE_H 16 | #define GEOS_INDEX_STRTREE_BOUNDABLE_H 17 | 18 | #include 19 | 20 | namespace geos { 21 | namespace index { // geos::index 22 | namespace strtree { // geos::index::strtree 23 | 24 | /// A spatial object in an AbstractSTRtree. 25 | class GEOS_DLL Boundable { 26 | public: 27 | /** 28 | * Returns a representation of space that encloses this Boundable, 29 | * preferably not much bigger than this Boundable's boundary yet 30 | * fast to test for intersection with the bounds of other Boundables. 31 | * 32 | * The class of object returned depends 33 | * on the subclass of AbstractSTRtree. 34 | * 35 | * @return an Envelope (for STRtrees), an Interval (for SIRtrees), 36 | * or other object (for other subclasses of AbstractSTRtree) 37 | * 38 | * @see AbstractSTRtree::IntersectsOp 39 | */ 40 | virtual const void* getBounds() const=0; 41 | virtual ~Boundable() {} 42 | }; 43 | 44 | 45 | } // namespace geos::index::strtree 46 | } // namespace geos::index 47 | } // namespace geos 48 | 49 | #endif // GEOS_INDEX_STRTREE_BOUNDABLE_H 50 | -------------------------------------------------------------------------------- /include/geos/geos/index/strtree/GeometryItemDistance.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2016 Daniel Baston 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: index/strtree/GeometryItemDistance.java (JTS-1.14) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_INDEX_STRTREE_GEOMETRYITEMDISTANCE_H 20 | #define GEOS_INDEX_STRTREE_GEOMETRYITEMDISTANCE_H 21 | 22 | #include 23 | #include 24 | 25 | namespace geos { 26 | namespace index { 27 | namespace strtree { 28 | class GEOS_DLL GeometryItemDistance : public ItemDistance { 29 | public: 30 | /** 31 | * Computes the distance between two {@link Geometry} items, 32 | * using the {@link Geometry#distance(Geometry)} method. 33 | * 34 | * @param item1 an item which is a Geometry 35 | * @param item2 an item which is a Geometry 36 | * @return the distance between the geometries 37 | * @throws ClassCastException if either item is not a Geometry 38 | */ 39 | double distance(const ItemBoundable* item1, const ItemBoundable* item2); 40 | }; 41 | } 42 | } 43 | } 44 | 45 | #endif //GEOS_GEOMETRYITEMDISTANCE_H 46 | -------------------------------------------------------------------------------- /include/geos/geos/index/strtree/Interval.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_INDEX_STRTREE_INTERVAL_H 16 | #define GEOS_INDEX_STRTREE_INTERVAL_H 17 | 18 | #include 19 | 20 | namespace geos { 21 | namespace index { // geos::index 22 | namespace strtree { // geos::index::strtree 23 | 24 | /// A contiguous portion of 1D-space. Used internally by SIRtree. 25 | // 26 | /// @see SIRtree 27 | /// 28 | class GEOS_DLL Interval { 29 | public: 30 | Interval(double newMin, double newMax); 31 | double getCentre(); 32 | Interval* expandToInclude(const Interval *other); 33 | bool intersects(const Interval *other) const; 34 | bool equals(const Interval *o) const; 35 | private: 36 | double imin; 37 | double imax; 38 | }; 39 | 40 | 41 | } // namespace geos::index::strtree 42 | } // namespace geos::index 43 | } // namespace geos 44 | 45 | #endif // GEOS_INDEX_STRTREE_INTERVAL_H 46 | -------------------------------------------------------------------------------- /include/geos/geos/index/strtree/ItemBoundable.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | #ifndef GEOS_INDEX_STRTREE_ITEMBOUNDABLE_H 15 | #define GEOS_INDEX_STRTREE_ITEMBOUNDABLE_H 16 | 17 | #include 18 | 19 | #include // for inheritance 20 | 21 | namespace geos { 22 | namespace index { // geos::index 23 | namespace strtree { // geos::index::strtree 24 | 25 | /** 26 | * \brief 27 | * Boundable wrapper for a non-Boundable spatial object. 28 | * Used internally by AbstractSTRtree. 29 | * 30 | * \todo TODO: It's unclear who takes ownership of passed newBounds and newItem objects. 31 | */ 32 | class GEOS_DLL ItemBoundable: public Boundable 33 | { 34 | public: 35 | 36 | ItemBoundable(const void* newBounds, void* newItem); 37 | virtual ~ItemBoundable(); 38 | 39 | const void* getBounds() const; 40 | void* getItem() const; 41 | 42 | private: 43 | 44 | const void* bounds; 45 | void* item; 46 | }; 47 | 48 | } // namespace geos::index::strtree 49 | } // namespace geos::index 50 | } // namespace geos 51 | 52 | #endif // GEOS_INDEX_STRTREE_ITEMBOUNDABLE_H 53 | -------------------------------------------------------------------------------- /include/geos/geos/index/strtree/ItemDistance.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2016 Daniel Baston 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: index/strtree/ItemDistance.java (JTS-1.14) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_INDEX_STRTREE_ITEMDISTANCE_H 20 | #define GEOS_INDEX_STRTREE_ITEMDISTANCE_H 21 | 22 | #include 23 | 24 | namespace geos { 25 | namespace index { 26 | namespace strtree { 27 | class GEOS_DLL ItemDistance { 28 | public: 29 | /** 30 | * Computes the distance between two items. 31 | * 32 | * @param item1 33 | * @param item2 34 | * @return the distance between the items 35 | * 36 | * @throws IllegalArgumentException if the metric is not applicable to the arguments 37 | */ 38 | virtual double distance(const ItemBoundable* item1, const ItemBoundable* item2) = 0; 39 | }; 40 | } 41 | } 42 | } 43 | 44 | #endif //GEOS_ITEMDISTANCE_H 45 | -------------------------------------------------------------------------------- /include/geos/geos/index/sweepline/SweepLineInterval.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_INDEX_SWEEPLINE_SWEEPLINEINTERVAL_H 16 | #define GEOS_INDEX_SWEEPLINE_SWEEPLINEINTERVAL_H 17 | 18 | #include 19 | 20 | namespace geos { 21 | namespace index { // geos.index 22 | namespace sweepline { // geos:index:sweepline 23 | 24 | class GEOS_DLL SweepLineInterval { 25 | public: 26 | SweepLineInterval(double newMin, double newMax, void* newItem=0); 27 | double getMin(); 28 | double getMax(); 29 | void* getItem(); 30 | private: 31 | double min, max; 32 | void* item; 33 | }; 34 | 35 | } // namespace geos:index:sweepline 36 | } // namespace geos:index 37 | } // namespace geos 38 | 39 | #endif // GEOS_INDEX_SWEEPLINE_SWEEPLINEINTERVAL_H 40 | -------------------------------------------------------------------------------- /include/geos/geos/index/sweepline/SweepLineOverlapAction.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_INDEX_SWEEPLINE_SWEEPLINEOVERLAPACTION_H 16 | #define GEOS_INDEX_SWEEPLINE_SWEEPLINEOVERLAPACTION_H 17 | 18 | #include 19 | 20 | // Forward declarations 21 | namespace geos { 22 | namespace index { 23 | namespace sweepline { 24 | class SweepLineInterval; 25 | } 26 | } 27 | } 28 | 29 | namespace geos { 30 | namespace index { // geos.index 31 | namespace sweepline { // geos:index:sweepline 32 | 33 | class GEOS_DLL SweepLineOverlapAction { 34 | public: 35 | virtual void overlap(SweepLineInterval *s0,SweepLineInterval *s1)=0; 36 | 37 | virtual ~SweepLineOverlapAction() {} 38 | }; 39 | 40 | 41 | } // namespace geos:index:sweepline 42 | } // namespace geos:index 43 | } // namespace geos 44 | 45 | #endif // GEOS_INDEX_SWEEPLINE_SWEEPLINEOVERLAPACTION_H 46 | -------------------------------------------------------------------------------- /include/geos/geos/indexBintree.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_INDEXBINTREE_H 17 | #define GEOS_INDEXBINTREE_H 18 | 19 | namespace geos { 20 | namespace index { // geos.index 21 | 22 | /// Contains classes that implement a Binary Interval Tree index 23 | namespace bintree { // geos.index.bintree 24 | 25 | } // namespace geos.index.bintree 26 | } // namespace geos.index 27 | } // namespace geos 28 | 29 | #include 30 | #include 31 | //#include 32 | //#include 33 | //#include 34 | //#include 35 | 36 | #endif 37 | -------------------------------------------------------------------------------- /include/geos/geos/indexChain.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_INDEXCHAIN_H 16 | #define GEOS_INDEXCHAIN_H 17 | 18 | namespace geos { 19 | namespace index { // geos.index 20 | 21 | /// Contains classes that implement Monotone Chains 22 | namespace chain { // geos.index.chain 23 | 24 | } // namespace geos.index.chain 25 | } // namespace geos.index 26 | } // namespace geos 27 | 28 | #include 29 | //#include 30 | #include 31 | #include 32 | 33 | #endif 34 | 35 | -------------------------------------------------------------------------------- /include/geos/geos/indexQuadtree.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_INDEXQUADTREE_H 17 | #define GEOS_INDEXQUADTREE_H 18 | 19 | namespace geos { 20 | namespace index { // geos.index 21 | 22 | /// Contains classes that implement a Quadtree spatial index 23 | namespace quadtree { // geos.index.quadtree 24 | 25 | } // namespace geos.index.quadtree 26 | } // namespace geos.index 27 | } // namespace geos 28 | 29 | //#include 30 | //#include 31 | //#include 32 | //#include 33 | #include 34 | #include 35 | #include 36 | 37 | #endif 38 | 39 | -------------------------------------------------------------------------------- /include/geos/geos/indexStrtree.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_INDEXSTRTREE_H 17 | #define GEOS_INDEXSTRTREE_H 18 | 19 | namespace geos { 20 | namespace index { // geos.index 21 | 22 | /// Contains 2-D and 1-D versions of the Sort-Tile-Recursive (STR) tree, a query-only R-tree. 23 | namespace strtree { // geos.index.strtree 24 | 25 | } // namespace geos.index.strtree 26 | } // namespace geos.index 27 | } // namespace geos 28 | 29 | #include 30 | #include 31 | #include 32 | #include 33 | //#include 34 | #include 35 | #include 36 | 37 | #endif // GEOS_INDEXSTRTREE_H 38 | -------------------------------------------------------------------------------- /include/geos/geos/indexSweepline.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_INDEXSWEEPLINE_H 17 | #define GEOS_INDEXSWEEPLINE_H 18 | 19 | namespace geos { 20 | namespace index { // geos.index 21 | 22 | /// \brief 23 | /// Contains classes which implement a sweepline algorithm 24 | /// for scanning geometric data structures. 25 | /// 26 | namespace sweepline { // geos.index.sweepline 27 | 28 | } // namespace geos.index.sweepline 29 | } // namespace geos.index 30 | } // namespace geos 31 | 32 | //#include 33 | //#include 34 | //#include 35 | #include 36 | 37 | #endif 38 | -------------------------------------------------------------------------------- /include/geos/geos/inline.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_INLINE_H 16 | #define GEOS_INLINE_H 17 | 18 | #ifdef GEOS_INLINE 19 | # define INLINE inline 20 | #else 21 | # define INLINE 22 | #endif 23 | 24 | 25 | #endif // ndef GEOS_INLINE_H 26 | -------------------------------------------------------------------------------- /include/geos/geos/io/CLocalizer.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2008 Sean Gillies 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: ORIGINAL WORK 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_IO_CLOCALIZER_H 20 | #define GEOS_IO_CLOCALIZER_H 21 | 22 | #include 23 | 24 | #include 25 | 26 | #ifdef _MSC_VER 27 | #pragma warning(push) 28 | #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class 29 | #endif 30 | 31 | namespace geos { 32 | namespace io { 33 | 34 | /** 35 | * \class CLocalizer io.h geos.h 36 | */ 37 | class GEOS_DLL CLocalizer 38 | { 39 | public: 40 | 41 | CLocalizer(); 42 | ~CLocalizer(); 43 | 44 | private: 45 | 46 | std::string saved_locale; 47 | }; 48 | 49 | #ifdef _MSC_VER 50 | #pragma warning(pop) 51 | #endif 52 | 53 | } // namespace io 54 | } // namespace geos 55 | 56 | #endif // GEOS_IO_CLOCALIZER_H 57 | -------------------------------------------------------------------------------- /include/geos/geos/io/ParseException.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: io/ParseException.java rev. 1.13 (JTS-1.10) 17 | * 18 | **********************************************************************/ 19 | 20 | #ifndef GEOS_IO_PARSEEXCEPTION_H 21 | #define GEOS_IO_PARSEEXCEPTION_H 22 | 23 | #include 24 | 25 | #include 26 | 27 | namespace geos { 28 | namespace io { 29 | 30 | /** 31 | * \class ParseException io.h geos.h 32 | * \brief Notifies a parsing error 33 | */ 34 | class GEOS_DLL ParseException : public util::GEOSException 35 | { 36 | 37 | public: 38 | 39 | ParseException(); 40 | 41 | ParseException(const std::string& msg); 42 | 43 | ParseException(const std::string& msg, const std::string& var); 44 | 45 | ParseException(const std::string& msg, double num); 46 | 47 | ~ParseException() throw() {} 48 | 49 | private: 50 | static std::string stringify(double num); 51 | }; 52 | 53 | } // namespace io 54 | } // namespace geos 55 | 56 | #endif // #ifndef GEOS_IO_PARSEEXCEPTION_H 57 | -------------------------------------------------------------------------------- /include/geos/geos/io/StringTokenizer.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: ORIGINAL WORK 17 | * 18 | **********************************************************************/ 19 | 20 | #ifndef GEOS_IO_STRINGTOKENIZER_H 21 | #define GEOS_IO_STRINGTOKENIZER_H 22 | 23 | #include 24 | 25 | #include 26 | 27 | #ifdef _MSC_VER 28 | #pragma warning(push) 29 | #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class 30 | #endif 31 | 32 | namespace geos { 33 | namespace io { 34 | 35 | class GEOS_DLL StringTokenizer { 36 | public: 37 | enum { 38 | TT_EOF, 39 | TT_EOL, 40 | TT_NUMBER, 41 | TT_WORD 42 | }; 43 | //StringTokenizer(); 44 | StringTokenizer(const std::string& txt); 45 | ~StringTokenizer() {} 46 | int nextToken(); 47 | int peekNextToken(); 48 | double getNVal(); 49 | std::string getSVal(); 50 | private: 51 | const std::string &str; 52 | std::string stok; 53 | double ntok; 54 | std::string::const_iterator iter; 55 | 56 | // Declare type as noncopyable 57 | StringTokenizer(const StringTokenizer& other); 58 | StringTokenizer& operator=(const StringTokenizer& rhs); 59 | }; 60 | 61 | } // namespace io 62 | } // namespace geos 63 | 64 | #ifdef _MSC_VER 65 | #pragma warning(pop) 66 | #endif 67 | 68 | #endif // #ifndef GEOS_IO_STRINGTOKENIZER_H 69 | -------------------------------------------------------------------------------- /include/geos/geos/io/WKBConstants.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: io/WKBConstants.java rev. 1.1 (JTS-1.10) 17 | * 18 | **********************************************************************/ 19 | 20 | #ifndef GEOS_IO_WKBCONSTANTS_H 21 | #define GEOS_IO_WKBCONSTANTS_H 22 | 23 | namespace geos { 24 | namespace io { 25 | 26 | /// Constant values used by the WKB format 27 | namespace WKBConstants { 28 | 29 | /// Big Endian 30 | const int wkbXDR = 0; 31 | 32 | /// Little Endian 33 | const int wkbNDR = 1; 34 | 35 | const int wkbPoint = 1; 36 | const int wkbLineString = 2; 37 | const int wkbPolygon = 3; 38 | const int wkbMultiPoint = 4; 39 | const int wkbMultiLineString = 5; 40 | const int wkbMultiPolygon = 6; 41 | const int wkbGeometryCollection = 7; 42 | } 43 | 44 | } // namespace geos::io 45 | } // namespace geos 46 | 47 | #endif // #ifndef GEOS_IO_WKBCONSTANTS_H 48 | -------------------------------------------------------------------------------- /include/geos/geos/io/Writer.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: ORIGINAL WORK to be used like java.io.Writer 17 | * 18 | **********************************************************************/ 19 | 20 | #ifndef GEOS_IO_WRITER_H 21 | #define GEOS_IO_WRITER_H 22 | 23 | #include 24 | 25 | #include 26 | 27 | #ifdef _MSC_VER 28 | #pragma warning(push) 29 | #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class 30 | #endif 31 | 32 | namespace geos { 33 | namespace io { 34 | 35 | class GEOS_DLL Writer { 36 | public: 37 | Writer(); 38 | void reserve(std::size_t capacity); 39 | ~Writer(); 40 | void write(const std::string& txt); 41 | const std::string& toString(); 42 | private: 43 | std::string str; 44 | }; 45 | 46 | } // namespace geos::io 47 | } // namespace geos 48 | 49 | #ifdef _MSC_VER 50 | #pragma warning(pop) 51 | #endif 52 | 53 | #endif // #ifndef GEOS_IO_WRITER_H 54 | -------------------------------------------------------------------------------- /include/geos/geos/noding.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Kept for backward compatibility, avoid to include 17 | * directly, include instead. 18 | * 19 | **********************************************************************/ 20 | 21 | #ifndef GEOS_NODING_H 22 | #define GEOS_NODING_H 23 | 24 | //#include 25 | //#include 26 | //#include 27 | //#include 28 | //#include 29 | //#include 30 | //#include 31 | //#include 32 | //#include 33 | //#include 34 | //#include 35 | //#include 36 | //#include 37 | //#include 38 | 39 | namespace geos { 40 | 41 | /// Classes to compute nodings for arrangements of line segments and line segment sequences. 42 | namespace noding { // geos.noding 43 | 44 | } // namespace geos.noding 45 | } // namespace geos 46 | 47 | 48 | #endif 49 | 50 | -------------------------------------------------------------------------------- /include/geos/geos/noding/MCIndexNoder.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: noding/MCIndexNoder.java rev. 1.6 (JTS-1.9) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_NODINGMCINDEXNODER_INL 20 | #define GEOS_NODINGMCINDEXNODER_INL 21 | 22 | #include 23 | #include 24 | #include 25 | 26 | #include 27 | 28 | namespace geos { 29 | namespace noding { // geos::noding 30 | 31 | INLINE index::SpatialIndex& 32 | MCIndexNoder::getIndex() 33 | { 34 | return index; 35 | } 36 | 37 | INLINE std::vector* 38 | MCIndexNoder::getNodedSubstrings() const 39 | { 40 | assert(nodedSegStrings); // must have colled computeNodes before! 41 | return NodedSegmentString::getNodedSubstrings(*nodedSegStrings); 42 | } 43 | 44 | } // namespace geos::noding 45 | } // namespace geos 46 | 47 | #endif // GEOS_NODINGMCINDEXNODER_INL 48 | 49 | -------------------------------------------------------------------------------- /include/geos/geos/noding/NodableSegmentString.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_NODING_NODABLESEGMENTSTRING_H 17 | #define GEOS_NODING_NODABLESEGMENTSTRING_H 18 | 19 | #include 20 | #include // for inheritance 21 | 22 | namespace geos { 23 | namespace geom { 24 | class Coordinate; 25 | } 26 | } 27 | 28 | namespace geos { 29 | namespace noding { // geos::noding 30 | 31 | /** \brief 32 | * An interface for classes which support adding nodes to 33 | * a segment string. 34 | * 35 | * @author Martin Davis 36 | */ 37 | class GEOS_DLL NodableSegmentString : public SegmentString 38 | { 39 | private: 40 | protected: 41 | public: 42 | NodableSegmentString(const void* newContext) 43 | : 44 | SegmentString( newContext ) 45 | { } 46 | 47 | /** 48 | * Adds an intersection node for a given point and segment to this segment string. 49 | * 50 | * @param intPt the location of the intersection 51 | * @param segmentIndex the index of the segment containing the intersection 52 | */ 53 | //virtual void addIntersection( const geom::Coordinate * intPt, int segmentIndex) =0; 54 | }; 55 | 56 | } // namespace geos::noding 57 | } // namespace geos 58 | 59 | #endif // GEOS_NODING_NODABLESEGMENTSTRING_H 60 | -------------------------------------------------------------------------------- /include/geos/geos/noding/snapround/HotPixel.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: noding/snapround/HotPixel.java r320 (JTS-1.12) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_NODING_SNAPROUND_HOTPIXEL_INL 20 | #define GEOS_NODING_SNAPROUND_HOTPIXEL_INL 21 | 22 | #include 23 | #include 24 | #include 25 | 26 | namespace geos { 27 | namespace noding { // geos::noding 28 | namespace snapround { // geos::noding::snapround 29 | 30 | INLINE double 31 | HotPixel::scale(double val) const 32 | { 33 | // Math.round 34 | //return round(val*scaleFactor); 35 | return util::round(val*scaleFactor); 36 | } 37 | 38 | INLINE void 39 | HotPixel::copyScaled(const geom::Coordinate& p, geom::Coordinate& pScaled) const 40 | { 41 | pScaled.x = scale(p.x); 42 | pScaled.y = scale(p.y); 43 | } 44 | 45 | } // namespace geos::noding::snapround 46 | } // namespace geos::noding 47 | } // namespace geos 48 | 49 | #endif // GEOS_NODING_SNAPROUND_HOTPIXEL_INL 50 | 51 | -------------------------------------------------------------------------------- /include/geos/geos/nodingSnapround.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_NODING_SNAPROUND_H 17 | #define GEOS_NODING_SNAPROUND_H 18 | 19 | namespace geos { 20 | namespace noding { // geos.noding 21 | 22 | /// \brief 23 | /// Contains classes to implement the Snap Rounding algorithm for 24 | /// noding linestrings. 25 | namespace snapround { // geos.noding.snapround 26 | 27 | } // namespace geos.noding.snapround 28 | } // namespace geos.noding 29 | } // namespace geos 30 | 31 | //#include 32 | //#include 33 | //#include 34 | //#include 35 | 36 | #endif 37 | 38 | 39 | -------------------------------------------------------------------------------- /include/geos/geos/opBuffer.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2005 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_OPBUFFER_H 17 | #define GEOS_OPBUFFER_H 18 | 19 | namespace geos { 20 | namespace operation { // geos.operation 21 | 22 | /// Provides classes for computing buffers of geometries 23 | namespace buffer { 24 | } // namespace geos.operation.buffer 25 | } // namespace geos.operation 26 | } // namespace geos 27 | 28 | #include 29 | 30 | // This is needed for enum values 31 | #include 32 | 33 | //#include 34 | //#include 35 | //#include 36 | //#include 37 | //#include 38 | 39 | #endif // ndef GEOS_OPBUFFER_H 40 | 41 | -------------------------------------------------------------------------------- /include/geos/geos/opDistance.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_OPDISTANCE_H 17 | #define GEOS_OPDISTANCE_H 18 | 19 | namespace geos { 20 | namespace operation { // geos.operation 21 | 22 | /// Provides classes for computing the distance between geometries 23 | namespace distance { // geos.operation.distance 24 | 25 | } // namespace geos.operation.distance 26 | } // namespace geos.operation 27 | } // namespace geos 28 | 29 | //#include 30 | //#include 31 | #include 32 | //#include 33 | 34 | #endif 35 | 36 | -------------------------------------------------------------------------------- /include/geos/geos/opLinemerge.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_OPLINEMERGE_H 16 | #define GEOS_OPLINEMERGE_H 17 | 18 | namespace geos { 19 | namespace operation { // geos::operation 20 | 21 | /// Line merging package 22 | namespace linemerge { // geos::operation::linemerge 23 | 24 | } // namespace geos::operation::linemerge 25 | } // namespace geos::operation 26 | } // namespace geos 27 | 28 | //#include 29 | //#include 30 | //#include 31 | //#include 32 | #include 33 | //#include 34 | 35 | #endif 36 | 37 | -------------------------------------------------------------------------------- /include/geos/geos/opPolygonize.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | 16 | #ifndef GEOS_OPPOLYGONIZE_H 17 | #define GEOS_OPPOLYGONIZE_H 18 | 19 | namespace geos { 20 | namespace operation { // geos.operation 21 | namespace polygonize { // geos.operation.polygonize 22 | 23 | } // namespace geos.operation.polygonize 24 | } // namespace geos.operation 25 | } // namespace geos 26 | 27 | //#include 28 | //#include 29 | //#include 30 | //#include 31 | #include 32 | 33 | #endif 34 | 35 | -------------------------------------------------------------------------------- /include/geos/geos/opPredicate.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_OPPREDICATE_H 16 | #define GEOS_OPPREDICATE_H 17 | 18 | namespace geos { 19 | namespace operation { 20 | namespace predicate { 21 | 22 | } // namespace predicate 23 | } // namespace operation 24 | } // namespace geos 25 | 26 | //#include 27 | //#include 28 | //#include 29 | 30 | #endif // ifndef GEOS_OPPREDICATE_H 31 | -------------------------------------------------------------------------------- /include/geos/geos/opValid.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_OPVALID_H 17 | #define GEOS_OPVALID_H 18 | 19 | namespace geos { 20 | namespace operation { // geos.operation 21 | 22 | /// Provides classes for testing the validity of geometries. 23 | namespace valid { // geos.operation.valid 24 | 25 | } // namespace geos.operation.valid 26 | } // namespace geos.operation 27 | } // namespace geos 28 | 29 | //#include 30 | //#include 31 | #include 32 | //#include 33 | //#include 34 | //#include 35 | //#include 36 | #include 37 | 38 | #endif 39 | -------------------------------------------------------------------------------- /include/geos/geos/operation.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2005 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Don't include this file, rather include from 17 | * 18 | **********************************************************************/ 19 | 20 | #ifndef GEOS_OPERATION_H 21 | #define GEOS_OPERATION_H 22 | 23 | namespace geos { 24 | 25 | /// Provides classes for implementing operations on geometries 26 | namespace operation { // geos.operation 27 | 28 | } // namespace geos.operation 29 | } // namespace geos 30 | 31 | #include 32 | #include 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /include/geos/geos/operation/overlay/ElevationMatrixCell.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | *********************************************************************** 14 | * 15 | * Last port: original (by strk) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_OP_OVERLAY_ELEVATIONMATRIXCELL_H 20 | #define GEOS_OP_OVERLAY_ELEVATIONMATRIXCELL_H 21 | 22 | #include 23 | 24 | #include 25 | 26 | #ifdef _MSC_VER 27 | #pragma warning(push) 28 | #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class 29 | #endif 30 | 31 | // Forward declarations 32 | namespace geos { 33 | namespace geom { 34 | class Coordinate; 35 | } 36 | } 37 | 38 | namespace geos { 39 | namespace operation { // geos::operation 40 | namespace overlay { // geos::operation::overlay 41 | 42 | 43 | class GEOS_DLL ElevationMatrixCell { 44 | public: 45 | ElevationMatrixCell(); 46 | ~ElevationMatrixCell(); 47 | void add(const geom::Coordinate &c); 48 | void add(double z); 49 | double getAvg(void) const; 50 | double getTotal(void) const; 51 | std::string print() const; 52 | private: 53 | std::setzvals; 54 | double ztot; 55 | }; 56 | 57 | } // namespace geos::operation::overlay 58 | } // namespace geos::operation 59 | } // namespace geos 60 | 61 | #ifdef _MSC_VER 62 | #pragma warning(pop) 63 | #endif 64 | 65 | #endif // ndef GEOS_OP_OVERLAY_ELEVATIONMATRIXCELL_H 66 | -------------------------------------------------------------------------------- /include/geos/geos/operation/overlay/MinimalEdgeRing.inl: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: operation/overlay/MinimalEdgeRing.java rev. 1.13 (JTS-1.10) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_OP_OVERLAY_MINIMALEDGERING_INL 20 | #define GEOS_OP_OVERLAY_MINIMALEDGERING_INL 21 | 22 | #include 23 | 24 | #if GEOS_DEBUG 25 | #include 26 | #endif 27 | 28 | namespace geos { 29 | namespace operation { // geos::operation 30 | namespace overlay { // geos::operation::overlay 31 | 32 | INLINE void 33 | MinimalEdgeRing::setEdgeRing(geomgraph::DirectedEdge *de, geomgraph::EdgeRing *er) 34 | { 35 | de->setMinEdgeRing(er); 36 | } 37 | 38 | INLINE geomgraph::DirectedEdge* 39 | MinimalEdgeRing::getNext(geomgraph::DirectedEdge *de) 40 | { 41 | return de->getNextMin(); 42 | } 43 | 44 | INLINE 45 | MinimalEdgeRing::~MinimalEdgeRing() 46 | { 47 | #if GEOS_DEBUG 48 | std::cerr << "MinimalEdgeRing[" << this << "] dtor" << std::endl; 49 | #endif 50 | } 51 | 52 | } // namespace geos::operation::overlay 53 | } // namespace geos::operation 54 | } // namespace geos 55 | 56 | #endif // GEOS_OP_OVERLAY_MINIMALEDGERING_INL 57 | 58 | -------------------------------------------------------------------------------- /include/geos/geos/operation/overlay/OverlayNodeFactory.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: operation/overlay/OverlayNodeFactory.java rev. 1.11 (JTS-1.10) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_OP_OVERLAY_OVERLAYNODEFACTORY_H 20 | #define GEOS_OP_OVERLAY_OVERLAYNODEFACTORY_H 21 | 22 | #include 23 | 24 | #include 25 | 26 | #include // for inheritance 27 | 28 | // Forward declarations 29 | namespace geos { 30 | namespace geom { 31 | class Coordinate; 32 | } 33 | namespace geomgraph { 34 | class Node; 35 | } 36 | } 37 | 38 | namespace geos { 39 | namespace operation { // geos::operation 40 | namespace overlay { // geos::operation::overlay 41 | 42 | /** \brief 43 | * Creates nodes for use in the geomgraph::PlanarGraph constructed during 44 | * overlay operations. NOTE: also used by operation::valid 45 | */ 46 | class GEOS_DLL OverlayNodeFactory: public geomgraph::NodeFactory { 47 | public: 48 | OverlayNodeFactory():geomgraph::NodeFactory() {} 49 | geomgraph::Node* createNode(const geom::Coordinate &coord) const; 50 | static const geomgraph::NodeFactory &instance(); 51 | }; 52 | 53 | 54 | } // namespace geos::operation::overlay 55 | } // namespace geos::operation 56 | } // namespace geos 57 | 58 | #endif // ndef GEOS_OP_OVERLAY_OVERLAYNODEFACTORY_H 59 | -------------------------------------------------------------------------------- /include/geos/geos/operation/polygonize/PolygonizeEdge.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Last port: operation/polygonize/PolygonizeEdge.java rev. 1.3 (JTS-1.10) 17 | * 18 | **********************************************************************/ 19 | 20 | 21 | #ifndef GEOS_OP_POLYGONIZE_POLYGONIZEEDGE_H 22 | #define GEOS_OP_POLYGONIZE_POLYGONIZEEDGE_H 23 | 24 | #include 25 | 26 | #include // for inheritance 27 | 28 | // Forward declarations 29 | namespace geos { 30 | namespace geom { 31 | class LineString; 32 | } 33 | } 34 | 35 | namespace geos { 36 | namespace operation { // geos::operation 37 | namespace polygonize { // geos::operation::polygonize 38 | 39 | /* \brief 40 | * An edge of a polygonization graph. 41 | * 42 | * @version 1.4 43 | */ 44 | class GEOS_DLL PolygonizeEdge: public planargraph::Edge { 45 | private: 46 | // Externally owned 47 | const geom::LineString *line; 48 | public: 49 | 50 | // Keep the given pointer (won't do anything to it) 51 | PolygonizeEdge(const geom::LineString *newLine); 52 | 53 | // Just return what it was given initially 54 | const geom::LineString* getLine(); 55 | }; 56 | 57 | } // namespace geos::operation::polygonize 58 | } // namespace geos::operation 59 | } // namespace geos 60 | 61 | #endif // GEOS_OP_POLYGONIZE_POLYGONIZEEDGE_H 62 | -------------------------------------------------------------------------------- /include/geos/geos/operation/relate/RelateNodeFactory.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: operation/relate/RelateNodeFactory.java rev. 1.11 (JTS-1.10) 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_OP_RELATE_RELATENODEFACTORY_H 20 | #define GEOS_OP_RELATE_RELATENODEFACTORY_H 21 | 22 | #include 23 | 24 | #include // for RelateNodeFactory inheritance 25 | 26 | // Forward declarations 27 | namespace geos { 28 | namespace geom { 29 | class Coordinate; 30 | } 31 | namespace geomgraph { 32 | class Node; 33 | } 34 | } 35 | 36 | 37 | namespace geos { 38 | namespace operation { // geos::operation 39 | namespace relate { // geos::operation::relate 40 | 41 | /** \brief 42 | * Used by the geomgraph::NodeMap in a RelateNodeGraph to create RelateNode objects. 43 | */ 44 | class GEOS_DLL RelateNodeFactory: public geomgraph::NodeFactory { 45 | public: 46 | geomgraph::Node* createNode(const geom::Coordinate &coord) const; 47 | static const geomgraph::NodeFactory &instance(); 48 | private: 49 | RelateNodeFactory() {} 50 | }; 51 | 52 | 53 | } // namespace geos:operation:relate 54 | } // namespace geos:operation 55 | } // namespace geos 56 | 57 | #endif // GEOS_OP_RELATE_RELATENODEFACTORY_H 58 | -------------------------------------------------------------------------------- /include/geos/geos/planargraph.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2005-2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_PLANARGRAPH_H 17 | #define GEOS_PLANARGRAPH_H 18 | 19 | namespace geos { 20 | 21 | /// Contains classes to implement a planar graph data structure. 22 | namespace planargraph { // geos::planargraph 23 | 24 | /// Planargraph algorithms 25 | namespace algorithm { // geos::planargraph::algorithm 26 | 27 | } // namespace geos::planargraph::algorithm 28 | } // namespace geos::planargraph 29 | } // namespace geos 30 | 31 | //#include 32 | //#include 33 | //#include 34 | //#include 35 | //#include 36 | #include 37 | #include 38 | //#include 39 | //#include 40 | 41 | #endif 42 | 43 | -------------------------------------------------------------------------------- /include/geos/geos/precision.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2005-2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_PRECISION_H 17 | #define GEOS_PRECISION_H 18 | 19 | namespace geos { 20 | 21 | /// Provides classes for manipulating the precision model of Geometries 22 | namespace precision { // geos.precision 23 | 24 | } // namespace geos.precision 25 | } // namespace geos 26 | 27 | //#include 28 | #include 29 | //#include 30 | #include 31 | #include 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /include/geos/geos/spatialIndex.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2006 Refractions Research Inc. 7 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_INDEX_H 17 | #define GEOS_INDEX_H 18 | 19 | namespace geos { 20 | 21 | /// Provides classes for various kinds of spatial indexes. 22 | namespace index { 23 | 24 | } // namespace geos.index 25 | } // namespace geos 26 | 27 | #include 28 | #include 29 | 30 | #endif // GEOS_INDEX_H 31 | -------------------------------------------------------------------------------- /include/geos/geos/triangulate/quadedge/LocateFailureException.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2012 Excensus LLC. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: triangulate/quadedge/LocateFailureException.java r524 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_TRIANGULATE_QUADEDGE_LOCATEFAILUREEXCEPTION_H 20 | #define GEOS_TRIANGULATE_QUADEDGE_LOCATEFAILUREEXCEPTION_H 21 | 22 | #include 23 | 24 | #include 25 | 26 | namespace geos { 27 | namespace triangulate { //geos.triangulate 28 | namespace quadedge { //geos.triangulate.quadedge 29 | 30 | class GEOS_DLL LocateFailureException : public geos::util::GEOSException { 31 | public: 32 | LocateFailureException(std::string const&msg); 33 | }; 34 | 35 | } //namespace geos.triangulate.quadedge 36 | } //namespace geos.triangulate 37 | } //namespace goes 38 | 39 | #endif //GEOS_TRIANGULATE_QUADEDGE_LOCATEFAILUREEXCEPTION_H 40 | 41 | -------------------------------------------------------------------------------- /include/geos/geos/triangulate/quadedge/QuadEdgeLocator.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2012 Excensus LLC. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: triangulate/quadedge/QuadEdgeLocator.java r524 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_TRIANGULATE_QUADEDGE_QUADEDGELOCATOR_H 20 | #define GEOS_TRIANGULATE_QUADEDGE_QUADEDGELOCATOR_H 21 | 22 | namespace geos { 23 | namespace triangulate { //geos.triangulate 24 | namespace quadedge { //geos.triangulate.quadedge 25 | 26 | class Vertex; 27 | class QuadEdge; 28 | 29 | /** 30 | * An interface for classes which locate an edge in a {@link QuadEdgeSubdivision} 31 | * which either contains a given {@link Vertex} V 32 | * or is an edge of a triangle which contains V. 33 | * Implementors may utilized different strategies for 34 | * optimizing locating containing edges/triangles. 35 | * 36 | * @author JTS: Martin Davis 37 | * @author Ben Campbell 38 | */ 39 | class QuadEdgeLocator { 40 | public: 41 | virtual ~QuadEdgeLocator() = 0; //not implemented 42 | virtual QuadEdge* locate(const Vertex &v) = 0; //not implemented 43 | }; 44 | 45 | } //namespace geos.triangulate.quadedge 46 | } //namespace geos.triangulate 47 | } //namespace goes 48 | 49 | #endif //GEOS_TRIANGULATE_QUADEDGE_QUADEDGELOCATOR_H 50 | -------------------------------------------------------------------------------- /include/geos/geos/triangulate/quadedge/TriangleVisitor.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2012 Excensus LLC. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | ********************************************************************** 14 | * 15 | * Last port: triangulate/quadedge/TriangleVisitor.java r524 16 | * 17 | **********************************************************************/ 18 | 19 | #ifndef GEOS_TRIANGULATE_QUADEDGE_TRIANGLEVISITOR_H 20 | #define GEOS_TRIANGULATE_QUADEDGE_TRIANGLEVISITOR_H 21 | 22 | #include 23 | 24 | namespace geos { 25 | namespace triangulate { //geos.triangulate 26 | namespace quadedge { //geos.triangulate.quadedge 27 | 28 | /** 29 | * An interface for algorithms which process the triangles in a {@link QuadEdgeSubdivision}. 30 | * 31 | * @author JTS: Martin Davis 32 | * @author Benjamin Campbell 33 | */ 34 | class GEOS_DLL TriangleVisitor { 35 | public: 36 | /** 37 | * Visits the {@link QuadEdge}s of a triangle. 38 | * 39 | * @param triEdges an array of the 3 quad edges in a triangle (in CCW order) 40 | */ 41 | virtual void visit(QuadEdge* triEdges[3]) = 0; 42 | virtual ~TriangleVisitor() = 0 ; 43 | private: 44 | } ; 45 | 46 | } //namespace geos.triangulate.quadedge 47 | } //namespace geos.triangulate 48 | } //namespace goes 49 | 50 | #endif // GEOS_TRIANGULATE_QUADEDGE_TRIANGLEVISITOR_H 51 | -------------------------------------------------------------------------------- /include/geos/geos/unload.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #include 16 | 17 | #ifndef GEOS_UNLOAD_H 18 | #define GEOS_UNLOAD_H 19 | //xie add for realse static memory 2003,10,06 20 | namespace geos { 21 | namespace io { 22 | 23 | class GEOS_DLL Unload 24 | { 25 | private: 26 | Unload(void) {} 27 | ~Unload(void) {} 28 | public: 29 | static void Release(); 30 | }; 31 | 32 | } 33 | } 34 | #endif 35 | -------------------------------------------------------------------------------- /include/geos/geos/util.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | ********************************************************************** 15 | * 16 | * Utility header to retain a bit of backward compatibility. 17 | * Try to avoid including this header directly. 18 | * 19 | **********************************************************************/ 20 | 21 | #ifndef GEOS_UTIL_H 22 | #define GEOS_UTIL_H 23 | 24 | //#include 25 | #include 26 | #include 27 | #include 28 | //#include 29 | //#include 30 | //#include 31 | #include 32 | //#include 33 | 34 | // 35 | // Private macros definition 36 | // 37 | 38 | namespace geos 39 | { 40 | template 41 | void ignore_unused_variable_warning(T const& ) {} 42 | } 43 | 44 | 45 | #endif // GEOS_UTIL_H 46 | -------------------------------------------------------------------------------- /include/geos/geos/util/Assert.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_UTIL_ASSERT_H 17 | #define GEOS_UTIL_ASSERT_H 18 | 19 | #include 20 | #include 21 | 22 | // Forward declarations 23 | namespace geos { 24 | namespace geom { 25 | class Coordinate; 26 | } 27 | } 28 | 29 | namespace geos { 30 | namespace util { // geos.util 31 | 32 | class GEOS_DLL Assert { 33 | public: 34 | 35 | static void isTrue(bool assertion, const std::string& message); 36 | 37 | static void isTrue(bool assertion) { 38 | isTrue(assertion, std::string()); 39 | } 40 | 41 | 42 | static void equals(const geom::Coordinate& expectedValue, 43 | const geom::Coordinate& actualValue, 44 | const std::string& message); 45 | 46 | static void equals(const geom::Coordinate& expectedValue, 47 | const geom::Coordinate& actualValue) 48 | { 49 | equals(expectedValue, actualValue, std::string()); 50 | } 51 | 52 | 53 | static void shouldNeverReachHere(const std::string& message); 54 | 55 | static void shouldNeverReachHere() { shouldNeverReachHere(std::string()); } 56 | }; 57 | 58 | } // namespace geos.util 59 | } // namespace geos 60 | 61 | 62 | #endif // GEOS_UTIL_ASSERT_H 63 | -------------------------------------------------------------------------------- /include/geos/geos/util/AssertionFailedException.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_UTIL_ASSERTIONFAILEDEXCEPTION_H 17 | #define GEOS_UTIL_ASSERTIONFAILEDEXCEPTION_H 18 | 19 | #include 20 | #include 21 | 22 | #include 23 | 24 | namespace geos { 25 | namespace util { // geos.util 26 | 27 | /** \class AssertionFailedException util.h geos.h 28 | * \brief Indicates a bug in GEOS code. 29 | */ 30 | class GEOS_DLL AssertionFailedException: public GEOSException { 31 | 32 | public: 33 | 34 | AssertionFailedException() 35 | : 36 | GEOSException("AssertionFailedException", "") 37 | {} 38 | 39 | AssertionFailedException(const std::string& msg) 40 | : 41 | GEOSException("AssertionFailedException", msg) 42 | {} 43 | 44 | ~AssertionFailedException() throw() {} 45 | }; 46 | 47 | } // namespace geos.util 48 | } // namespace geos 49 | 50 | 51 | #endif // GEOS_UTIL_ASSERTIONFAILEDEXCEPTION_H 52 | -------------------------------------------------------------------------------- /include/geos/geos/util/CoordinateArrayFilter.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_UTIL_COORDINATEARRAYFILTER_H 17 | #define GEOS_UTIL_COORDINATEARRAYFILTER_H 18 | 19 | #include 20 | #include 21 | 22 | #include 23 | #include 24 | #include 25 | 26 | namespace geos { 27 | namespace util { // geos::util 28 | 29 | /** 30 | * A CoordinateFilter that adds read-only pointers 31 | * to every Coordinate in a Geometry to a given 32 | * vector. 33 | * 34 | * Last port: util/CoordinateArrayFilter.java rev. 1.15 35 | */ 36 | class GEOS_DLL CoordinateArrayFilter: public geom::CoordinateFilter { 37 | private: 38 | geom::Coordinate::ConstVect &pts; // target vector reference 39 | public: 40 | /** 41 | * Constructs a CoordinateArrayFilter. 42 | * 43 | * @param target The destination vector. 44 | */ 45 | CoordinateArrayFilter(geom::Coordinate::ConstVect& target) 46 | : 47 | pts(target) 48 | {} 49 | 50 | virtual ~CoordinateArrayFilter() {} 51 | 52 | virtual void filter_ro(const geom::Coordinate *coord) 53 | { 54 | pts.push_back(coord); 55 | } 56 | }; 57 | 58 | 59 | } // namespace geos.util 60 | } // namespace geos 61 | 62 | #endif // GEOS_UTIL_COORDINATEARRAYFILTER_H 63 | -------------------------------------------------------------------------------- /include/geos/geos/util/GEOSException.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_UTIL_GEOSEXCEPTION_H 17 | #define GEOS_UTIL_GEOSEXCEPTION_H 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | #ifdef _MSC_VER 24 | #pragma warning(push) 25 | #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class 26 | #endif 27 | 28 | namespace geos { 29 | namespace util { // geos.util 30 | 31 | /** 32 | * 33 | * \brief Base class for all GEOS exceptions. 34 | * 35 | * Exceptions are thrown as pointers to this type. 36 | * Use toString() to get a readable message. 37 | */ 38 | class GEOS_DLL GEOSException: public std::exception { 39 | 40 | std::string _msg; 41 | 42 | public: 43 | 44 | GEOSException() 45 | : 46 | _msg("Unknown error") 47 | {} 48 | 49 | GEOSException(std::string const& msg) 50 | : 51 | _msg(msg) 52 | {} 53 | 54 | GEOSException(std::string const& name, std::string const& msg) 55 | : 56 | _msg(name+": "+msg) 57 | {} 58 | 59 | virtual ~GEOSException() throw() 60 | {} 61 | 62 | const char* what() const throw() 63 | { 64 | return _msg.c_str(); 65 | } 66 | 67 | }; 68 | 69 | } // namespace geos.util 70 | } // namespace geos 71 | 72 | #ifdef _MSC_VER 73 | #pragma warning(pop) 74 | #endif 75 | 76 | #endif // GEOS_UTIL_GEOSEXCEPTION_H 77 | -------------------------------------------------------------------------------- /include/geos/geos/util/IllegalArgumentException.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_UTIL_ILLEGALARGUMENTEXCEPTION_H 17 | #define GEOS_UTIL_ILLEGALARGUMENTEXCEPTION_H 18 | 19 | #include 20 | #include 21 | 22 | #include 23 | 24 | namespace geos { 25 | namespace util { // geos::util 26 | 27 | /** 28 | * \brief Indicates one or more illegal arguments. 29 | * 30 | * This exception is thrown - for example - when 31 | * trying to apply set-theoretic methods to a 32 | * GeometryCollection object. 33 | */ 34 | class GEOS_DLL IllegalArgumentException: public GEOSException { 35 | public: 36 | IllegalArgumentException() 37 | : 38 | GEOSException("IllegalArgumentException", "") 39 | {} 40 | 41 | IllegalArgumentException(const std::string& msg) 42 | : 43 | GEOSException("IllegalArgumentException", msg) 44 | {} 45 | 46 | ~IllegalArgumentException() throw() {} 47 | }; 48 | 49 | } // namespace geos::util 50 | } // namespace geos 51 | 52 | 53 | #endif // GEOS_UTIL_ILLEGALARGUMENTEXCEPTION_H 54 | -------------------------------------------------------------------------------- /include/geos/geos/util/IllegalStateException.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2011 Sandro Santilli 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | 15 | #ifndef GEOS_UTIL_ILLEGALSTATEEXCEPTION_H 16 | #define GEOS_UTIL_ILLEGALSTATEEXCEPTION_H 17 | 18 | #include 19 | #include 20 | 21 | #include 22 | 23 | namespace geos { 24 | namespace util { // geos::util 25 | 26 | /// Indicates an illegal state 27 | class GEOS_DLL IllegalStateException: public GEOSException { 28 | public: 29 | IllegalStateException() 30 | : 31 | GEOSException("IllegalStateException", "") 32 | {} 33 | 34 | IllegalStateException(const std::string& msg) 35 | : 36 | GEOSException("IllegalStateException", msg) 37 | {} 38 | 39 | ~IllegalStateException() throw() {} 40 | }; 41 | 42 | } // namespace geos::util 43 | } // namespace geos 44 | 45 | 46 | #endif // GEOS_UTIL_ILLEGALSTATEEXCEPTION_H 47 | -------------------------------------------------------------------------------- /include/geos/geos/util/Machine.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2009 Vivid Solutions Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | #ifndef GEOS_UTIL_MACHINE_H_INCLUDED 15 | #define GEOS_UTIL_MACHINE_H_INCLUDED 16 | 17 | /** 18 | * Check endianness of current machine. 19 | * @return 0 for big_endian | xdr; 1 == little_endian | ndr 20 | */ 21 | inline int getMachineByteOrder() 22 | { 23 | static int endian_check = 1; // don't modify !! 24 | return *((char *)&endian_check); 25 | } 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /include/geos/geos/util/TopologyException.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_UTIL_TOPOLOGYEXCEPTION_H 17 | #define GEOS_UTIL_TOPOLOGYEXCEPTION_H 18 | 19 | #include 20 | #include 21 | #include // to be removed when .inl is available 22 | 23 | #include 24 | 25 | namespace geos { 26 | namespace util { // geos.util 27 | 28 | /** 29 | * \class TopologyException util.h geos.h 30 | * 31 | * \brief 32 | * Indicates an invalid or inconsistent topological situation encountered 33 | * during processing 34 | */ 35 | class GEOS_DLL TopologyException: public GEOSException { 36 | public: 37 | TopologyException() 38 | : 39 | GEOSException("TopologyException", "") 40 | {} 41 | 42 | TopologyException(const std::string& msg) 43 | : 44 | GEOSException("TopologyException", msg) 45 | {} 46 | 47 | TopologyException(const std::string& msg, const geom::Coordinate& newPt) 48 | : 49 | GEOSException("TopologyException", msg + " at " + newPt.toString()), 50 | pt(newPt) 51 | {} 52 | 53 | ~TopologyException() throw() {} 54 | geom::Coordinate& getCoordinate() { return pt; } 55 | private: 56 | geom::Coordinate pt; 57 | }; 58 | 59 | } // namespace geos::util 60 | } // namespace geos 61 | 62 | 63 | #endif // GEOS_UTIL_TOPOLOGYEXCEPTION_H 64 | -------------------------------------------------------------------------------- /include/geos/geos/util/UnsupportedOperationException.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_UTIL_UNSUPPORTEDOPERATIONEXCEPTION_H 17 | #define GEOS_UTIL_UNSUPPORTEDOPERATIONEXCEPTION_H 18 | 19 | #include 20 | 21 | #include 22 | 23 | #include 24 | 25 | namespace geos { 26 | namespace util { // geos::util 27 | 28 | /** 29 | * \class UnsupportedOperationException util.h geos.h 30 | * 31 | * \brief Indicates that the requested operation is unsupported. 32 | * 33 | * This exception is thrown - for example - when requesting the 34 | * X or Y member of an empty Point 35 | */ 36 | class GEOS_DLL UnsupportedOperationException: public GEOSException { 37 | public: 38 | UnsupportedOperationException() 39 | : 40 | GEOSException("UnsupportedOperationException", "") 41 | {} 42 | 43 | UnsupportedOperationException(const std::string& msg) 44 | : 45 | GEOSException("UnsupportedOperationException", msg) 46 | {} 47 | 48 | ~UnsupportedOperationException() throw() {} 49 | }; 50 | 51 | } // namespace geos::util 52 | } // namespace geos 53 | 54 | 55 | #endif // GEOS_UTIL_UNSUPPORTEDOPERATIONEXCEPTION_H 56 | -------------------------------------------------------------------------------- /include/geos/geos/util/math.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2001-2002 Vivid Solutions Inc. 7 | * Copyright (C) 2006 Refractions Research Inc. 8 | * 9 | * This is free software; you can redistribute and/or modify it under 10 | * the terms of the GNU Lesser General Public Licence as published 11 | * by the Free Software Foundation. 12 | * See the COPYING file for more information. 13 | * 14 | **********************************************************************/ 15 | 16 | #ifndef GEOS_UTIL_MATH_H 17 | #define GEOS_UTIL_MATH_H 18 | 19 | namespace geos { namespace util { 20 | 21 | /// Symmetric Rounding Algorithm 22 | double sym_round(double val); 23 | 24 | /// Asymmetric Rounding Algorithm 25 | double java_math_round(double val); 26 | 27 | /// Equivalent to Java Math.rint() 28 | double rint_vc(double val); 29 | 30 | /// Default rounding method for GEOS 31 | /// 32 | /// @note Always use this rounding method, to easy easy switching 33 | /// between different rounding method for the whole codebase. 34 | inline double round(double val) 35 | { 36 | return java_math_round(val); 37 | } 38 | 39 | }} // namespace geos::util 40 | 41 | #endif // GEOS_UTIL_MATH_H 42 | -------------------------------------------------------------------------------- /include/geos/geos/version.h: -------------------------------------------------------------------------------- 1 | /********************************************************************** 2 | * 3 | * GEOS - Geometry Engine Open Source 4 | * http://geos.osgeo.org 5 | * 6 | * Copyright (C) 2007 Refractions Research Inc. 7 | * 8 | * This is free software; you can redistribute and/or modify it under 9 | * the terms of the GNU Lesser General Public Licence as published 10 | * by the Free Software Foundation. 11 | * See the COPYING file for more information. 12 | * 13 | **********************************************************************/ 14 | #ifndef GEOS_VERSION_H_INCLUDED 15 | #define GEOS_VERSION_H_INCLUDED 16 | 17 | #ifndef GEOS_VERSION_MAJOR 18 | #define GEOS_VERSION_MAJOR 3 19 | #endif 20 | 21 | #ifndef GEOS_VERSION_MINOR 22 | #define GEOS_VERSION_MINOR 6 23 | #endif 24 | 25 | #ifndef GEOS_VERSION_PATCH 26 | #define GEOS_VERSION_PATCH 1 27 | #endif 28 | 29 | #ifndef GEOS_VERSION 30 | #define GEOS_VERSION "3.6.1" 31 | #endif 32 | 33 | #ifndef GEOS_JTS_PORT 34 | #define GEOS_JTS_PORT "1.13.0" 35 | #endif 36 | 37 | #endif // GEOS_VERSION_H_INCLUDED 38 | -------------------------------------------------------------------------------- /include/proj/org_proj4_Projections.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | /* Header for class org_proj4_Projections */ 4 | 5 | #ifndef _Included_org_proj4_Projections 6 | #define _Included_org_proj4_Projections 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | /* 11 | * Class: org_proj4_Projections 12 | * Method: getProjInfo 13 | * Signature: (Ljava/lang/String;)Ljava/lang/String; 14 | */ 15 | JNIEXPORT jstring JNICALL Java_org_proj4_Projections_getProjInfo 16 | (JNIEnv *, jobject, jstring); 17 | 18 | /* 19 | * Class: org_proj4_Projections 20 | * Method: getEllipsInfo 21 | * Signature: (Ljava/lang/String;)Ljava/lang/String; 22 | */ 23 | JNIEXPORT jstring JNICALL Java_org_proj4_Projections_getEllipsInfo 24 | (JNIEnv *, jobject, jstring); 25 | 26 | /* 27 | * Class: org_proj4_Projections 28 | * Method: transform 29 | * Signature: ([D[D[DLjava/lang/String;Ljava/lang/String;JI)V 30 | */ 31 | JNIEXPORT void JNICALL Java_org_proj4_Projections_transform 32 | (JNIEnv *, jobject, jdoubleArray, jdoubleArray, jdoubleArray, jstring, jstring, jlong, jint); 33 | 34 | #ifdef __cplusplus 35 | } 36 | #endif 37 | #endif 38 | -------------------------------------------------------------------------------- /lib/i386/libcfitsio.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libcfitsio.a -------------------------------------------------------------------------------- /lib/i386/libcrypto.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libcrypto.a -------------------------------------------------------------------------------- /lib/i386/libcurl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libcurl.a -------------------------------------------------------------------------------- /lib/i386/libdf.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libdf.a -------------------------------------------------------------------------------- /lib/i386/libexpat.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libexpat.a -------------------------------------------------------------------------------- /lib/i386/libfreexl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libfreexl.a -------------------------------------------------------------------------------- /lib/i386/libgdal.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libgdal.a -------------------------------------------------------------------------------- /lib/i386/libgeos.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libgeos.a -------------------------------------------------------------------------------- /lib/i386/libgeos_c.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libgeos_c.a -------------------------------------------------------------------------------- /lib/i386/libgeotiff.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libgeotiff.a -------------------------------------------------------------------------------- /lib/i386/libgif.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libgif.a -------------------------------------------------------------------------------- /lib/i386/libhdf5.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libhdf5.a -------------------------------------------------------------------------------- /lib/i386/libhdf5_cpp.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libhdf5_cpp.a -------------------------------------------------------------------------------- /lib/i386/libhdf5_hl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libhdf5_hl.a -------------------------------------------------------------------------------- /lib/i386/libhdf5_hl_cpp.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libhdf5_hl_cpp.a -------------------------------------------------------------------------------- /lib/i386/libintl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libintl.a -------------------------------------------------------------------------------- /lib/i386/libjasper.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libjasper.a -------------------------------------------------------------------------------- /lib/i386/libjpeg.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libjpeg.a -------------------------------------------------------------------------------- /lib/i386/libjson-c.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libjson-c.a -------------------------------------------------------------------------------- /lib/i386/libkea.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libkea.a -------------------------------------------------------------------------------- /lib/i386/liblzma.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/liblzma.a -------------------------------------------------------------------------------- /lib/i386/libmariadbclient.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libmariadbclient.a -------------------------------------------------------------------------------- /lib/i386/libmfhdf.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libmfhdf.a -------------------------------------------------------------------------------- /lib/i386/libnetcdf.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libnetcdf.a -------------------------------------------------------------------------------- /lib/i386/libopenjp2.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libopenjp2.a -------------------------------------------------------------------------------- /lib/i386/libpng16.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libpng16.a -------------------------------------------------------------------------------- /lib/i386/libpq.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libpq.a -------------------------------------------------------------------------------- /lib/i386/libproj.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libproj.a -------------------------------------------------------------------------------- /lib/i386/libspatialite.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libspatialite.a -------------------------------------------------------------------------------- /lib/i386/libsqlite3.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libsqlite3.a -------------------------------------------------------------------------------- /lib/i386/libssh2.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libssh2.a -------------------------------------------------------------------------------- /lib/i386/libssl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libssl.a -------------------------------------------------------------------------------- /lib/i386/libszip.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libszip.a -------------------------------------------------------------------------------- /lib/i386/libtiff.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libtiff.a -------------------------------------------------------------------------------- /lib/i386/libwebp.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libwebp.a -------------------------------------------------------------------------------- /lib/i386/libxdr.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libxdr.a -------------------------------------------------------------------------------- /lib/i386/libxml2.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/i386/libxml2.a -------------------------------------------------------------------------------- /lib/x64/libcfitsio.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libcfitsio.a -------------------------------------------------------------------------------- /lib/x64/libcrypto.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libcrypto.a -------------------------------------------------------------------------------- /lib/x64/libcurl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libcurl.a -------------------------------------------------------------------------------- /lib/x64/libdf.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libdf.a -------------------------------------------------------------------------------- /lib/x64/libexpat.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libexpat.a -------------------------------------------------------------------------------- /lib/x64/libfreexl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libfreexl.a -------------------------------------------------------------------------------- /lib/x64/libgdal.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libgdal.a -------------------------------------------------------------------------------- /lib/x64/libgeos.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libgeos.a -------------------------------------------------------------------------------- /lib/x64/libgeos_c.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libgeos_c.a -------------------------------------------------------------------------------- /lib/x64/libgeotiff.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libgeotiff.a -------------------------------------------------------------------------------- /lib/x64/libgif.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libgif.a -------------------------------------------------------------------------------- /lib/x64/libhdf5.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libhdf5.a -------------------------------------------------------------------------------- /lib/x64/libhdf5_cpp.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libhdf5_cpp.a -------------------------------------------------------------------------------- /lib/x64/libhdf5_hl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libhdf5_hl.a -------------------------------------------------------------------------------- /lib/x64/libhdf5_hl_cpp.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libhdf5_hl_cpp.a -------------------------------------------------------------------------------- /lib/x64/libintl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libintl.a -------------------------------------------------------------------------------- /lib/x64/libjasper.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libjasper.a -------------------------------------------------------------------------------- /lib/x64/libjpeg.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libjpeg.a -------------------------------------------------------------------------------- /lib/x64/libjson-c.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libjson-c.a -------------------------------------------------------------------------------- /lib/x64/libkea.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libkea.a -------------------------------------------------------------------------------- /lib/x64/liblzma.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/liblzma.a -------------------------------------------------------------------------------- /lib/x64/libmariadbclient.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libmariadbclient.a -------------------------------------------------------------------------------- /lib/x64/libmfhdf.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libmfhdf.a -------------------------------------------------------------------------------- /lib/x64/libnetcdf.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libnetcdf.a -------------------------------------------------------------------------------- /lib/x64/libopenjp2.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libopenjp2.a -------------------------------------------------------------------------------- /lib/x64/libpng16.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libpng16.a -------------------------------------------------------------------------------- /lib/x64/libpq.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libpq.a -------------------------------------------------------------------------------- /lib/x64/libproj.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libproj.a -------------------------------------------------------------------------------- /lib/x64/libspatialite.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libspatialite.a -------------------------------------------------------------------------------- /lib/x64/libsqlite3.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libsqlite3.a -------------------------------------------------------------------------------- /lib/x64/libssh2.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libssh2.a -------------------------------------------------------------------------------- /lib/x64/libssl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libssl.a -------------------------------------------------------------------------------- /lib/x64/libszip.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libszip.a -------------------------------------------------------------------------------- /lib/x64/libtiff.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libtiff.a -------------------------------------------------------------------------------- /lib/x64/libwebp.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libwebp.a -------------------------------------------------------------------------------- /lib/x64/libxdr.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libxdr.a -------------------------------------------------------------------------------- /lib/x64/libxml2.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/lib/x64/libxml2.a -------------------------------------------------------------------------------- /rtools32.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | RCONFIG="/c/Progra~1/R/R-3.4.3/bin/i386/R CMD config" 3 | CXX11="`$RCONFIG CXX11`" 4 | CXX11STD="`$RCONFIG CXX11STD`" 5 | export CXX="$CXX11 $CXX11STD -DCURL_STATICLIB -DLIBXML_STATIC -DOPJ_STATIC -DJAS_DLL=0" 6 | export CXXCPP="`$RCONFIG CXXCPP`" 7 | export CXXFLAGS="`$RCONFIG CXXFLAGS`" 8 | export CC="`$RCONFIG CC` -DCURL_STATICLIB -DLIBXML_STATIC -DOPJ_STATIC -DJAS_DLL=0" 9 | export CPP="`$RCONFIG CPP`" 10 | export CFLAGS="`$RCONFIG CFLAGS`" 11 | 12 | # Link against mingw64 libs 13 | export CPPFLAGS="-I/mingw32/include -I/usr/local/include -DCURL_STATICLIB -DLIBXML_STATIC -DOPJ_STATIC" 14 | export LDFLAGS="-L/mingw32/lib -L/usr/local/lib" 15 | export LIBS="-L/mingw32/lib -L/usr/local/lib -lxdr" 16 | 17 | # To use 'ar' and stuff from Rtools as well 18 | #RBINPATH=`dirname $CC` 19 | #RBINPATH=`cygpath $RBINPATH` 20 | #export PATH="$RBINPATH:$PATH" 21 | -------------------------------------------------------------------------------- /rtools64.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | RCONFIG="/c/Progra~1/R/R-3.4.3/bin/x64/R CMD config" 3 | CXX11="`$RCONFIG CXX11`" 4 | CXX11STD="`$RCONFIG CXX11STD`" 5 | export CXX="$CXX11 $CXX11STD -DCURL_STATICLIB -DLIBXML_STATIC -DOPJ_STATIC -DJAS_DLL=0" 6 | export CXXCPP="`$RCONFIG CXXCPP`" 7 | export CXXFLAGS="`$RCONFIG CXXFLAGS`" 8 | export CC="`$RCONFIG CC` -DCURL_STATICLIB -DLIBXML_STATIC -DOPJ_STATIC -DJAS_DLL=0" 9 | export CPP="`$RCONFIG CPP`" 10 | export CFLAGS="`$RCONFIG CFLAGS`" 11 | 12 | # Link against mingw64 libs 13 | export CPPFLAGS="-I/mingw64/include -I/usr/local/include -DCURL_STATICLIB -DLIBXML_STATIC -DOPJ_STATIC" 14 | export LDFLAGS="-L/mingw64/lib -L/usr/local/lib" 15 | export LIBS="-L/mingw64/lib -L/usr/local/lib -lxdr" 16 | 17 | # To use 'ar' and stuff from Rtools as well 18 | #RBINPATH=`dirname $CC` 19 | #RBINPATH=`cygpath $RBINPATH` 20 | #export PATH="$RBINPATH:$PATH" 21 | -------------------------------------------------------------------------------- /share/gdal/default.rsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/gdal/default.rsc -------------------------------------------------------------------------------- /share/gdal/epsg.wkt: -------------------------------------------------------------------------------- 1 | include esri_extra.wkt 2 | include cubewerx_extra.wkt 3 | -------------------------------------------------------------------------------- /share/gdal/gcs.override.csv: -------------------------------------------------------------------------------- 1 | "COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","DATUM_CODE","DATUM_NAME","GREENWICH_DATUM","UOM_CODE","ELLIPSOID_CODE","PRIME_MERIDIAN_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE","COORD_OP_CODE","COORD_OP_CODE_MULTI","COORD_OP_METHOD_CODE","DX","DY","DZ","RX","RY","RZ","DS" 2 | # 3 | # NOTICE: The master version of this file is in the libgeotiff subversion at: 4 | # 5 | # https://svn.osgeo.org/metacrs/geotiff/trunk/libgeotiff/csv/gcs.override.csv 6 | # 7 | # Do *not* change other copies without upstreaming the results to libgeotiff. 8 | -------------------------------------------------------------------------------- /share/gdal/gdalicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/gdal/gdalicon.png -------------------------------------------------------------------------------- /share/gdal/gt_ellips.csv: -------------------------------------------------------------------------------- 1 | NAME,CODE,A,B,RF 2 | Airy 1830 ,AA,6377563.396,6356256.9090,299.324964600 3 | Modified Airy ,AM,6377340.189,6356034.4480,299.324964600 4 | Australian National ,AN,6378160.000,6356774.7190,298.250000000 5 | Bessel 1841(Namibia) ,BN,6377483.865,6356165.3830,299.152812800 6 | Bessel 1841 ,BR,6377397.155,6356078.9630,299.152812800 7 | Clarke 1866 ,CC,6378206.400,6356583.8000,294.978698200 8 | Clarke 1880 ,CD,6378249.145,6356514.8700,293.465000000 9 | Everest (India 1830) ,EA,6377276.345,6356075.4130,300.801700000 10 | Everest (E. Malasia, Brunei) ,EB,6377298.556,6356097.5500,300.801700000 11 | Everest 1956 (India) ,EC,6377301.243,6356100.2280,300.801700000 12 | Everest 1969 (West Malasia) ,ED,6377295.664,6356094.6680,300.801700000 13 | Everest 1948(W.Mals. & Sing.) ,EE,6377304.063,6356103.0390,300.801700000 14 | Everest (Pakistan) ,EF,6377309.613,6356109.5710,300.801700000 15 | Mod. Fischer 1960(South Asia) ,FA,6378155.000,6356773.3200,298.300000000 16 | Helmert 1906 ,HE,6378200.000,6356818.1700,298.300000000 17 | Hough 1960 ,HO,6378270.000,6356794.3430,297.000000000 18 | Indonesian 1974 ,ID,6378160.000,6356774.5040,298.247000000 19 | International 1924 ,IN,6378388.000,6356911.9460,297.000000000 20 | Krassovsky 1940 ,KA,6378245.000,6356863.0190,298.300000000 21 | GRS 80 ,RF,6378137.000,6356752.3141,298.257222101 22 | South American 1969 ,SA,6378160.000,6356774.7190,298.250000000 23 | WGS 72 ,WD,6378135.000,6356750.5200,298.260000000 24 | WGS 84 ,WE,6378137.000,6356752.3142,298.257223563 25 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_AdmArea.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | AdmArea 4 | AdmArea 5 | urn:ogc:def:crs:EPSG::6668 6 | area 7 | Polygon 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | admCode 55 | admCode 56 | String 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_AdmBdry.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | AdmBdry 4 | AdmBdry 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_AdmPt.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | AdmPt 4 | AdmPt 5 | urn:ogc:def:crs:EPSG::6668 6 | pos 7 | Point 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | admCode 55 | admCode 56 | String 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_BldA.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | BldA 4 | BldA 5 | urn:ogc:def:crs:EPSG::6668 6 | area 7 | Polygon 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_BldL.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | BldL 4 | BldL 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_Cntr.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | Cntr 4 | Cntr 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | alti 50 | alti 51 | Real 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_CommBdry.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | CommBdry 4 | CommBdry 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_CommPt.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | CommPt 4 | CommPt 5 | urn:ogc:def:crs:EPSG::6668 6 | pos 7 | Point 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | admCode 55 | admCode 56 | String 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_Cstline.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | Cstline 4 | Cstline 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_ElevPt.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | ElevPt 4 | ElevPt 5 | urn:ogc:def:crs:EPSG::6668 6 | pos 7 | Point 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | alti 50 | alti 51 | Real 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_LeveeEdge.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | LeveeEdge 4 | LeveeEdge 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | name 45 | name 46 | String 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_RailCL.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | RailCL 4 | RailCL 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_RdASL.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | RdASL 4 | RdASL 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_RdArea.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | RdArea 4 | RdArea 5 | urn:ogc:def:crs:EPSG::6668 6 | area 7 | Polygon 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | name 45 | name 46 | String 47 | 48 | 49 | admOffice 50 | admOffice 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_RdCompt.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | RdCompt 4 | RdCompt 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | admOffice 55 | admOffice 56 | String 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_RdEdg.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | RdEdg 4 | RdEdg 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | admOffice 55 | admOffice 56 | String 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_RdMgtBdry.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | RdMgtBdry 4 | RdMgtBdry 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | name 45 | name 46 | String 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_RdSgmtA.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | RdSgmtA 4 | RdSgmtA 5 | urn:ogc:def:crs:EPSG::6668 6 | area 7 | Polygon 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | admOffice 55 | admOffice 56 | String 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_RvrMgtBdry.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | RvrMgtBdry 4 | RvrMgtBdry 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | name 45 | name 46 | String 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_SBAPt.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | SBAPt 4 | SBAPt 5 | urn:ogc:def:crs:EPSG::6668 6 | pos 7 | Point 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | sbaNo 45 | sbaNo 46 | String 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_SBArea.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | SBArea 4 | SBArea 5 | urn:ogc:def:crs:EPSG::6668 6 | area 7 | Polygon 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | sbaNo 50 | sbaNo 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_SBBdry.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | SBBdry 4 | SBBdry 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_WA.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | WA 4 | WA 5 | urn:ogc:def:crs:EPSG::6668 6 | area 7 | Polygon 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_WL.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | WL 4 | WL 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_WStrA.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | WStrA 4 | WStrA 5 | urn:ogc:def:crs:EPSG::6668 6 | area 7 | Polygon 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/jpfgdgml_WStrL.gfs: -------------------------------------------------------------------------------- 1 | 2 | 3 | WStrL 4 | WStrL 5 | urn:ogc:def:crs:EPSG::6668 6 | loc 7 | LineString 8 | 9 | fid 10 | fid 11 | String 12 | 13 | 14 | lfSpanFr 15 | lfSpanFr|timePosition 16 | String 17 | 18 | 19 | lfSpanTo 20 | lfSpanTo|timePosition 21 | String 22 | 23 | 24 | devDate 25 | devDate|timePosition 26 | String 27 | 28 | 29 | orgGILvl 30 | orgGILvl 31 | String 32 | 33 | 34 | orgMDId 35 | orgMDId 36 | String 37 | 38 | 39 | vis 40 | vis 41 | String 42 | 43 | 44 | type 45 | type 46 | String 47 | 48 | 49 | name 50 | name 51 | String 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /share/gdal/ozi_ellips.csv: -------------------------------------------------------------------------------- 1 | ELLIPSOID_CODE,NAME,A,INVF 2 | # 3 | # Note : We have permission from Des Newman on behalf of OziExplorer to use this list. 4 | # See : http://trac.osgeo.org/gdal/ticket/3929#comment:2 5 | # 6 | 0,Airy 1830,6377563.396,299.3249646 7 | 1,Modified Airy,6377340.189,299.3249646 8 | 2,Australian National,6378160.0,298.25 9 | 3,Bessel 1841,6377397.155,299.1528128 10 | 4,Clarke 1866,6378206.4,294.9786982 11 | 5,Clarke 1880,6378249.145,293.465 12 | 6,Everest (India 1830),6377276.345,300.8017 13 | 7,Everest (1948),6377304.063,300.8017 14 | 8,Modified Fischer 1960,6378155.0,298.3 15 | 9,Everest (Pakistan),6377309.613,300.8017 16 | 10,Indonesian 1974,6378160.0,298.247 17 | 11,GRS 80,6378137.0,298.257222101 18 | 12,Helmert 1906,6378200.0,298.3 19 | 13,Hough 1960,6378270.0,297.0 20 | 14,International 1924,6378388.0,297.0 21 | 15,Krassovsky 1940,6378245.0,298.3 22 | 16,South American 1969,6378160.0,298.25 23 | 17,Everest (Malaysia 1969),6377295.664,300.8017 24 | 18,Everest (Sabah Sarawak),6377298.556,300.8017 25 | 19,WGS 72,6378135.0,298.26 26 | 20,WGS 84,6378137.0,298.257223563 27 | 21,Bessel 1841 (Namibia),6377483.865,299.1528128 28 | 22,Everest (India 1956),6377301.243,300.8017 29 | 23,Clarke 1880 Palestine,6378300.789,293.466 30 | 24,Clarke 1880 IGN,6378249.2,293.466021 31 | 25,Hayford 1909,6378388.0,296.959263 32 | 26,Clarke 1858,6378350.87,294.26 33 | 27,Bessel 1841 (Norway),6377492.0176,299.1528 34 | 28,Plessis 1817 (France),6376523.0,308.6409971 35 | 29,Hayford 1924,6378388.0,297.0 36 | -------------------------------------------------------------------------------- /share/gdal/pcs.override.csv: -------------------------------------------------------------------------------- 1 | "COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","UOM_CODE","SOURCE_GEOGCRS_CODE","COORD_OP_CODE","COORD_OP_METHOD_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE","PARAMETER_CODE_1","PARAMETER_VALUE_1","PARAMETER_UOM_1","PARAMETER_CODE_2","PARAMETER_VALUE_2","PARAMETER_UOM_2","PARAMETER_CODE_3","PARAMETER_VALUE_3","PARAMETER_UOM_3","PARAMETER_CODE_4","PARAMETER_VALUE_4","PARAMETER_UOM_4","PARAMETER_CODE_5","PARAMETER_VALUE_5","PARAMETER_UOM_5","PARAMETER_CODE_6","PARAMETER_VALUE_6","PARAMETER_UOM_6","PARAMETER_CODE_7","PARAMETER_VALUE_7","PARAMETER_UOM_7","DX","DY","DZ","RX","RY","RZ","DS" 2 | # 3 | # NOTICE: The master version of this file is in the libgeotiff subversion at: 4 | # 5 | # https://svn.osgeo.org/metacrs/geotiff/trunk/libgeotiff/csv/pcs.override.csv 6 | # 7 | # Do *not* change other copies without upstreaming the results to libgeotiff. 8 | # 9 | # 10 | # 11 | # Adjust central meridian to be relative to prime meridian. 12 | # 13 | 26591,"Monte Mario (Rome) / Italy zone 1",9001,4806,18121,9807,1,1,4499,8801,0,9102,8802,-3.45233333333333,9102,8805,0.9996,9201,8806,1500000,9001,8807,0,9001,,,,,,,,,,,,, 14 | 26592,"Monte Mario (Rome) / Italy zone 2",9001,4806,18122,9807,1,1,4499,8801,0,9102,8802,2.54766666666666,9102,8805,0.9996,9201,8806,2520000,9001,8807,0,9001,,,,,,,,,,,,, 15 | # 16 | # 26799 is deprecated, because of the error in the false northing. However, 17 | # we "fix" the original to reduce problems folks would otherwise encounter. 18 | # 19 | 26799,"NAD27 / California zone VII",9003,4267,10408,9802,1,0,4497,8821,34.08,9110,8822,-118.2,9110,8823,34.25,9110,8824,33.52,9110,8826,4186692.58,9003,8827,4160926.74,9003,,,,,,,,,, 20 | -------------------------------------------------------------------------------- /share/gdal/s57expectedinput.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/gdal/s57expectedinput.csv -------------------------------------------------------------------------------- /share/gdal/seed_2d.dgn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/gdal/seed_2d.dgn -------------------------------------------------------------------------------- /share/gdal/seed_3d.dgn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/gdal/seed_3d.dgn -------------------------------------------------------------------------------- /share/gdal/vertcs.override.csv: -------------------------------------------------------------------------------- 1 | "COORD_REF_SYS_CODE","COORD_REF_SYS_NAME","DATUM_CODE","DATUM_NAME","UOM_CODE","SHOW_CRS","DEPRECATED","COORD_SYS_CODE","COORD_OP_METHOD_CODE_1","PARM_1_1" 2 | # 3 | # NOTICE: The master version of this file is in the libgeotiff subversion at: 4 | # 5 | # https://svn.osgeo.org/metacrs/geotiff/trunk/libgeotiff/csv/vertcs.override.csv 6 | # 7 | # Do *not* change other copies without upstreaming the results to libgeotiff. 8 | # 9 | # Use the Geoid 2003 files to translated from NAVD88 to WGS84 (approx. NAD83) 10 | # 11 | # 12 | # Updated to default to Geoid12A (11/27/12) hobu 13 | # http://lists.osgeo.org/pipermail/metacrs/2012-November/000649.html 14 | 5703,NAVD88 height,5103,North American Vertical Datum 1988,9001,1,0,6499,9665,"g2012a_conus.gtx,g2012a_alaska.gtx,g2012a_guam.gtx,g2012a_hawaii.gtx,g2012a_puertorico.gtx,g2012a_samoa.gtx" 15 | # 16 | # 17 | # Use the EGM 96 geoid grid for translation from EGM96 to WGS84. 18 | # 19 | 5773,EGM96 geoid height,5171,EGM96 geoid,9001,1,0,6499,9665,egm96_15.gtx 20 | # 21 | # Use the EGM 2008 geoid grid for translation from EGM08 to WGS84. 22 | # 23 | 3855,EGM2008 geoid height,1027,EGM2008 geoid,9001,1,0,6499,9665,egm08_25.gtx 24 | -------------------------------------------------------------------------------- /share/proj/CH: -------------------------------------------------------------------------------- 1 | # This init file provides definitions for CH1903 and CH1903/LV03 2 | # projections using the distortion grids developed by Swisstopo. 3 | # See: http://www.swisstopo.admin.ch/internet/swisstopo/en/home/topics/survey/lv03-lv95/chenyx06/distortion_grids.html 4 | # 5 | # You'll need to download the grids separately and put in a directory 6 | # scanned by libproj. Directories may be added to the scan list through 7 | # the PROJ_LIB environment variable 8 | # 9 | # Note that an independent effort was made to derive an usable grid 10 | # from the CH1903->CH1903+ grid initially available from the Swisstopo 11 | # website. You can read about this other effort here: 12 | # http://lists.maptools.org/pipermail/proj/2012-February/006093.html 13 | # It may be of interest because the latter was by some reported as being 14 | # more accurate than the former: 15 | # http://lists.maptools.org/pipermail/proj/2012-February/006119.html 16 | # 17 | # This init file uses the official one 18 | # 19 | # CH1903/LV03 20 | <1903_LV03> +proj=somerc +lat_0=46.95240555555556 +lon_0=7.439583333333333 +k_0=1 +x_0=600000 +y_0=200000 +ellps=bessel +units=m +nadgrids=chenyx06etrs.gsb +no_defs 21 | # CH1903 22 | <1903> +proj=longlat +ellps=bessel +nadgrids=chenyx06etrs.gsb +no_defs <> 23 | -------------------------------------------------------------------------------- /share/proj/FL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/FL -------------------------------------------------------------------------------- /share/proj/GL27: -------------------------------------------------------------------------------- 1 | # SCCSID @(#)GL27 1.1 93/08/25 GIE REL 2 | # Great Lakes Grids 3 | # Lake Erie, Ontario and St. Lawrence River. 4 | proj=omerc ellps=clrk66 k_0=0.9999 5 | lonc=78d00'W lat_0=44d00'N alpha=55d40' 6 | x_0=-3950000 y_0=-3430000 7 | no_defs <> 8 | # Lake Huron 9 | proj=omerc ellps=clrk66 k_0=0.9999 10 | lonc=82d00'W lat_0=43d00'N alpha=350d37' 11 | x_0=1200000 y_0=-3500000 12 | no_defs <> 13 | # Lake Michigan 14 | proj=omerc ellps=clrk66 k_0=0.9999 15 | lonc=87d00'W lat_0=44d00'N alpha=15d00' 16 | x_0=-1000000 y_0=-4300000 17 | no_defs <> 18 | # Lake Superior, Lake of the Woods 19 | proj=omerc ellps=clrk66 k_0=0.9999 20 | lonc=88d50'0.256"W lat_0=47d12'21.554"N alpha=285d41'42.593" 21 | x_0=9000000 y_0=-1600000 22 | no_defs <> 23 | -------------------------------------------------------------------------------- /share/proj/MD: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/MD -------------------------------------------------------------------------------- /share/proj/README.DATUMGRID: -------------------------------------------------------------------------------- 1 | US/Canada/France/New Zealand Datum Shifting Files 2 | ------------------------------------------------- 3 | 4 | The files in this package can be unpacked in the PROJ.4 data directory. 5 | For an installed PROJ.4 this may be /usr/local/share/proj or /usr/share/proj 6 | on unix style operating systems . 7 | 8 | Note that this package includes "CTable2" format grid shift files for 9 | NAD27 in the USA and require PROJ 4.8.0 or newer. On the plus side there 10 | is no need to compile ascii files into binary files with this version as 11 | CTable2 files are not system dependent (as distinct from the CTable files 12 | produced in PROJ 4.7.0 and older). 13 | 14 | 15 | -------------------------------------------------------------------------------- /share/proj/TN: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/TN -------------------------------------------------------------------------------- /share/proj/WI: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/WI -------------------------------------------------------------------------------- /share/proj/WO: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/WO -------------------------------------------------------------------------------- /share/proj/alaska: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/alaska -------------------------------------------------------------------------------- /share/proj/conus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/conus -------------------------------------------------------------------------------- /share/proj/hawaii: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/hawaii -------------------------------------------------------------------------------- /share/proj/ntf_r93.gsb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/ntf_r93.gsb -------------------------------------------------------------------------------- /share/proj/ntv1_can.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/ntv1_can.dat -------------------------------------------------------------------------------- /share/proj/null: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/null -------------------------------------------------------------------------------- /share/proj/nzgd2kgrid0005.gsb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/nzgd2kgrid0005.gsb -------------------------------------------------------------------------------- /share/proj/proj_def.dat: -------------------------------------------------------------------------------- 1 | # Projection library defaults file 2 | # SCCSID--- @(#)proj_def.dat 4.3 94/02/23 GIE REL" 3 | # very preliminary version 4 | 5 | ellps=WGS84 6 | <> 7 | # Conterminous U.S. map 8 | lat_1=29.5 9 | lat_2=45.5 10 | <> 11 | # Conterminous U.S. map 12 | lat_1=33 13 | lat_2=45 14 | <> 15 | 16 | W=2 17 | <> 18 | -------------------------------------------------------------------------------- /share/proj/prvi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/prvi -------------------------------------------------------------------------------- /share/proj/stgeorge: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/stgeorge -------------------------------------------------------------------------------- /share/proj/stlrnc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/stlrnc -------------------------------------------------------------------------------- /share/proj/stpaul: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwinlib/gdal2/23721799b6726e33599250660922f6b74f05801a/share/proj/stpaul --------------------------------------------------------------------------------