public static void CreateGizmo() { if (locator1 == null) { locator1 = new GameObject("Locator1"); } if (locator2 == null) { locator2 = new GameObject("Locator2"); } if (rulerHead == null) { rulerHead = new GameObject("Ruler"); } DrawOnSecLoc locOneDrawScript = locator1.AddComponent <DrawOnSecLoc>(); DrawOnSecLoc locTwoDrawScript = locator2.AddComponent <DrawOnSecLoc>(); DrawBwtnPoints rulHeadDrawScript = rulerHead.AddComponent <DrawBwtnPoints>(); locOneDrawScript.locatorMeshX = Resources.Load <Mesh>("LocatorXDraw"); locOneDrawScript.locatorMeshY = Resources.Load <Mesh>("LocatorYDraw"); locOneDrawScript.locatorMeshZ = Resources.Load <Mesh>("LocatorZDraw"); locTwoDrawScript.locatorMeshX = Resources.Load <Mesh>("LocatorXDraw"); locTwoDrawScript.locatorMeshY = Resources.Load <Mesh>("LocatorYDraw"); locTwoDrawScript.locatorMeshZ = Resources.Load <Mesh>("LocatorZDraw"); rulHeadDrawScript.locatorTrans = locator1.transform; rulHeadDrawScript.locatorToTrans = locator2.transform; rulHeadDrawScript.tickMark = Resources.Load <Mesh>("LocatorYDraw"); locator1.transform.parent = rulerHead.transform; locator2.transform.parent = rulerHead.transform; }
void OnSceneGUI() { DrawBwtnPoints drawBwtnPoints = (DrawBwtnPoints)target; if (drawBwtnPoints == null) { return; } Handles.Label(drawBwtnPoints.transform.position + Vector3.up * 2, "Mid-point: " + drawBwtnPoints.FindMidPoint(drawBwtnPoints.locatorTrans, drawBwtnPoints.locatorToTrans) + "\nDistance: " + drawBwtnPoints.CalcDistance().ToString() + " " + drawBwtnPoints.DistanceType()); }
private void OnValidate() { if (thing == null) { thing = new GameObject(); } if (instance == null) { instance = this; } }
private void OnDrawGizmos() { Gizmos.color = Color.red; Gizmos.DrawWireMesh(locatorMeshX, 0, transform.position, transform.rotation, transform.localScale); Gizmos.color = Color.green; Gizmos.DrawWireMesh(locatorMeshY, 0, transform.position, transform.rotation, transform.localScale); Gizmos.color = Color.blue; Gizmos.DrawWireMesh(locatorMeshZ, 0, transform.position, transform.rotation, transform.localScale); drawBwtnPoints = this.GetComponentInParent <DrawBwtnPoints>(); midPoint = drawBwtnPoints.FindMidPoint(drawBwtnPoints.locatorTrans, drawBwtnPoints.locatorToTrans); distance = drawBwtnPoints.CalcDistance(); distaceType = drawBwtnPoints.DistanceType(); }