Search in sources :

Example 11 with Lineal

use of com.revolsys.geometry.model.Lineal in project com.revolsys.open by revolsys.

the class NormalizeTest method testNormalizeMultiLineString.

public void testNormalizeMultiLineString() throws Exception {
    Lineal actualValue = (Lineal) this.geometryFactory.geometry("MULTILINESTRING ((200 260,180 320,260 340),(120 180,140 100,40 80),(200 180,220 160,200 180),(100 280,120 260,140 260,140 240,120 240,120 260,100 280))");
    actualValue = actualValue.normalize();
    final Lineal expectedValue = (Lineal) this.geometryFactory.geometry("MULTILINESTRING ((40 80,140 100,120 180),(100 280,120 260,120 240,140 240,140 260,120 260,100 280),(200 180,220 160,200 180),(200 260,180 320,260 340))");
    assertEqualsExact(expectedValue, actualValue);
}
Also used : Lineal(com.revolsys.geometry.model.Lineal)

Example 12 with Lineal

use of com.revolsys.geometry.model.Lineal in project com.revolsys.open by revolsys.

the class PerturbedGridPolygonBuilder method buildGrid.

private Geometry buildGrid() {
    final LineString[] lines = new LineString[this.numLines * 2];
    int index = 0;
    for (int i = 0; i < this.numLines; i++) {
        final Point p0 = new PointDoubleXY(getRandOrdinate(), 0);
        final Point p1 = new PointDoubleXY(getRandOrdinate(), this.gridWidth);
        final LineString line = this.geomFactory.lineString(new Point[] { p0, p1 });
        lines[index++] = line;
    }
    for (int i = 0; i < this.numLines; i++) {
        final Point p0 = new PointDoubleXY(0, getRandOrdinate());
        final Point p1 = new PointDoubleXY(this.gridWidth, getRandOrdinate());
        final LineString line = this.geomFactory.lineString(new Point[] { p0, p1 });
        lines[index++] = line;
    }
    final Lineal ml = this.geomFactory.lineal(lines);
    final Geometry grid = ml.buffer(this.lineWidth);
    // System.out.println(grid);
    return grid;
}
Also used : Geometry(com.revolsys.geometry.model.Geometry) Lineal(com.revolsys.geometry.model.Lineal) LineString(com.revolsys.geometry.model.LineString) Point(com.revolsys.geometry.model.Point) PointDoubleXY(com.revolsys.geometry.model.impl.PointDoubleXY) Point(com.revolsys.geometry.model.Point)

Example 13 with Lineal

use of com.revolsys.geometry.model.Lineal in project com.revolsys.open by revolsys.

the class TriangulationFunctions method delaunayEdges.

public static Lineal delaunayEdges(final Geometry geom) {
    GeometryFactory geometryFactory = geom.getGeometryFactory();
    geometryFactory = geometryFactory.convertScales(0, 0, 0);
    final QuadEdgeDelaunayTinBuilder builder = new QuadEdgeDelaunayTinBuilder(geometryFactory);
    builder.insertVertices(geom);
    final Lineal edges = builder.getEdges();
    return edges;
}
Also used : GeometryFactory(com.revolsys.geometry.model.GeometryFactory) Lineal(com.revolsys.geometry.model.Lineal) QuadEdgeDelaunayTinBuilder(com.revolsys.elevation.tin.quadedge.QuadEdgeDelaunayTinBuilder)

Example 14 with Lineal

use of com.revolsys.geometry.model.Lineal in project com.revolsys.open by revolsys.

the class TriangulationFunctions method conformingDelaunayEdgesWithTolerance.

public static Lineal conformingDelaunayEdgesWithTolerance(final Geometry sites, final Geometry constraints, final double tol) {
    final QuadEdgeConformingDelaunayTinBuilder builder = new QuadEdgeConformingDelaunayTinBuilder();
    builder.setSites(sites);
    builder.setConstraints(constraints);
    builder.setTolerance(tol);
    final GeometryFactory geomFact = sites != null ? sites.getGeometryFactory() : constraints.getGeometryFactory();
    final Lineal triangles = builder.getEdgesLineal(geomFact);
    return triangles;
}
Also used : GeometryFactory(com.revolsys.geometry.model.GeometryFactory) Lineal(com.revolsys.geometry.model.Lineal) QuadEdgeConformingDelaunayTinBuilder(com.revolsys.elevation.tin.quadedge.QuadEdgeConformingDelaunayTinBuilder)

Example 15 with Lineal

use of com.revolsys.geometry.model.Lineal in project com.revolsys.open by revolsys.

the class TriangulationFunctions method delaunayEdgesWithTolerance.

public static Geometry delaunayEdgesWithTolerance(final Geometry geom, final double tolerance) {
    GeometryFactory geometryFactory = geom.getGeometryFactory();
    geometryFactory = geometryFactory.convertScales(tolerance, tolerance, tolerance);
    final QuadEdgeDelaunayTinBuilder builder = new QuadEdgeDelaunayTinBuilder(geometryFactory);
    builder.insertVertices(geom);
    final Lineal edges = builder.getEdges();
    return edges;
}
Also used : GeometryFactory(com.revolsys.geometry.model.GeometryFactory) Lineal(com.revolsys.geometry.model.Lineal) QuadEdgeDelaunayTinBuilder(com.revolsys.elevation.tin.quadedge.QuadEdgeDelaunayTinBuilder)

Aggregations

Lineal (com.revolsys.geometry.model.Lineal)38 LineString (com.revolsys.geometry.model.LineString)20 Point (com.revolsys.geometry.model.Point)19 Polygon (com.revolsys.geometry.model.Polygon)11 Punctual (com.revolsys.geometry.model.Punctual)11 Polygonal (com.revolsys.geometry.model.Polygonal)9 GeometryFactory (com.revolsys.geometry.model.GeometryFactory)8 LinearRing (com.revolsys.geometry.model.LinearRing)7 Test (org.junit.Test)7 LinealEditor (com.revolsys.geometry.model.editor.LinealEditor)6 BoundingBox (com.revolsys.geometry.model.BoundingBox)5 Geometry (com.revolsys.geometry.model.Geometry)5 ArrayList (java.util.ArrayList)4 QuadEdgeDelaunayTinBuilder (com.revolsys.elevation.tin.quadedge.QuadEdgeDelaunayTinBuilder)2 Edge (com.revolsys.geometry.graph.Edge)2 AbstractLineString (com.revolsys.geometry.model.impl.AbstractLineString)2 LinkedList (java.util.LinkedList)2 List (java.util.List)2 NoSuchElementException (java.util.NoSuchElementException)2 DataType (com.revolsys.datatype.DataType)1