public override void SaveDrawing(HashSet <Point> mousePositions)
        {
            var temPoints = new List <IBPoint>();

            var mousePointsCount = mousePositions.Count;

            for (int i = 0; i < mousePointsCount - 1; i++)
            {
                var startPoint = mousePositions.ElementAt(i);
                var endPoint   = mousePositions.ElementAt(i + 1);

                var linePoints = _bresenhamLine.GetPointsOnLine(startPoint.X, startPoint.Y, endPoint.X, endPoint.Y);

                foreach (var point in linePoints)
                {
                    mousePositions.Add(new Point(point.X, point.Y));
                }
            }
            var finalPoints = new List <IBPoint>();

            foreach (var point in mousePositions)
            {
                finalPoints.Add(new BPoint(point.X, point.Y));
            }

            var penLine = new PenLine(finalPoints);

            _penLines.Add(penLine);
        }
        public override void SaveDrawing(HashSet <Point> mousePositions)
        {
            if (mousePositions.Count < 2)
            {
                return;
            }

            var startPoint = mousePositions.ElementAt(0);
            var endPoint   = mousePositions.ElementAt(mousePositions.Count - 1);

            var linePoints = _bresenhamLine.GetPointsOnLine(startPoint.X, startPoint.Y, endPoint.X, endPoint.Y);

            var finalPoints = new List <IBPoint>();

            foreach (var point in linePoints)
            {
                finalPoints.Add(new BPoint(point.X, point.Y));
            }

            var penLine = new PenLine(finalPoints);

            _penLines.Add(penLine);
        }
Esempio n. 3
0
    public void Draw(Vector3 drawPosition)
    {
        if (!CanDraw)
        {
            return;
        }

        OnDraw?.Invoke();

        DebugManager.Instance.LogInfo($"{drawPosition}");

        if (Lines.Keys.Count == 0)
        {
            PenLine line = new PenLine(lineSettings); // PenLine has public line seetings - we pass the settings that we set in the inspector to the PenLine

            Lines.Add(lineIndex, line);

            line.AddNewLineRenderer(this.transform, drawPosition);
        }
        else
        {
            Lines[0].AddPoint(drawPosition);
        }
    }
 public void RemovePenLine(PenLine penLine)
 {
     _penLines.Remove(penLine);
 }
 public void AddPenLine(PenLine penLine)
 {
     _penLines.Add(penLine);
 }