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


Java LineString.addPoint方法代码示例

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


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

示例1: createLineString

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
/**
 * Create a random line string
 *
 * @param hasZ
 * @param hasM
 * @param ring
 * @return
 */
public static LineString createLineString(boolean hasZ, boolean hasM,
                                          boolean ring) {

    LineString lineString = new LineString(hasZ, hasM);

    int numPoints = 2 + ((int) (Math.random() * 9));

    for (int i = 0; i < numPoints; i++) {
        lineString.addPoint(createPoint(hasZ, hasM));
    }

    if (ring) {
        lineString.addPoint(lineString.getPoints().get(0));
    }

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

示例2: createLineString

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
/**
 * Create a random line string
 *
 * @param hasZ
 * @param hasM
 * @param ring
 * @return
 */
public static LineString createLineString(boolean hasZ, boolean hasM,
		boolean ring) {

	LineString lineString = new LineString(hasZ, hasM);

	int numPoints = 2 + ((int) (Math.random() * 9));

	for (int i = 0; i < numPoints; i++) {
		lineString.addPoint(createPoint(hasZ, hasM));
	}

	if (ring) {
		lineString.addPoint(lineString.getPoints().get(0));
	}

	return lineString;
}
 
开发者ID:ngageoint,项目名称:geopackage-android,代码行数:26,代码来源:TestUtils.java

示例3: createLineString

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
/**
 * Create a random line string
 * 
 * @param hasZ
 * @param hasM
 * @param ring
 * @return line string
 */
public static LineString createLineString(boolean hasZ, boolean hasM,
		boolean ring) {

	LineString lineString = new LineString(hasZ, hasM);

	int numPoints = 2 + ((int) (Math.random() * 9));

	for (int i = 0; i < numPoints; i++) {
		lineString.addPoint(createPoint(hasZ, hasM));
	}

	if (ring) {
		lineString.addPoint(lineString.getPoints().get(0));
	}

	return lineString;
}
 
开发者ID:ngageoint,项目名称:geopackage-java,代码行数:26,代码来源:TestUtils.java

示例4: createPolygon

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
private static Polygon createPolygon() {

		Polygon polygon = new Polygon();
		LineString lineString = new LineString();
		lineString.addPoint(createPoint(-180.0, 45.0, 90.0, 45.0));
		lineString.addPoint(createPoint(-180.0, -90.0, 90.0, 45.0));
		lineString.addPoint(createPoint(90.0, -90.0, 90.0, 45.0));
		lineString.addPoint(createPoint(90.0, 45.0, 90.0, 45.0));
		polygon.addRing(lineString);

		LineString holeLineString = new LineString();
		holeLineString.addPoint(createPoint(-90.0, 0.0, 90.0, 45.0));
		holeLineString.addPoint(createPoint(-90.0, -45.0, 90.0, 45.0));
		holeLineString.addPoint(createPoint(0.0, -45.0, 90.0, 45.0));
		holeLineString.addPoint(createPoint(0.0, 0.0, 90.0, 45.0));
		polygon.addRing(holeLineString);

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

示例5: createLineString

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
/**
 * Create a random line string
 * 
 * @param hasZ
 * @param hasM
 * @param ring
 * @return
 */
public static LineString createLineString(boolean hasZ, boolean hasM,
		boolean ring) {

	LineString lineString = new LineString(hasZ, hasM);

	int num = 2 + ((int) (Math.random() * 9));

	for (int i = 0; i < num; i++) {
		lineString.addPoint(createPoint(hasZ, hasM));
	}

	if (ring) {
		lineString.addPoint(lineString.getPoints().get(0));
	}

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

示例6: populateLineString

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
/**
 * Convert a list of {@link LatLng} to a {@link LineString}
 *
 * @param lineString
 * @param latLngs
 */
public void populateLineString(LineString lineString, List<LatLng> latLngs) {

    for (LatLng latLng : latLngs) {
        Point point = toPoint(latLng, lineString.hasZ(), lineString.hasM());
        lineString.addPoint(point);
    }
}
 
开发者ID:ngageoint,项目名称:geopackage-android-map,代码行数:14,代码来源:GoogleMapShapeConverter.java

示例7: getLineString

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
private static LineString getLineString(double[][] points) {
    LineString lineString = new LineString(false, false);
    for (int i = 0; i < points.length; i++) {
        Point point = new Point(false, false, points[i][0], points[i][1]);
        lineString.addPoint(point);
    }
    return lineString;
}
 
开发者ID:ngageoint,项目名称:geopackage-android,代码行数:9,代码来源:FeatureTileUtils.java

示例8: transform

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
/**
 * Transform the projected line string
 * 
 * @param lineString
 * @return projected line string
 */
public LineString transform(LineString lineString) {

	LineString to = new LineString(lineString.hasZ(), lineString.hasM());

	for (Point point : lineString.getPoints()) {
		Point toPoint = transform(point);
		to.addPoint(toPoint);
	}

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

示例9: getLineString

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
private static LineString getLineString(double[][] points) {
	LineString lineString = new LineString(false, false);
	for (int i = 0; i < points.length; i++) {
		Point point = new Point(false, false, points[i][0], points[i][1]);
		lineString.addPoint(point);
	}
	return lineString;
}
 
开发者ID:ngageoint,项目名称:geopackage-java,代码行数:9,代码来源:FeatureTileUtils.java

示例10: testPolygonCentroidWithAndWithoutHole

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
@Test
public void testPolygonCentroidWithAndWithoutHole() throws IOException {

	Polygon polygon = new Polygon();
	LineString lineString = new LineString();
	lineString.addPoint(new Point(-90, 45));
	lineString.addPoint(new Point(-90, -45));
	lineString.addPoint(new Point(90, -45));
	lineString.addPoint(new Point(90, 45));
	polygon.addRing(lineString);

	TestCase.assertEquals(2, GeometryUtils.getDimension(polygon));
	Point centroid = geometryCentroidTester(polygon);

	TestCase.assertEquals(0.0, centroid.getX());
	TestCase.assertEquals(0.0, centroid.getY());

	LineString holeLineString = new LineString();
	holeLineString.addPoint(new Point(0, 45));
	holeLineString.addPoint(new Point(0, 0));
	holeLineString.addPoint(new Point(90, 0));
	holeLineString.addPoint(new Point(90, 45));
	polygon.addRing(holeLineString);

	TestCase.assertEquals(2, GeometryUtils.getDimension(polygon));
	centroid = geometryCentroidTester(polygon);

	TestCase.assertEquals(-15.0, centroid.getX());
	TestCase.assertEquals(-7.5, centroid.getY());
}
 
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:31,代码来源:GeometryUtilsTest.java

示例11: onMapLongClick

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
/**
 * {@inheritDoc}
 */
@Override
public void onMapLongClick(LatLng point) {

    // Add a new point to a line or polygon
    if (shapeType != GeometryType.POINT) {

        if (!isRectangle) {
            vibrator.vibrate(getResources().getInteger(
                    R.integer.shape_edit_add_long_click_vibrate));

            if (shapeMarkers == null) {
                Geometry geometry = null;
                Point firstPoint = new Point(point.longitude, point.latitude);
                switch (shapeType) {
                    case LINESTRING:
                        LineString lineString = new LineString();
                        lineString.addPoint(firstPoint);
                        geometry = lineString;
                        break;
                    case POLYGON:
                        Polygon polygon = new Polygon();
                        LineString ring = new LineString();
                        ring.addPoint(firstPoint);
                        polygon.addRing(ring);
                        geometry = polygon;
                        break;
                    default:
                        throw new IllegalArgumentException("Unsupported Geometry Type: " + shapeType);
                }
                addMapShape(geometry);
            } else {
                MarkerOptions markerOptions = getEditMarkerOptions();
                markerOptions.position(point);
                Marker marker = map.addMarker(markerOptions);
                ShapeMarkers shape = null;
                GoogleMapShape mapShape = shapeMarkers.getShape();
                switch (mapShape.getShapeType()) {
                    case POLYLINE_MARKERS:
                        PolylineMarkers polylineMarkers = (PolylineMarkers) mapShape.getShape();
                        shape = polylineMarkers;
                        if (newDrawing) {
                            polylineMarkers.add(marker);
                        } else {
                            polylineMarkers.addNew(marker);
                        }
                        break;
                    case POLYGON_MARKERS:
                        PolygonMarkers polygonMarkers = (PolygonMarkers) shapeMarkers.getShape().getShape();
                        shape = polygonMarkers;
                        if (newDrawing) {
                            polygonMarkers.add(marker);
                        } else {
                            polygonMarkers.addNew(marker);
                        }
                        break;
                    default:
                        throw new IllegalArgumentException("Unsupported Shape Type: " + mapShape.getShapeType());
                }
                shapeMarkers.add(marker, shape);
                selectShapeMarker(marker);
                updateShape(marker);
            }
        } else if (!shapeMarkersValid() && selectedMarker != null) {
            // Allow long click to expand a zero area rectangle
            vibrator.vibrate(getResources().getInteger(
                    R.integer.shape_edit_add_long_click_vibrate));
            selectedMarker.setPosition(point);
            updateShape(selectedMarker);
            updateHint();
        }
    }
}
 
开发者ID:ngageoint,项目名称:mage-android,代码行数:76,代码来源:LocationEditActivity.java

示例12: readLineString

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
/**
 * Read a Line String
 * 
 * @param reader
 * @param hasZ
 * @param hasM
 * @return line string
 */
public static LineString readLineString(ByteReader reader, boolean hasZ,
		boolean hasM) {

	LineString lineString = new LineString(hasZ, hasM);

	int numPoints = reader.readInt();

	for (int i = 0; i < numPoints; i++) {
		Point point = readPoint(reader, hasZ, hasM);
		lineString.addPoint(point);

	}

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

示例13: testCopyMinimizeAndNormalize

import mil.nga.wkb.geom.LineString; //导入方法依赖的package包/类
@Test
public void testCopyMinimizeAndNormalize() {

	Polygon polygon = new Polygon();
	LineString ring = new LineString();
	double random = Math.random();
	if (random < .5) {
		ring.addPoint(createPoint(90.0, 0.0, 90.0, 90.0));
		ring.addPoint(createPoint(90.0, -90.0, 90.0, 90.0));
		ring.addPoint(createPoint(-180.0, -90.0, 89.0, 90.0));
		ring.addPoint(createPoint(-180.0, 0.0, 89.0, 90.0));
	} else {
		ring.addPoint(createPoint(-180.0, 0.0, 89.0, 90.0));
		ring.addPoint(createPoint(-180.0, -90.0, 89.0, 90.0));
		ring.addPoint(createPoint(90.0, -90.0, 90.0, 90.0));
		ring.addPoint(createPoint(90.0, 0.0, 90.0, 90.0));
	}
	polygon.addRing(ring);

	Polygon polygon2 = (Polygon) polygon.copy();
	GeometryUtils.minimizeGeometry(polygon2, 180.0);

	Polygon polygon3 = (Polygon) polygon2.copy();
	GeometryUtils.normalizeGeometry(polygon3, 180.0);

	List<Point> points = ring.getPoints();
	LineString ring2 = polygon2.getRings().get(0);
	List<Point> points2 = ring2.getPoints();
	LineString ring3 = polygon3.getRings().get(0);
	List<Point> points3 = ring3.getPoints();

	for (int i = 0; i < points.size(); i++) {

		Point point = points.get(i);
		Point point2 = points2.get(i);
		Point point3 = points3.get(i);

		TestCase.assertEquals(point.getY(), point2.getY(), .0000000001);
		TestCase.assertEquals(point.getY(), point3.getY(), .0000000001);
		TestCase.assertEquals(point.getX(), point3.getX(), .0000000001);
		if (i < 2) {
			TestCase.assertEquals(point.getX(), point2.getX(), .0000000001);
		} else {
			double point2Value = point2.getX();
			if (random < .5) {
				point2Value -= 360.0;
			} else {
				point2Value += 360.0;
			}
			TestCase.assertEquals(point.getX(), point2Value, .0000000001);
		}
	}

}
 
开发者ID:ngageoint,项目名称:geopackage-wkb-java,代码行数:55,代码来源:GeometryUtilsTest.java


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