private static void _testRing1(GeometryBuilder builder) { GeometryFactoryImpl tCoordFactory = (GeometryFactoryImpl) builder.getGeometryFactory(); PrimitiveFactoryImpl tPrimFactory = (PrimitiveFactoryImpl) builder.getPrimitiveFactory(); /* Defining Positions for LineStrings */ ArrayList<Position> line1 = new ArrayList<Position>(); line1.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {50, 20}))); line1.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {30, 30}))); line1.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {20, 50}))); line1.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {20, 70}))); ArrayList<Position> line2 = new ArrayList<Position>(); line2.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {20, 70}))); line2.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {40, 80}))); line2.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {70, 80}))); ArrayList<Position> line3 = new ArrayList<Position>(); line3.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {70, 80}))); line3.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {90, 70}))); line3.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {100, 60}))); line3.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {100, 40}))); ArrayList<Position> line4 = new ArrayList<Position>(); line4.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {100, 40}))); line4.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {80, 30}))); line4.add(new PositionImpl(tCoordFactory.createDirectPosition(new double[] {50, 20}))); /* Setting up Array of these LineStrings */ ArrayList<CurveSegment> tLineList1 = new ArrayList<CurveSegment>(); tLineList1.add(tCoordFactory.createLineString(line1)); tLineList1.add(tCoordFactory.createLineString(line2)); ArrayList<CurveSegment> tLineList2 = new ArrayList<CurveSegment>(); tLineList2.add(tCoordFactory.createLineString(line3)); tLineList2.add(tCoordFactory.createLineString(line4)); /* Build Curve */ CurveImpl curve1 = tPrimFactory.createCurve(tLineList1); CurveImpl curve2 = tPrimFactory.createCurve(tLineList2); /* Build Ring */ ArrayList<OrientableCurve> curveList = new ArrayList<OrientableCurve>(); curveList.add(curve1); curveList.add(curve2); Ring ring1 = tPrimFactory.createRing(curveList); System.out.println(ring1); System.out.println(ring1.getEnvelope()); PaintGMObject.paint(curve1); }
/** {@inheritDoc } */ @Override public Ring createRing(final List curves) { Ring result = new JTSRing(crs); if (curves != null) result.getGenerators().addAll(curves); return result; }