public void MethodTransformMultipliesComplete(Transformer transformer)
        {
            // History
            LayersTransformMultipliesHistory history = new LayersTransformMultipliesHistory(HistoryType.LayersTransformMultiplies_Transform);

            // Selection
            this.Transformer = transformer;
            Matrix3x2 matrix = Transformer.FindHomography(this.StartingTransformer, transformer);

            this.SetValueWithChildren((layerage) =>
            {
                ILayer layer = layerage.Self;

                // History
                history.PushStartingTransform(layer);

                // Refactoring
                layer.IsRefactoringTransformer = true;
                layer.IsRefactoringRender      = true;
                layer.IsRefactoringIconRender  = true;
                layerage.RefactoringParentsTransformer();
                layerage.RefactoringParentsRender();
                layerage.RefactoringParentsIconRender();
                layer.TransformMultiplies(matrix);
            });

            // History
            this.HistoryPush(history);

            this.Invalidate(InvalidateMode.HD); // Invalidate
        }
        public void MethodTransformMultiplies(Matrix3x2 matrix)
        {
            // History
            LayersTransformMultipliesHistory history = new LayersTransformMultipliesHistory(HistoryType.LayersTransformMultiplies_Transform);

            // Selection
            this.CacheTransformer();
            Transformer transformer = this.StartingTransformer * matrix;

            this.Transformer = transformer;
            this.SetValueWithChildren((layerage) =>
            {
                ILayer layer = layerage.Self;

                // History
                history.PushTransform(layer);

                // Refactoring
                layer.IsRefactoringRender     = true;
                layer.IsRefactoringIconRender = true;
                layerage.RefactoringParentsTransformer();
                layer.CacheTransform();
                layer.TransformMultiplies(matrix);
            });

            // History
            this.HistoryPush(history);

            this.Invalidate(); // Invalidate
        }