public void Redo()
        {
            if (NewControlPoints == null)
            {
                SketchWorld.ActiveSketchWorld.DeleteObject(OriginalLineSketchObject);
            }
            else
            {
                OriginalLineSketchObject.SetControlPointsLocalSpace(NewControlPoints);
            }

            foreach (LineSketchObject line in NewLines)
            {
                SketchWorld.ActiveSketchWorld.RestoreObject(line);
            }
        }
    private void SetAddComparison()
    {
        List <Vector3> controlPoints = new List <Vector3>();

        lineSketchObject.SetControlPointsLocalSpace(new List <Vector3>());
        foreach (Transform controlPoint in controlPointParent.transform)
        {
            lineSketchObject.AddControlPoint(controlPoint.position);
            controlPoints.Add(controlPoint.position);
        }

        lineSketchObject2.SetControlPointsLocalSpace(controlPoints);
    }
        public IEnumerator Framerate_LineSketchObjects([Values(5, 10, 20)] int steps, [Values(100, 500, 1000, 2000, 4000, 6000, 8000, 10000)] int count)
        {
            List <Vector3> controlPoints = GenerateControlPointsYDirection(3);

            this.LineSketchObject.SetInterpolationSteps(steps);
            this.LineSketchObject.SetControlPointsLocalSpace(controlPoints);
            for (int i = 1; i < count; i++)
            {
                LineSketchObject currentLine = GameObject.Instantiate(this.LineSketchObject).GetComponent <LineSketchObject>();
                currentLine.SetInterpolationSteps(steps);
                currentLine.SetControlPointsLocalSpace(controlPoints);
                currentLine.transform.position = new Vector3(i % 50, 0, i / 50);
            }
            yield return(Measure.Frames().Run());
        }