From 13755f40a811f20d2a30711b41e7be8f95e7c16f Mon Sep 17 00:00:00 2001
From: unknown <john.schihada@hotmail.com>
Date: Tue, 7 Jan 2020 01:46:34 +0100
Subject: [PATCH] Fixed a Line-/Angle-Preview-Bug

---
 Assets/InteractionEngine/ShinyThings.cs | 21 +++++++++------------
 1 file changed, 9 insertions(+), 12 deletions(-)

diff --git a/Assets/InteractionEngine/ShinyThings.cs b/Assets/InteractionEngine/ShinyThings.cs
index 626a42ce..4cbab20c 100644
--- a/Assets/InteractionEngine/ShinyThings.cs
+++ b/Assets/InteractionEngine/ShinyThings.cs
@@ -106,6 +106,8 @@ public void OnMouseOverFactEnd(Transform selection)
 
     public void ActivateLineDrawing(Fact startFact)
     {
+        this.lineRenderer.positionCount = 2;
+
         lineRenderer.startWidth = 0.095f;
         lineRenderer.endWidth = 0.095f;
         //Set LineDrawing activated
@@ -130,17 +132,16 @@ public void UpdateLineDrawing(Vector3 currentPosition)
     //Deactivate LineDrawing so that no Line gets drawn when Cursor changes
     public void DeactivateLineDrawing(Fact startFact)
     {
-        //Reset the first points
-        this.lineRenderer.SetPosition(0, Vector3.zero);
-        this.lineRenderer.SetPosition(1, Vector3.zero);
-        if (linePositions.Count > 0)
-            this.linePositions.Clear();
+        this.lineRenderer.positionCount = 0;
+        this.linePositions = new List<Vector3>();
         this.lineDrawingActivated = false;
     }
 
     //Expect a LineFact here, so that it's possible to change between two possible StartPoints
     public void ActivateCurveDrawing(Fact startFact)
     {
+        this.lineRenderer.positionCount = curveDrawingVertexCount;
+
         lineRenderer.startWidth = 0.05f;
         lineRenderer.endWidth = 0.05f;
 
@@ -194,13 +195,9 @@ public void UpdateCurveDrawing(Vector3 currentPosition)
 
     public void DeactivateCurveDrawing(Fact startFact)
     {
-
-        for (int i = 0; i < linePositions.Count; i++)
-        {
-            this.lineRenderer.SetPosition(i, Vector3.zero);
-        }
-        if (linePositions.Count > 0)
-            this.linePositions.Clear();
+        
+        this.lineRenderer.positionCount = 0;
+        this.linePositions = new List<Vector3>();
         this.curveDrawingActivated = false;
     }
 }
-- 
GitLab