本文整理汇总了Java中mil.nga.wkb.geom.PolyhedralSurface类的典型用法代码示例。如果您正苦于以下问题:Java PolyhedralSurface类的具体用法?Java PolyhedralSurface怎么用?Java PolyhedralSurface使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
PolyhedralSurface类属于mil.nga.wkb.geom包,在下文中一共展示了PolyhedralSurface类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: convertMultiPolygon
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Test the PolyhedralSurface conversion
*
* @param converter
* @param polyhedralSurface
*/
private static void convertMultiPolygon(GoogleMapShapeConverter converter,
PolyhedralSurface polyhedralSurface) {
MultiPolygonOptions mapPolygons = converter
.toPolygons(polyhedralSurface);
TestCase.assertNotNull(mapPolygons);
TestCase.assertFalse(mapPolygons.getPolygonOptions().isEmpty());
List<Polygon> polygons = polyhedralSurface.getPolygons();
comparePolygonsAndMapPolygons(converter, polygons, mapPolygons.getPolygonOptions());
PolyhedralSurface polyhedralSurface2 = converter
.toPolyhedralSurfaceWithOptions(mapPolygons);
comparePolygons(polygons, polyhedralSurface.getPolygons());
}
开发者ID:ngageoint,项目名称:geopackage-android-map,代码行数:22,代码来源:GoogleMapShapeConverterUtils.java
示例2: toPolygons
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Convert a {@link PolyhedralSurface} to a {@link MultiPolygonOptions}
*
* @param polyhedralSurface
* @return
*/
public MultiPolygonOptions toPolygons(PolyhedralSurface polyhedralSurface) {
MultiPolygonOptions polygons = new MultiPolygonOptions();
for (Polygon polygon : polyhedralSurface.getPolygons()) {
PolygonOptions polygonOptions = toPolygon(polygon);
polygons.add(polygonOptions);
}
return polygons;
}
开发者ID:ngageoint,项目名称:geopackage-android-map,代码行数:18,代码来源:GoogleMapShapeConverter.java
示例3: toPolyhedralSurface
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Convert a list of {@link Polygon} to a {@link PolyhedralSurface}
*
* @param polygonList
* @param hasZ
* @param hasM
* @return
*/
public PolyhedralSurface toPolyhedralSurface(
List<com.google.android.gms.maps.model.Polygon> polygonList,
boolean hasZ, boolean hasM) {
PolyhedralSurface polyhedralSurface = new PolyhedralSurface(hasZ, hasM);
for (com.google.android.gms.maps.model.Polygon mapPolygon : polygonList) {
Polygon polygon = toPolygon(mapPolygon);
polyhedralSurface.addPolygon(polygon);
}
return polyhedralSurface;
}
开发者ID:ngageoint,项目名称:geopackage-android-map,代码行数:22,代码来源:GoogleMapShapeConverter.java
示例4: toPolyhedralSurfaceWithOptions
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Convert a {@link MultiPolygonOptions} to a {@link PolyhedralSurface}
*
* @param multiPolygonOptions
* @param hasZ
* @param hasM
* @return
*/
public PolyhedralSurface toPolyhedralSurfaceWithOptions(
MultiPolygonOptions multiPolygonOptions, boolean hasZ, boolean hasM) {
PolyhedralSurface polyhedralSurface = new PolyhedralSurface(hasZ, hasM);
for (PolygonOptions mapPolygon : multiPolygonOptions
.getPolygonOptions()) {
Polygon polygon = toPolygon(mapPolygon);
polyhedralSurface.addPolygon(polygon);
}
return polyhedralSurface;
}
开发者ID:ngageoint,项目名称:geopackage-android-map,代码行数:22,代码来源:GoogleMapShapeConverter.java
示例5: comparePolyhedralSurface
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Compare the two polyhedral surfaces for equality
*
* @param expected
* @param actual
* @param delta
*/
private static void comparePolyhedralSurface(PolyhedralSurface expected,
PolyhedralSurface actual, double delta) {
compareBaseGeometryAttributes(expected, actual);
TestCase.assertEquals(expected.numPolygons(), actual.numPolygons());
for (int i = 0; i < expected.numPolygons(); i++) {
compareGeometries(expected.getPolygons().get(i), actual
.getPolygons().get(i), delta);
}
}
开发者ID:ngageoint,项目名称:geopackage-android,代码行数:18,代码来源:GeoPackageGeometryDataUtils.java
示例6: transform
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Transform the projected polyhedral surface
*
* @param polyhedralSurface
* @return projected polyhedral surface
*/
public PolyhedralSurface transform(PolyhedralSurface polyhedralSurface) {
PolyhedralSurface to = new PolyhedralSurface(polyhedralSurface.hasZ(),
polyhedralSurface.hasM());
for (Polygon polygon : polyhedralSurface.getPolygons()) {
Polygon toPolygon = transform(polygon);
to.addPolygon(toPolygon);
}
return to;
}
开发者ID:ngageoint,项目名称:geopackage-core-java,代码行数:19,代码来源:GeometryProjectionTransform.java
示例7: comparePolyhedralSurface
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Compare the two polyhedral surfaces for equality
*
* @param expected
* @param actual
* @param delta
*/
private static void comparePolyhedralSurface(PolyhedralSurface expected,
PolyhedralSurface actual, double delta) {
compareBaseGeometryAttributes(expected, actual);
TestCase.assertEquals(expected.numPolygons(), actual.numPolygons());
for (int i = 0; i < expected.numPolygons(); i++) {
compareGeometries(expected.getPolygons().get(i), actual
.getPolygons().get(i), delta);
}
}
开发者ID:ngageoint,项目名称:geopackage-java,代码行数:18,代码来源:GeoPackageGeometryDataUtils.java
示例8: addPolyhedralSurfaceMessage
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Add PolyhedralSurface
*
* @param envelope
* @param polyhedralSurface
*/
private static void addPolyhedralSurfaceMessage(GeometryEnvelope envelope,
PolyhedralSurface polyhedralSurface) {
updateHasZandM(envelope, polyhedralSurface);
List<Polygon> polygons = polyhedralSurface.getPolygons();
for (Polygon polygon : polygons) {
addPolygonMessage(envelope, polygon);
}
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:17,代码来源:GeometryEnvelopeBuilder.java
示例9: addPolyhedralSurfaceMessage
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Add PolyhedralSurface message
*
* @param message
* @param polyhedralSurface
*/
private static void addPolyhedralSurfaceMessage(StringBuilder message,
PolyhedralSurface polyhedralSurface) {
message.append(Polygon.class.getSimpleName() + "s: "
+ polyhedralSurface.numPolygons());
List<Polygon> polygons = polyhedralSurface.getPolygons();
for (int i = 0; i < polygons.size(); i++) {
Polygon polygon = polygons.get(i);
message.append("\n\n");
message.append(Polygon.class.getSimpleName() + " " + (i + 1));
message.append("\n");
addPolygonMessage(message, polygon);
}
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:20,代码来源:GeometryPrinter.java
示例10: getPolyhedralSurface
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Get PolyhedralSurface object
*
* @param polyhedralSurface
* @return polyhedral surface object
*/
private static Object getPolyhedralSurface(
PolyhedralSurface polyhedralSurface) {
List<Object> jsonObject = new ArrayList<>();
List<Polygon> polygons = polyhedralSurface.getPolygons();
for (int i = 0; i < polygons.size(); i++) {
Polygon polygon = polygons.get(i);
jsonObject.add(getPolygon(polygon));
}
return jsonObject;
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:17,代码来源:GeometryJSONCompatible.java
示例11: add
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Add a surface based dimension 2 geometry to the centroid total. Ignores
* dimension 0 and 1 geometries.
*
* @param geometry
* geometry
*/
public void add(Geometry geometry) {
GeometryType geometryType = geometry.getGeometryType();
switch (geometryType) {
case POLYGON:
case TRIANGLE:
add((Polygon) geometry);
break;
case MULTIPOLYGON:
MultiPolygon multiPolygon = (MultiPolygon) geometry;
add(multiPolygon.getPolygons());
break;
case POLYHEDRALSURFACE:
case TIN:
PolyhedralSurface polyhedralSurface = (PolyhedralSurface) geometry;
add(polyhedralSurface.getPolygons());
break;
case GEOMETRYCOLLECTION:
@SuppressWarnings("unchecked")
GeometryCollection<Geometry> geomCollection = (GeometryCollection<Geometry>) geometry;
List<Geometry> geometries = geomCollection.getGeometries();
for (Geometry subGeometry : geometries) {
add(subGeometry);
}
break;
case POINT:
case MULTIPOINT:
case LINESTRING:
case CIRCULARSTRING:
case MULTILINESTRING:
case COMPOUNDCURVE:
// Doesn't contribute to surface dimension
break;
default:
throw new WkbException("Unsupported "
+ this.getClass().getSimpleName() + " Geometry Type: "
+ geometryType);
}
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:47,代码来源:CentroidSurface.java
示例12: writePolyhedralSurface
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Write a Polyhedral Surface
*
* @param writer
* @param polyhedralSurface
* @throws IOException
*/
public static void writePolyhedralSurface(ByteWriter writer,
PolyhedralSurface polyhedralSurface) throws IOException {
writer.writeInt(polyhedralSurface.numPolygons());
for (Polygon polygon : polyhedralSurface.getPolygons()) {
writeGeometry(writer, polygon);
}
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:17,代码来源:WkbGeometryWriter.java
示例13: comparePolyhedralSurface
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Compare the two polyhedral surfaces for equality
*
* @param expected
* @param actual
*/
public static void comparePolyhedralSurface(PolyhedralSurface expected,
PolyhedralSurface actual) {
compareBaseGeometryAttributes(expected, actual);
TestCase.assertEquals(expected.numPolygons(), actual.numPolygons());
for (int i = 0; i < expected.numPolygons(); i++) {
compareGeometries(expected.getPolygons().get(i), actual
.getPolygons().get(i));
}
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:17,代码来源:WKBTestUtils.java
示例14: toPolygons
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Convert a {@link PolyhedralSurface} to a {@link Polygon}
*
* @param polyhedralSurface
* @return
*/
public List<org.osmdroid.views.overlay.Polygon> toPolygons(PolyhedralSurface polyhedralSurface) {
List<org.osmdroid.views.overlay.Polygon> polygons = new ArrayList<>();
for (Polygon polygon : polyhedralSurface.getPolygons()) {
org.osmdroid.views.overlay.Polygon polygon1 = toPolygon(polygon);
polygons.add(polygon1);
}
return polygons;
}
开发者ID:osmdroid,项目名称:osmdroid,代码行数:18,代码来源:OsmMapShapeConverter.java
示例15: buildEnvelope
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Build Geometry Envelope
*
* @param geometry
* geometry to build envelope from
* @param envelope
* envelope to expand
*/
public static void buildEnvelope(Geometry geometry,
GeometryEnvelope envelope) {
GeometryType geometryType = geometry.getGeometryType();
switch (geometryType) {
case POINT:
addPointMessage(envelope, (Point) geometry);
break;
case LINESTRING:
addLineStringMessage(envelope, (LineString) geometry);
break;
case POLYGON:
addPolygonMessage(envelope, (Polygon) geometry);
break;
case MULTIPOINT:
addMultiPointMessage(envelope, (MultiPoint) geometry);
break;
case MULTILINESTRING:
addMultiLineStringMessage(envelope, (MultiLineString) geometry);
break;
case MULTIPOLYGON:
addMultiPolygonMessage(envelope, (MultiPolygon) geometry);
break;
case CIRCULARSTRING:
addLineStringMessage(envelope, (CircularString) geometry);
break;
case COMPOUNDCURVE:
addCompoundCurveMessage(envelope, (CompoundCurve) geometry);
break;
case POLYHEDRALSURFACE:
addPolyhedralSurfaceMessage(envelope, (PolyhedralSurface) geometry);
break;
case TIN:
addPolyhedralSurfaceMessage(envelope, (TIN) geometry);
break;
case TRIANGLE:
addPolygonMessage(envelope, (Triangle) geometry);
break;
case GEOMETRYCOLLECTION:
updateHasZandM(envelope, geometry);
@SuppressWarnings("unchecked")
GeometryCollection<Geometry> geomCollection = (GeometryCollection<Geometry>) geometry;
List<Geometry> geometries = geomCollection.getGeometries();
for (Geometry subGeometry : geometries) {
buildEnvelope(subGeometry, envelope);
}
break;
default:
}
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:60,代码来源:GeometryEnvelopeBuilder.java
示例16: getGeometryString
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Get Geometry Information as a String
*
* @param geometry
* geometry
* @return geometry String
*/
public static String getGeometryString(Geometry geometry) {
StringBuilder message = new StringBuilder();
GeometryType geometryType = geometry.getGeometryType();
switch (geometryType) {
case POINT:
addPointMessage(message, (Point) geometry);
break;
case LINESTRING:
addLineStringMessage(message, (LineString) geometry);
break;
case POLYGON:
addPolygonMessage(message, (Polygon) geometry);
break;
case MULTIPOINT:
addMultiPointMessage(message, (MultiPoint) geometry);
break;
case MULTILINESTRING:
addMultiLineStringMessage(message, (MultiLineString) geometry);
break;
case MULTIPOLYGON:
addMultiPolygonMessage(message, (MultiPolygon) geometry);
break;
case CIRCULARSTRING:
addLineStringMessage(message, (CircularString) geometry);
break;
case COMPOUNDCURVE:
addCompoundCurveMessage(message, (CompoundCurve) geometry);
break;
case POLYHEDRALSURFACE:
addPolyhedralSurfaceMessage(message, (PolyhedralSurface) geometry);
break;
case TIN:
addPolyhedralSurfaceMessage(message, (TIN) geometry);
break;
case TRIANGLE:
addPolygonMessage(message, (Triangle) geometry);
break;
case GEOMETRYCOLLECTION:
@SuppressWarnings("unchecked")
GeometryCollection<Geometry> geomCollection = (GeometryCollection<Geometry>) geometry;
message.append("Geometries: " + geomCollection.numGeometries());
List<Geometry> geometries = geomCollection.getGeometries();
for (int i = 0; i < geometries.size(); i++) {
Geometry subGeometry = geometries.get(i);
message.append("\n\n");
message.append(Geometry.class.getSimpleName() + " " + (i + 1));
message.append("\n");
message.append(subGeometry.getGeometryType().getName());
message.append("\n");
message.append(getGeometryString(subGeometry));
}
break;
default:
}
return message.toString();
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:67,代码来源:GeometryPrinter.java
示例17: getJSONCompatibleGeometry
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Get a Geometry object that is JSON compatible
*
* @param geometry
* geometry
* @return geometry JSON object
*/
public static Object getJSONCompatibleGeometry(Geometry geometry) {
Map<String, Object> jsonObject = new HashMap<>();
Object geometryObject = null;
GeometryType geometryType = geometry.getGeometryType();
switch (geometryType) {
case POINT:
geometryObject = getPoint((Point) geometry);
break;
case LINESTRING:
geometryObject = getLineString((LineString) geometry);
break;
case POLYGON:
geometryObject = getPolygon((Polygon) geometry);
break;
case MULTIPOINT:
geometryObject = getMultiPoint((MultiPoint) geometry);
break;
case MULTILINESTRING:
geometryObject = getMultiLineString((MultiLineString) geometry);
break;
case MULTIPOLYGON:
geometryObject = getMultiPolygon((MultiPolygon) geometry);
break;
case CIRCULARSTRING:
geometryObject = getLineString((CircularString) geometry);
break;
case COMPOUNDCURVE:
geometryObject = getCompoundCurve((CompoundCurve) geometry);
break;
case POLYHEDRALSURFACE:
geometryObject = getPolyhedralSurface((PolyhedralSurface) geometry);
break;
case TIN:
geometryObject = getPolyhedralSurface((TIN) geometry);
break;
case TRIANGLE:
geometryObject = getPolygon((Triangle) geometry);
break;
case GEOMETRYCOLLECTION:
List<Object> jsonGeoCollectionObject = new ArrayList<>();
@SuppressWarnings("unchecked")
GeometryCollection<Geometry> geomCollection = (GeometryCollection<Geometry>) geometry;
List<Geometry> geometries = geomCollection.getGeometries();
for (int i = 0; i < geometries.size(); i++) {
Geometry subGeometry = geometries.get(i);
jsonGeoCollectionObject
.add(getJSONCompatibleGeometry(subGeometry));
}
geometryObject = jsonGeoCollectionObject;
break;
default:
}
if (geometryObject != null) {
jsonObject.put(geometryType.getName(), geometryObject);
}
return jsonObject;
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:70,代码来源:GeometryJSONCompatible.java
示例18: minimizeGeometry
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Minimize the geometry using the shortest x distance between each
* connected set of points. The resulting geometry point x values will be in
* the range: (3 * min value <= x <= 3 * max value
*
* Example: For WGS84 provide a max x of 180.0. Resulting x values will be
* in the range: -540.0 <= x <= 540.0
*
* Example: For web mercator provide a world width of 20037508.342789244.
* Resulting x values will be in the range: -60112525.028367732 <= x <=
* 60112525.028367732
*
* @param geometry
* geometry
* @param maxX
* max positive x value in the geometry projection
*/
public static void minimizeGeometry(Geometry geometry, double maxX) {
GeometryType geometryType = geometry.getGeometryType();
switch (geometryType) {
case LINESTRING:
minimize((LineString) geometry, maxX);
break;
case POLYGON:
minimize((Polygon) geometry, maxX);
break;
case MULTILINESTRING:
minimize((MultiLineString) geometry, maxX);
break;
case MULTIPOLYGON:
minimize((MultiPolygon) geometry, maxX);
break;
case CIRCULARSTRING:
minimize((CircularString) geometry, maxX);
break;
case COMPOUNDCURVE:
minimize((CompoundCurve) geometry, maxX);
break;
case POLYHEDRALSURFACE:
minimize((PolyhedralSurface) geometry, maxX);
break;
case TIN:
minimize((TIN) geometry, maxX);
break;
case TRIANGLE:
minimize((Triangle) geometry, maxX);
break;
case GEOMETRYCOLLECTION:
@SuppressWarnings("unchecked")
GeometryCollection<Geometry> geomCollection = (GeometryCollection<Geometry>) geometry;
for (Geometry subGeometry : geomCollection.getGeometries()) {
minimizeGeometry(subGeometry, maxX);
}
break;
default:
break;
}
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:61,代码来源:GeometryUtils.java
示例19: normalizeGeometry
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Normalize the geometry so all points outside of the min and max value
* range are adjusted to fall within the range.
*
* Example: For WGS84 provide a max x of 180.0. Resulting x values will be
* in the range: -180.0 <= x <= 180.0.
*
* Example: For web mercator provide a world width of 20037508.342789244.
* Resulting x values will be in the range: -20037508.342789244 <= x <=
* 20037508.342789244.
*
* @param geometry
* geometry
* @param maxX
* max positive x value in the geometry projection
*/
public static void normalizeGeometry(Geometry geometry, double maxX) {
GeometryType geometryType = geometry.getGeometryType();
switch (geometryType) {
case POINT:
normalize((Point) geometry, maxX);
break;
case LINESTRING:
normalize((LineString) geometry, maxX);
break;
case POLYGON:
normalize((Polygon) geometry, maxX);
break;
case MULTIPOINT:
normalize((MultiPoint) geometry, maxX);
break;
case MULTILINESTRING:
normalize((MultiLineString) geometry, maxX);
break;
case MULTIPOLYGON:
normalize((MultiPolygon) geometry, maxX);
break;
case CIRCULARSTRING:
normalize((CircularString) geometry, maxX);
break;
case COMPOUNDCURVE:
normalize((CompoundCurve) geometry, maxX);
break;
case POLYHEDRALSURFACE:
normalize((PolyhedralSurface) geometry, maxX);
break;
case TIN:
normalize((TIN) geometry, maxX);
break;
case TRIANGLE:
normalize((Triangle) geometry, maxX);
break;
case GEOMETRYCOLLECTION:
@SuppressWarnings("unchecked")
GeometryCollection<Geometry> geomCollection = (GeometryCollection<Geometry>) geometry;
for (Geometry subGeometry : geomCollection.getGeometries()) {
normalizeGeometry(subGeometry, maxX);
}
break;
default:
break;
}
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:67,代码来源:GeometryUtils.java
示例20: readPolyhedralSurface
import mil.nga.wkb.geom.PolyhedralSurface; //导入依赖的package包/类
/**
* Read a Polyhedral Surface
*
* @param reader
* @param hasZ
* @param hasM
* @return polyhedral surface
*/
public static PolyhedralSurface readPolyhedralSurface(ByteReader reader,
boolean hasZ, boolean hasM) {
PolyhedralSurface polyhedralSurface = new PolyhedralSurface(hasZ, hasM);
int numPolygons = reader.readInt();
for (int i = 0; i < numPolygons; i++) {
Polygon polygon = readGeometry(reader, Polygon.class);
polyhedralSurface.addPolygon(polygon);
}
return polyhedralSurface;
}
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:24,代码来源:WkbGeometryReader.java
注:本文中的mil.nga.wkb.geom.PolyhedralSurface类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论