Class RandomPointsInGridBuilder


  • public class RandomPointsInGridBuilder
    extends GeometricShapeBuilder
    Creates random point sets where the points are constrained to lie in the cells of a grid.
    • Field Detail

      • isConstrainedToCircle

        private boolean isConstrainedToCircle
      • gutterFraction

        private double gutterFraction
    • Constructor Detail

      • RandomPointsInGridBuilder

        public RandomPointsInGridBuilder()
        Create a builder which will create shapes using the default GeometryFactory.
      • RandomPointsInGridBuilder

        public RandomPointsInGridBuilder​(GeometryFactory geomFact)
        Create a builder which will create shapes using the given GeometryFactory.
        Parameters:
        geomFact - the factory to use
    • Method Detail

      • setConstrainedToCircle

        public void setConstrainedToCircle​(boolean isConstrainedToCircle)
        Sets whether generated points are constrained to lie within a circle contained within each grid cell. This provides greater separation between points in adjacent cells.

        The default is to not be constrained to a circle.

        Parameters:
        isConstrainedToCircle -
      • setGutterFraction

        public void setGutterFraction​(double gutterFraction)
        Sets the fraction of the grid cell side which will be treated as a gutter, in which no points will be created. The provided value is clamped to the range [0.0, 1.0].
        Parameters:
        gutterFraction -
      • randomPointInCell

        private Coordinate randomPointInCell​(double orgX,
                                             double orgY,
                                             double xLen,
                                             double yLen)
      • randomPointInGridCell

        private Coordinate randomPointInGridCell​(double orgX,
                                                 double orgY,
                                                 double xLen,
                                                 double yLen)
      • randomPointInCircle

        private static Coordinate randomPointInCircle​(double orgX,
                                                      double orgY,
                                                      double width,
                                                      double height)