Jump to content

Recommended Posts

Posted

Neo,

es sieht so aus dass  bei der rotation (kommando 104,105) ueber die schnittstelle das vorzeichen vertauscht wird. 

Die anzeige im positionierungsfenster ist -1 mal was ich ueber die schnittstelle bekomme und umgekehrt.
Eine neu position zu berechnen ist wie folgt: ( MBS_Drehung * -1 + weitere_Drehung) * -1
Das funktioniert und liefert auch das gewuenschte ergebniss. Ich verwende 41 und 43 in einer kommandogruppe
mit allen anderen kommandos. 

            	double porZ = (-1 * RotZ + (double)_zugKonfiguration.StartPositionRotation) * -1;
 				command = "10;\n43;0;\n41;0;\n";
                command += "134;" + ((RollingStockNamen)anItem).Guid + ";" + ((RollingStockNamen)anItem).BetriebsName + "\n";    
                command += "103;" + ((RollingStockNamen)anItem).BetriebsName + ";" + posX + ";"+ posY + ";" + posZ + ";\n";         
                command += "105;" + ((RollingStockNamen)anItem).BetriebsName + ";" +  porX + ";" + porY + ";" + porZ + ";\n";
                command += "11;\n";

  Hier ein auszug aus dem code. Eine situation die ich loesen musste ist die tatsache, dass einige modelle um 90 grad gedreht sind wenn sie plaziert werden. Ich muss mir das merken welches modell zusaetzlich gedreht werden muss. Das gleiche habe ich aber auch mit einem endwagen, da muss ich auch die gewuenschte drehung merken. Das nur als hinweis, ich kann damit derzeit leben, oder mache ich etwas falsch ? 

gruss
gmd

 

Posted (edited)

Prüf mal bitte, ob du eventuell vier Werte bekommst.
Intern sind es jedenfalls vier: W, X, Y und Z   (sogenannte Quaternionen)
Weil drei Werte nicht ausreichen, um die Lage im Raum vollständig zu beschreiben.

Da lag ich daneben. Sorry!

Edited by Goetz
Schreibfehler korrigiert
Posted

102;(6001)@G114;
1;-61.89042;-178.1079;2.980232E-8
104;(6001)@G114;
1;0;0;-29.85089

Das ist das startgleis auf dessen koordinaten ich aufbaue. die z rotation ist positiv im Positionierungsfenster und ich bekomme einen negativen wert. 
Mit Putty getestet und mit dem programm.
Wird spaet, ich gehe ins bett, bis morgen.
gruss
Gmd

 

Posted (edited)
vor 1 Stunde schrieb gmd:

die z rotation ist positiv im Positionierungsfenster

Das sind eventuell nicht dieselben Zahlen, Gmd

Schau mal bitte, welche vier Rotationswerte du bekommst, wenn du sie intern mit Lua ausliest.
Die Tabelle "transformation.rotation" jedes Objekts hat vier Einträge mit den Bezeichnern w, x, y und z.
Stimmen die mit deinen ausgelesenen Zahlen überein?

Pardon, da war ich auf dem Holzweg!

Edited by Goetz
Posted

Hallo,

die Steuerschnittstelle gibt Euler-Koordinaten zurück, weshalb X, Y und Z soweit korrekt sind. Auch das umgedrehte Vorzeichen ist korrekt, die Steuerschnittstelle stammt noch aus einer Zeit, in der es kein Lua und keine einheitliche "Standardisierung" gab.

Viele Grüße,

Neo

Posted

ok guys, danke fuer die antworten. Wie gesagt ich kann damit leben, war nur etwas irritiert zu beginn. 
gruss
Gmd

 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...