public void ReturnsRowAndColumn()
        {
            GridReference gridReference = new GridReference('A', 10);

            Assert.Equal('A', gridReference.Row);
            Assert.Equal(10, gridReference.Column);
        }
 internal GeoTestDataSet(string city, PolarGeoCoordinate oSGB36, PolarGeoCoordinate wGS84, GridReference nE)
 {
     City   = city;
     OSGB36 = oSGB36;
     WGS84  = wGS84;
     NE     = nE;
 }
Esempio n. 3
0
        public void ReturnsContent()
        {
            var reference = new GridReference(x: 10, y: 12);
            var actual    = reference.Contents;

            Assert.AreEqual(actual, GridContents.empty);
        }
Esempio n. 4
0
        public void Transform_TransformsData()
        {
            DataTransformer transformer = new DataTransformer();

            PrecipitationResults result = transformer.Transform(data);

            Assert.IsNotNull(result);
            GridReference gridReference = result.GridReferences[1];

            Assert.IsNotNull(gridReference);
            Assert.AreEqual(142, gridReference.XRef);
            Assert.AreEqual(268, gridReference.YRef);

            List <Year> years = gridReference.Years;

            Assert.IsNotNull(years);
            Assert.AreEqual(10, years.Count);

            Year year = gridReference.Years[9];

            Assert.IsNotNull(year);
            Assert.AreEqual(2000, year.YearValue);

            List <int> months = year.Months;

            Assert.IsNotNull(months);
            Assert.AreEqual(12, months.Count);

            Assert.AreEqual(272, months[11]);
        }
Esempio n. 5
0
        public void SetsContentOnInit()
        {
            var reference = new GridReference(x: 10, y: 12, content: GridContents.hit);
            var actual    = reference.Contents;

            Assert.AreEqual(actual, GridContents.hit);
        }
Esempio n. 6
0
        public void CantAddPointsOfInterestOutsideRange()
        {
            Grid          grid  = new Grid();
            GridReference point = new GridReference(x: -5, y: -5, content: GridContents.hit);

            Assert.ThrowsException <ArgumentOutOfRangeException>(() => grid.AddPointOfInterest(reference: point));
        }
Esempio n. 7
0
        public void CanReturnX()
        {
            var reference = new GridReference(x: 10, y: 12);
            var actual    = reference.ThisX;

            Assert.AreEqual(actual, 10);
        }
 internal GeoTestDataSet(string city, PolarGeoCoordinate oSGB36, PolarGeoCoordinate wGS84, GridReference nE)
 {
     this.City = city;
     this.OSGB36 = oSGB36;
     this.WGS84 = wGS84;
     this.NE = nE;
 }
Esempio n. 9
0
        public void CanReturnY()
        {
            var reference = new GridReference(x: 10, y: 12);
            var actual    = reference.thisY;

            Assert.AreEqual(actual, 12);
        }
Esempio n. 10
0
        public JsonResult Post([FromBody] CreateGridTriangleCalculationRequestBody request)
        {
            Grid grid = new Grid(request.GridHeight, request.GridWidth, request.CellSize);

            GridReference gridReference = new GridReference(request.GridReference);

            return(Json(this.Calculator.Calculate(grid, gridReference).Coordinates));
        }
Esempio n. 11
0
 public GridIteratorAction(GridReference gridReference, Vector3Reference vector3Reference, IDefaultAction continueAction,
                           Vector3Int reducedIteration)
 {
     m_grid             = gridReference;
     m_currentPosition  = vector3Reference;
     m_continue         = continueAction;
     m_reducedIteration = reducedIteration;
 }
        internal static GridReference ReduceSigFigsBy1(GridReference original)
        {
            double Northing = Converter.SetSigFigs(original.Northing, Converter.GetSigFigs(original.Northing) - 1);

            double Easting = Converter.SetSigFigs(original.Easting, Converter.GetSigFigs(original.Easting) - 1);

            return new GridReference((int)Easting, (int)Northing);
        }
        internal static GridReference ReduceSigFigsBy1(GridReference original)
        {
            double Northing = Converter.SetSigFigs(original.Northing, Converter.GetSigFigs(original.Northing) - 1);

            double Easting = Converter.SetSigFigs(original.Easting, Converter.GetSigFigs(original.Easting) - 1);

            return(new GridReference((int)Easting, (int)Northing));
        }
Esempio n. 14
0
 public AddDestinationFlagAction(TileTypeIdentifier resultTag,
                                 TilesSetListConfig destinationConfig,
                                 GridReference resultGrid, Vector3Reference currentPosition)
 {
     m_resultTag         = resultTag;
     m_destinationConfig = destinationConfig;
     m_resultGrid        = resultGrid;
     m_currentPosition   = currentPosition;
 }
Esempio n. 15
0
        public void CompareNegative()
        {
            var reference  = new GridReference(x: 10, y: 12);
            var reference2 = new GridReference(x: 11, y: 12);

            var actual = reference.Same(reference2);

            Assert.AreEqual(actual, false);
        }
        public bool IsTheSameAs(GridReference compareTo)
        {
            if (compareTo.Northing != this.Northing || compareTo.Easting != this.Easting)
            {
                return(false);
            }

            return(true);
        }
        public bool IsTheSameAs(GridReference compareTo)
        {
            if (compareTo.Northing != this.Northing || compareTo.Easting != this.Easting)
            {
                return false;
            }

            return true;
        }
Esempio n. 18
0
        public void ComparePositive()
        {
            var reference  = new GridReference(x: 10, y: 12);
            var reference2 = new GridReference(x: 10, y: 12);

            var actual = reference.Same(reference2);

            Assert.AreEqual(actual, true);
        }
Esempio n. 19
0
        public override IBaseAction CreateAction(IContext ctx)
        {
            var continueAction = m_continueWith.CreateAction(ctx) as IDefaultAction;
            var grid           = new GridReference(ctx, m_grid);
            var currentPos     = new Vector3Reference(ctx, m_currentPosition);
            var filter         = new TilesSetFilterReference(ctx, m_currentTilesSetFilter);

            return(new TileTypeIteratorAction(m_sourceConfig, m_iterateOnTileConfig.Result, m_filter,
                                              grid, currentPos, filter, continueAction));
        }
        /// <summary>
        /// Converts northing and easting coordinates into Longitude/Latitude coordinates in the WGS84 coordinate system.
        /// </summary>
        /// <param name="northing">northing coordinate</param>
        /// <param name="easting">easting coordinate</param>
        /// <returns>converted coordinates</returns>
        protected PolarGeoCoordinate ConvertToLonLat(double northing, double easting)
        {
            // Use GeoCoordConversion DLL to convert the Eastings & Northings to Lon/Lat
            // coordinates in the WGS84 system. The DLL was pulled from: http://code.google.com/p/geocoordconversion/
            // and is available under the GNU General Public License v3: http://www.gnu.org/licenses/gpl.html
            GridReference      gridRef    = new GridReference((long)easting, (long)northing);
            PolarGeoCoordinate polarCoord = GridReference.ChangeToPolarGeo(gridRef);

            return(PolarGeoCoordinate.ChangeCoordinateSystem(polarCoord, CoordinateSystems.WGS84));
        }
Esempio n. 21
0
        public override IBaseAction CreateAction(IContext ctx)
        {
            var grid       = new GridReference(ctx, m_grid);
            var currentPos = new Vector3Reference(ctx, m_currentPosition);
            var meshData   = new MeshDataReference(ctx, m_meshData);

            m_meshVar.Init(ctx);
            return(new TileTypeToMeshAction(currentPos, meshData,
                                            m_meshVar, m_meshOffset, Quaternion.Euler(m_orientation)));
        }
Esempio n. 22
0
        public void SetsContentPostInit()
        {
            var reference = new GridReference(x: 10, y: 12);

            reference.Contents = GridContents.hit;

            var actual = reference.Contents;

            Assert.AreEqual(actual, GridContents.hit);
        }
Esempio n. 23
0
    // Use this for initialization
    void Start()
    {
        Quaternion rotation = gameObject.transform.localRotation;

        origionalRotation = rotation.eulerAngles;
        baseHeight        = transform.localPosition.y;
        gridReference     = GetComponent <GridReference>();

        hinge = PhysicsDoor == null ? null : PhysicsDoor.GetComponent <HingeJoint>();
    }
Esempio n. 24
0
        public override IBaseAction CreateAction(IContext ctx)
        {
            var grid       = new GridReference(ctx, m_grid);
            var currentPos = new Vector3Reference(ctx, m_currentPosition);

            var trueAction  = (IDefaultAction)m_trueAction.CreateAction(ctx);
            var falseAction = (IDefaultAction)m_falseAction.CreateAction(ctx);

            return(new TileTypeCheckAction(m_sourceConfig, m_tileIdentifier, grid, currentPos, trueAction, falseAction));
        }
Esempio n. 25
0
 public SelectTextureTypeFromTileAction(
     TilesSetData setData,
     GridReference grid,
     Vector3Reference currentPos,
     TilesSetFilterReference tsf)
 {
     m_grid             = grid;
     m_currentPos       = currentPos;
     m_tilesSetFilter   = tsf;
     m_texConfigSetData = setData;
 }
Esempio n. 26
0
        public override IBaseAction CreateAction(IContext ctx)
        {
            var grid          = new GridReference(ctx, m_grid);
            var currentPos    = new Vector3Reference(ctx, m_currentPosition);
            var tileSetFilter = new TilesSetFilterReference(ctx, m_tileSetFilter);

            var texConfigSetData = m_sourceConfig.GetSet(m_texConfig);

            return(new SelectTextureTypeFromTileAction(texConfigSetData,
                                                       grid, currentPos,
                                                       tileSetFilter));
        }
Esempio n. 27
0
 public UpdateAutoTileAction(GridReference gr, Vector3Reference gridPos,
                             TilesSetData setData,
                             TileTypeIdentifier auto, TileTypeIdentifier floor,
                             TileTypeIdentifier wall, TileTypeIdentifier empty)
 {
     m_gridReference = gr;
     m_gridPos       = gridPos;
     m_setData       = setData;
     m_auto          = auto;
     m_floor         = floor;
     m_wall          = wall;
     m_empty         = empty;
 }
Esempio n. 28
0
        public TileTypeSwitchAction(TilesSetListConfig sourceConfig,
                                    ITileConfig config,
                                    GridReference grid,
                                    Vector3Reference currentPos,
                                    IDefaultAction[] actions)
        {
            m_setData = sourceConfig.GetSet(config);

            m_grid       = grid;
            m_currentPos = currentPos;

            m_actions = actions;
        }
        // overload of IsTheSameAs to ignore rounding errors on final digit
        public bool IsTheSameAs(GridReference compareTo, bool ignoreFinalDigit)
        {
            if (ignoreFinalDigit)
            {
                this.AlignSigFigs(compareTo);
                GridReference compareToReduced = ReduceSigFigsBy1(compareTo);
                GridReference comparer         = ReduceSigFigsBy1(this);

                return(comparer.IsTheSameAs(compareToReduced));
            }

            return(this.IsTheSameAs(compareTo));
        }
Esempio n. 30
0
        public void CanAddPointsOfInterest()
        {
            Grid          grid  = new Grid();
            GridReference point = new GridReference(x: 1, y: 1, content: GridContents.hit);

            Console.Write(point);

            grid.AddPointOfInterest(reference: point);

            GridReference actual = grid.GetPointsOfInterest()[0];

            Assert.AreEqual(actual, point);
        }
        // overload of IsTheSameAs to ignore rounding errors on final digit
        public bool IsTheSameAs(GridReference compareTo, bool ignoreFinalDigit)
        {
            if (ignoreFinalDigit)
            {
                this.AlignSigFigs(compareTo);
                GridReference compareToReduced = ReduceSigFigsBy1(compareTo);
                GridReference comparer = ReduceSigFigsBy1(this);

                return comparer.IsTheSameAs(compareToReduced);
            }

            return this.IsTheSameAs(compareTo);
        }
Esempio n. 32
0
        public override IBaseAction CreateAction(IContext ctx)
        {
            var grid       = new GridReference(ctx, m_grid);
            var currentPos = new Vector3Reference(ctx, m_currentPosition);

            var actions = new IDefaultAction[m_tileActions.Length];

            for (var i = 0; i < m_tileActions.Length; i++)
            {
                actions[i] = (IDefaultAction)m_tileActions[i].CreateAction(ctx);
            }

            return(new TileTypeSwitchAction(m_sourceConfig, m_tileConfig.Result, grid, currentPos, actions));
        }
        public void ReturnsGridReferenceForTriangleF11Coordinates()
        {
            Grid grid = new Grid(60, 60, 10);

            Triangle triangle = new Triangle();

            triangle.AddAngleCoordinate(new Coordinate(50, 60));
            triangle.AddTopLeftCoordinate(new Coordinate(50, 50));
            triangle.AddBottomRightCoordinate(new Coordinate(60, 60));

            GridReferenceByTriangleCalculator calculator = new GridReferenceByTriangleCalculator();
            GridReference gridReference = calculator.Calculate(grid, triangle);

            Assert.Equal(11, gridReference.Column);
            Assert.Equal('F', gridReference.Row);
        }
Esempio n. 34
0
 public TileTypeIteratorAction(TilesSetListConfig sourceConfig,
                               ITileConfig iterateOnTileConfig,
                               TileTypeIdentifier[] filter,
                               GridReference grid,
                               Vector3Reference currentPos,
                               TilesSetFilterReference tilesSetFilter,
                               IDefaultAction continueAction)
 {
     m_sourceConfig        = sourceConfig;
     m_iterateOnTileConfig = iterateOnTileConfig;
     m_filter         = filter;
     m_grid           = grid;
     m_currentPos     = currentPos;
     m_tilesSetFilter = tilesSetFilter;
     m_continueAction = continueAction;
 }
        internal void AlignSigFigs(GridReference source)
        {
            int SigFigsSrc = Converter.GetSigFigs(source.Easting);
            int SigFigsDest = Converter.GetSigFigs(this.Easting);

            this.Easting = (int)Converter.SetSigFigs(this.Easting, SigFigsDest < SigFigsSrc ? SigFigsDest : SigFigsSrc);

            source.Easting =
                (int)Converter.SetSigFigs(source.Easting, SigFigsDest < SigFigsSrc ? SigFigsDest : SigFigsSrc);

            SigFigsSrc = Converter.GetSigFigs(source.Northing);
            SigFigsDest = Converter.GetSigFigs(this.Northing);

            this.Northing =
                (int)Converter.SetSigFigs(this.Northing, SigFigsDest < SigFigsSrc ? SigFigsDest : SigFigsSrc);

            source.Northing =
                (int)Converter.SetSigFigs(source.Northing, SigFigsDest < SigFigsSrc ? SigFigsDest : SigFigsSrc);
        }
 public static PolarGeoCoordinate ChangeToPolarGeo(GridReference original)
 {
     return Converter.GridReferenceToGeodesic(original);
 }