/// <summary> /// /// </summary> /// <param name="grafo"></param> /// <param name="nodos"></param> public void cargarAristasNodos(List <AristaNodo> grafo, List <GameObject> nodos) { foreach (var item in grafo) { GameObject lineaP = Instantiate(lineaNodoPrefab); AristaPrefab arista = lineaP.GetComponent <AristaPrefab>(); foreach (var nodo in nodos) { PlanetaPrebab pp = nodo.GetComponent <PlanetaPrebab>(); DepositoPrefab dp = nodo.GetComponent <DepositoPrefab>(); TeletransportadorPrefab tp = nodo.GetComponent <TeletransportadorPrefab>(); if (pp.planeta.id == item.origenFK) { arista.origen = nodo; item.origen = pp.planeta; } if (pp.planeta.id == item.destinoFK) { arista.destino = nodo; item.destino = pp.planeta; } arista.terminado = true; } } }
IEnumerator unirNodos(GameObject origen) { GameObject lineaObject = Instantiate(lineaPrefab); LineRenderer linea = lineaObject.GetComponent <LineRenderer>(); AristaPrefab arista = lineaObject.GetComponent <AristaPrefab>(); arista.origen = origen; arista.aristaNodo.origenFK = buscarIdNodo(origen); linea.SetPosition(0, origen.transform.position); while (!Input.GetMouseButtonUp(0)) { Vector3 posMouse; Vector3 pos = Input.mousePosition; Ray ray = Camera.main.ScreenPointToRay(pos); Plane xy = new Plane(Vector3.up, new Vector3(0, -40, 0)); float distance; xy.Raycast(ray, out distance); posMouse = ray.GetPoint(distance); linea.SetPosition(1, posMouse); yield return(new WaitForSeconds(0.015f)); } GameObject destino = buscarObjeto(); if (destino == null || destino == origen) { Destroy(lineaObject); } else { linea.SetPosition(1, destino.transform.position); arista.destino = destino; arista.terminado = true; arista.aristaNodo.destinoFK = buscarIdNodo(destino); arista.aristaNodo.sistemaFK = buscarIdSistema(destino); ApiCalls.PostAristaNodo(arista.aristaNodo); GameObject.FindGameObjectWithTag("Sistema").GetComponent <SistemaSingleton>().prebabSistema.GetComponent <SistemaplanetarioPrefab>().sistemaPlanetario.grafo.Add(arista.aristaNodo); } }
public void cargarAristasSistema(List <AristaSistema> grafo, List <GameObject> sistemas) { foreach (var item in grafo) { GameObject lineaP = Instantiate(lineaSistemaPrefab); AristaPrefab arista = lineaP.GetComponent <AristaPrefab>(); foreach (var sistema in sistemas) { SistemaplanetarioPrefab sp = sistema.GetComponent <SistemaplanetarioPrefab>(); if (sp.sistemaPlanetario.id == item.origenFK) { arista.origen = sistema; item.origen = sp.sistemaPlanetario; } if (sp.sistemaPlanetario.id == item.destinoFK) { arista.destino = sistema; item.destino = sp.sistemaPlanetario; } } arista.terminado = true; } }