Beispiel #1
0
    public void InitMapFromLatLongBox(LegLatLngBox latLngBox, int lod)
    {
        mapcoord = new LegMapCoordblock(this);
        var llbl        = latLngBox.GetBottomLeft();
        var llul        = latLngBox.GetUpperLeft();
        var llbr        = latLngBox.GetBottomRight();
        var llur        = latLngBox.GetUpperRight();
        var llmp        = latLngBox.GetMidPoint();
        var pixToMeters = TileSystem.GroundResolution(llmp.lat, lod);
        var orgpix      = llbl.GetPixelCoords(lod);
        var orgmeters   = new Vector2d(orgpix.x * pixToMeters, orgpix.y * pixToMeters);

        mapcoord.AddRowLngLat(llbl, lod, pixToMeters, orgmeters);
        mapcoord.AddRowLngLat(llul, lod, pixToMeters, orgmeters);
        mapcoord.AddRowLngLat(llbr, lod, pixToMeters, orgmeters);
        mapcoord.AddRowLngLat(llur, lod, pixToMeters, orgmeters);
        mapcoord.AddRowLngLat(llmp, lod, pixToMeters, orgmeters);
        glbllm      = this;
        maps.latmap = mapcoord.DoRegression("lat = x + z");
        maps.lngmap = mapcoord.DoRegression("lng = x + z");
        maps.xmap   = mapcoord.DoRegression("x = lng + lat");
        maps.zmap   = mapcoord.DoRegression("z = lng + lat");
    }
Beispiel #2
0
    public void InitMapFromSceneSel(string regsel, int nothing)
    {
        mapcoord = new LegMapCoordblock(this);
        switch (regsel)
        {
        default:
        case "MsftRedwest":
        case "MsftCoreCampus":
        case "MsftB19focused":
            mapcoord.AddRowLatLng(47.640490, -122.133797, -149.1, 0.2);
            mapcoord.AddRowLatLng(47.639079, -122.134960, 28.0, -31.4);
            mapcoord.AddRowLatLng(47.638526, -122.134519, 75.4, 19.9);
            mapcoord.AddRowLatLng(47.639368, -122.133926, -29.4, 30.8);
            mapcoord.AddRowLatLng(47.641066, -122.136018, -155.44, -177.96);
            break;

        case "Eb12":
            mapcoord.AddRowLatLng(49.993313, 8.678353, 0, 0);              // eb12 origin streetlamp
            mapcoord.AddRowLatLng(49.993472, 8.677981, 18.45, 27.90);      // eb12-12 doorway
            mapcoord.AddRowLatLng(49.995560, 8.676101, 260.80, 167.7);     // SW corner of Rewe
            mapcoord.AddRowLatLng(49.995788, 8.676752, 287.25, 118.35);    //SE corner of Rewe
            break;

        case "MsftDublin":
            //mapcoord.AddRowLngLat(53.268998, -6.196680, 0, 0);
            mapcoord.AddRowLatLng(53.268396, -6.195296, -103.5, 75.2);
            mapcoord.AddRowLatLng(53.269369, -6.196511, -12.4, -47.8);
            mapcoord.AddRowLatLng(53.269212, -6.194816, -139.0, -27.5);
            break;
        }
        glbllm      = this;
        maps.latmap = mapcoord.DoRegression("lat = x + z");
        maps.lngmap = mapcoord.DoRegression("lng = x + z");
        maps.xmap   = mapcoord.DoRegression("x = lng + lat");// backwards, should do something about it someday
        maps.zmap   = mapcoord.DoRegression("z = lng + lat");
    }
Beispiel #3
0
 public LegMapCoordblock(LegLatLngMap llm)
 {
     this.llm = llm;
 }