当前位置: 首页>>代码示例>>Java>>正文


Java GeometryCollection.getGeometries方法代码示例

本文整理汇总了Java中mil.nga.wkb.geom.GeometryCollection.getGeometries方法的典型用法代码示例。如果您正苦于以下问题:Java GeometryCollection.getGeometries方法的具体用法?Java GeometryCollection.getGeometries怎么用?Java GeometryCollection.getGeometries使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在mil.nga.wkb.geom.GeometryCollection的用法示例。


在下文中一共展示了GeometryCollection.getGeometries方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: toShapes

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Convert a {@link GeometryCollection} to a list of Map shapes
 *
 * @param geometryCollection
 * @return
 */
public List<GoogleMapShape> toShapes(
        GeometryCollection<Geometry> geometryCollection) {

    List<GoogleMapShape> shapes = new ArrayList<GoogleMapShape>();

    for (Geometry geometry : geometryCollection.getGeometries()) {
        GoogleMapShape shape = toShape(geometry);
        shapes.add(shape);
    }

    return shapes;
}
 
开发者ID:ngageoint,项目名称:geopackage-android-map,代码行数:19,代码来源:GoogleMapShapeConverter.java

示例2: addToMap

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Convert a {@link GeometryCollection} to a list of Map shapes and add to
 * the map
 *
 * @param map
 * @param geometryCollection
 * @return
 */
public List<GoogleMapShape> addToMap(GoogleMap map,
                                     GeometryCollection<Geometry> geometryCollection) {

    List<GoogleMapShape> shapes = new ArrayList<GoogleMapShape>();

    for (Geometry geometry : geometryCollection.getGeometries()) {
        GoogleMapShape shape = addToMap(map, geometry);
        shapes.add(shape);
    }

    return shapes;
}
 
开发者ID:ngageoint,项目名称:geopackage-android-map,代码行数:21,代码来源:GoogleMapShapeConverter.java

示例3: validateGeometryCollection

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Validate Geometry Collection
 * 
 * @param topGeometry
 * @param geometryCollection
 */
private static void validateGeometryCollection(Geometry topGeometry,
		GeometryCollection<?> geometryCollection) {

	validateZAndM(topGeometry, geometryCollection);

	for (Geometry geometry : geometryCollection.getGeometries()) {
		validateGeometry(geometry.getGeometryType(), geometry);
	}

}
 
开发者ID:ngageoint,项目名称:geopackage-android,代码行数:17,代码来源:FeatureUtils.java

示例4: transform

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Transform the projected geometry collection
 * 
 * @param geometryCollection
 * @return projected geometry collection
 */
public GeometryCollection<Geometry> transform(
		GeometryCollection<Geometry> geometryCollection) {

	GeometryCollection<Geometry> to = new GeometryCollection<Geometry>(
			geometryCollection.hasZ(), geometryCollection.hasM());

	for (Geometry geometry : geometryCollection.getGeometries()) {
		Geometry toGeometry = transform(geometry);
		to.addGeometry(toGeometry);
	}

	return to;
}
 
开发者ID:ngageoint,项目名称:geopackage-core-java,代码行数:20,代码来源:GeometryProjectionTransform.java

示例5: add

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Add a curve based dimension 1 geometry to the centroid total. Ignores
 * dimension 0 geometries.
 * 
 * @param geometry
 *            geometry
 */
public void add(Geometry geometry) {

	GeometryType geometryType = geometry.getGeometryType();
	switch (geometryType) {
	case LINESTRING:
	case CIRCULARSTRING:
		add((LineString) geometry);
		break;
	case MULTILINESTRING:
		MultiLineString multiLineString = (MultiLineString) geometry;
		addLineStrings(multiLineString.getLineStrings());
		break;
	case COMPOUNDCURVE:
		CompoundCurve compoundCurve = (CompoundCurve) geometry;
		addLineStrings(compoundCurve.getLineStrings());
		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:
		// Doesn't contribute to curve dimension
		break;
	default:
		throw new WkbException("Unsupported "
				+ this.getClass().getSimpleName() + " Geometry Type: "
				+ geometryType);
	}
}
 
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:42,代码来源:CentroidCurve.java

示例6: getDimension

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Get the dimension of the Geometry, 0 for points, 1 for curves, 2 for
 * surfaces. If a collection, the largest dimension is returned.
 * 
 * @param geometry
 *            geometry object
 * @return dimension (0, 1, or 2)
 */
public static int getDimension(Geometry geometry) {

	int dimension = -1;

	GeometryType geometryType = geometry.getGeometryType();
	switch (geometryType) {
	case POINT:
	case MULTIPOINT:
		dimension = 0;
		break;
	case LINESTRING:
	case MULTILINESTRING:
	case CIRCULARSTRING:
	case COMPOUNDCURVE:
		dimension = 1;
		break;
	case POLYGON:
	case CURVEPOLYGON:
	case MULTIPOLYGON:
	case POLYHEDRALSURFACE:
	case TIN:
	case TRIANGLE:
		dimension = 2;
		break;
	case GEOMETRYCOLLECTION:
		@SuppressWarnings("unchecked")
		GeometryCollection<Geometry> geomCollection = (GeometryCollection<Geometry>) geometry;
		List<Geometry> geometries = geomCollection.getGeometries();
		for (Geometry subGeometry : geometries) {
			dimension = Math.max(dimension, getDimension(subGeometry));
		}
		break;
	default:
		throw new WkbException("Unsupported Geometry Type: " + geometryType);
	}

	return dimension;
}
 
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:47,代码来源:GeometryUtils.java

示例7: add

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的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

示例8: add

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Add a point based dimension 0 geometry to the centroid total
 * 
 * @param geometry
 *            geometry
 */
public void add(Geometry geometry) {
	GeometryType geometryType = geometry.getGeometryType();
	switch (geometryType) {
	case POINT:
		add((Point) geometry);
		break;
	case MULTIPOINT:
		MultiPoint multiPoint = (MultiPoint) geometry;
		for (Point point : multiPoint.getPoints()) {
			add(point);
		}
		break;
	case GEOMETRYCOLLECTION:
		@SuppressWarnings("unchecked")
		GeometryCollection<Geometry> geomCollection = (GeometryCollection<Geometry>) geometry;
		List<Geometry> geometries = geomCollection.getGeometries();
		for (Geometry subGeometry : geometries) {
			add(subGeometry);
		}
		break;
	default:
		throw new WkbException("Unsupported "
				+ this.getClass().getSimpleName() + " Geometry Type: "
				+ geometryType);
	}
}
 
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:33,代码来源:CentroidPoint.java

示例9: writeGeometryCollection

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Write a Geometry Collection
 * 
 * @param writer
 * @param geometryCollection
 * @throws IOException
 */
public static void writeGeometryCollection(ByteWriter writer,
		GeometryCollection<?> geometryCollection) throws IOException {

	writer.writeInt(geometryCollection.numGeometries());

	for (Geometry geometry : geometryCollection.getGeometries()) {
		writeGeometry(writer, geometry);
	}
}
 
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:17,代码来源:WkbGeometryWriter.java

示例10: toShapes

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Convert a {@link GeometryCollection} to a list of Map shapes
 *
 * @param geometryCollection
 * @return
 */
public List<OsmDroidMapShape> toShapes(
    GeometryCollection<Geometry> geometryCollection) {

    List<OsmDroidMapShape> shapes = new ArrayList<OsmDroidMapShape>();

    for (Geometry geometry : geometryCollection.getGeometries()) {
        OsmDroidMapShape shape = toShape(geometry);
        shapes.add(shape);
    }

    return shapes;
}
 
开发者ID:osmdroid,项目名称:osmdroid,代码行数:19,代码来源:OsmMapShapeConverter.java

示例11: addToMap

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的package包/类
/**
 * Convert a {@link GeometryCollection} to a list of Map shapes and add to
 * the map
 *
 * @param map
 * @param geometryCollection
 * @return
 */
public List<OsmDroidMapShape> addToMap(MapView map,
                                     GeometryCollection<Geometry> geometryCollection) {

    List<OsmDroidMapShape> shapes = new ArrayList<OsmDroidMapShape>();

    for (Geometry geometry : geometryCollection.getGeometries()) {
        OsmDroidMapShape shape = addToMap(map, geometry);
        shapes.add(shape);
    }

    return shapes;
}
 
开发者ID:osmdroid,项目名称:osmdroid,代码行数:21,代码来源:OsmMapShapeConverter.java

示例12: buildEnvelope

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的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

示例13: getGeometryString

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的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

示例14: getJSONCompatibleGeometry

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的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

示例15: minimizeGeometry

import mil.nga.wkb.geom.GeometryCollection; //导入方法依赖的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


注:本文中的mil.nga.wkb.geom.GeometryCollection.getGeometries方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。