mil.nga.sf.CompoundCurve Java Examples
The following examples show how to use
mil.nga.sf.CompoundCurve.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: GoogleMapShapeConverterUtils.java From geopackage-android-map with MIT License | 6 votes |
/** * Test the CompoundCurve conversion * * @param converter * @param compoundCurve */ private static void convertCompoundCurve(GoogleMapShapeConverter converter, CompoundCurve compoundCurve) { MultiPolylineOptions polylines = converter.toPolylines(compoundCurve); TestCase.assertNotNull(polylines); TestCase.assertFalse(polylines.getPolylineOptions().isEmpty()); List<LineString> lineStrings = compoundCurve.getLineStrings(); compareLineStringsAndPolylines(converter, lineStrings, polylines.getPolylineOptions()); CompoundCurve compoundCurve2 = converter .toCompoundCurveWithOptions(polylines); compareLineStrings(lineStrings, compoundCurve2.getLineStrings()); }
Example #2
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 5 votes |
/** * Convert a list of List<LatLng> to a {@link CompoundCurve} * * @param polylineList polyline list * @param hasZ has z flag * @param hasM has m flag * @return compound curve */ public CompoundCurve toCompoundCurveFromList( List<List<LatLng>> polylineList, boolean hasZ, boolean hasM) { CompoundCurve compoundCurve = new CompoundCurve(hasZ, hasM); for (List<LatLng> polyline : polylineList) { LineString lineString = toLineString(polyline); compoundCurve.addLineString(lineString); } return compoundCurve; }
Example #3
Source File: GeoPackageGeometryDataUtils.java From geopackage-java with MIT License | 5 votes |
/** * Compare the two compound curves for equality * * @param expected * @param actual * @parma delta */ private static void compareCompoundCurve(CompoundCurve expected, CompoundCurve actual, double delta) { compareBaseGeometryAttributes(expected, actual); TestCase.assertEquals(expected.numLineStrings(), actual.numLineStrings()); for (int i = 0; i < expected.numLineStrings(); i++) { compareLineString(expected.getLineStrings().get(i), actual .getLineStrings().get(i), delta); } }
Example #4
Source File: GeoPackageGeometryDataUtils.java From geopackage-android with MIT License | 5 votes |
/** * Compare the two compound curves for equality * * @param expected * @param actual * @parma delta */ private static void compareCompoundCurve(CompoundCurve expected, CompoundCurve actual, double delta) { compareBaseGeometryAttributes(expected, actual); TestCase.assertEquals(expected.numLineStrings(), actual.numLineStrings()); for (int i = 0; i < expected.numLineStrings(); i++) { compareLineString(expected.getLineStrings().get(i), actual .getLineStrings().get(i), delta); } }
Example #5
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 5 votes |
/** * Convert a {@link MultiPolylineOptions} to a {@link CompoundCurve} * * @param multiPolylineOptions multi polyline options * @param hasZ has z flag * @param hasM has m flag * @return compound curve */ public CompoundCurve toCompoundCurveWithOptions( MultiPolylineOptions multiPolylineOptions, boolean hasZ, boolean hasM) { CompoundCurve compoundCurve = new CompoundCurve(hasZ, hasM); for (PolylineOptions polyline : multiPolylineOptions .getPolylineOptions()) { LineString lineString = toLineString(polyline); compoundCurve.addLineString(lineString); } return compoundCurve; }
Example #6
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 5 votes |
/** * Convert a list of {@link Polyline} to a {@link CompoundCurve} * * @param polylineList polyline list * @param hasZ has z flag * @param hasM has m flag * @return compound curve */ public CompoundCurve toCompoundCurve(List<Polyline> polylineList, boolean hasZ, boolean hasM) { CompoundCurve compoundCurve = new CompoundCurve(hasZ, hasM); for (Polyline polyline : polylineList) { LineString lineString = toLineString(polyline); compoundCurve.addLineString(lineString); } return compoundCurve; }
Example #7
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 5 votes |
/** * Convert a {@link CompoundCurve} to a {@link MultiPolylineOptions} * * @param compoundCurve compound curve * @return multi polyline options */ public MultiPolylineOptions toPolylines(CompoundCurve compoundCurve) { MultiPolylineOptions polylines = new MultiPolylineOptions(); for (LineString lineString : compoundCurve.getLineStrings()) { PolylineOptions polyline = toPolyline(lineString); polylines.add(polyline); } return polylines; }
Example #8
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 5 votes |
/** * Convert a {@link MultiPolylineOptions} to a {@link CompoundCurve} * * @param multiPolylineOptions multi polyline options * @param hasZ has z flag * @param hasM has m flag * @return compound curve */ public CompoundCurve toCompoundCurveFromOptions( MultiPolylineOptions multiPolylineOptions, boolean hasZ, boolean hasM) { CompoundCurve compoundCurve = new CompoundCurve(hasZ, hasM); for (PolylineOptions polyline : multiPolylineOptions .getPolylineOptions()) { LineString lineString = toLineString(polyline); compoundCurve.addLineString(lineString); } return compoundCurve; }
Example #9
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 4 votes |
/** * Convert a {@link Geometry} to a Map shape * * @param geometry geometry * @return google map shape */ @SuppressWarnings("unchecked") public GoogleMapShape toShape(Geometry geometry) { GoogleMapShape shape = null; GeometryType geometryType = geometry.getGeometryType(); switch (geometryType) { case POINT: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.LAT_LNG, toLatLng((Point) geometry)); break; case LINESTRING: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYLINE_OPTIONS, toPolyline((LineString) geometry)); break; case POLYGON: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYGON_OPTIONS, toPolygon((Polygon) geometry)); break; case MULTIPOINT: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_LAT_LNG, toLatLngs((MultiPoint) geometry)); break; case MULTILINESTRING: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYLINE_OPTIONS, toPolylines((MultiLineString) geometry)); break; case MULTIPOLYGON: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYGON_OPTIONS, toPolygons((MultiPolygon) geometry)); break; case CIRCULARSTRING: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYLINE_OPTIONS, toPolyline((CircularString) geometry)); break; case COMPOUNDCURVE: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYLINE_OPTIONS, toPolylines((CompoundCurve) geometry)); break; case CURVEPOLYGON: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYGON_OPTIONS, toCurvePolygon((CurvePolygon) geometry)); break; case POLYHEDRALSURFACE: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYGON_OPTIONS, toPolygons((PolyhedralSurface) geometry)); break; case TIN: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYGON_OPTIONS, toPolygons((TIN) geometry)); break; case TRIANGLE: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYGON_OPTIONS, toPolygon((Triangle) geometry)); break; case GEOMETRYCOLLECTION: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.COLLECTION, toShapes((GeometryCollection<Geometry>) geometry)); break; default: throw new GeoPackageException("Unsupported Geometry Type: " + geometryType.getName()); } return shape; }
Example #10
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 4 votes |
/** * Convert a {@link Geometry} to a Map shape and add it * * @param map google map * @param geometry geometry * @return google map shape */ @SuppressWarnings("unchecked") public GoogleMapShape addToMap(GoogleMap map, Geometry geometry) { GoogleMapShape shape = null; GeometryType geometryType = geometry.getGeometryType(); switch (geometryType) { case POINT: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MARKER, addLatLngToMap(map, toLatLng((Point) geometry))); break; case LINESTRING: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYLINE, addPolylineToMap(map, toPolyline((LineString) geometry))); break; case POLYGON: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYGON, addPolygonToMap(map, toPolygon((Polygon) geometry))); break; case MULTIPOINT: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_MARKER, addLatLngsToMap(map, toLatLngs((MultiPoint) geometry))); break; case MULTILINESTRING: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYLINE, addPolylinesToMap(map, toPolylines((MultiLineString) geometry))); break; case MULTIPOLYGON: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYGON, addPolygonsToMap(map, toPolygons((MultiPolygon) geometry))); break; case CIRCULARSTRING: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYLINE, addPolylineToMap(map, toPolyline((CircularString) geometry))); break; case COMPOUNDCURVE: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYLINE, addPolylinesToMap(map, toPolylines((CompoundCurve) geometry))); break; case CURVEPOLYGON: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYGON, addPolygonToMap(map, toCurvePolygon((CurvePolygon) geometry))); break; case POLYHEDRALSURFACE: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYGON, addPolygonsToMap(map, toPolygons((PolyhedralSurface) geometry))); break; case TIN: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.MULTI_POLYGON, addPolygonsToMap(map, toPolygons((TIN) geometry))); break; case TRIANGLE: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.POLYGON, addPolygonToMap(map, toPolygon((Triangle) geometry))); break; case GEOMETRYCOLLECTION: shape = new GoogleMapShape(geometryType, GoogleMapShapeType.COLLECTION, addToMap(map, (GeometryCollection<Geometry>) geometry)); break; default: throw new GeoPackageException("Unsupported Geometry Type: " + geometryType.getName()); } return shape; }
Example #11
Source File: GoogleMapShapeConverterUtils.java From geopackage-android-map with MIT License | 4 votes |
/** * Test shapes * * @param geoPackage * @throws SQLException */ public static void testShapes(GeoPackage geoPackage) throws SQLException { GeometryColumnsDao geometryColumnsDao = geoPackage .getGeometryColumnsDao(); if (geometryColumnsDao.isTableExists()) { List<GeometryColumns> results = geometryColumnsDao.queryForAll(); for (GeometryColumns geometryColumns : results) { FeatureDao dao = geoPackage.getFeatureDao(geometryColumns); GoogleMapShapeConverter converter = new GoogleMapShapeConverter( dao.getProjection()); converter.setExteriorOrientation(null); converter.setHoleOrientation(null); // Query for all FeatureCursor cursor = dao.queryForAll(); while (cursor.moveToNext()) { FeatureRow featureRow = cursor.getRow(); GeoPackageGeometryData geometryData = featureRow .getGeometry(); if (geometryData != null) { Geometry geometry = geometryData.getGeometry(); GeometryType geometryType = geometry.getGeometryType(); switch (geometryType) { case POINT: convertPoint(converter, (Point) geometry); break; case LINESTRING: convertLineString(converter, (LineString) geometry); break; case POLYGON: convertPolygon(converter, (Polygon) geometry); break; case MULTIPOINT: convertMultiPoint(converter, (MultiPoint) geometry); break; case MULTILINESTRING: convertMultiLineString(converter, (MultiLineString) geometry); break; case MULTIPOLYGON: convertMultiPolygon(converter, (MultiPolygon) geometry); break; case CIRCULARSTRING: convertLineString(converter, (CircularString) geometry); break; case COMPOUNDCURVE: convertCompoundCurve(converter, (CompoundCurve) geometry); break; case POLYHEDRALSURFACE: convertMultiPolygon(converter, (PolyhedralSurface) geometry); break; case TIN: convertMultiPolygon(converter, (TIN) geometry); break; case TRIANGLE: convertPolygon(converter, (Triangle) geometry); break; default: } } } cursor.close(); } } }
Example #12
Source File: DefaultFeatureTiles.java From geopackage-android with MIT License | 4 votes |
/** * Draw the geometry on the canvas * * @param simplifyTolerance simplify tolerance in meters * @param boundingBox bounding box * @param transform projection transform * @param canvas feature tile canvas * @param featureRow feature row * @param geometry feature geometry * @return true if drawn */ private boolean drawShape(double simplifyTolerance, BoundingBox boundingBox, ProjectionTransform transform, FeatureTileCanvas canvas, FeatureRow featureRow, Geometry geometry) { boolean drawn = false; GeometryType geometryType = geometry.getGeometryType(); FeatureStyle featureStyle = getFeatureStyle(featureRow, geometryType); switch (geometryType) { case POINT: Point point = (Point) geometry; drawn = drawPoint(boundingBox, transform, canvas, point, featureStyle); break; case LINESTRING: case CIRCULARSTRING: LineString lineString = (LineString) geometry; Path linePath = new Path(); addLineString(simplifyTolerance, boundingBox, transform, linePath, lineString); drawn = drawLinePath(canvas, linePath, featureStyle); break; case POLYGON: case TRIANGLE: Polygon polygon = (Polygon) geometry; Path polygonPath = new Path(); addPolygon(simplifyTolerance, boundingBox, transform, polygonPath, polygon); drawn = drawPolygonPath(canvas, polygonPath, featureStyle); break; case MULTIPOINT: MultiPoint multiPoint = (MultiPoint) geometry; for (Point pointFromMulti : multiPoint.getPoints()) { drawn = drawPoint(boundingBox, transform, canvas, pointFromMulti, featureStyle) || drawn; } break; case MULTILINESTRING: MultiLineString multiLineString = (MultiLineString) geometry; Path multiLinePath = new Path(); for (LineString lineStringFromMulti : multiLineString.getLineStrings()) { addLineString(simplifyTolerance, boundingBox, transform, multiLinePath, lineStringFromMulti); } drawn = drawLinePath(canvas, multiLinePath, featureStyle); break; case MULTIPOLYGON: MultiPolygon multiPolygon = (MultiPolygon) geometry; Path multiPolygonPath = new Path(); for (Polygon polygonFromMulti : multiPolygon.getPolygons()) { addPolygon(simplifyTolerance, boundingBox, transform, multiPolygonPath, polygonFromMulti); } drawn = drawPolygonPath(canvas, multiPolygonPath, featureStyle); break; case COMPOUNDCURVE: CompoundCurve compoundCurve = (CompoundCurve) geometry; Path compoundCurvePath = new Path(); for (LineString lineStringFromCompoundCurve : compoundCurve.getLineStrings()) { addLineString(simplifyTolerance, boundingBox, transform, compoundCurvePath, lineStringFromCompoundCurve); } drawn = drawLinePath(canvas, compoundCurvePath, featureStyle); break; case POLYHEDRALSURFACE: case TIN: PolyhedralSurface polyhedralSurface = (PolyhedralSurface) geometry; Path polyhedralSurfacePath = new Path(); for (Polygon polygonFromPolyhedralSurface : polyhedralSurface.getPolygons()) { addPolygon(simplifyTolerance, boundingBox, transform, polyhedralSurfacePath, polygonFromPolyhedralSurface); } drawn = drawPolygonPath(canvas, polyhedralSurfacePath, featureStyle); break; case GEOMETRYCOLLECTION: @SuppressWarnings("unchecked") GeometryCollection<Geometry> geometryCollection = (GeometryCollection) geometry; List<Geometry> geometries = geometryCollection.getGeometries(); for (Geometry geometryFromCollection : geometries) { drawn = drawShape(simplifyTolerance, boundingBox, transform, canvas, featureRow, geometryFromCollection) || drawn; } break; default: throw new GeoPackageException("Unsupported Geometry Type: " + geometry.getGeometryType().getName()); } return drawn; }
Example #13
Source File: GeoPackageExample.java From geopackage-android with MIT License | 4 votes |
private static void createNonLinearGeometryTypesExtension( GeoPackage geoPackage) throws SQLException { SpatialReferenceSystemDao srsDao = geoPackage .getSpatialReferenceSystemDao(); SpatialReferenceSystem srs = srsDao.getOrCreateCode( ProjectionConstants.AUTHORITY_EPSG, (long) ProjectionConstants.EPSG_WORLD_GEODETIC_SYSTEM); GeometryExtensions extensions = new GeometryExtensions(geoPackage); String tableName = "non_linear_geometries"; List<Geometry> geometries = new ArrayList<>(); List<String> geometryNames = new ArrayList<>(); CircularString circularString = new CircularString(); circularString.addPoint(new Point(-122.358, 47.653)); circularString.addPoint(new Point(-122.348, 47.649)); circularString.addPoint(new Point(-122.348, 47.658)); circularString.addPoint(new Point(-122.358, 47.658)); circularString.addPoint(new Point(-122.358, 47.653)); for (int i = GeometryCodes.getCode(GeometryType.CIRCULARSTRING); i <= GeometryCodes.getCode(GeometryType.SURFACE); i++) { GeometryType geometryType = GeometryCodes.getGeometryType(i); extensions.getOrCreate(tableName, GEOMETRY_COLUMN, geometryType); Geometry geometry = null; String name = geometryType.getName().toLowerCase(); switch (geometryType) { case CIRCULARSTRING: geometry = circularString; break; case COMPOUNDCURVE: CompoundCurve compoundCurve = new CompoundCurve(); compoundCurve.addLineString(circularString); geometry = compoundCurve; break; case CURVEPOLYGON: CurvePolygon<CircularString> curvePolygon = new CurvePolygon<>(); curvePolygon.addRing(circularString); geometry = curvePolygon; break; case MULTICURVE: MultiLineString multiCurve = new MultiLineString(); multiCurve.addLineString(circularString); geometry = multiCurve; break; case MULTISURFACE: MultiPolygon multiSurface = new MultiPolygon(); Polygon polygon = new Polygon(); polygon.addRing(circularString); multiSurface.addPolygon(polygon); geometry = multiSurface; break; case CURVE: CompoundCurve curve = new CompoundCurve(); curve.addLineString(circularString); geometry = curve; break; case SURFACE: CurvePolygon<CircularString> surface = new CurvePolygon<>(); surface.addRing(circularString); geometry = surface; break; default: throw new GeoPackageException("Unexpected Geometry Type: " + geometryType); } geometries.add(geometry); geometryNames.add(name); } createFeatures(geoPackage, srs, tableName, GeometryType.GEOMETRY, geometries, geometryNames); }
Example #14
Source File: GeoPackageGeometryDataUtils.java From geopackage-android with MIT License | 4 votes |
/** * Compare two geometries and verify they are equal * * @param expected * @param actual * @param delta */ public static void compareGeometries(Geometry expected, Geometry actual, double delta) { if (expected == null) { TestCase.assertNull(actual); } else { TestCase.assertNotNull(actual); GeometryType geometryType = expected.getGeometryType(); switch (geometryType) { case GEOMETRY: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case POINT: comparePoint((Point) expected, (Point) actual, delta); break; case LINESTRING: compareLineString((LineString) expected, (LineString) actual, delta); break; case POLYGON: comparePolygon((Polygon) expected, (Polygon) actual, delta); break; case MULTIPOINT: compareMultiPoint((MultiPoint) expected, (MultiPoint) actual, delta); break; case MULTILINESTRING: compareMultiLineString((MultiLineString) expected, (MultiLineString) actual, delta); break; case MULTIPOLYGON: compareMultiPolygon((MultiPolygon) expected, (MultiPolygon) actual, delta); break; case GEOMETRYCOLLECTION: compareGeometryCollection((GeometryCollection<?>) expected, (GeometryCollection<?>) actual, delta); break; case CIRCULARSTRING: compareCircularString((CircularString) expected, (CircularString) actual, delta); break; case COMPOUNDCURVE: compareCompoundCurve((CompoundCurve) expected, (CompoundCurve) actual, delta); break; case CURVEPOLYGON: compareCurvePolygon((CurvePolygon<?>) expected, (CurvePolygon<?>) actual, delta); break; case MULTICURVE: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case MULTISURFACE: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case CURVE: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case SURFACE: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case POLYHEDRALSURFACE: comparePolyhedralSurface((PolyhedralSurface) expected, (PolyhedralSurface) actual, delta); break; case TIN: compareTIN((TIN) expected, (TIN) actual, delta); break; case TRIANGLE: compareTriangle((Triangle) expected, (Triangle) actual, delta); break; default: throw new GeoPackageException("Geometry Type not supported: " + geometryType); } } }
Example #15
Source File: GeoPackageExample.java From geopackage-java with MIT License | 4 votes |
private static void createNonLinearGeometryTypesExtension( GeoPackage geoPackage) throws SQLException { SpatialReferenceSystemDao srsDao = geoPackage .getSpatialReferenceSystemDao(); SpatialReferenceSystem srs = srsDao.getOrCreateCode( ProjectionConstants.AUTHORITY_EPSG, (long) ProjectionConstants.EPSG_WORLD_GEODETIC_SYSTEM); GeometryExtensions extensions = new GeometryExtensions(geoPackage); String tableName = "non_linear_geometries"; List<Geometry> geometries = new ArrayList<>(); List<String> geometryNames = new ArrayList<>(); CircularString circularString = new CircularString(); circularString.addPoint(new Point(-122.358, 47.653)); circularString.addPoint(new Point(-122.348, 47.649)); circularString.addPoint(new Point(-122.348, 47.658)); circularString.addPoint(new Point(-122.358, 47.658)); circularString.addPoint(new Point(-122.358, 47.653)); for (int i = GeometryCodes .getCode(GeometryType.CIRCULARSTRING); i <= GeometryCodes .getCode(GeometryType.SURFACE); i++) { GeometryType geometryType = GeometryCodes.getGeometryType(i); extensions.getOrCreate(tableName, GEOMETRY_COLUMN, geometryType); Geometry geometry = null; String name = geometryType.getName().toLowerCase(); switch (geometryType) { case CIRCULARSTRING: geometry = circularString; break; case COMPOUNDCURVE: CompoundCurve compoundCurve = new CompoundCurve(); compoundCurve.addLineString(circularString); geometry = compoundCurve; break; case CURVEPOLYGON: CurvePolygon<CircularString> curvePolygon = new CurvePolygon<>(); curvePolygon.addRing(circularString); geometry = curvePolygon; break; case MULTICURVE: MultiLineString multiCurve = new MultiLineString(); multiCurve.addLineString(circularString); geometry = multiCurve; break; case MULTISURFACE: MultiPolygon multiSurface = new MultiPolygon(); Polygon polygon = new Polygon(); polygon.addRing(circularString); multiSurface.addPolygon(polygon); geometry = multiSurface; break; case CURVE: CompoundCurve curve = new CompoundCurve(); curve.addLineString(circularString); geometry = curve; break; case SURFACE: CurvePolygon<CircularString> surface = new CurvePolygon<>(); surface.addRing(circularString); geometry = surface; break; default: throw new GeoPackageException( "Unexpected Geometry Type: " + geometryType); } geometries.add(geometry); geometryNames.add(name); } createFeatures(geoPackage, srs, tableName, GeometryType.GEOMETRY, geometries, geometryNames); }
Example #16
Source File: GeoPackageGeometryDataUtils.java From geopackage-java with MIT License | 4 votes |
/** * Compare two geometries and verify they are equal * * @param expected * @param actual * @param delta */ public static void compareGeometries(Geometry expected, Geometry actual, double delta) { if (expected == null) { TestCase.assertNull(actual); } else { TestCase.assertNotNull(actual); GeometryType geometryType = expected.getGeometryType(); switch (geometryType) { case GEOMETRY: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case POINT: comparePoint((Point) expected, (Point) actual, delta); break; case LINESTRING: compareLineString((LineString) expected, (LineString) actual, delta); break; case POLYGON: comparePolygon((Polygon) expected, (Polygon) actual, delta); break; case MULTIPOINT: compareMultiPoint((MultiPoint) expected, (MultiPoint) actual, delta); break; case MULTILINESTRING: compareMultiLineString((MultiLineString) expected, (MultiLineString) actual, delta); break; case MULTIPOLYGON: compareMultiPolygon((MultiPolygon) expected, (MultiPolygon) actual, delta); break; case GEOMETRYCOLLECTION: compareGeometryCollection((GeometryCollection<?>) expected, (GeometryCollection<?>) actual, delta); break; case CIRCULARSTRING: compareCircularString((CircularString) expected, (CircularString) actual, delta); break; case COMPOUNDCURVE: compareCompoundCurve((CompoundCurve) expected, (CompoundCurve) actual, delta); break; case CURVEPOLYGON: compareCurvePolygon((CurvePolygon<?>) expected, (CurvePolygon<?>) actual, delta); break; case MULTICURVE: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case MULTISURFACE: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case CURVE: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case SURFACE: TestCase.fail("Unexpected Geometry Type of " + geometryType.name() + " which is abstract"); case POLYHEDRALSURFACE: comparePolyhedralSurface((PolyhedralSurface) expected, (PolyhedralSurface) actual, delta); break; case TIN: compareTIN((TIN) expected, (TIN) actual, delta); break; case TRIANGLE: compareTriangle((Triangle) expected, (Triangle) actual, delta); break; default: throw new GeoPackageException("Geometry Type not supported: " + geometryType); } } }
Example #17
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 2 votes |
/** * Convert a list of {@link Polyline} to a {@link CompoundCurve} * * @param polylineList polyline list * @return compound curve */ public CompoundCurve toCompoundCurve(List<Polyline> polylineList) { return toCompoundCurve(polylineList, false, false); }
Example #18
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 2 votes |
/** * Convert a {@link MultiPolylineOptions} to a {@link CompoundCurve} * * @param multiPolylineOptions multi polyline options * @return compound curve */ public CompoundCurve toCompoundCurveWithOptions( MultiPolylineOptions multiPolylineOptions) { return toCompoundCurveWithOptions(multiPolylineOptions, false, false); }
Example #19
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 2 votes |
/** * Convert a {@link MultiPolylineOptions} to a {@link CompoundCurve} * * @param multiPolylineOptions multi polyline options * @return compound curve */ public CompoundCurve toCompoundCurveFromOptions( MultiPolylineOptions multiPolylineOptions) { return toCompoundCurveFromOptions(multiPolylineOptions, false, false); }
Example #20
Source File: GoogleMapShapeConverter.java From geopackage-android-map with MIT License | 2 votes |
/** * Convert a list of List<LatLng> to a {@link CompoundCurve} * * @param polylineList polyline list * @return compound curve */ public CompoundCurve toCompoundCurveFromList(List<List<LatLng>> polylineList) { return toCompoundCurveFromList(polylineList, false, false); }