public void CreateArcs(SeriesLocData[] allSeries) { SeriesLocData seriesData = allSeries[0]; ArcDrawer Drawer = GetComponent <ArcDrawer>(); List <ArcData> arcData = new List <ArcData>(); //Debug.Log(seriesData.Data.Length / 3500); for (int j = 0; (j < seriesData.Data.Length) & (j < 7 * ArcLimit); j += 7) { string OSLIC = seriesData.Data[j]; float latstart = float.Parse(seriesData.Data[j + 1]); float lngstart = float.Parse(seriesData.Data[j + 2]); string DSLIC = seriesData.Data[j + 3].ToString(); float latend = float.Parse(seriesData.Data[j + 4]); float lngend = float.Parse(seriesData.Data[j + 5]); float volume = float.Parse(seriesData.Data[j + 6]); //Debug.Log(OSLIC); //Debug.Log(latstart + "," + lngstart + "," + latend + "," + lngend + "," + volume); //Debug.Log(OSLIC); Vector3 startpos = LatLongToVector3(latstart, lngstart); Vector3 endpos = LatLongToVector3(latend, lngend); string ostate = " WA", dstate = " WA"; //Debug.LogFormat("OSLIC:{0},DSLIC:{1},OSTATE:{2}", OSLIC, DSLIC, states[OSLIC]); if (states.ContainsKey(OSLIC)) { ostate = states[OSLIC]; } if (states.ContainsKey(DSLIC)) { dstate = states[DSLIC]; } arcData.Add(new ArcData(startpos, endpos, volume, ostate, dstate, OSLIC, DSLIC)); } Drawer.CreateArcs(arcData); }
public void InitialiseStates(SeriesLocData[] allSeries) { SeriesLocData seriesData = allSeries[0]; for (int i = 0; i < seriesData.Data.Length; i += 2) { string state = seriesData.Data[i + 1]; if (state == " DC") { state = " VA"; } states[seriesData.Data[i]] = state; } }
public void CreateCoordinates(SeriesLocData[] allSeries) { SeriesLocData seriesData = allSeries[0]; for (int j = 0; j < seriesData.Data.Length; j += 3) { string OSLIC = seriesData.Data[j]; float latitude = float.Parse(seriesData.Data[j + 1]); float longitude = float.Parse(seriesData.Data[j + 2]); Vector3 pos = LatLongToVector3(latitude, longitude); //Debug.Log(fac.SLIC); coordinates[OSLIC] = pos; if (buildings.ContainsKey(pos)) { //Debug.Log(OSLIC + " == " + buildings[pos]); samebuilding[OSLIC] = buildings[pos]; } } }
public void CreateFacilities(SeriesLocData[] allSeries) { Facility.PointMaterial = PointMaterial; SeriesLocData seriesData = allSeries[0]; Transform folder = new GameObject("Facilities").transform; folder.SetParent(transform, false); //Debug.Log(seriesData.Data.Length); for (int j = 0; j < seriesData.Data.Length; j += 9) { string SLIC = seriesData.Data[j].ToString(); float latitude = float.Parse(seriesData.Data[j + 1]); float longitude = float.Parse(seriesData.Data[j + 2]); string CC = seriesData.Data[j + 3].ToString(); string SORT = seriesData.Data[j + 4].ToString(); string CAP = seriesData.Data[j + 5].ToString(); string SPAN = seriesData.Data[j + 6].ToString(); string STRT = seriesData.Data[j + 7].ToString(); string STATE = seriesData.Data[j + 8].ToString(); if (STATE == " DC") { STATE = " WA"; } //if (STATE == " FL") //{ // Debug.Log("Florida Facility: " + SLIC); //} FacData fac = GetFacility(SLIC, latitude, longitude, CC, SORT, CAP, SPAN, STRT, STATE); if (!locations.ContainsKey(fac.SLIC)) { List <FacData> loc = new List <FacData>(); loc.Add(fac); locations.Add(fac.SLIC, loc); } else { locations[fac.SLIC].Add(fac); } //draw facility only once if (!buildings.ContainsKey(fac.pos)) { buildings.Add(fac.pos, fac.SLIC); GameObject p = Instantiate(PointPrefab); p.transform.SetParent(folder, false); p.transform.localScale = new Vector3(1, 1, 0.001f); p.transform.localPosition = fac.pos; p.transform.forward = fac.pos; // make cube point outwards p.GetComponent <MeshRenderer>().material = PointMaterial; p.AddComponent <BoxCollider>().isTrigger = true; p.AddComponent <Facility>().SetFac(fac); //p.AddComponent<HelloWorld>(); p.tag = "Location"; p.name = "Facility SLIC: " + fac.SLIC; points.Add(p); } //else //{ // //Debug.Log("adding facility" + fac.SLIC); // //buildings[fac.pos].Add(fac); //} } }