public IGeometry CreateSineStar(int nPts) {
		var gsf = new SineStarFactory(_geomFact);
		gsf.Centre = _origin;
		gsf.Size = _size;
		gsf.NumPoints = nPts;
		gsf.ArmLengthRatio = 0.1;
		gsf.NumArms = 20;
		var poly = gsf.CreateSineStar();
		return poly;
	}
 static IGeometry CreateSineStar(Coordinate origin, double size, int nPts)
 {
     SineStarFactory gsf = new SineStarFactory();
     gsf.Centre = origin;
     gsf.Size = size;
     gsf.NumPoints = nPts;
     gsf.ArmLengthRatio = 0.1;
     gsf.NumArms = 20;
     IGeometry poly = gsf.CreateSineStar();
     return poly;
 }
 public RandomGeometryHelper(IGeometryFactory factory)
 {
     Factory = factory;
     _geometricShapeFactory = new SineStarFactory(factory);
     CreateCoordinate = () => new Coordinate();
     Ordinates = Ordinates.XY;
     MinX = -180;
     MaxX = 180;
     MinY = -90;
     MaxY = 90;
 }
        /// <summary>
        /// Creates a sine star with the given parameters.
        /// </summary>
        /// <param name="origin">The origin point.</param>
        /// <param name="size">The size of the star.</param>
        /// <param name="nPts">The number of points in the star.</param>
        /// <param name="nArms">The number of arms to generate.</param>
        /// <param name="armLengthRatio">The arm length ratio.</param>
        /// <returns>A sine star shape.</returns>
        public static Geometry Create(Coordinate origin, double size, int nPts, int nArms, double armLengthRatio)
        {
            var gsf = new SineStarFactory
            {
                Centre         = origin,
                Size           = size,
                NumPoints      = nPts,
                ArmLengthRatio = armLengthRatio,
                NumArms        = nArms,
            };
            var poly = gsf.CreateSineStar();

            return(poly);
        }
 private static IGeometry CreateLine(Coordinate @base, double size, int nPts)
 {
     var gsf = new SineStarFactory();
     gsf.Centre = @base;
     gsf.Size = size;
     gsf.NumPoints = nPts;
     var circle = gsf.CreateSineStar();
     //    System.out.println(circle);
     return circle.Boundary;
 }
 private static IGeometry CreateSineStar(Coordinate origin, double size, int nPts)
 {
     var gsf = new SineStarFactory
                   {Centre = origin, Size = size, NumPoints = nPts, ArmLengthRatio = 2, NumArms = 20};
     var poly = gsf.CreateSineStar();
     return poly;
 }