Exemplo n.º 1
0
        private void CanvasOperator_Single_Start(Vector2 point)
        {
            Transformer transformer = this.Layer.TransformerMatrix.Destination;

            this._startingPoint  = point;
            this._oldTransformer = transformer;

            this.TransformerMode = Transformer.ContainsNodeMode(point, transformer);
            this.Layer.TransformerMatrix.CacheTransform();

            this.CanvasControl.Invalidate();
        }
Exemplo n.º 2
0
        private Layerage GetTransformerLayer(Vector2 startingPoint, Matrix3x2 matrix)
        {
            switch (this.SelectionMode)
            {
            case ListViewSelectionMode.None: return(null);

            case ListViewSelectionMode.Single:
            {
                Layerage layerage = this.SelectionViewModel.SelectionLayerage;
                if (layerage is null)
                {
                    return(null);
                }

                // Transformer
                Transformer transformer = layerage.GetActualTransformer();
                this.TransformerMode = Transformer.ContainsNodeMode(startingPoint, transformer, matrix, false);

                return(layerage);
            }

            case ListViewSelectionMode.Multiple:
                foreach (Layerage layerage in this.SelectionViewModel.SelectionLayerages)
                {
                    // Transformer
                    Transformer     transformer = layerage.GetActualTransformer();
                    TransformerMode mode        = Transformer.ContainsNodeMode(startingPoint, transformer, matrix, false);
                    if (mode != TransformerMode.None)
                    {
                        this.TransformerMode = mode;
                        return(layerage);
                    }
                }
                break;
            }
            return(null);
        }