Esempio n. 1
0
        private static void generatePolygons(IGeometryFactory geometryFactory,
                                             ICollection <IGeometry> geometry,
                                             Random rndGen)
        {
            ICoordinateSequenceFactory coordinateSequenceFactory =
                geometryFactory.CoordinateSequenceFactory;
            ICoordinateFactory  coordinateFactory = geometryFactory.CoordinateFactory;
            ICoordinateSequence coords            = coordinateSequenceFactory.Create(CoordinateDimensions.Two);

            Int32 polyCount = rndGen.Next(10, 100);

            for (Int32 polyIndex = 0; polyIndex < polyCount; polyIndex++)
            {
                ICoordinate upperLeft = coordinateFactory.Create(rndGen.NextDouble() * 1000,
                                                                 rndGen.NextDouble() * 1000);

                Double sideLength = rndGen.NextDouble() * 50;

                // Make a square
                coords.Add(upperLeft);
                coords.Add(coordinateFactory.Create(upperLeft[Ordinates.X] + sideLength,
                                                    upperLeft[Ordinates.Y]));
                coords.Add(coordinateFactory.Create(upperLeft[Ordinates.X] + sideLength,
                                                    upperLeft[Ordinates.Y] - sideLength));
                coords.Add(coordinateFactory.Create(upperLeft[Ordinates.X],
                                                    upperLeft[Ordinates.Y] - sideLength));

                IPolygon polygon = geometryFactory.CreatePolygon(coords);
                geometry.Add(polygon);
            }
        }
Esempio n. 2
0
        private static void generateLines(IGeometryFactory geometryFactory,
                                          ICollection <IGeometry> geometry,
                                          Random rndGen)
        {
            ICoordinateSequenceFactory coordinateSequenceFactory =
                geometryFactory.CoordinateSequenceFactory;
            ICoordinateFactory  coordinateFactory = geometryFactory.CoordinateFactory;
            ICoordinateSequence coords            = coordinateSequenceFactory.Create(CoordinateDimensions.Two);

            Int32 lineCount = rndGen.Next(10, 100);

            for (Int32 lineIndex = 0; lineIndex < lineCount; lineIndex++)
            {
                Int32 vertexCount = rndGen.Next(4, 15);

                ICoordinate coordinate = coordinateFactory.Create(rndGen.NextDouble() * 1000,
                                                                  rndGen.NextDouble() * 1000);
                coords.Add(coordinate);

                for (Int32 vertexIndex = 0; vertexIndex < vertexCount; vertexIndex++)
                {
                    ICoordinate next = coordinateFactory.Create(coordinate[Ordinates.X] + rndGen.Next(-50, 50),
                                                                coordinate[Ordinates.Y] + rndGen.Next(-50, 50));
                    coords.Add(next);
                    coordinate = next;
                }

                ILineString line = geometryFactory.CreateLineString(coords);

                geometry.Add(line);
            }
        }
Esempio n. 3
0
 public GraphAssemblerTests()
 {
     coordinateFactory = new TestCoordinateFactory();
     vertexFactory     = new TestVertexFactory();
     costFactory       = new TestCostFactory();
     graphFactory      = new TestGraphFactory();
     radarFactory      = new CoordinateAroundRadarFactory();
     graphAssembler    = new GraphAssemble(vertexFactory,
                                           coordinateFactory, graphFactory, costFactory, radarFactory);
 }
        private static IEnumerable <ICoordinate> generateCoordinates()
        {
            ICoordinateFactory coordFactory = _geoFactory.CoordinateFactory;

            yield return(coordFactory.Create(1, 2));

            yield return(coordFactory.Create(10, 22));

            yield return(coordFactory.Create(930, 123));
        }
 public SmoothedGraphAssemble(
     IVertexFactory vertexFactory,
     ICoordinateFactory coordinateFactory,
     IGraphFactory graphFactory,
     IVertexCostFactory costFactory,
     INeighboursCoordinatesFactory radarFactory)
     : this(vertexFactory, coordinateFactory,
            graphFactory, costFactory, radarFactory, new MeanCost())
 {
 }
Esempio n. 6
0
 public GraphSerializerTests()
 {
     formatter       = new BinaryFormatter();
     graphFactory    = new TestGraphFactory();
     radarFactory    = new CoordinateAroundRadarFactory();
     vertexConverter = new TestVertexInfoSerializationConverter(radarFactory);
     vertexFactory   = new TestVertexFactory();
     notSerializableCoordinateFactory = new NotSerializableCoordinateFactory();
     coordinateFactory = new TestCoordinateFactory();
     costFactory       = new TestCostFactory();
 }
 public SmoothedGraphAssemble(
     IVertexFactory vertexFactory,
     ICoordinateFactory coordinateFactory,
     IGraphFactory graphFactory,
     IVertexCostFactory costFactory,
     INeighboursCoordinatesFactory radarFactory,
     IMeanCost averageCost)
     : base(vertexFactory, coordinateFactory,
            graphFactory, costFactory, radarFactory)
 {
     this.averageCost = averageCost;
 }
 public GeometryFactory(ICoordinateFactory coordFactory, ICoordinateSequenceFactory sequenceFactory, Int32? srid, ICoordinateSystem spatialReference)
 {
     _coordFactory = coordFactory;
     _sequenceFactory = sequenceFactory;
     _srid = srid;
     _spatialReference = spatialReference;
     _spatialOps = new BoundingBoxSpatialOperations(this);
     _wktEncoder = new WktWriter();
     _wktDecoder = new WktReader(this, null);
     _wkbEncoder = new WkbWriter();
     _wkbDecoder = new WkbReader(this);
 }
Esempio n. 9
0
 public GeometryFactory(ICoordinateFactory coordFactory, ICoordinateSequenceFactory sequenceFactory, Int32?srid, ICoordinateSystem spatialReference)
 {
     _coordFactory     = coordFactory;
     _sequenceFactory  = sequenceFactory;
     _srid             = srid;
     _spatialReference = spatialReference;
     _spatialOps       = new BoundingBoxSpatialOperations(this);
     _wktEncoder       = new WktWriter();
     _wktDecoder       = new WktReader(this, null);
     _wkbEncoder       = new WkbWriter();
     _wkbDecoder       = new WkbReader(this);
 }
Esempio n. 10
0
 public GraphAssemble(
     IVertexFactory vertexFactory,
     ICoordinateFactory coordinateFactory,
     IGraphFactory graphFactory,
     IVertexCostFactory costFactory,
     ICoordinateRadarFactory radarFactory)
 {
     this.vertexFactory     = vertexFactory;
     this.coordinateFactory = coordinateFactory;
     this.graphFactory      = graphFactory;
     this.costFactory       = costFactory;
     this.radarFactory      = radarFactory;
     percentRange           = new ValueRange(100, 0);
 }
Esempio n. 11
0
 public GraphAssemble(
     IVertexFactory vertexFactory,
     ICoordinateFactory coordinateFactory,
     IGraphFactory graphFactory,
     IVertexCostFactory costFactory,
     INeighboursCoordinatesFactory radarFactory)
 {
     this.vertexFactory     = vertexFactory;
     this.coordinateFactory = coordinateFactory;
     this.graphFactory      = graphFactory;
     this.costFactory       = costFactory;
     this.radarFactory      = radarFactory;
     percentRange           = new InclusiveValueRange <int>(99, 0);
 }
Esempio n. 12
0
        private IEnumerable <ICoordinate> generateCoordinates()
        {
            ICoordinateFactory coordFactory = _geoFactory.CoordinateFactory;

            Int32 pointCount = _rnd.Next(3, 100);

            for (Int32 pointIndex = 0; pointIndex < pointCount; pointIndex++)
            {
                ICoordinate p = coordFactory.Create(
                    _rnd.NextDouble() * _rnd.Next(200000, 700000),
                    (_rnd.NextDouble() * _rnd.Next(1000000)) + 50000000);

                yield return(p);
            }
        }
Esempio n. 13
0
        public AlgorithmTest()
        {
            radarFactory      = new CoordinateAroundRadarFactory();
            graphFactory      = new TestGraphFactory();
            vertexFactory     = new TestVertexFactory();
            costFactory       = new TestVertexCostFactory();
            coordinateFactory = new TestCoordinateFactory();

            graphAssemble = new GraphAssemble(vertexFactory,
                                              coordinateFactory,
                                              graphFactory,
                                              costFactory,
                                              radarFactory);

            testAssemble = new TestGraphAssemble(graphAssemble);
        }
Esempio n. 14
0
            internal InternalFactoryService()
            {
                _coordinateFactory         = new CoordinateFactory();
                _coordinateSequenceFactory =
                    new CoordinateSequenceFactory((CoordinateFactory)_coordinateFactory);
                _geometryFactory =
                    new GeometryFactory <Coordinate>(
                        (CoordinateSequenceFactory)_coordinateSequenceFactory);
                _coordinateSystemFactory =
                    new CoordinateSystemFactory <Coordinate>((CoordinateFactory)_coordinateFactory,
                                                             (GeometryFactory <Coordinate>)
                                                             _geometryFactory);

                _coordinateTransformationFactory = new CoordinateTransformationFactory <Coordinate>(
                    (CoordinateFactory)_coordinateFactory,
                    (GeometryFactory <Coordinate>)_geometryFactory, new LinearFactory <DoubleComponent>());
            }
Esempio n. 15
0
 private static ICoordinate RandomCoordinateZ(ICoordinateFactory coordinateFactory)
 {
     return(coordinateFactory.Create3D(Random.Next(-180, 180), Random.Next(-90, 90), Random.Next(0, 50), Random.Next(0, 50)));
 }
Esempio n. 16
0
 public GeometryFactory(ICoordinateFactory coordFactory, ICoordinateSequenceFactory sequenceFactory, Int32?srid)
     : this(coordFactory, sequenceFactory, srid, null)
 {
 }
Esempio n. 17
0
 public GeometryFactory(ICoordinateFactory coordFactory, ICoordinateSequenceFactory sequenceFactory)
     : this(coordFactory, sequenceFactory, null, null) { }
 private static ICoordinate RandomCoordinateZ(ICoordinateFactory coordinateFactory)
 {
     return coordinateFactory.Create3D(Random.Next(-180, 180), Random.Next(-90, 90), Random.Next(0, 50), Random.Next(0, 50));
 }
Esempio n. 19
0
 public GeometryFactory(ICoordinateFactory coordFactory, ICoordinateSequenceFactory sequenceFactory)
     : this(coordFactory, sequenceFactory, null, null)
 {
 }
Esempio n. 20
0
 static Lines3Dv3()
 {
     geometryFactory = new GeometryFactory <Coord>(new CoordSeqFac(new CoordFac(PrecisionModelType.DoubleFloating)));
     reader          = geometryFactory.WktReader;
     coordFactory    = geometryFactory.CoordinateFactory;
 }
Esempio n. 21
0
 public GeometryFactory(ICoordinateFactory coordFactory, ICoordinateSequenceFactory sequenceFactory, Int32? srid)
     : this(coordFactory, sequenceFactory, srid, null) { }
Esempio n. 22
0
            internal InternalFactoryService()
            {
                _coordinateFactory = new CoordinateFactory();
                _coordinateSequenceFactory =
                    new CoordinateSequenceFactory((CoordinateFactory)_coordinateFactory);
                _geometryFactory =
                    new GeometryFactory<Coordinate>(
                        (CoordinateSequenceFactory)_coordinateSequenceFactory);
                _coordinateSystemFactory =
                    new CoordinateSystemFactory<Coordinate>((CoordinateFactory)_coordinateFactory,
                                                                    (GeometryFactory<Coordinate>)
                                                                    _geometryFactory);

                _coordinateTransformationFactory = new CoordinateTransformationFactory<Coordinate>(
                      (CoordinateFactory)_coordinateFactory,
                      (GeometryFactory<Coordinate>)_geometryFactory, new LinearFactory<DoubleComponent>());

            }
Esempio n. 23
0
 public PositionFactory(ICoordinateFactory coordinateFactory)
 {
     this.coordinateFactory = coordinateFactory;
 }
Esempio n. 24
0
 static Lines3Dv3()
 {
     geometryFactory = new GeometryFactory<Coord>(new CoordSeqFac(new CoordFac(PrecisionModelType.DoubleFloating)));
     reader = geometryFactory.WktReader;
     coordFactory = geometryFactory.CoordinateFactory;
 }