public void InitElevs(string scenename, ElevProvider elevprov, MapExtentTypeE mapextent, EarthHightModelE model, int nrow, int ncol, LatLngBox llb) { Debug.Log("InitElevs mapextent:" + mapextent + " nrow:" + nrow + " ncol:" + ncol); this.elevprov = elevprov; this.scenename = scenename; this.mapprov = MapProvider.Bing;// the only one with elevations this.nrow = nrow; this.ncol = ncol; this.llb = llb; this.model = model; this.mapextent = mapextent; heights = new List <float>(); }
public void InitializeGrid(string scenename, LatLngBox llbox, string mapcoordname = "", MapProvider mapprov = MapProvider.Bing, ElevProvider elevprov = ElevProvider.Bing) { this.scenename = scenename; this.mapcoordname = mapcoordname; this.mapprov = mapprov; this.elevprov = elevprov; this.levelOfDetail = llbox.lod; this.llmap = this.gameObject.AddComponent <LatLongMap>(); this.qmapElev = gameObject.AddComponent <QmapElevation>(); this.qkm = new QkMan(this, this.mapcoordname, mapprov, llbox); this.qtt = this.gameObject.AddComponent <Qtrilines>(); qtt.Init(this); }
public async Task <(QmapMesh, int, int)> MakeMeshFromLlbox(string scenename, LatLngBox llbox, int tpqk = 4, float hmult = 1, string mapcoordname = "", MapExtentTypeE mapextent = MapExtentTypeE.SnapToTiles, MapProvider mapprov = MapProvider.Bing, ElevProvider elevprov = ElevProvider.Bing, bool execute = true, bool forceload = false, bool limitQuadkeys = true, QmapMesh.sythTexMethod synthTex = QmapMesh.sythTexMethod.Quadkeys, HeightTypeE heitType = HeightTypeE.FetchedAndZeroed) { var wpstays = false; Debug.Log($"QmapMan.MakeMeshFromLlbox scenename:{scenename} wpstays:{wpstays}"); this.mapprov = mapprov; this.elevprov = elevprov; this.scenename = scenename; this.mapcoordname = mapcoordname; if (rgo != null) { Destroy(rgo); rgo = null; } rgo = new GameObject("rgo"); rgo.transform.SetParent(this.transform, worldPositionStays: wpstays); qkgo = new GameObject("QmapMesh"); qkgo.transform.SetParent(rgo.transform, worldPositionStays: wpstays); qkgo.transform.position = Vector3.zero; var qmmcomp = qkgo.AddComponent <QmapMesh>(); qmmcomp.descriptor = $"{scenename} {llbox.lod} {mapprov} {mapextent}"; qmmcomp.InitializeGrid(scenename, llbox, mapcoordname: mapcoordname); qmmcomp.secsPerQkTile = tpqk; qmmcomp.useElevationData = useElevationDataStart; qmmcomp.mapExtent = mapextent; qmmcomp.hmult = hmult; qmmcomp.synthTex = synthTex; qmmcomp.limitQuadkeys = limitQuadkeys; qmmcomp.heightType = heitType; (var nbm, var nel) = await qmmcomp.GenerateGrid(execute, forceload, limitQuadkeys : limitQuadkeys); return(qmmcomp, nbm, nel); }
public async Task <(QmapMesh, int, int)> MakeMesh(string scenename, int lod, LatLng ll1, LatLng ll2, string mapcoordname = "", int tpqk = 4, float hmult = 1, MapProvider mapprov = MapProvider.Bing, ElevProvider elevprov = ElevProvider.Bing) { var llbox = new LatLngBox(ll1, ll2, scenename, lod: lod); return(await MakeMeshFromLlbox(scenename, llbox, mapcoordname : mapcoordname, tpqk : tpqk, hmult : hmult, mapprov : mapprov, elevprov : elevprov)); }