Patch attached.

Added steering to the four aftmost main gear axels -- with animations!

Found out just the other day that the AN-225 indeed steers on some of the
main gear wheels. The minimum turning radius is a wild guess however.
(Assumed a 45 deg average on the nose gears.) It now turns (quite
effortlessly) around a point straight out to the side from the second main
gear axel (nr 2 of the 3 non-steerable main gear axels), with a minimum
radius of 25.75 meters. (i.e. near engine nr 1 or 6) The option "squared"
was removed on steering. (Squaring radians messed up my calculations of the
turning angle of the respective wheels. Not that it's a perfect calculation
now either.) Ground wheel steering should, rather, not be connected to
directly the rudder pedals I think...

Also added transition-time(s) for the steering.

By the way:
README.yasim says the "semi-deprecated" transition-time is "Time in
seconds to slew through input range." I'm not quite sure what it is, but
it's not that. ;) (seconds for 2*1.0 on the output property? I.e. for a
rotation, that'd be 2.0 radians --? It doesn't operate on the input range
taking src/dst translations into account anyway.) Can't tell if this is a
code bug or a doc error.
Index: data/Aircraft/AN-225/AN-225-yasim.xml
===================================================================
RCS file: /var/cvs/FlightGear-0.9/data/Aircraft/AN-225/AN-225-yasim.xml,v
retrieving revision 1.5
diff -p -u -r1.5 AN-225-yasim.xml
--- data/Aircraft/AN-225/AN-225-yasim.xml       2 Mar 2006 22:40:56 -0000       
1.5
+++ data/Aircraft/AN-225/AN-225-yasim.xml       24 May 2007 18:01:25 -0000
@@ -164,7 +164,8 @@ them out of my 3d modeller.
 <!-- Landing Gear -->
 <!-- Front Left -->
  <gear x="20.0" y="1.0" z="-4.6" retract-time="10" compression="1.0" 
spring="1.1">
-  <control-input axis="/controls/flight/rudder" control="STEER" square="true"/>
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1.0" dst0="-0.8052" src1="1.0" dst1="0.7664"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
 <!--
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
@@ -173,13 +174,15 @@ them out of my 3d modeller.
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="2.5"/>
   <control-output control="EXTEND" prop="/gear/gear[0]/position-norm"/>
   <control-output control="STEER" prop="/gear/gear[0]/steering-norm"/>
  </gear>
 
 <!-- Front Right -->
  <gear x="20.0" y="-1.0" z="-4.6" retract-time="10" compression="1.0" 
spring="1.1">
-  <control-input axis="/controls/flight/rudder" control="STEER" square="true"/>
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1.0" dst0="-0.7664" src1="1.0" dst1="0.8052"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
 <!--
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
@@ -188,6 +191,7 @@ them out of my 3d modeller.
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="2.5"/>
   <control-output control="EXTEND" prop="/gear/gear[1]/position-norm"/>
   <control-output control="STEER" prop="/gear/gear[1]/steering-norm"/>
  </gear>
@@ -224,43 +228,63 @@ them out of my 3d modeller.
  </gear>
 
  <gear x="-9.05" y="3.2" z="-4.6" retract-time="10" compression="1.0" 
spring="0.6">
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1" dst0="-0.1453" src1="1.0" dst1="0.1135"
+    invert="true"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-right" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="15.7"/>
   <control-output control="EXTEND" prop="/gear/gear[5]/position-norm"/>
+  <control-output control="STEER" prop="/gear/gear[5]/steering-norm"/>
  </gear>
 
  <gear x="-10.72" y="3.2" z="-4.6" retract-time="10" compression="1.0" 
spring="0.6">
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1" dst0="-0.2169" src1="1.0" dst1="0.1694"
+    invert="true"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-right" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="10.5"/>
   <control-output control="EXTEND" prop="/gear/gear[6]/position-norm"/>
+  <control-output control="STEER" prop="/gear/gear[6]/steering-norm"/>
  </gear>
 
  <gear x="-12.42" y="3.2" z="-4.6" retract-time="10" compression="1.0" 
spring="0.6">
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1" dst0="-0.2876" src1="1.0" dst1="0.2264"
+    invert="true"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-right" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="7.9"/>
   <control-output control="EXTEND" prop="/gear/gear[7]/position-norm"/>
+  <control-output control="STEER" prop="/gear/gear[7]/steering-norm"/>
  </gear>
 
  <gear x="-14.10" y="3.2" z="-4.6" retract-time="10" compression="1.0" 
spring="0.6">
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1" dst0="-0.3546" src1="1.0" dst1="0.2808"
+    invert="true"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-right" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="6.4"/>
   <control-output control="EXTEND" prop="/gear/gear[8]/position-norm"/>
+  <control-output control="STEER" prop="/gear/gear[8]/steering-norm"/>
  </gear>
 
 <!-- Main Right -->
@@ -295,43 +319,63 @@ them out of my 3d modeller.
  </gear>
 
  <gear x="-9.05" y="-3.2" z="-4.6" retract-time="10" compression="1.0" 
spring="0.6">
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1" dst0="-0.1135" src1="1.0" dst1="0.1453"
+    invert="true"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-right" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="15.7"/>
   <control-output control="EXTEND" prop="/gear/gear[12]/position-norm"/>
+  <control-output control="STEER" prop="/gear/gear[12]/steering-norm"/>
  </gear>
 
  <gear x="-10.72" y="-3.2" z="-4.6" retract-time="10" compression="1.0" 
spring="0.6">
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1" dst0="-0.1694" src1="1.0" dst1="0.2169"
+    invert="true"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-right" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="10.5"/>
   <control-output control="EXTEND" prop="/gear/gear[13]/position-norm"/>
+  <control-output control="STEER" prop="/gear/gear[13]/steering-norm"/>
  </gear>
 
  <gear x="-12.42" y="-3.2" z="-4.6" retract-time="10" compression="1.0" 
spring="0.6">
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1" dst0="-0.2264" src1="1.0" dst1="0.2876"
+    invert="true"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-right" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="7.9"/>
   <control-output control="EXTEND" prop="/gear/gear[14]/position-norm"/>
+  <control-output control="STEER" prop="/gear/gear[14]/steering-norm"/>
  </gear>
 
  <gear x="-14.10" y="-3.2" z="-4.6" retract-time="10" compression="1.0" 
spring="0.6">
+  <control-input axis="/controls/flight/rudder" control="STEER"
+    src0="-1" dst0="-0.2808" src1="1.0" dst1="0.3546"
+    invert="true"/>
   <control-input axis="/controls/gear/gear-down" control="EXTEND"/>
   <control-input axis="/controls/gear/brake-left" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-right" control="BRAKE"/>
   <control-input axis="/controls/gear/brake-parking" control="BRAKE"/>
   <control-speed control="EXTEND" transition-time="10"/>
   <control-speed control="BRAKE" transition-time="0.7"/>
+  <control-speed control="STEER" transition-time="6.4"/>
   <control-output control="EXTEND" prop="/gear/gear[15]/position-norm"/>
+  <control-output control="STEER" prop="/gear/gear[15]/steering-norm"/>
  </gear>
 
 <!-- Fuel tanks -->
Index: data/Aircraft/AN-225/Models/AN-225-model.xml
===================================================================
RCS file: /var/cvs/FlightGear-0.9/data/Aircraft/AN-225/Models/AN-225-model.xml,v
retrieving revision 1.3
diff -p -u -r1.3 AN-225-model.xml
--- data/Aircraft/AN-225/Models/AN-225-model.xml        2 Mar 2006 22:40:57 
-0000       1.3
+++ data/Aircraft/AN-225/Models/AN-225-model.xml        24 May 2007 18:01:26 
-0000
@@ -1405,7 +1405,7 @@ AN225 model/animation config.
   <object-name>L-NG-Strut</object-name>
   <property>gear/gear[0]/steering-norm</property>
   <offset-deg>0</offset-deg>
-  <factor>-45</factor>
+  <factor>-57.30</factor>
   <center>
    <x-m>-20.03</x-m>
    <y-m>-0.93</y-m>
@@ -1583,7 +1583,7 @@ AN225 model/animation config.
   <object-name>R-NG-Strut</object-name>
   <property>gear/gear[1]/steering-norm</property>
   <offset-deg>0</offset-deg>
-  <factor>-45</factor>
+  <factor>-57.30</factor>
   <center>
    <x-m>-20.03</x-m>
    <y-m>0.93</y-m>
@@ -2292,6 +2292,28 @@ AN225 model/animation config.
   </condition>
  </animation>
 
+<!-- Steering -->
+ <animation>
+  <type>rotate</type>
+  <object-name>L-MG-4-IS-Tyre</object-name>
+  <object-name>L-MG-4-OS-Tyre</object-name>
+  <object-name>L-MG-4-IS-Hub</object-name>
+  <object-name>L-MG-4-OS-Hub</object-name>
+  <object-name>L-MG-4-Strut</object-name>
+  <property>gear/gear[5]/steering-norm</property>
+  <offset-deg>0</offset-deg>
+  <factor>-57.30</factor>
+  <center>
+   <x-m>9.05</x-m>
+   <y-m>-3.2</y-m>
+   <z-m>-2.0</z-m>
+  </center>
+  <axis>
+   <x>0</x>
+   <y>0</y>
+   <z>1</z>
+  </axis>
+ </animation>
 <!-- Extend/Retract -->
 <!-- Swing in/out -->
  <animation>
@@ -2472,6 +2494,28 @@ AN225 model/animation config.
   </condition>
  </animation>
 
+<!-- Steering -->
+ <animation>
+  <type>rotate</type>
+  <object-name>L-MG-5-IS-Tyre</object-name>
+  <object-name>L-MG-5-OS-Tyre</object-name>
+  <object-name>L-MG-5-IS-Hub</object-name>
+  <object-name>L-MG-5-OS-Hub</object-name>
+  <object-name>L-MG-5-Strut</object-name>
+  <property>gear/gear[6]/steering-norm</property>
+  <offset-deg>0</offset-deg>
+  <factor>-57.30</factor>
+  <center>
+   <x-m>10.72</x-m>
+   <y-m>-3.2</y-m>
+   <z-m>-2.0</z-m>
+  </center>
+  <axis>
+   <x>0</x>
+   <y>0</y>
+   <z>1</z>
+  </axis>
+ </animation>
 <!-- Extend/Retract -->
 <!-- Swing in/out -->
  <animation>
@@ -2652,6 +2696,28 @@ AN225 model/animation config.
   </condition>
  </animation>
 
+<!-- Steering -->
+ <animation>
+  <type>rotate</type>
+  <object-name>L-MG-6-IS-Tyre</object-name>
+  <object-name>L-MG-6-OS-Tyre</object-name>
+  <object-name>L-MG-6-IS-Hub</object-name>
+  <object-name>L-MG-6-OS-Hub</object-name>
+  <object-name>L-MG-6-Strut</object-name>
+  <property>gear/gear[7]/steering-norm</property>
+  <offset-deg>0</offset-deg>
+  <factor>-57.30</factor>
+  <center>
+   <x-m>12.42</x-m>
+   <y-m>-3.2</y-m>
+   <z-m>-2.0</z-m>
+  </center>
+  <axis>
+   <x>0</x>
+   <y>0</y>
+   <z>1</z>
+  </axis>
+ </animation>
 <!-- Extend/Retract -->
 <!-- Swing in/out -->
  <animation>
@@ -2832,6 +2898,28 @@ AN225 model/animation config.
   </condition>
  </animation>
 
+<!-- Steering -->
+ <animation>
+  <type>rotate</type>
+  <object-name>L-MG-7-IS-Tyre</object-name>
+  <object-name>L-MG-7-OS-Tyre</object-name>
+  <object-name>L-MG-7-IS-Hub</object-name>
+  <object-name>L-MG-7-OS-Hub</object-name>
+  <object-name>L-MG-7-Strut</object-name>
+  <property>gear/gear[8]/steering-norm</property>
+  <offset-deg>0</offset-deg>
+  <factor>-57.30</factor>
+  <center>
+   <x-m>14.10</x-m>
+   <y-m>-3.2</y-m>
+   <z-m>-2.0</z-m>
+  </center>
+  <axis>
+   <x>0</x>
+   <y>0</y>
+   <z>1</z>
+  </axis>
+ </animation>
 <!-- Extend/Retract -->
 <!-- Swing in/out -->
  <animation>
@@ -3552,6 +3640,28 @@ AN225 model/animation config.
   </condition>
  </animation>
 
+<!-- Steering -->
+ <animation>
+  <type>rotate</type>
+  <object-name>R-MG-4-IS-Tyre</object-name>
+  <object-name>R-MG-4-OS-Tyre</object-name>
+  <object-name>R-MG-4-IS-Hub</object-name>
+  <object-name>R-MG-4-OS-Hub</object-name>
+  <object-name>R-MG-4-Strut</object-name>
+  <property>gear/gear[12]/steering-norm</property>
+  <offset-deg>0</offset-deg>
+  <factor>-57.30</factor>
+  <center>
+   <x-m>9.05</x-m>
+   <y-m>3.2</y-m>
+   <z-m>-2.0</z-m>
+  </center>
+  <axis>
+   <x>0</x>
+   <y>0</y>
+   <z>1</z>
+  </axis>
+ </animation>
 <!-- Extend/Retract -->
 <!-- Swing in/out -->
  <animation>
@@ -3732,6 +3842,28 @@ AN225 model/animation config.
   </condition>
  </animation>
 
+<!-- Steering -->
+ <animation>
+  <type>rotate</type>
+  <object-name>R-MG-5-IS-Tyre</object-name>
+  <object-name>R-MG-5-OS-Tyre</object-name>
+  <object-name>R-MG-5-IS-Hub</object-name>
+  <object-name>R-MG-5-OS-Hub</object-name>
+  <object-name>R-MG-5-Strut</object-name>
+  <property>gear/gear[13]/steering-norm</property>
+  <offset-deg>0</offset-deg>
+  <factor>-57.30</factor>
+  <center>
+   <x-m>10.72</x-m>
+   <y-m>3.2</y-m>
+   <z-m>-2.0</z-m>
+  </center>
+  <axis>
+   <x>0</x>
+   <y>0</y>
+   <z>1</z>
+  </axis>
+ </animation>
 <!-- Extend/Retract -->
 <!-- Swing in/out -->
  <animation>
@@ -3912,6 +4044,28 @@ AN225 model/animation config.
   </condition>
  </animation>
 
+<!-- Steering -->
+ <animation>
+  <type>rotate</type>
+  <object-name>R-MG-6-IS-Tyre</object-name>
+  <object-name>R-MG-6-OS-Tyre</object-name>
+  <object-name>R-MG-6-IS-Hub</object-name>
+  <object-name>R-MG-6-OS-Hub</object-name>
+  <object-name>R-MG-6-Strut</object-name>
+  <property>gear/gear[14]/steering-norm</property>
+  <offset-deg>0</offset-deg>
+  <factor>-57.30</factor>
+  <center>
+   <x-m>12.72</x-m>
+   <y-m>3.2</y-m>
+   <z-m>-2.0</z-m>
+  </center>
+  <axis>
+   <x>0</x>
+   <y>0</y>
+   <z>1</z>
+  </axis>
+ </animation>
 <!-- Extend/Retract -->
 <!-- Swing in/out -->
  <animation>
@@ -4092,6 +4246,28 @@ AN225 model/animation config.
   </condition>
  </animation>
 
+<!-- Steering -->
+ <animation>
+  <type>rotate</type>
+  <object-name>R-MG-7-IS-Tyre</object-name>
+  <object-name>R-MG-7-OS-Tyre</object-name>
+  <object-name>R-MG-7-IS-Hub</object-name>
+  <object-name>R-MG-7-OS-Hub</object-name>
+  <object-name>R-MG-7-Strut</object-name>
+  <property>gear/gear[15]/steering-norm</property>
+  <offset-deg>0</offset-deg>
+  <factor>-57.30</factor>
+  <center>
+   <x-m>14.10</x-m>
+   <y-m>3.2</y-m>
+   <z-m>-2.0</z-m>
+  </center>
+  <axis>
+   <x>0</x>
+   <y>0</y>
+   <z>1</z>
+  </axis>
+ </animation>
 <!-- Extend/Retract -->
 <!-- Swing in/out -->
  <animation>
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to