本文整理汇总了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;
}
示例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;
}
示例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;
}
示例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;
}
示例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;
}
示例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);
}
}
示例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;
}
示例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;
}
示例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;
}
示例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());
}
示例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();
}
}
}
示例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;
}
示例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);
}
}
}