using System.Collections.Generic; //using System.Drawing.Drawing2D; using System.Linq; using UnityEngine; using TMPro; public class GenerateVertices : MonoBehaviour { float threshold = 0.1f; Vector3[] vertices; GameObject[] Spheres; GameObject VerticesHolder; public bool lastRight = false; public bool lastLeft = false; public GameObject XlastRightGameObject; public GameObject XlastLeftGameObject; public GameObject ZlastRightGameObject; public GameObject ZlastLeftGameObject; public float lineLengthTop = 20; public float lineLengthRight = 20; bool allowScale = false; public void GenerateVerts() { vertices = this.gameObject.GetComponent().mesh.vertices; DrawSpheres(vertices); } //Wireframe Layer 12 : Text Front //Wireframe Layer 13 : Front & Back //Wireframe Layer 14 : Left & Right //Wireframe Layer 15 : Text Back void DrawSpheres(Vector3[] verts) { Spheres = new GameObject[verts.Length]; Matrix4x4 localToWorld = transform.localToWorldMatrix; VerticesHolder = new GameObject(); for (int i = 0; i < verts.Length; i++) { Spheres[i] = GameObject.CreatePrimitive(PrimitiveType.Sphere); Vector3 world_v = localToWorld.MultiplyPoint3x4(verts[i]); Spheres[i].transform.position = world_v; Spheres[i].transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); Spheres[i].name = "Sphere" + i; if (i == 0 || i == 2 || i == 8 || i == 21) { Spheres[i].layer = 14; } else { Spheres[i].layer = 13; } VerticesHolder.name = "VerticesHolder"; VerticesHolder.layer = 13; Spheres[i].AddComponent(); Spheres[i].transform.parent = VerticesHolder.transform; Spheres[i].GetComponent().enabled = false; VerticesHolder.transform.parent = this.transform; } } public void GenerateFronttBack() { int _childCount = GameObject.Find("WireFrame_Elements").transform.childCount; //FRONT VIEW //LastRight GameObject: Front view: Top Right sphere--Line To The Up Vector3 _end4 = new Vector3(Spheres[4].transform.position.x, Spheres[4].transform.position.y + 10, Spheres[4].transform.position.z); DrawLine(Spheres[4], Spheres[4].transform.position, _end4); //LastRight GameObject: Front view: Top Right sphere--Line To The Right Vector3 _end10 = new Vector3(Spheres[10].transform.position.x + 10, Spheres[10].transform.position.y, Spheres[10].transform.position.z); DrawLine(Spheres[10], Spheres[10].transform.position, _end10); //LastRight GameObject: Front view: Bottom Right sphere--Line To The Right Vector3 _end6 = new Vector3(Spheres[6].transform.position.x + 10, Spheres[6].transform.position.y, Spheres[6].transform.position.z); DrawLine(Spheres[6], Spheres[6].transform.position, _end6); //LastRight GameObject: Front view: Top Left sphere--Line To The Up Vector3 _end5 = new Vector3(Spheres[5].transform.position.x, Spheres[5].transform.position.y + 10, Spheres[5].transform.position.z); DrawLine(Spheres[5], Spheres[5].transform.position, _end5); GameObject Sphere5MovedTop = GameObject.CreatePrimitive(PrimitiveType.Sphere); Sphere5MovedTop.name = "Sphere5MovedTop"; Sphere5MovedTop.layer = 13; Sphere5MovedTop.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); Sphere5MovedTop.transform.parent = VerticesHolder.transform; Sphere5MovedTop.GetComponent().enabled = false; Sphere5MovedTop.AddComponent(); Sphere5MovedTop.transform.position = new Vector3(Spheres[5].transform.position.x, Spheres[5].transform.position.y + 5, Spheres[5].transform.position.z); Vector3 _endSphere5MovedTop = new Vector3(Sphere5MovedTop.transform.position.x + lineLengthRight, Sphere5MovedTop.transform.position.y, Sphere5MovedTop.transform.position.z); DrawLine(Sphere5MovedTop, Sphere5MovedTop.transform.position, _endSphere5MovedTop); GameObject Sphere4MovedRight = GameObject.CreatePrimitive(PrimitiveType.Sphere); Sphere4MovedRight.name = "Sphere4MovedRight"; Sphere4MovedRight.layer = 13; Sphere4MovedRight.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); Sphere4MovedRight.transform.parent = VerticesHolder.transform; Sphere4MovedRight.GetComponent().enabled = false; Sphere4MovedRight.AddComponent(); Sphere4MovedRight.transform.position = new Vector3(Spheres[4].transform.position.x + 5, Spheres[4].transform.position.y, Spheres[4].transform.position.z); Vector3 _endSphere4MovedRight = new Vector3(Sphere4MovedRight.transform.position.x, Sphere4MovedRight.transform.position.y - lineLengthTop, Sphere4MovedRight.transform.position.z); DrawLine(Sphere4MovedRight, Sphere4MovedRight.transform.position, _endSphere4MovedRight); GameObject Sphere4MovedTop = GameObject.CreatePrimitive(PrimitiveType.Sphere); Sphere4MovedTop.name = "Sphere4MovedTop"; Sphere4MovedTop.layer = 13; Sphere4MovedTop.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); Sphere4MovedTop.transform.parent = VerticesHolder.transform; Sphere4MovedTop.GetComponent().enabled = false; Sphere4MovedTop.AddComponent(); Sphere4MovedTop.transform.position = new Vector3(Spheres[4].transform.position.x, Spheres[4].transform.position.y + 5, Spheres[4].transform.position.z); Vector3 _endSphere4MovedTop = new Vector3(Sphere4MovedTop.transform.position.x - lineLengthRight, Sphere4MovedTop.transform.position.y, Sphere4MovedTop.transform.position.z); DrawLine(Sphere4MovedTop, Sphere4MovedTop.transform.position, _endSphere4MovedTop); GameObject Sphere6MovedRight = GameObject.CreatePrimitive(PrimitiveType.Sphere); Sphere6MovedRight.name = "Sphere6MovedRight"; Sphere6MovedRight.layer = 13; Sphere6MovedRight.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); Sphere6MovedRight.transform.parent = VerticesHolder.transform; Sphere6MovedRight.GetComponent().enabled = false; Sphere6MovedRight.AddComponent(); Sphere6MovedRight.transform.position = new Vector3(Spheres[6].transform.position.x + 5, Spheres[6].transform.position.y, Spheres[6].transform.position.z); Vector3 _endSphere6MovedRight = new Vector3(Sphere6MovedRight.transform.position.x, Sphere6MovedRight.transform.position.y + lineLengthTop, Sphere6MovedRight.transform.position.z); DrawLine(Sphere6MovedRight, Sphere6MovedRight.transform.position, _endSphere6MovedRight); if (lastRight == true) { GameObject topValueFrontView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(0).gameObject); topValueFrontView.name = "topValueFrontView"; topValueFrontView.transform.parent = this.transform; Vector3 midPointTFront = Vector3.Lerp(Sphere4MovedTop.transform.position, XlastLeftGameObject.transform.Find("VerticesHolder").transform.Find("Sphere5MovedTop").transform.position, 0.5f); topValueFrontView.transform.position = midPointTFront; topValueFrontView.layer = 12; topValueFrontView.transform.GetChild(0).gameObject.layer = 12; GameObject rightValueFrontView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(2).gameObject); rightValueFrontView.name = "rightValueFrontView"; rightValueFrontView.transform.parent = this.transform; Vector3 midPointRFront = Vector3.Lerp(Sphere4MovedRight.transform.position, Sphere6MovedRight.transform.position, 0.5f); rightValueFrontView.transform.position = midPointRFront; rightValueFrontView.layer = 12; rightValueFrontView.transform.GetChild(0).gameObject.layer = 12; rightValueFrontView.GetComponent().text = Get.o4("HIDER", "CONTROL", "MH", "mcH").GetComponent().text; GameObject topValueFrontViewInverted = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(0).gameObject); topValueFrontViewInverted.name = "topValueFrontViewInverted"; topValueFrontViewInverted.transform.parent = this.transform; topValueFrontViewInverted.layer = 16; topValueFrontViewInverted.transform.GetChild(0).gameObject.layer = 16; topValueFrontViewInverted.transform.position = topValueFrontView.transform.position; GameObject rightValueFrontViewInverted = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(2).gameObject); rightValueFrontViewInverted.name = "rightValueFrontViewInverted"; rightValueFrontViewInverted.transform.parent = this.transform; rightValueFrontViewInverted.transform.position = new Vector3(midPointRFront.x, midPointRFront.y, 2.0f); rightValueFrontViewInverted.layer = 17; rightValueFrontViewInverted.transform.GetChild(0).gameObject.layer = 17; rightValueFrontViewInverted.transform.GetChild(0).transform.localScale = new Vector3(rightValueFrontViewInverted.transform.GetChild(0).localScale.x, rightValueFrontViewInverted.transform.GetChild(0).localScale.y, -2.0f); rightValueFrontViewInverted.GetComponent().text = Get.o4("HIDER", "CONTROL", "MH", "mcH").GetComponent().text; rightValueFrontViewInverted.transform.localScale = new Vector3(rightValueFrontViewInverted.transform.localScale.x, rightValueFrontViewInverted.transform.localScale.y * -1, rightValueFrontViewInverted.transform.localScale.z); } if (lastRight == false && lastLeft == false) { GameObject topValueFrontView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(0).gameObject); topValueFrontView.name = "topValueFrontView"; topValueFrontView.transform.parent = this.transform; Vector3 midPointTFront = Vector3.Lerp(Sphere4MovedTop.transform.position, Sphere5MovedTop.transform.position, 0.5f); topValueFrontView.transform.position = midPointTFront; topValueFrontView.layer = 12; topValueFrontView.transform.GetChild(0).gameObject.layer = 12; GameObject rightValueFrontView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(2).gameObject); rightValueFrontView.name = "rightValueFrontView"; rightValueFrontView.transform.parent = this.transform; Vector3 midPointRFront = Vector3.Lerp(Sphere4MovedRight.transform.position, Sphere6MovedRight.transform.position, 0.5f); rightValueFrontView.transform.position = new Vector3(midPointRFront.x, midPointRFront.y, -2.0f); rightValueFrontView.layer = 12; rightValueFrontView.transform.GetChild(0).gameObject.layer = 12; rightValueFrontView.GetComponent().text = Get.o4("HIDER", "CONTROL", "MH", "mcH").GetComponent().text; GameObject topValueFrontViewInverted = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(0).gameObject); topValueFrontViewInverted.name = "topValueFrontViewInverted"; topValueFrontViewInverted.transform.parent = this.transform; topValueFrontViewInverted.layer = 16; topValueFrontViewInverted.transform.GetChild(0).gameObject.layer = 16; topValueFrontViewInverted.transform.position = topValueFrontView.transform.position; GameObject rightValueFrontViewInverted = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(2).gameObject); rightValueFrontViewInverted.name = "rightValueFrontViewInverted"; rightValueFrontViewInverted.transform.parent = this.transform; rightValueFrontViewInverted.transform.position = new Vector3(midPointRFront.x, midPointRFront.y, 2.0f); rightValueFrontViewInverted.layer = 17; rightValueFrontViewInverted.transform.GetChild(0).gameObject.layer = 17; rightValueFrontViewInverted.transform.GetChild(0).transform.localScale = new Vector3(rightValueFrontViewInverted.transform.GetChild(0).localScale.x, rightValueFrontViewInverted.transform.GetChild(0).localScale.y, -2.0f); rightValueFrontViewInverted.GetComponent().text = Get.o4("HIDER", "CONTROL", "MH", "mcH").GetComponent().text; rightValueFrontViewInverted.transform.localScale = new Vector3(rightValueFrontViewInverted.transform.localScale.x, rightValueFrontViewInverted.transform.localScale.y * -1, rightValueFrontViewInverted.transform.localScale.z); } if (lastRight == true) { Spheres[5].gameObject.SetActive(false); Sphere5MovedTop.gameObject.SetActive(false); } if (lastLeft == true) { Sphere4MovedRight.gameObject.SetActive(false); Sphere4MovedTop.gameObject.SetActive(false); Sphere6MovedRight.gameObject.SetActive(false); for (int i = 0; i < vertices.Length; i++) { if (Spheres[i].name != "Sphere5" && Spheres[i].layer != 14) { Spheres[i].gameObject.SetActive(false); } } } } public void GenerateLeftRight() { for (int i = 0; i < vertices.Length; i++) { LineRenderer lr = Spheres[i].GetComponent(); if (lr.positionCount == 0) { lr.material = new Material(Shader.Find("Universal Render Pipeline/Lit")); } } //ZlastRightGameObject: Right view: Top Right sphere--Line To The Up GameObject sp2ZlastRight = ZlastRightGameObject.transform.Find("VerticesHolder").gameObject.transform.Find("Sphere2").gameObject; GameObject sp2ZlastLeft = ZlastLeftGameObject.transform.Find("VerticesHolder").gameObject.transform.Find("Sphere2").gameObject; Vector3 _end2 = new Vector3(sp2ZlastRight.transform.position.x, sp2ZlastRight.transform.position.y + 10, sp2ZlastRight.transform.position.z); sp2ZlastLeft.gameObject.SetActive(false); DrawLine(sp2ZlastRight.gameObject, sp2ZlastRight.transform.position, _end2); //ZlastRightGameObject: Right view: Top Right sphere--Line To The Right GameObject sp8ZlastRight = ZlastRightGameObject.transform.Find("VerticesHolder").gameObject.transform.Find("Sphere8").gameObject; GameObject sp8ZlastLeft = ZlastLeftGameObject.transform.Find("VerticesHolder").gameObject.transform.Find("Sphere8").gameObject; Vector3 _end8 = new Vector3(sp8ZlastRight.transform.position.x, sp8ZlastRight.transform.position.y, sp8ZlastRight.transform.position.z + 10); sp8ZlastLeft.gameObject.SetActive(false); DrawLine(sp8ZlastRight.gameObject, sp8ZlastRight.transform.position, _end8); //LastRight GameObject: Right view: Bottom Right sphere--Line To The Right GameObject sp0ZlastRight = ZlastRightGameObject.transform.Find("VerticesHolder").gameObject.transform.Find("Sphere0").gameObject; GameObject sp0ZlastLeft = ZlastLeftGameObject.transform.Find("VerticesHolder").gameObject.transform.Find("Sphere0").gameObject; Vector3 _end0 = new Vector3(sp0ZlastRight.transform.position.x, sp0ZlastRight.transform.position.y, sp0ZlastRight.transform.position.z + 10); sp0ZlastLeft.gameObject.SetActive(false); DrawLine(sp0ZlastRight.gameObject, sp0ZlastRight.transform.position, _end0); //ZlastLeftGameObject: Right view: Top Left sphere--Line To The Up GameObject sp21ZlastLeft = ZlastLeftGameObject.transform.Find("VerticesHolder").gameObject.transform.Find("Sphere21").gameObject; GameObject sp21ZlastRight = ZlastRightGameObject.transform.Find("VerticesHolder").gameObject.transform.Find("Sphere21").gameObject; Vector3 _end21 = new Vector3(sp21ZlastLeft.transform.position.x, sp21ZlastLeft.transform.position.y + 10, sp21ZlastLeft.transform.position.z); sp21ZlastRight.gameObject.SetActive(false); DrawLine(sp21ZlastLeft, sp21ZlastLeft.transform.position, _end21); //ZlastRightGameObject: Right view: Top Right sphere--Move to the middle right and draw long down line GameObject sp2_ZlastRight_movedRight = GameObject.CreatePrimitive(PrimitiveType.Sphere); sp2_ZlastRight_movedRight.name = "sp2_ZlastRight_movedRight"; sp2_ZlastRight_movedRight.layer = 14; sp2_ZlastRight_movedRight.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); sp2_ZlastRight_movedRight.transform.parent = ZlastRightGameObject.transform.Find("VerticesHolder").gameObject.transform; sp2_ZlastRight_movedRight.GetComponent().enabled = false; sp2_ZlastRight_movedRight.AddComponent(); sp2_ZlastRight_movedRight.transform.position = new Vector3(sp2ZlastRight.transform.position.x, sp2ZlastRight.transform.position.y, sp2ZlastRight.transform.position.z + 5); Vector3 _end_sp2_ZlastRight_movedRight = new Vector3(sp2_ZlastRight_movedRight.transform.position.x, sp2_ZlastRight_movedRight.transform.position.y - lineLengthTop, sp2_ZlastRight_movedRight.transform.position.z); DrawLine(sp2_ZlastRight_movedRight, sp2_ZlastRight_movedRight.transform.position, _end_sp2_ZlastRight_movedRight); //ZlastRightGameObject: Right view: Bottom Right sphere--Move to the middle right and draw long up line GameObject sp0_ZlastRight_movedRight = GameObject.CreatePrimitive(PrimitiveType.Sphere); sp0_ZlastRight_movedRight.name = "sp0_ZlastRight_movedRight"; sp0_ZlastRight_movedRight.layer = 14; sp0_ZlastRight_movedRight.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); sp0_ZlastRight_movedRight.transform.parent = ZlastRightGameObject.transform.Find("VerticesHolder").gameObject.transform; sp0_ZlastRight_movedRight.GetComponent().enabled = false; sp0_ZlastRight_movedRight.AddComponent(); sp0_ZlastRight_movedRight.transform.position = new Vector3(sp0ZlastRight.transform.position.x, sp0ZlastRight.transform.position.y, sp0ZlastRight.transform.position.z + 5); Vector3 _end_sp0_ZlastRight_movedRight = new Vector3(sp0_ZlastRight_movedRight.transform.position.x, sp0_ZlastRight_movedRight.transform.position.y + lineLengthTop, sp0_ZlastRight_movedRight.transform.position.z); DrawLine(sp0_ZlastRight_movedRight, sp0_ZlastRight_movedRight.transform.position, _end_sp0_ZlastRight_movedRight); //ZlastRightGameObject: Right view: Top Left sphere--Move to the middle up and draw long right line GameObject sp2_ZlastRight_movedTop = GameObject.CreatePrimitive(PrimitiveType.Sphere); sp2_ZlastRight_movedTop.name = "sp2_ZlastRight_movedTop"; sp2_ZlastRight_movedTop.layer = 14; sp2_ZlastRight_movedTop.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); sp2_ZlastRight_movedTop.transform.parent = ZlastRightGameObject.transform.Find("VerticesHolder").gameObject.transform; sp2_ZlastRight_movedTop.GetComponent().enabled = false; sp2_ZlastRight_movedTop.AddComponent(); sp2_ZlastRight_movedTop.transform.position = new Vector3(sp2ZlastRight.transform.position.x, sp2ZlastRight.transform.position.y + 5, sp2ZlastRight.transform.position.z); Vector3 _end_sp2_ZlastRight_movedTop = new Vector3(sp2_ZlastRight_movedTop.transform.position.x, sp2_ZlastRight_movedTop.transform.position.y, sp2_ZlastRight_movedTop.transform.position.z - lineLengthRight); DrawLine(sp2_ZlastRight_movedTop, sp2_ZlastRight_movedTop.transform.position, _end_sp2_ZlastRight_movedTop); //ZlastRightGameObject: Right view: Top Right sphere--Move to the middle up and draw long left line GameObject sp21_ZlastRight_movedTop = GameObject.CreatePrimitive(PrimitiveType.Sphere); sp21_ZlastRight_movedTop.name = "sp21_ZlastRight_movedTop"; sp21_ZlastRight_movedTop.layer = 14; sp21_ZlastRight_movedTop.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); sp21_ZlastRight_movedTop.transform.parent = ZlastRightGameObject.transform.Find("VerticesHolder").gameObject.transform; sp21_ZlastRight_movedTop.GetComponent().enabled = false; sp21_ZlastRight_movedTop.AddComponent(); sp21_ZlastRight_movedTop.transform.position = new Vector3(sp21ZlastLeft.transform.position.x, sp21ZlastLeft.transform.position.y + 5, sp21ZlastLeft.transform.position.z); Vector3 _end_sp21_ZlastRight_movedTop = new Vector3(sp21_ZlastRight_movedTop.transform.position.x, sp21_ZlastRight_movedTop.transform.position.y, sp21_ZlastRight_movedTop.transform.position.z + lineLengthRight); DrawLine(sp21_ZlastRight_movedTop, sp21_ZlastRight_movedTop.transform.position, _end_sp21_ZlastRight_movedTop); GameObject rightValueRightView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(2).gameObject); rightValueRightView.name = "rightValueRightView"; rightValueRightView.transform.parent = this.transform; Vector3 midPointRRightView = Vector3.Lerp(sp2_ZlastRight_movedRight.transform.position, sp0_ZlastRight_movedRight.transform.position, 0.5f); rightValueRightView.transform.position = new Vector3(1.55f, midPointRRightView.y, midPointRRightView.z); rightValueRightView.layer = 21; rightValueRightView.transform.eulerAngles = new Vector3(0, -90, 90); rightValueRightView.transform.GetChild(0).gameObject.layer = 22; rightValueRightView.GetComponent().text = Get.o4("HIDER", "CONTROL", "MH", "mcH").GetComponent().text; GameObject rightValueLeftView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(2).gameObject); rightValueLeftView.name = "rightValueLeftView"; rightValueLeftView.transform.parent = this.transform; Vector3 midPointLRightView = Vector3.Lerp(sp2_ZlastRight_movedRight.transform.position, sp0_ZlastRight_movedRight.transform.position, 0.5f); rightValueLeftView.transform.position = midPointLRightView; rightValueLeftView.layer = 19; rightValueLeftView.transform.eulerAngles = new Vector3(0, 90, -270); rightValueLeftView.transform.GetChild(0).gameObject.layer = 23; rightValueLeftView.GetComponent().text = Get.o4("HIDER", "CONTROL", "MH", "mcH").GetComponent().text; GameObject topValueRightView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(0).gameObject); topValueRightView.name = "topValueRightView"; topValueRightView.transform.parent = this.transform; Vector3 midPointTRightView = Vector3.Lerp(sp2_ZlastRight_movedTop.transform.position, sp21_ZlastRight_movedTop.transform.position, 0.5f); topValueRightView.transform.position = new Vector3(1.55f, midPointTRightView.y, midPointTRightView.z); topValueRightView.transform.eulerAngles = new Vector3(0, -90, 0); topValueRightView.layer = 20; topValueRightView.transform.GetChild(0).gameObject.layer = 20; topValueRightView.GetComponent().text = GameObject.Find("COTEISLANT").transform.GetChild(2).GetComponent().text; GameObject topValueLeftView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(0).gameObject); topValueLeftView.name = "topValueLeftView"; topValueLeftView.transform.parent = this.transform; Vector3 midPointTLeftView = Vector3.Lerp(sp2_ZlastRight_movedTop.transform.position, sp21_ZlastRight_movedTop.transform.position, 0.5f); topValueLeftView.transform.position = new Vector3(0.5f, midPointTLeftView.y, midPointTLeftView.z); topValueLeftView.transform.eulerAngles = new Vector3(0, 90, 0); topValueLeftView.layer = 18; topValueLeftView.transform.GetChild(0).gameObject.layer = 18; topValueLeftView.GetComponent().text = GameObject.Find("COTEISLANT").transform.GetChild(2).GetComponent().text; allowScale = true; } public void GenerateLeftRightOG()//OG:OneGameObject { for (int i = 0; i < vertices.Length; i++) { LineRenderer lr = Spheres[i].GetComponent(); if (lr.positionCount == 0) { lr.material = new Material(Shader.Find("Universal Render Pipeline/Lit")); } } //ZlastRightGameObject: Right view: Top Right sphere--Line To The Up GameObject sp2ZlastRight = transform.Find("VerticesHolder").gameObject.transform.Find("Sphere2").gameObject; Vector3 _end2 = new Vector3(sp2ZlastRight.transform.position.x, sp2ZlastRight.transform.position.y + 10, sp2ZlastRight.transform.position.z); DrawLine(sp2ZlastRight.gameObject, sp2ZlastRight.transform.position, _end2); //ZlastRightGameObject: Right view: Top Right sphere--Line To The Right GameObject sp8ZlastRight = transform.Find("VerticesHolder").gameObject.transform.Find("Sphere8").gameObject; Vector3 _end8 = new Vector3(sp8ZlastRight.transform.position.x, sp8ZlastRight.transform.position.y, sp8ZlastRight.transform.position.z + 10); DrawLine(sp8ZlastRight.gameObject, sp8ZlastRight.transform.position, _end8); //LastRight GameObject: Right view: Bottom Right sphere--Line To The Right GameObject sp0ZlastRight = transform.Find("VerticesHolder").gameObject.transform.Find("Sphere0").gameObject; Vector3 _end0 = new Vector3(sp0ZlastRight.transform.position.x, sp0ZlastRight.transform.position.y, sp0ZlastRight.transform.position.z + 10); DrawLine(sp0ZlastRight.gameObject, sp0ZlastRight.transform.position, _end0); //ZlastLeftGameObject: Right view: Top Left sphere--Line To The Up GameObject sp21ZlastLeft = transform.Find("VerticesHolder").gameObject.transform.Find("Sphere21").gameObject; Vector3 _end21 = new Vector3(sp21ZlastLeft.transform.position.x, sp21ZlastLeft.transform.position.y + 10, sp21ZlastLeft.transform.position.z); DrawLine(sp21ZlastLeft, sp21ZlastLeft.transform.position, _end21); //ZlastRightGameObject: Right view: Top Right sphere--Move to the middle right and draw long down line GameObject sp2_ZlastRight_movedRight = GameObject.CreatePrimitive(PrimitiveType.Sphere); sp2_ZlastRight_movedRight.name = "sp2_ZlastRight_movedRight"; sp2_ZlastRight_movedRight.layer = 14; sp2_ZlastRight_movedRight.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); sp2_ZlastRight_movedRight.transform.parent = transform.Find("VerticesHolder").gameObject.transform; sp2_ZlastRight_movedRight.GetComponent().enabled = false; sp2_ZlastRight_movedRight.AddComponent(); sp2_ZlastRight_movedRight.transform.position = new Vector3(sp2ZlastRight.transform.position.x, sp2ZlastRight.transform.position.y, sp2ZlastRight.transform.position.z + 5); Vector3 _end_sp2_ZlastRight_movedRight = new Vector3(sp2_ZlastRight_movedRight.transform.position.x, sp2_ZlastRight_movedRight.transform.position.y - lineLengthTop, sp2_ZlastRight_movedRight.transform.position.z); DrawLine(sp2_ZlastRight_movedRight, sp2_ZlastRight_movedRight.transform.position, _end_sp2_ZlastRight_movedRight); //ZlastRightGameObject: Right view: Bottom Right sphere--Move to the middle right and draw long up line GameObject sp0_ZlastRight_movedRight = GameObject.CreatePrimitive(PrimitiveType.Sphere); sp0_ZlastRight_movedRight.name = "sp0_ZlastRight_movedRight"; sp0_ZlastRight_movedRight.layer = 14; sp0_ZlastRight_movedRight.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); sp0_ZlastRight_movedRight.transform.parent = transform.Find("VerticesHolder").gameObject.transform; sp0_ZlastRight_movedRight.GetComponent().enabled = false; sp0_ZlastRight_movedRight.AddComponent(); sp0_ZlastRight_movedRight.transform.position = new Vector3(sp0ZlastRight.transform.position.x, sp0ZlastRight.transform.position.y, sp0ZlastRight.transform.position.z + 5); Vector3 _end_sp0_ZlastRight_movedRight = new Vector3(sp0_ZlastRight_movedRight.transform.position.x, sp0_ZlastRight_movedRight.transform.position.y + lineLengthTop, sp0_ZlastRight_movedRight.transform.position.z); DrawLine(sp0_ZlastRight_movedRight, sp0_ZlastRight_movedRight.transform.position, _end_sp0_ZlastRight_movedRight); //ZlastRightGameObject: Right view: Top Left sphere--Move to the middle up and draw long right line GameObject sp2_ZlastRight_movedTop = GameObject.CreatePrimitive(PrimitiveType.Sphere); sp2_ZlastRight_movedTop.name = "sp2_ZlastRight_movedTop"; sp2_ZlastRight_movedTop.layer = 14; sp2_ZlastRight_movedTop.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); sp2_ZlastRight_movedTop.transform.parent = transform.Find("VerticesHolder").gameObject.transform; sp2_ZlastRight_movedTop.GetComponent().enabled = false; sp2_ZlastRight_movedTop.AddComponent(); sp2_ZlastRight_movedTop.transform.position = new Vector3(sp2ZlastRight.transform.position.x, sp2ZlastRight.transform.position.y + 5, sp2ZlastRight.transform.position.z); Vector3 _end_sp2_ZlastRight_movedTop = new Vector3(sp2_ZlastRight_movedTop.transform.position.x, sp2_ZlastRight_movedTop.transform.position.y, sp2_ZlastRight_movedTop.transform.position.z - lineLengthRight); DrawLine(sp2_ZlastRight_movedTop, sp2_ZlastRight_movedTop.transform.position, _end_sp2_ZlastRight_movedTop); //ZlastRightGameObject: Right view: Top Right sphere--Move to the middle up and draw long left line GameObject sp21_ZlastRight_movedTop = GameObject.CreatePrimitive(PrimitiveType.Sphere); sp21_ZlastRight_movedTop.name = "sp21_ZlastRight_movedTop"; sp21_ZlastRight_movedTop.layer = 14; sp21_ZlastRight_movedTop.transform.localScale = new Vector3(0.8F, 0.8F, 0.8F); sp21_ZlastRight_movedTop.transform.parent = transform.Find("VerticesHolder").gameObject.transform; sp21_ZlastRight_movedTop.GetComponent().enabled = false; sp21_ZlastRight_movedTop.AddComponent(); sp21_ZlastRight_movedTop.transform.position = new Vector3(sp21ZlastLeft.transform.position.x, sp21ZlastLeft.transform.position.y + 5, sp21ZlastLeft.transform.position.z); Vector3 _end_sp21_ZlastRight_movedTop = new Vector3(sp21_ZlastRight_movedTop.transform.position.x, sp21_ZlastRight_movedTop.transform.position.y, sp21_ZlastRight_movedTop.transform.position.z + lineLengthRight); DrawLine(sp21_ZlastRight_movedTop, sp21_ZlastRight_movedTop.transform.position, _end_sp21_ZlastRight_movedTop); GameObject rightValueRightView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(2).gameObject); rightValueRightView.name = "rightValueRightView"; rightValueRightView.transform.parent = this.transform; Vector3 midPointRRightView = Vector3.Lerp(sp2_ZlastRight_movedRight.transform.position, sp0_ZlastRight_movedRight.transform.position, 0.5f); rightValueRightView.transform.position = new Vector3(1.55f, midPointRRightView.y, midPointRRightView.z); rightValueRightView.layer = 21; rightValueRightView.transform.eulerAngles = new Vector3(0, -90, 90); rightValueRightView.transform.GetChild(0).gameObject.layer = 22; rightValueRightView.GetComponent().text = Get.o4("HIDER", "CONTROL", "MH", "mcH").GetComponent().text; GameObject rightValueLeftView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(2).gameObject); rightValueLeftView.name = "rightValueLeftView"; rightValueLeftView.transform.parent = this.transform; Vector3 midPointLRightView = Vector3.Lerp(sp2_ZlastRight_movedRight.transform.position, sp0_ZlastRight_movedRight.transform.position, 0.5f); rightValueLeftView.transform.position = midPointLRightView; rightValueLeftView.layer = 19; rightValueLeftView.transform.eulerAngles = new Vector3(0, 90, -270); rightValueLeftView.transform.GetChild(0).gameObject.layer = 23; rightValueLeftView.GetComponent().text = Get.o4("HIDER", "CONTROL", "MH", "mcH").GetComponent().text; GameObject topValueRightView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(0).gameObject); topValueRightView.name = "topValueRightView"; topValueRightView.transform.parent = this.transform; Vector3 midPointTRightView = Vector3.Lerp(sp2_ZlastRight_movedTop.transform.position, sp21_ZlastRight_movedTop.transform.position, 0.5f); topValueRightView.transform.position = new Vector3(1.55f, midPointTRightView.y, midPointTRightView.z); topValueRightView.transform.eulerAngles = new Vector3(0, -90, 0); topValueRightView.layer = 20; topValueRightView.transform.GetChild(0).gameObject.layer = 20; topValueRightView.GetComponent().text = GameObject.Find("COTEISLANT").transform.GetChild(2).GetComponent().text; GameObject topValueLeftView = Instantiate(GameObject.Find("COTEISLANT").transform.GetChild(0).gameObject); topValueLeftView.name = "topValueLeftView"; topValueLeftView.transform.parent = this.transform; Vector3 midPointTLeftView = Vector3.Lerp(sp2_ZlastRight_movedTop.transform.position, sp21_ZlastRight_movedTop.transform.position, 0.5f); topValueLeftView.transform.position = new Vector3(0.5f, midPointTLeftView.y, midPointTLeftView.z); topValueLeftView.transform.eulerAngles = new Vector3(0, 90, 0); topValueLeftView.layer = 18; topValueLeftView.transform.GetChild(0).gameObject.layer = 18; topValueLeftView.GetComponent().text = GameObject.Find("COTEISLANT").transform.GetChild(2).GetComponent().text; allowScale = true; } void DrawLine(GameObject sphere, Vector3 start, Vector3 end) { //myLine.transform.position = start; //myLine.AddComponent(); LineRenderer lr = sphere.GetComponent(); lr.positionCount = 2; lr.material = new Material(Shader.Find("Universal Render Pipeline/Lit")); lr.sharedMaterial.SetColor("_Color", Color.red); lr.SetWidth(0.2f, 0.2f); lr.SetPosition(0, start); lr.SetPosition(1, end); //GameObject.Destroy(myLine, duration); } private void Update() { //Fix Right View & Left View Right Value BG Issue if(allowScale == true) { GameObject.Find("rightValueRightView").transform.localScale = new Vector3(GameObject.Find("rightValueRightView").transform.localScale.x, 0.04f, GameObject.Find("rightValueRightView").transform.localScale.z); } } /*private void OnDrawGizmos() { if (vertices == null) { return; } Gizmos.color = Color.black; for (int i = 0; i < vertices.Length; i++) { Gizmos.DrawSphere(vertices[i], 0.1f); } }*/ }