/** * The mathematical centroid for this Surface as a Point. The result is not guaranteed to * be on this Surface. * * @return centroid */ public PointExpression<Point> centroid() { if (centroid == null) { centroid = GeometryExpressions.pointOperation(SpatialOps.CENTROID, mixin); } return centroid; }
/** * A Point guaranteed to be on this Surface. * * @return point on surface */ public PointExpression<Point> pointOnSurface() { if (pointOnSurface == null) { pointOnSurface = GeometryExpressions.pointOperation(SpatialOps.POINT_ON_SURFACE, mixin); } return pointOnSurface; }
/** * The end Point of this Curve. * * @return end point */ public PointExpression<Point> endPoint() { if (endPoint == null) { endPoint = GeometryExpressions.pointOperation(SpatialOps.END_POINT, mixin); } return endPoint; }
/** * The mathematical centroid for this MultiSurface. The result is not guaranteed to be on * this MultiSurface. * * @return centroid */ public PointExpression<Point> centroid() { if (centroid == null) { centroid = GeometryExpressions.pointOperation(SpatialOps.CENTROID, mixin); } return centroid; }
/** * A Point guaranteed to be on this MultiSurface. * * @return point on surface */ public PointExpression<Point> pointOnSurface() { if (pointOnSurface == null) { pointOnSurface = GeometryExpressions.pointOperation(SpatialOps.POINT_ON_SURFACE, mixin); } return pointOnSurface; }
/** * The start Point of this Curve. * * @return start point */ public PointExpression<Point> startPoint() { if (startPoint == null) { startPoint = GeometryExpressions.pointOperation(SpatialOps.START_POINT, mixin); } return startPoint; }
/** * Returns the specified Point N in this LineString. * * @param idx one-based index of element * @return matched element */ public PointExpression<Point> pointN(int idx) { return GeometryExpressions.pointOperation(SpatialOps.POINTN, mixin, ConstantImpl.create(idx)); }