Exemple #1
0
    private void AddSection(Event Ev)
    {
        var destination = Vector2.zero;

        if (Vector2.Distance(Ev.mousePosition, area.center) >= radius)
        {
            var goal = (Ev.mousePosition - area.center).normalized * radius / radius;
            destination = new Vector2(goal.x, -goal.y);
        }
        else
        {
            destination = Translate(Ev.mousePosition);
        }

        Undo.RecordObject(shape, $"{shape.GetInstanceID()} Adding Section");
        shape.AddNewSection(destination);

        EditorUtility.SetDirty(shape);
        Repaint();
    }