Search in sources :

Example 6 with CrsId

use of org.geolatte.geom.crs.CrsId in project querydsl by querydsl.

the class JGeometryConverter method getPoints.

private static PointSequence getPoints(JGeometry geometry) {
    CrsId crs = CrsId.valueOf(geometry.getSRID());
    int dimensions = geometry.getDimensions();
    boolean measured = geometry.isLRSGeometry();
    DimensionalFlag flag = DimensionalFlag.valueOf(dimensions > (measured ? 3 : 2), measured);
    double[] ordinates = geometry.getOrdinatesArray();
    return PointCollectionFactory.create(ordinates, flag, crs);
}
Also used : CrsId(org.geolatte.geom.crs.CrsId) Point(org.geolatte.geom.Point)

Example 7 with CrsId

use of org.geolatte.geom.crs.CrsId in project querydsl by querydsl.

the class JGeometryConverter method convertPolygon.

private static Polygon convertPolygon(JGeometry geometry) {
    CrsId crs = CrsId.valueOf(geometry.getSRID());
    int dimensions = geometry.getDimensions();
    boolean measured = geometry.isLRSGeometry();
    DimensionalFlag flag = DimensionalFlag.valueOf(dimensions > (measured ? 3 : 2), measured);
    Object[] elements = geometry.getOrdinatesOfElements();
    LinearRing[] rings = new LinearRing[elements.length];
    for (int i = 0; i < elements.length; i++) {
        PointSequence points = PointCollectionFactory.create((double[]) elements[i], flag, crs);
        rings[i] = new LinearRing(points);
    }
    return new Polygon(rings);
}
Also used : CrsId(org.geolatte.geom.crs.CrsId) Point(org.geolatte.geom.Point)

Example 8 with CrsId

use of org.geolatte.geom.crs.CrsId in project querydsl by querydsl.

the class JGeometryConverter method convertCurve.

private static LineString convertCurve(JGeometry geometry) {
    CrsId crs = CrsId.valueOf(geometry.getSRID());
    PointSequence points = getPoints(geometry);
    return new LineString(points);
}
Also used : CrsId(org.geolatte.geom.crs.CrsId)

Example 9 with CrsId

use of org.geolatte.geom.crs.CrsId in project querydsl by querydsl.

the class JGeometryConverter method convertMultiPoint.

private static MultiPoint convertMultiPoint(JGeometry geometry) {
    CrsId crs = CrsId.valueOf(geometry.getSRID());
    JGeometry[] elements = geometry.getElements();
    if (elements == null || elements.length == 0) {
        return MultiPoint.createEmpty();
    }
    Point[] points = new Point[elements.length];
    int dimensions = geometry.getDimensions();
    double[] ordinates = geometry.getOrdinatesArray();
    boolean measured = geometry.isLRSGeometry();
    DimensionalFlag flag = DimensionalFlag.valueOf(dimensions > (measured ? 3 : 2), measured);
    int offset = 0;
    for (int i = 0; i < points.length; i++) {
        double[] coords = new double[dimensions];
        System.arraycopy(ordinates, offset, coords, 0, coords.length);
        points[i] = new Point(PointCollectionFactory.create(coords, flag, crs));
        offset += dimensions;
    }
    return new MultiPoint(points);
}
Also used : JGeometry(oracle.spatial.geometry.JGeometry) CrsId(org.geolatte.geom.crs.CrsId) Point(org.geolatte.geom.Point) Point(org.geolatte.geom.Point)

Aggregations

CrsId (org.geolatte.geom.crs.CrsId)9 Point (org.geolatte.geom.Point)5 JGeometry (oracle.spatial.geometry.JGeometry)2