private void VisualizeAxes(Vector3 point, int index, Transform origin) { ZeroLR(components); ZeroLR(units); ZeroLR(arcs); switch (index) { case 0: axes[index].SetPosition(0, origin.position); axes[index].SetPosition(1, new Vector3(origin.position.x + 1, origin.position.y, origin.position.z)); canvasScript.VisualizeText(axes[index].GetPosition(1), 1, index); AddArrowHead(point, index); break; case 1: axes[index].SetPosition(0, origin.position); axes[index].SetPosition(1, new Vector3(origin.position.x, origin.position.y + 1, origin.position.z)); canvasScript.VisualizeText(axes[index].GetPosition(1), 1, index); break; case 2: axes[index].SetPosition(0, origin.position); axes[index].SetPosition(1, new Vector3(origin.position.x, origin.position.y, origin.position.z + 1)); canvasScript.VisualizeText(axes[index].GetPosition(1), 1, index); break; case 3: components[index].SetPosition(0, origin.position); components[index].SetPosition(1, point); canvasScript.VisualizeText(components[index].GetPosition(1), 1, index); break; default: Debug.Log("Something went wrong in the for loop from VectorMath::vectorComponents(V3, i, T)"); break; } }