Terminada las modificaciones de Movimiento / Angulo / Resize. Creado Enum para zindex

This commit is contained in:
Miguel 2024-06-30 18:17:44 +02:00
parent 8fddbb409b
commit c8abb98c7d
27 changed files with 147 additions and 71 deletions

View File

@ -0,0 +1,21 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CtrEditor.FuncionesBase
{
public enum ZIndexEnum
{
Decorativos = 1,
Estaticos = 2,
Generadores = 3,
Guias = 4,
Dinamicos = 10,
Descarte = 11,
Fotocelula = 12,
Trace = 13,
RectangulosPropiead = 14
}
}

View File

@ -14,6 +14,7 @@ using DocumentFormat.OpenXml.Spreadsheet;
using System.Windows.Shapes; using System.Windows.Shapes;
using System.Numerics; using System.Numerics;
using CommunityToolkit.Mvvm.Input; using CommunityToolkit.Mvvm.Input;
using CtrEditor.FuncionesBase;
namespace CtrEditor namespace CtrEditor
{ {
@ -102,7 +103,7 @@ namespace CtrEditor
SuscribirEventos(userControl); SuscribirEventos(userControl);
// Añade el UserControl al Canvas // Añade el UserControl al Canvas
Canvas.SetZIndex(userControl, dataContainer.ZIndex()); Canvas.SetZIndex(userControl, ((int)dataContainer.ZIndex()));
ImagenEnTrabajoCanvas.Children.Add(userControl); ImagenEnTrabajoCanvas.Children.Add(userControl);
} }
} }
@ -338,6 +339,7 @@ namespace CtrEditor
resizeRectangles.Add(rect); resizeRectangles.Add(rect);
ImagenEnTrabajoCanvas.Children.Add(rect); ImagenEnTrabajoCanvas.Children.Add(rect);
Canvas.SetZIndex(rect, ((int)ZIndexEnum.RectangulosPropiead));
ResetTimerRemoveResizeRectangles(); ResetTimerRemoveResizeRectangles();
} }
@ -541,18 +543,18 @@ namespace CtrEditor
double deltaX = currentPosition.X - transformedBoundingBoxCenter.X; double deltaX = currentPosition.X - transformedBoundingBoxCenter.X;
double deltaY = currentPosition.Y - transformedBoundingBoxCenter.Y; double deltaY = currentPosition.Y - transformedBoundingBoxCenter.Y;
double angle = Math.Atan2(deltaY, deltaX) * (180 / Math.PI); double angle = Math.Atan2(deltaY, deltaX) * (180 / Math.PI);
if (lastAngle == 0 && angle != 0) lastAngle = (float)angle; if ((lastAngle == 0 && angle != 0) || Math.Abs(angle - lastAngle) > 45) lastAngle = (float)angle;
else
{
mvBase.Rotate(angle - lastAngle); mvBase.Rotate(angle - lastAngle);
// dataContainer.Rotate((float)angle - lastAngle);
lastAngle = (float)angle; lastAngle = (float)angle;
dataDebug.TransformedBoundingBoxCenter = transformedBoundingBoxCenter; dataDebug.TransformedBoundingBoxCenter = transformedBoundingBoxCenter;
dataDebug.LastAngle = lastAngle; dataDebug.LastAngle = lastAngle;
dataDebug.CurrentPosition = currentPosition; dataDebug.CurrentPosition = currentPosition;
dataDebug.Angle = (float)angle; dataDebug.Angle = (float)angle;
} }
}
if (ActivateSizeWidth || ActivateSizeHeight) if (ActivateSizeWidth || ActivateSizeHeight)
{ {
// Calcular la diferencia en la posición X desde el punto de inicio // Calcular la diferencia en la posición X desde el punto de inicio
@ -789,7 +791,15 @@ namespace CtrEditor
UserControlFactory.LimpiarPropiedadesosDatos(PanelEdicion); UserControlFactory.LimpiarPropiedadesosDatos(PanelEdicion);
if (e.AddedItems.Count > 0 && e.AddedItems[0] is osBase selectedObject) if (e.AddedItems.Count > 0 && e.AddedItems[0] is osBase selectedObject)
{
if (selectedObject.VisualRepresentation != null)
{
_currentDraggingControl = selectedObject.VisualRepresentation;
AddResizeRectangles(_currentDraggingControl);
}
CargarPropiedadesosDatos(selectedObject); CargarPropiedadesosDatos(selectedObject);
}
} }
} }

View File

@ -2,6 +2,7 @@
using System.Windows.Controls; using System.Windows.Controls;
using System.Windows.Media; using System.Windows.Media;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using CtrEditor.FuncionesBase;
using Newtonsoft.Json; using Newtonsoft.Json;
@ -85,9 +86,9 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 1; return ZIndexEnum.Decorativos;
} }
} }

View File

@ -7,6 +7,7 @@ using CtrEditor.Simulacion;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using nkast.Aether.Physics2D.Common; using nkast.Aether.Physics2D.Common;
using System.Windows.Media; using System.Windows.Media;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -32,11 +33,7 @@ namespace CtrEditor.ObjetosSim
set => SetProperty(ref nombre, value); set => SetProperty(ref nombre, value);
} }
public override void TopChanged(float value) { public override void OnMove(float LeftPixels, float TopPixels)
UpdateAfterMove();
}
public override void LeftChanged(float value)
{ {
UpdateAfterMove(); UpdateAfterMove();
} }
@ -182,9 +179,9 @@ namespace CtrEditor.ObjetosSim
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Dinamicos;
} }
} }
} }

View File

@ -7,6 +7,7 @@ using CtrEditor.Simulacion;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using nkast.Aether.Physics2D.Common; using nkast.Aether.Physics2D.Common;
using System.Windows.Media; using System.Windows.Media;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -170,9 +171,9 @@ namespace CtrEditor.ObjetosSim
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Dinamicos;
} }
} }
} }

View File

@ -3,6 +3,7 @@ using System.Windows;
using System.Windows.Controls; using System.Windows.Controls;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using System.Diagnostics; using System.Diagnostics;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -172,9 +173,9 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Generadores;
} }
} }

View File

@ -4,6 +4,7 @@ using System.Windows;
using System.Windows.Controls; using System.Windows.Controls;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using System.Diagnostics; using System.Diagnostics;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -180,9 +181,9 @@ namespace CtrEditor.ObjetosSim
} }
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Generadores;
} }
} }

View File

@ -1,8 +1,8 @@
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using LibS7Adv; using LibS7Adv;
using System.Windows; using System.Windows;
using System.Windows.Controls; using System.Windows.Controls;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -105,9 +105,9 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Generadores;
} }
} }
} }

View File

@ -6,6 +6,7 @@ using System.Windows.Controls;
using nkast.Aether.Physics2D.Common; using nkast.Aether.Physics2D.Common;
using System.Windows.Media.Animation; using System.Windows.Media.Animation;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
/// <summary> /// <summary>
@ -130,9 +131,9 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Descarte;
} }
} }

View File

@ -4,6 +4,7 @@ using CommunityToolkit.Mvvm.ComponentModel;
using LibS7Adv; using LibS7Adv;
using CtrEditor.Simulacion; using CtrEditor.Simulacion;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -90,9 +91,9 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 3; return ZIndexEnum.Guias;
} }
} }

View File

@ -5,6 +5,7 @@ using CommunityToolkit.Mvvm.ComponentModel;
using LibS7Adv; using LibS7Adv;
using CtrEditor.Simulacion; using CtrEditor.Simulacion;
using Xceed.Wpf.Toolkit.PropertyGrid.Attributes; using Xceed.Wpf.Toolkit.PropertyGrid.Attributes;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -182,9 +183,9 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 1; return ZIndexEnum.Estaticos;
} }
} }

View File

@ -6,6 +6,7 @@ using CommunityToolkit.Mvvm.ComponentModel;
using LibS7Adv; using LibS7Adv;
using CtrEditor.Simulacion; using CtrEditor.Simulacion;
using Xceed.Wpf.Toolkit.PropertyGrid.Attributes; using Xceed.Wpf.Toolkit.PropertyGrid.Attributes;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -211,10 +212,11 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 1; return ZIndexEnum.Estaticos;
} }
} }
} }

View File

@ -8,6 +8,7 @@ using CommunityToolkit.Mvvm.ComponentModel;
using LibS7Adv; using LibS7Adv;
using CtrEditor.Simulacion; using CtrEditor.Simulacion;
using Xceed.Wpf.Toolkit.PropertyGrid.Attributes; using Xceed.Wpf.Toolkit.PropertyGrid.Attributes;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -379,10 +380,11 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 1; return ZIndexEnum.Estaticos;
} }
} }
} }

View File

@ -5,6 +5,7 @@ using LibS7Adv;
using CtrEditor.Simulacion; using CtrEditor.Simulacion;
using Xceed.Wpf.Toolkit.PropertyGrid.Attributes; using Xceed.Wpf.Toolkit.PropertyGrid.Attributes;
using System.ComponentModel; using System.ComponentModel;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -180,11 +181,12 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 1; return ZIndexEnum.Estaticos;
} }
} }

View File

@ -5,6 +5,7 @@ using System.Windows.Controls;
using System.Windows.Media; using System.Windows.Media;
using Newtonsoft.Json; using Newtonsoft.Json;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -150,10 +151,11 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Estaticos;
} }
} }
public class VMSimMotor public class VMSimMotor

View File

@ -24,6 +24,7 @@ using ClosedXML.Excel;
using DocumentFormat.OpenXml.Spreadsheet; using DocumentFormat.OpenXml.Spreadsheet;
using Colors = System.Windows.Media.Colors; using Colors = System.Windows.Media.Colors;
using DocumentFormat.OpenXml.Drawing.Charts; using DocumentFormat.OpenXml.Drawing.Charts;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim.Extraccion_Datos namespace CtrEditor.ObjetosSim.Extraccion_Datos
{ {
@ -418,9 +419,9 @@ namespace CtrEditor.ObjetosSim.Extraccion_Datos
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 1; return ZIndexEnum.Estaticos;
} }
} }

View File

@ -7,6 +7,7 @@ using Newtonsoft.Json;
using Xceed.Wpf.Toolkit.PropertyGrid.Attributes; using Xceed.Wpf.Toolkit.PropertyGrid.Attributes;
using System.ComponentModel; using System.ComponentModel;
using ClosedXML.Excel; using ClosedXML.Excel;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim.Extraccion_Datos namespace CtrEditor.ObjetosSim.Extraccion_Datos
{ {
@ -221,11 +222,12 @@ namespace CtrEditor.ObjetosSim.Extraccion_Datos
datos.Angulo += Angle; datos.Angulo += Angle;
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 1; return ZIndexEnum.Estaticos;
} }
} }
} }

View File

@ -5,6 +5,7 @@ using System.Windows;
using System.Windows.Controls; using System.Windows.Controls;
using System.Windows.Input; using System.Windows.Input;
using System.Windows.Media; using System.Windows.Media;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -182,9 +183,10 @@ namespace CtrEditor.ObjetosSim
} }
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Estaticos;
} }
} }
} }

View File

@ -7,6 +7,7 @@ using CommunityToolkit.Mvvm.ComponentModel;
using System.Diagnostics; using System.Diagnostics;
using Xceed.Wpf.Toolkit.PropertyGrid.Attributes; using Xceed.Wpf.Toolkit.PropertyGrid.Attributes;
using System.ComponentModel; using System.ComponentModel;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -237,10 +238,11 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Estaticos;
} }
} }
} }

View File

@ -6,6 +6,7 @@ using System.Windows.Controls;
using System.Windows.Media; using System.Windows.Media;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using System.Diagnostics; using System.Diagnostics;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
@ -213,10 +214,11 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 16; return ZIndexEnum.Fotocelula;
} }
} }
} }

View File

@ -4,6 +4,7 @@ using LibS7Adv;
using System.ComponentModel; using System.ComponentModel;
using System.Windows; using System.Windows;
using System.Windows.Controls; using System.Windows.Controls;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -87,9 +88,10 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Estaticos;
} }
} }
} }

View File

@ -5,6 +5,7 @@ using System.Windows.Controls;
using System.Windows.Media; using System.Windows.Media;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -124,9 +125,9 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Estaticos;
} }
} }
} }

View File

@ -5,6 +5,7 @@ using System.Windows.Controls;
using System.Windows.Media; using System.Windows.Media;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -104,9 +105,10 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Estaticos;
} }
} }
} }

View File

@ -1,8 +1,7 @@
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using LibS7Adv;
using System.Windows; using System.Windows;
using System.Windows.Controls; using System.Windows.Controls;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
@ -70,10 +69,11 @@ namespace CtrEditor.ObjetosSim
Datos?.ucUnLoaded(); Datos?.ucUnLoaded();
} }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Estaticos;
} }
} }
public class TagsConsensos public class TagsConsensos

View File

@ -6,6 +6,7 @@ using CommunityToolkit.Mvvm.ComponentModel;
using System.Windows.Shapes; using System.Windows.Shapes;
using LibS7Adv; using LibS7Adv;
using System.Runtime.Intrinsics; using System.Runtime.Intrinsics;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -294,9 +295,10 @@ namespace CtrEditor.ObjetosSim
} }
public float Angle() { return 0; } public void Rotate(float Angle) { } public float Angle() { return 0; } public void Rotate(float Angle) { }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Trace;
} }
} }
} }

View File

@ -10,6 +10,7 @@ using LiveChartsCore;
using LiveChartsCore.SkiaSharpView; using LiveChartsCore.SkiaSharpView;
using LiveChartsCore.Defaults; using LiveChartsCore.Defaults;
using System.Diagnostics; using System.Diagnostics;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -159,10 +160,11 @@ namespace CtrEditor.ObjetosSim
} }
public float Angle() { return 0; } public void Rotate(float Angle) { } public float Angle() { return 0; } public void Rotate(float Angle) { }
public void Highlight(bool State) { } public void Highlight(bool State) { }
public int ZIndex() public ZIndexEnum ZIndex()
{ {
return 10; return ZIndexEnum.Trace;
} }
} }
} }

View File

@ -22,6 +22,8 @@ using Newtonsoft.Json;
using JsonIgnoreAttribute = Newtonsoft.Json.JsonIgnoreAttribute; using JsonIgnoreAttribute = Newtonsoft.Json.JsonIgnoreAttribute;
using System.Collections.ObjectModel; using System.Collections.ObjectModel;
using ItemCollection = Xceed.Wpf.Toolkit.PropertyGrid.Attributes.ItemCollection; using ItemCollection = Xceed.Wpf.Toolkit.PropertyGrid.Attributes.ItemCollection;
using nkast.Aether.Physics2D.Dynamics.Joints;
using CtrEditor.FuncionesBase;
namespace CtrEditor.ObjetosSim namespace CtrEditor.ObjetosSim
{ {
@ -36,7 +38,7 @@ namespace CtrEditor.ObjetosSim
[JsonIgnore] [JsonIgnore]
osBase? Datos { get; set; } osBase? Datos { get; set; }
void Highlight(bool State); void Highlight(bool State);
int ZIndex(); ZIndexEnum ZIndex();
} }
public class DataSaveToSerialize public class DataSaveToSerialize
@ -163,8 +165,16 @@ namespace CtrEditor.ObjetosSim
OnResize(Delta_W, Delta_H); OnResize(Delta_W, Delta_H);
if ((Angulo >= 45 && Angulo <= 135) || (Angulo >= 225 && Angulo <= 315))
{
Ancho += Delta_H;
Alto += Delta_W;
}
else
{
Ancho += Delta_W; Ancho += Delta_W;
Alto += Delta_H; Alto += Delta_H;
}
if (Ancho < 0.01f) Ancho = 0.01f; if (Ancho < 0.01f) Ancho = 0.01f;
if (Alto < 0.01f) Alto = 0.01f; if (Alto < 0.01f) Alto = 0.01f;
} }
@ -188,8 +198,13 @@ namespace CtrEditor.ObjetosSim
} }
public void Rotate(float Delta_Angle) public void Rotate(float Delta_Angle)
{ {
OnRotate(Delta_Angle);
Angulo += Delta_Angle; Angulo += Delta_Angle;
if (Angulo <= -360)
Angulo += 360;
if (Angulo >= 360)
Angulo -= 360;
OnRotate(Delta_Angle);
} }
public virtual void OnRotate(float Delta_Angle) { } public virtual void OnRotate(float Delta_Angle) { }