trensim.comSimulación Ferroviaria
   

Descifrando las variables de QDirection

Foro para tratar de todo lo relacionado con rutas para MSTS

Moderador: Moderadores

Descifrando las variables de QDirection

Notapor 2N3055 » Mié Ene 18, 2006 8:54 pm

Hola a todos:

Todo el mundo sabe que si se copian los valores del QDirection de un objeto a otro, éste queda exactamente alineado con el otro objeto incluso en inclinación. El QDirection esta compuesto por 4variables:
Static (
UiD ( 150 )
FileName ( TunelDoble100m.s )
StaticFlags ( 00050000 )
Position ( -86.9195 43.7045 148.33 )
QDirection ( -0.00576709 0.678806 -0.00533145 0.734276 )
VDbId ( 4294967293 )
)


Alguien me podira decir que hace cada variable y en que unidades trabaja?
Imagen
Avatar de Usuario
2N3055
 
Mensajes: 1268
Registrado: Jue Jul 22, 2004 7:24 pm
Ubicación: Badalona

Notapor capitan pecho lata » Mié Ago 09, 2006 5:04 pm

Hola a todos

Estoy practicando con esto de modificar la sentencia QDirection para alinear objetos con la vía, pero no se quedan paralelos a la vía, se quedan perpendiculares.

Copio la QDirection de una recta y la pego en el objeto, que es un muro. Cuando voy al editor de rutas, el muro atraviesa la vía en vez de ir paralelo a la vía.

No se que es lo que hago mal

PD: Me he leído tres veces las tres páginas que tratan el tema e el manual de José Manuel y sigo igual.
Avatar de Usuario
capitan pecho lata
 
Mensajes: 1608
Registrado: Mié Nov 19, 2003 8:34 pm

Notapor Music224 » Mié Ago 09, 2006 6:12 pm

hola.

Bueno, a mi me pasó algo parecido pero con otra aplicación; la de colocar objetos con el archivo "gantry".
Ya sabéis, que dicho archivo contiene los datos para colocar la catenaria, sin embargo también se puede utilizar para colocar automáticamente cualquier tipo de objeto, por ejemplo: Unas vallas a lo largo de la vía.

De todas formas hay que tener en cuenta que el "objeto" a colocar esté orientado correctamente, es decir, que cuando se hizo el objeto mediante algún programa de los habituales (TSM, 3DCanvas, Gmax....) la orientación en los ejes ortogonales X e Y sea la habitual en alzado, planta y perfil.
En el caso de que no esté realizado de esa forma el objeto nos quedará atravesado en la vía por tener uno de sus ejes girado de 90 grados.
La única solución es abrir el archivo Shapes del objeto y dar un giro a la vista correspondiente.
Después de realizar dicha corrección, el objeto se me colocó correctamente en mi ruta.

Saludos
Music224
Music224
 
Mensajes: 911
Registrado: Vie Sep 19, 2003 9:39 pm
Ubicación: Martorell (Barcelona)

Notapor capitan pecho lata » Mié Ago 09, 2006 7:20 pm

Music224 escribió:La única solución es abrir el archivo Shapes del objeto y dar un giro a la vista correspondiente.


Con esto te refieres a descomprimir el archivo.s y cambiar algún dato en él.
El modelo no es mío.
Avatar de Usuario
capitan pecho lata
 
Mensajes: 1608
Registrado: Mié Nov 19, 2003 8:34 pm

Notapor 2N3055 » Mié Ago 09, 2006 8:22 pm

La única solúción es girar el objeto en el editor 3D

Para que quede orientada paralelo a la vía un andén, muro, puente o lo que sea, en el editor 3D en el eje x debe ser el ancho, y en el eje z el fondo, és decir, si un andén tiene 5m x 100m los 5m iran al eje x y los 100m al eje z

Un saludo.
Imagen
Avatar de Usuario
2N3055
 
Mensajes: 1268
Registrado: Jue Jul 22, 2004 7:24 pm
Ubicación: Badalona

Notapor Music224 » Mié Ago 09, 2006 9:40 pm

capitan pecho lata, efectivamente hay que pedir permiso al autor para cambiar ése parámetro del objeto.
Creo que Paul Gausden tiene una utilidad que permite modificar varios parámetros de los archivos de forma o SHAPES, entre ellos las orientaciones del objeto.
También se puede cambiar la escala en todo el conjunto del objeto y en sus tres ejes (X,Y,Z) individualmente.
Se pueden modificar más cosas que ahora no recuerdo.

He utilizado éste programa para corregir pequeños defectos que he observado en objetos de mi creación, al insertarlos en mi ruta.

Repito que para hacer dichas modificaciones, hay que pedir permiso al autor, a no ser que sean para uso personal.

Saludos
Music224
Music224
 
Mensajes: 911
Registrado: Vie Sep 19, 2003 9:39 pm
Ubicación: Martorell (Barcelona)

Notapor Music224 » Mié Ago 09, 2006 10:00 pm

El programa se llama Shape File Manager y lo puedes bajar de aquí:

http://www.activitysimulatorworld.net/L ... r_2.3x.htm.
Music224
 
Mensajes: 911
Registrado: Vie Sep 19, 2003 9:39 pm
Ubicación: Martorell (Barcelona)

Notapor capitan pecho lata » Mié Ago 09, 2006 10:14 pm

Muchas gracias Music224 :chin:
Avatar de Usuario
capitan pecho lata
 
Mensajes: 1608
Registrado: Mié Nov 19, 2003 8:34 pm

Notapor capitan pecho lata » Jue Ago 10, 2006 7:17 pm

Hola a todos

Sierra, he estado trasteando con el Shape File Manager y solo consigo girarlo 180 grados, mientras que mi necesidad es de 90 grados.
Darle un giro de 180 grados también lo consigo editando el archivo World. De ahí a encontrar el valor intermedio, antes me toca la primitiva.
Según lo que he leído, los valores de La sentencia Qdirection, son valores que representan un vector de la orientación del objeto en el mundo MSTS.

Siempre queda la solución de colocar una vía perpendicular a la alineación y tomar la Qdirection de esta para alinear los objetos rebeldes.
Avatar de Usuario
capitan pecho lata
 
Mensajes: 1608
Registrado: Mié Nov 19, 2003 8:34 pm

Notapor Marc » Vie Ago 11, 2006 11:04 am

Prueba añadiendo o restando 0,707 al segundo y/o cuarto valor, que son los que controlan el ángulo del objeto sobre el terreno. Lo de 0,707 es porque es el coseno de 45º, aunque como se determina este valor ya es muy largo de explicar...
Avatar de Usuario
Marc
grupo TrenSim
 
Mensajes: 4284
Registrado: Jue Ago 28, 2003 11:24 pm
Ubicación: Barcelona

Notapor capitan pecho lata » Vie Ago 11, 2006 4:43 pm

Hola Marc

Gracias, pero me temo que va a ser que no y no te puedo dar razón de ello.
A continuación están las dos orientaciones en que coloco el muro. El segundo esta girado 90º en sentido antihorario respecto al primero.

Static (
UiD ( 331 )
FileName ( modelo.s )
Position ( 178.282 670.917 -424.655 )
QDirection ( 0 -0.485239 0 0.874381 )
VDbId ( 4294967295 )
)
Static (
UiD ( 332 )
FileName ( modelo.s )
Position ( 205.605 670.917 -460.651 )
QDirection ( 0 0.275139 0 0.961405 )
VDbId ( 4294967295 )
)

Lo que también he observado es que para dar un giro de 180º a una pieza vasta con alternar los valores 2º y 4º y cambiando de signo el 2º
Ejemplo QDirection ( 0 -0.485239 0 0.874381 )
QDirection ( 0 0.874381 0 0.485239 )

Creo que hay que tener una mente muy abstracta para dominar estas cosas.
Avatar de Usuario
capitan pecho lata
 
Mensajes: 1608
Registrado: Mié Nov 19, 2003 8:34 pm

Notapor osses » Vie Ago 25, 2006 4:40 pm

Hola,

este problema de las variables del qdirection me intriga también.

Descubrí gracias al foro de UKTrainSim
http://forums.uktrainsim.com/viewtopic. ... 08d7713bdf

que la q de qdirection significa :idea: quaternion. cuaternio en español.

Una búsqueda con las palabres claves quaternion y cuaternio en internet me mostró cosas muy interesantes… y muy ccomplicadas.

cuando capitan pecho lata escribió:Creo que hay que tener una mente muy abstracta para dominar estas cosas.


pues tenía razón. Son matemáticas de un buen nivel :roll:

He hecho algunos ensayos en msts….y las conclusiones son muy incompletas.


En el caso de un objeto que sigue siendo horizontal, es (o parece) muy sencillo. El qdirection es

0 sen(b/2) 0 cos(b/2).

b : ángulo de rotación respecto al eje y, es decir en msts el eje que va hacia arriba

Se deduce el qdirection 0 0 0 1 para un objeto sur-> norte (b=0), 0 1 0 0 para un objeto norte->sur (b=180°), 0 0.707107 0 0.707107 para un objeto este->oeste (b= +90°), 0 -0.707107 0 0.707107 para un objeto oeste->este (b= -90°), etc. Se puede también deducir que para girar un objeto horizontal de +90°, hay solo que reemplazar en su qdirection b por b+90°, es decir que se obtiene

0 sen((b+90°)/2) 0 cos((b+90°)/2) ,

lo que, conociendo sen(b/2) y cos (b/2), se puede calcular sin conocer b.

Para las otras orientaciones, reconozco que no conseguí comprender cómo las rotaciones se combinan en msts :( ,.

Y hoy, descubro esto :D :!:

http://www.avsim.com/hangar/utils/mvcha ... Views.html


Todavía no he todo leído (70 páginas :!: ) pero me parece que el archivo doc explica muy bien las cosas, y, por los que tienen excel, hay una herramienta que hace todo casí :wink: automaticamente…

Saludos a todos.
osses
 
Mensajes: 93
Registrado: Vie Sep 23, 2005 9:54 pm
Ubicación: Ile de France

Notapor Pere » Vie Ago 25, 2006 5:12 pm

Buen trabajo de investigación, Osses. Si de la lectura llegas a conclusiones, no dudes en compartirlas.

:app: :app: :app: :app: :app:
Avatar de Usuario
Pere
grupo TrenSim
 
Mensajes: 5043
Registrado: Jue Ago 28, 2003 11:44 pm
Ubicación: Barcelona

Notapor José Luis Saldivar » Vie Sep 08, 2006 8:07 pm

Hola amigos
he estado mirando un poco este programa que nos indico nuestro compañero Osses, el object rotator.
No me queda ninguna duda que es el programa indicado para alinear cualquier objeto en la posicion que queramos, se me complica porque el ingles y yo no nos llevamos muy bien ultimamente pero seguro que los expertos podran sacar muy buenas conclusiones y muy buen provecho de este programa.

un abrazo

José Luis
Un saludo fraternal para todos los conductores virtuales.
José Luis Saldivar
 
Mensajes: 311
Registrado: Mié Mar 24, 2004 2:23 am
Ubicación: Buenos Aires - Argentina


Volver a Rutas MSTS

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 24 invitados

cron