示例#1
0
        public static NodeAddress Create(Byte level, GeoPoint point)
        {
            var tilesAmount = 1 << level;
            var x           = (Int32)(((180 + point.Longitude) / 360) * tilesAmount);
            var y           = (Int32)(((90 - point.Latitude) / 180) * tilesAmount);

            var addressCell = new NodeAddressCell(x, y, level);

            return(Create(addressCell));
        }
示例#2
0
        public static NodeAddress Create(NodeAddressCell cell)
        {
            var address     = new NodeAddress();
            var addressCell = cell;

            while (addressCell != null)
            {
                address.Path.AddFirst(addressCell);
                addressCell = addressCell.GetAncestor();
            }
            return(address);
        }