private de.micromata.opengis.kml.v_2_2_0.LinearRing convertLinearRing(LinearRing geometry) { de.micromata.opengis.kml.v_2_2_0.LinearRing kmlLine = new de.micromata.opengis.kml.v_2_2_0.LinearRing(); List<de.micromata.opengis.kml.v_2_2_0.Coordinate> kmlCoordinates = dumpCoordinateSequence(((LineString) geometry) .getCoordinateSequence()); kmlLine.setCoordinates(kmlCoordinates); if(!hasHeightTemplate) { // allow the polygon to follow the ground, otherwise some polygons with long // edges will disappear in mountain areas kmlLine.setTessellate(true); } return kmlLine; }
/** * fluent setter * @see #setAltitudeMode(Object) * * @param altitudeMode * required parameter */ public LinearRing withAltitudeMode(final AltitudeMode altitudeMode) { this.setAltitudeMode(altitudeMode); return this; }
/** * fluent setter * @see #setExtrude(Boolean) * * @param extrude * required parameter */ public LinearRing withExtrude(final Boolean extrude) { this.setExtrude(extrude); return this; }
/** * Create an instance of {@link LinearRing} * */ public static LinearRing createLinearRing() { return new LinearRing(); }
kmlPolygon.setOuterBoundaryIs(outerboundary); final LinearRing outerlinearring = new LinearRing(); outerboundary.setLinearRing(outerlinearring); outerlinearring.setCoordinates(outercoord); for (int i=0;i<polygon.getExteriorRing().getNumPoints();i++) { outercoord.add(new Coordinate(polygon.getExteriorRing().getPointN(i).getX(),polygon.getExteriorRing().getPointN(i).getY())); kmlPolygon.getInnerBoundaryIs().add(innerboundary); final LinearRing innerlinearring = new LinearRing(); innerboundary.setLinearRing(innerlinearring); innerlinearring.setCoordinates(innercoord); int numOfPoints = polygon.getInteriorRingN(i).getNumPoints(); for(int j=0;j<numOfPoints;j++)
public void applyExtrusion(de.micromata.opengis.kml.v_2_2_0.Geometry kmlGeometry) { if(kmlGeometry instanceof de.micromata.opengis.kml.v_2_2_0.Polygon) { de.micromata.opengis.kml.v_2_2_0.Polygon polygon = (de.micromata.opengis.kml.v_2_2_0.Polygon) kmlGeometry; polygon.setExtrude(extrudeEnabled); polygon.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); } else if(kmlGeometry instanceof de.micromata.opengis.kml.v_2_2_0.LinearRing) { de.micromata.opengis.kml.v_2_2_0.LinearRing ring = (de.micromata.opengis.kml.v_2_2_0.LinearRing) kmlGeometry; ring.setExtrude(extrudeEnabled); ring.setTessellate(true); ring.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); } else if(kmlGeometry instanceof de.micromata.opengis.kml.v_2_2_0.LineString) { de.micromata.opengis.kml.v_2_2_0.LineString ls = (de.micromata.opengis.kml.v_2_2_0.LineString) kmlGeometry; ls.setExtrude(extrudeEnabled); ls.setTessellate(true); ls.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); } else if(kmlGeometry instanceof de.micromata.opengis.kml.v_2_2_0.Point) { de.micromata.opengis.kml.v_2_2_0.Point point = (de.micromata.opengis.kml.v_2_2_0.Point) kmlGeometry; point.setExtrude(extrudeEnabled); point.setAltitudeMode(AltitudeMode.RELATIVE_TO_GROUND); } else if(kmlGeometry instanceof MultiGeometry) { de.micromata.opengis.kml.v_2_2_0.MultiGeometry mg = (de.micromata.opengis.kml.v_2_2_0.MultiGeometry) kmlGeometry; for(de.micromata.opengis.kml.v_2_2_0.Geometry g : mg.getGeometry()) { applyExtrusion(g); } } }
/** * fluent setter * @see #setCoordinates(List<Coordinate>) * * @param coordinates * required parameter */ public LinearRing withCoordinates(final List<Coordinate> coordinates) { this.setCoordinates(coordinates); return this; }
@Override public LinearRing clone() { LinearRing copy; copy = ((LinearRing) super.clone()); copy.coordinates = new ArrayList<Coordinate>((getCoordinates().size())); for (Coordinate iter: coordinates) { copy.coordinates.add(iter.clone()); } copy.linearRingSimpleExtension = new ArrayList<Object>((getLinearRingSimpleExtension().size())); for (Object iter: linearRingSimpleExtension) { copy.linearRingSimpleExtension.add(iter); } copy.linearRingObjectExtension = new ArrayList<AbstractObject>((getLinearRingObjectExtension().size())); for (AbstractObject iter: linearRingObjectExtension) { copy.linearRingObjectExtension.add(iter.clone()); } return copy; }
/** * fluent setter * @see #setTessellate(Boolean) * * @param tessellate * required parameter */ public LinearRing withTessellate(final Boolean tessellate) { this.setTessellate(tessellate); return this; }
/** * add a value to the coordinates property collection * * @param coordinates * required parameter * @return * <tt>true</tt> (as general contract of <tt>Collection.add</tt>). */ public LinearRing addToCoordinates(final String coordinates) { this.getCoordinates().add(new Coordinate(coordinates)); return this; }
/** * add a value to the linearRingObjectExtension property collection * * @param linearRingObjectExtension * Objects of the following type are allowed in the list: {@link AbstractObject} * @return * <tt>true</tt> (as general contract of <tt>Collection.add</tt>). */ public LinearRing addToLinearRingObjectExtension(final AbstractObject linearRingObjectExtension) { this.getLinearRingObjectExtension().add(linearRingObjectExtension); return this; }
@Override public Boundary clone() { Boundary copy; try { copy = ((Boundary) super.clone()); } catch (CloneNotSupportedException _x) { throw new InternalError((_x.toString())); } copy.linearRing = ((linearRing == null)?null:((LinearRing) linearRing.clone())); copy.boundarySimpleExtension = new ArrayList<Object>((getBoundarySimpleExtension().size())); for (Object iter: boundarySimpleExtension) { copy.boundarySimpleExtension.add(iter); } copy.boundaryObjectExtension = new ArrayList<AbstractObject>((getBoundaryObjectExtension().size())); for (AbstractObject iter: boundaryObjectExtension) { copy.boundaryObjectExtension.add(iter.clone()); } return copy; }
if (linearRing.equals(other.linearRing) == false) { return false;
/** * Create an instance of {@link LinearRing} * */ public static LinearRing createLinearRing() { return new LinearRing(); }
kmlPolygon.setOuterBoundaryIs(outerboundary); final LinearRing outerlinearring = new LinearRing(); outerboundary.setLinearRing(outerlinearring); outerlinearring.setCoordinates(outercoord); double pointX = 0, pointY = 0; int pointCounter = 0; kmlPolygon.getInnerBoundaryIs().add(innerboundary); final LinearRing innerlinearring = new LinearRing(); innerboundary.setLinearRing(innerlinearring); innerlinearring.setCoordinates(innercoord); int numOfPoints = polygon.getInteriorRingN(i).getNumPoints(); for (int j = 0; j < numOfPoints; j++) {
/** * fluent setter * @see #setCoordinates(List<Coordinate>) * * @param coordinates * required parameter */ public LinearRing withCoordinates(final List<Coordinate> coordinates) { this.setCoordinates(coordinates); return this; }
@Override public LinearRing clone() { LinearRing copy; copy = ((LinearRing) super.clone()); copy.coordinates = new ArrayList<Coordinate>((getCoordinates().size())); for (Coordinate iter: coordinates) { copy.coordinates.add(iter.clone()); } copy.linearRingSimpleExtension = new ArrayList<Object>((getLinearRingSimpleExtension().size())); for (Object iter: linearRingSimpleExtension) { copy.linearRingSimpleExtension.add(iter); } copy.linearRingObjectExtension = new ArrayList<AbstractObject>((getLinearRingObjectExtension().size())); for (AbstractObject iter: linearRingObjectExtension) { copy.linearRingObjectExtension.add(iter.clone()); } return copy; }
/** * fluent setter * @see #setTessellate(Boolean) * * @param tessellate * required parameter */ public LinearRing withTessellate(final Boolean tessellate) { this.setTessellate(tessellate); return this; }
/** * add a value to the coordinates property collection * * @param longitude * required parameter * @param latitude * required parameter * @return * <tt>true</tt> (as general contract of <tt>Collection.add</tt>). */ public LinearRing addToCoordinates(final double longitude, final double latitude) { this.getCoordinates().add(new Coordinate(longitude, latitude)); return this; }
/** * add a value to the linearRingObjectExtension property collection * * @param linearRingObjectExtension * Objects of the following type are allowed in the list: {@link AbstractObject} * @return * <tt>true</tt> (as general contract of <tt>Collection.add</tt>). */ public LinearRing addToLinearRingObjectExtension(final AbstractObject linearRingObjectExtension) { this.getLinearRingObjectExtension().add(linearRingObjectExtension); return this; }