コード例 #1
0
 // Update is called once per frame
 void Update()
 {
     if (lastQmapMode != qmapMode)
     {
         SetMode(qmapMode);
         lastQmapMode = qmapMode;
     }
     if (locSpecer.locSpecExecute)
     {
         locSpecer.Execute();
     }
     if (locSpecer.locSpecTrialExecute)
     {
         locSpecer.TrialExecute();
     }
     if (locSpecer.locW3wExecute)
     {
         Debug.Log("so ExecuteW3wApi");
         locSpecer.ExecuteW3wApi();
     }
     if (deleteAllSceneData)
     {
         Debug.Log("Deleting all scene data");
         if (qmm != null)
         {
             qmm.deleteSceneData = true;
         }
         deleteAllSceneData = false;
     }
 }
コード例 #2
0
    public async void SetMode(QmapModeE newmode)
    {
        Debug.Log("QmapMan.SetMode: " + newmode);
        ClearMesh();
        useElevationDataStart = true;

        switch (newmode)
        {
        case QmapModeE.Bespoke:
        {
            useElevationDataStart = false;
            (qmm, _, _)           = await MakeMeshFromLlbox(bespoke.SceneName, bespoke.llbox, tpqk : 16, mapprov : bespoke.MapProv, mapextent : bespoke.MapExtent, limitQuadkeys : false);

            var rotv = bespoke.maprot;
            transform.localRotation = Quaternion.identity;
            transform.Rotate(rotv.x, rotv.y, rotv.z);
            transform.position = bespoke.maptrans;
            Debug.Log($"Setting bespoke - transform:{bespoke.maptrans} rot:{rotv.y}");
            qmm.nodefak = 1f;
            break;
        }

        case QmapModeE.None:
        {
            // do nothing
            break;
        }

        case QmapModeE.What3words:
        {
            // do nothing
            break;
        }

        case QmapModeE.MsftCampus:
        {
            var ll1 = new LatLng(47.646622, -122.139957, "MsftCampus ll1");         // msft campus
            var ll2 = new LatLng(47.631792, -122.128826, "MsftCampus ll2");
            (qmm, _, _) = await MakeMesh("msftcampus", 15, ll1, ll2, mapprov : mapprov);

            break;
        }

        case QmapModeE.MsftCampusMapped:
        {
            var ll1 = new LatLng(47.646622, -122.139957, "MsftCampus ll1");         // msft campus
            var ll2 = new LatLng(47.631792, -122.128826, "MsftCampus ll2");
            (qmm, _, _) = await MakeMesh("msftcampus", 15, ll1, ll2, mapcoordname : "MsftCoreCampus", mapprov : mapprov);

            break;
        }

        case QmapModeE.MsftCampusMappedHigh:
        {
            var ll1 = new LatLng(47.646622, -122.139957, "MsftCampus ll1");         // msft campus
            var ll2 = new LatLng(47.631792, -122.128826, "MsftCampus ll2");
            (qmm, _, _) = await MakeMesh("msftcampus", 18, ll1, ll2, mapcoordname : "MsftCoreCampus", tpqk : 4, mapprov : mapprov);

            break;
        }

        case QmapModeE.MsftCampusMappedHigh19:
        {
            var ll1 = new LatLng(47.646622, -122.139957, "MsftCampus ll1");         // msft campus
            var ll2 = new LatLng(47.631792, -122.128826, "MsftCampus ll2");
            (qmm, _, _) = await MakeMesh("msftcampus", 19, ll1, ll2, mapcoordname : "MsftCoreCampus", tpqk : 2, mapprov : mapprov);

            break;
        }

        case QmapModeE.Cyclades:
        {
            //var llmid = new LatLng(36.674545, 25.271239, "Cyclades mid");
            var llmid = new LatLng(36.801411, 25.271239, "Cyclades mid");
            var llbox = new LatLngBox(llmid, 110, 170, lod: 12);
            useElevationDataStart                = true;
            Viewer.viewerDefaultRotation         = new Vector3(0, 90, 0);
            Viewer.viewerDefaultPosition         = new Vector3(0, 0, 0);
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            (qmm, _, _) = await MakeMeshFromLlbox("cyclades", llbox, tpqk : 16, hmult : 3, mapprov : mapprov, limitQuadkeys : false);

            var vtm = gameObject.AddComponent <VehicleTrackMan>();
            vtm.Init(qmm, trackFilePath, VehicleTrackMan.TrackScenario.CycladesTrip);
            sceneScripter = gameObject.AddComponent <SceneScripter>();
            sceneScripter.Init(SceneScenario.Cyclades, vtm);
            break;
        }

        case QmapModeE.Seattle:
        {
            var llmid = new LatLng(47.619992, -122.3373495, "Seattle mid");
            var llbox = new LatLngBox(llmid, 25.17, 14.84, lod: 12);
            useElevationDataStart                = true;
            Viewer.viewerDefaultRotation         = new Vector3(0, 90, 0);
            Viewer.viewerDefaultPosition         = new Vector3(0, 0, 0);
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;

            //(qmm,_,_) = await MakeMeshBox("seattle", llbox,tpqk:16,hmult:10, mapprov: mapprov);
            (qmm, _, _) = await MakeMeshFromLlbox("seattle", llbox, tpqk : 16, hmult : 10, mapprov :  mapprov, synthTex : QmapMesh.sythTexMethod.Quadkeys);

            var tpcomp = qmm.gameObject.GetComponent <TrilinesDeco>();
            if (tpcomp != null)
            {
                tpcomp.showDeco = false;
            }
            break;
        }

        case QmapModeE.Seattle10:
        {
            var llmid = new LatLng(47.619992, -122.3373495, "Seattle mid");
            var llbox = new LatLngBox(llmid, 10, 10, lod: 13);
            (qmm, _, _) = await MakeMeshFromLlbox("seattle", llbox, tpqk : 16, hmult : 10, mapprov : mapprov);

            break;
        }

        case QmapModeE.Seattle3:
        {
            //useElevationDataStart = false;
            Viewer.viewerDefaultRotation         = new Vector3(0, 90, 0);
            Viewer.viewerDefaultPosition         = new Vector3(0, 0, 0);
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            var llmid = new LatLng(47.619992, -122.3373495, "Seattle mid");
            var llbox = new LatLngBox(llmid, 3, 3, lod: 18);
            (qmm, _, _) = await MakeMeshFromLlbox("seattle", llbox, tpqk : 16, hmult : 4, mapprov : mapprov, heitType : HeightTypeE.FetchedAndOriginZeroed, limitQuadkeys : false);

            qmm.addMeshColliders = true;
            qmm.AddMeshColliders();
            break;
        }

        case QmapModeE.FortHills:
        {
            var ll1 = new LatLng(57.404272, -111.670935, "FortHills ll1");         // suncor fort hills
            var ll2 = new LatLng(57.180913, -111.272580, "FortHills ll2");
            (qmm, _, _) = await MakeMesh("forthills", 12, ll1, ll2, mapprov : mapprov);

            var dz = gameObject.AddComponent <VehicleTrackMan>();
            dz.Init(qmm, trackFilePath, VehicleTrackMan.TrackScenario.SuncorMine);
            break;
        }

        case QmapModeE.Dozers:
        {
            var llmid = new LatLng(57.01, -111.375, "Dozers llmid");
            var llbox = new LatLngBox(llmid, 4.453, 6.666, "dozerbox", lod: 15);
            Debug.Log("dozers-llbox llmid:" + llbox.midll.ToString());
            (qmm, _, _) = await MakeMeshFromLlbox("dozers", llbox, tpqk : 16, hmult : 5, mapprov : mapprov);

            //var qcm = InitMesh("dozers", "", 15, ll1, ll2, 16, 10, mapprov: mapprov);
            qmm.nodefak = 0.2f;
            var dz = gameObject.AddComponent <VehicleTrackMan>();
            dz.Init(qmm, trackFilePath, VehicleTrackMan.TrackScenario.SuncorMine);
            break;
        }

        case QmapModeE.DozerSmall:
        {
            var llmid = new LatLng(57.0056037, -111.3581390, "Dozers  Smallllmid");
            var llbox = new LatLngBox(llmid, 0.5, 0.5, "dozersmallbox", lod: 19);
            Debug.Log("dozers-small-llbox llmid:" + llbox.midll.ToString());
            Viewer.viewerDefaultRotation         = new Vector3(0, 90, 0);
            Viewer.viewerDefaultPosition         = new Vector3(0, 0, 0);
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            (qmm, _, _) = await MakeMeshFromLlbox("dozerssmall", llbox, tpqk : 10, hmult : 5, mapprov : mapprov);

            //var qcm = InitMesh("dozers", "", 15, ll1, ll2, 16, 10, mapprov: mapprov);
            qmm.nodefak = 1f;
            var dz = gameObject.AddComponent <VehicleTrackMan>();
            dz.Init(qmm, trackFilePath, VehicleTrackMan.TrackScenario.SuncorMine);
            break;
        }

        case QmapModeE.DozersMedium:
        {
            var llmid = new LatLng(57.0056037, -111.3581390, "Dozers Medium llmid");
            var llbox = new LatLngBox(llmid, 1.0, 1.0, "dozermediumbox", lod: 19);
            Debug.Log("dozers-med-llbox llmid:" + llbox.midll.ToString());
            Viewer.viewerDefaultRotation         = new Vector3(0, 90, 0);
            Viewer.viewerDefaultPosition         = new Vector3(0, 0, 0);
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            (qmm, _, _) = await MakeMeshFromLlbox("dozersmedium", llbox, tpqk : 16, hmult : 5, mapprov : mapprov, limitQuadkeys : false);

            qmm.nodefak = 1f;
            var dz = gameObject.AddComponent <VehicleTrackMan>();
            dz.Init(qmm, trackFilePath, VehicleTrackMan.TrackScenario.SuncorMine);
            break;
        }

        case QmapModeE.Horizon4:
        {
            var llmid = new LatLng(57.338920, -111.750198, "CNRL Horizon llmid");
            var llbox = new LatLngBox(llmid, 4.0, 4.0, "horizonbox", lod: 17);
            Debug.Log("Horizon-llbox llmid:" + llbox.midll.ToString());
            Viewer.viewerAvatarDefaultValue      = ViewerAvatar.Minehaul1;
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            Viewer.ViewerControlDefaultValue     = ViewerControl.Velocity;
            Viewer.viewerDefaultPosition         = new Vector3(155.30f, 64.06f, -9.77f);
            Viewer.viewerDefaultRotation         = new Vector3(0, -90, 0);
            (qmm, _, _) = await MakeMeshFromLlbox("horizon", llbox, tpqk : 16, hmult : 1, mapprov : mapprov, limitQuadkeys : false);

            qmm.nodefak = 1f;
            break;
        }

        case QmapModeE.Horizon16:
        {
            var llmid = new LatLng(57.338920, -111.750198, "CNRL Horizon llmid");
            var llbox = new LatLngBox(llmid, 16.0, 16.0, "horizonbox", lod: 15);
            Debug.Log("Horizon-llbox llmid:" + llbox.midll.ToString());
            Viewer.viewerAvatarDefaultValue      = ViewerAvatar.Minehaul1;
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            Viewer.ViewerControlDefaultValue     = ViewerControl.Velocity;
            Viewer.viewerDefaultPosition         = new Vector3(164.62f, 64.06f, -235.97f);
            Viewer.viewerDefaultRotation         = new Vector3(0, -90, 0);
            (qmm, _, _) = await MakeMeshFromLlbox("horizon", llbox, tpqk : 16, hmult : 1, mapprov : mapprov, limitQuadkeys : false);

            qmm.nodefak = 1f;
            break;
        }

        case QmapModeE.MtStHelens16:
        {
            var llmid = new LatLng(46.198428, -122.188841, "MtStHellens16llmid");
            var llbox = new LatLngBox(llmid, 16.0, 16.0, "MtStHellens16 box", lod: 15);
            Debug.Log("MtStHellens16-llbox llmid:" + llbox.midll.ToString());
            Viewer.viewerAvatarDefaultValue      = ViewerAvatar.Rover;
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            Viewer.ViewerControlDefaultValue     = ViewerControl.Velocity;
            (qmm, _, _) = await MakeMeshFromLlbox("mtsthelens", llbox, tpqk : 16, hmult : 1, mapextent : MapExtentTypeE.AsSpecified, mapprov : mapprov, limitQuadkeys : false);

            qmm.nodefak = 1f;
            break;
        }

        case QmapModeE.MtStHelens12:
        {
            var llmid = new LatLng(46.198428, -122.188841, "MtStHellensllmid");
            var llbox = new LatLngBox(llmid, 12.0, 12.0, "MtStHellens box", lod: 16);
            Debug.Log("MtStHellens-llbox llmid:" + llbox.midll.ToString());
            Viewer.viewerAvatarDefaultValue      = ViewerAvatar.Rover;
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            Viewer.ViewerControlDefaultValue     = ViewerControl.Velocity;
            (qmm, _, _) = await MakeMeshFromLlbox("mtsthelens", llbox, tpqk : 16, hmult : 1, mapextent : MapExtentTypeE.AsSpecified, mapprov : mapprov, limitQuadkeys : false);

            qmm.nodefak = 0.2f;
            break;
        }

        case QmapModeE.MtStHelens3:
        {
            var llmid = new LatLng(46.198428, -122.188841, "MtStHellens3llmid");
            var llbox = new LatLngBox(llmid, 3.0, 3.0, "MtStHellens3 box", lod: 17);
            Debug.Log("MtStHellens3-llbox llmid:" + llbox.midll.ToString());
            Viewer.viewerAvatarDefaultValue      = ViewerAvatar.Rover;
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            Viewer.ViewerControlDefaultValue     = ViewerControl.Velocity;
            (qmm, _, _) = await MakeMeshFromLlbox("mtsthelens", llbox, tpqk : 16, hmult : 1, mapextent : MapExtentTypeE.AsSpecified, mapprov : mapprov, limitQuadkeys : false);

            qmm.nodefak = 0.2f;
            var tpcomp = qmm.gameObject.GetComponent <TriPointDeco>();
            if (tpcomp != null)
            {
                tpcomp.showDeco = false;
            }
            break;
        }

        case QmapModeE.MtStHelens2:
        {
            var llmid = new LatLng(46.198428, -122.188841, "MtStHellens3llmid");
            var llbox = new LatLngBox(llmid, 3.0, 3.0, "MtStHellens3 box", lod: 19);
            Debug.Log("MtStHellens3-llbox llmid:" + llbox.midll.ToString());
            Viewer.viewerAvatarDefaultValue      = ViewerAvatar.Rover;
            Viewer.ViewerCamPositionDefaultValue = ViewerCamPosition.FloatBehind;
            Viewer.ViewerControlDefaultValue     = ViewerControl.Velocity;
            (qmm, _, _) = await MakeMeshFromLlbox("mtsthelens", llbox, tpqk : 16, hmult : 1, mapextent : MapExtentTypeE.AsSpecified, mapprov : mapprov, limitQuadkeys : false);

            qmm.nodefak = 0.2f;
            break;
        }

        case QmapModeE.Riggins:
        {
            var llmid = new LatLng(45.412219, -116.328921, "Riggins");
            var llbox = new LatLngBox(llmid, 10.0, 10.0, "Riggins box", lod: 15);
            Debug.Log("riggins-llbox llmid:" + llbox.midll.ToString());
            (qmm, _, _) = await MakeMeshFromLlbox("riggins", llbox, tpqk : 16, hmult : 1, mapprov : mapprov);

            //var qcm = InitMesh("dozers", "", 15, ll1, ll2, 16, 10, mapprov: mapprov);
            qmm.nodefak = 0.2f;
            break;
        }

        case QmapModeE.Eb12:
        {
            var ll1 = new LatLng(49.996606, 8.674300, "Eb12 ll1");         // EB12 in Germany
            var ll2 = new LatLng(49.987100, 8.687557, "Eb12 ll2");
            (qmm, _, _) = await MakeMesh("eb12", 16, ll1, ll2, tpqk : 2, hmult : 10, mapprov : mapprov);

            break;
        }

        case QmapModeE.Eb12Mapped:
        {
            var ll1 = new LatLng(49.996606, 8.674300, "Eb12 ll1");         // EB12 in Germany
            var ll2 = new LatLng(49.987100, 8.687557, "Eb12 ll2");
            (qmm, _, _) = await MakeMesh("eb12", 16, ll1, ll2, mapcoordname : "Eb12", mapprov : mapprov);

            break;
        }

        case QmapModeE.Tukwilla:
        {
            var ll1 = new LatLng(47.461414, -122.262566, "Tukwila ll1");         // Tukwila
            var ll2 = new LatLng(47.453419, -122.253639, "Tukwila ll2");
            (qmm, _, _) = await MakeMesh("tukwila", 16, ll1, ll2, mapprov : mapprov);

            break;
        }

        case QmapModeE.MtFuji:
        {
            var ll1 = new LatLng(35.450153, 138.603933, "MtFuji ll1");         // MtFuji
            var ll2 = new LatLng(35.296752, 138.874443, "MtFuji ll2");
            (qmm, _, _) = await MakeMesh("mtfuji", 14, ll1, ll2, tpqk : 8, mapprov : mapprov);

            qmm.nodefak = 0.5f;
            break;
        }

        case QmapModeE.Whistler:
        {
            var ll1 = new LatLng(50.229914, -122.859530, "Whistler ll1");         // Whistler
            var ll2 = new LatLng(50.029914, -123.2595303, "Whistler ll2");
            (qmm, _, _) = await MakeMesh("whistler", 14, ll1, ll2, tpqk : 4, mapprov : mapprov);

            qmm.nodefak = 0.5f;
            break;
        }

            // 49.996606, 8.674300
        }
    }