From 3af9ad99d82b5daef2fb9329ae9012bce37026f2 Mon Sep 17 00:00:00 2001 From: Miguel Date: Mon, 23 Jun 2025 23:40:48 +0200 Subject: [PATCH] =?UTF-8?q?Se=20a=C3=B1adi=C3=B3=20un=20nuevo=20par=C3=A1m?= =?UTF-8?q?etro=20de=20=C3=A1ngulo=20en=20el=20m=C3=A9todo=20CrearAnimacio?= =?UTF-8?q?nStoryBoardTrasnporteCircular=20en=20la=20clase=20osBase,=20per?= =?UTF-8?q?mitiendo=20ajustar=20la=20direcci=C3=B3n=20de=20la=20animaci?= =?UTF-8?q?=C3=B3n=20seg=C3=BAn=20el=20valor=20del=20=C3=A1ngulo.=20Se=20a?= =?UTF-8?q?ctualizaron=20las=20llamadas=20a=20este=20m=C3=A9todo=20en=20uc?= =?UTF-8?q?TransporteCurva=20para=20incluir=20el=20nuevo=20par=C3=A1metro,?= =?UTF-8?q?=20mejorando=20la=20l=C3=B3gica=20de=20animaci=C3=B3n=20en=20fu?= =?UTF-8?q?nci=C3=B3n=20de=20la=20direcci=C3=B3n=20y=20el=20=C3=A1ngulo=20?= =?UTF-8?q?proporcionado.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ObjetosSim/Estaticos/ucTransporteCurva.xaml.cs | 4 ++-- ObjetosSim/osBase.cs | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/ObjetosSim/Estaticos/ucTransporteCurva.xaml.cs b/ObjetosSim/Estaticos/ucTransporteCurva.xaml.cs index d4ce546..1a056bd 100644 --- a/ObjetosSim/Estaticos/ucTransporteCurva.xaml.cs +++ b/ObjetosSim/Estaticos/ucTransporteCurva.xaml.cs @@ -48,7 +48,7 @@ namespace CtrEditor.ObjetosSim SetSpeed(); if (_visualRepresentation is ucTransporteCurva uc) { - CrearAnimacionStoryBoardTrasnporteCircular(uc.Transporte.TransportePath, InvertirDireccion); + CrearAnimacionStoryBoardTrasnporteCircular(uc.Transporte.TransportePath, InvertirDireccion, Angulo); ActualizarAnimacionStoryBoardTransporte(VelocidadActual); } } @@ -241,7 +241,7 @@ namespace CtrEditor.ObjetosSim if (_visualRepresentation is ucTransporteCurva uc) { Simulation_TransporteCurva = AddCurve(RadioInterno, RadioExterno, Angulo, Angulo + Arco_en_grados); - CrearAnimacionStoryBoardTrasnporteCircular(uc.Transporte.TransportePath, InvertirDireccion); + CrearAnimacionStoryBoardTrasnporteCircular(uc.Transporte.TransportePath, InvertirDireccion, Angulo); } } public override void ucUnLoaded() diff --git a/ObjetosSim/osBase.cs b/ObjetosSim/osBase.cs index 340dbd4..11c9501 100644 --- a/ObjetosSim/osBase.cs +++ b/ObjetosSim/osBase.cs @@ -1214,9 +1214,12 @@ namespace CtrEditor.ObjetosSim _storyboard = CrearAnimacionMultiStoryBoardTrasnporte(_storyboard, transporte, invertirDireccion); } - protected void CrearAnimacionStoryBoardTrasnporteCircular(System.Windows.Shapes.Path transporte, bool invertirDireccion) + protected void CrearAnimacionStoryBoardTrasnporteCircular(System.Windows.Shapes.Path transporte, bool invertirDireccion, float angulo) { - _storyboard = CrearAnimacionMultiStoryBoardTrasnporteCircular(_storyboard, transporte, invertirDireccion); + if (angulo > 45 && angulo < 225) + _storyboard = CrearAnimacionMultiStoryBoardTrasnporteCircular(_storyboard, transporte, !invertirDireccion); + else + _storyboard = CrearAnimacionMultiStoryBoardTrasnporteCircular(_storyboard, transporte, invertirDireccion); } protected void ActualizarAnimacionStoryBoardTransporte(float velocidadActual)