// 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; } }
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 } }