# SimObjects.xml [[Go back to index]](..\..\Template_Explorer.html) Asobo\(Misc\)SimObjects.xml --------------------------- Source XML <ModelBehaviors> <Include RelativeFile="..\\\\Generic.xml"/> <Template Name="ASOBO\_WindTurbine\_Template"> <DefaultTemplateParameters> <ANIM\_NAME>WindMil\_Rotate</ANIM\_NAME> <SPEED\_RATIO>1</SPEED\_RATIO> <STARTANGLE Process="float">rand 360 \*</STARTANGLE> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(O:XMLVAR\_IsInit) 0 == if{ 1 (>O:XMLVAR\_IsInit) \#STARTANGLE\# sp0 } l0 (A:AMBIENT WIND VELOCITY,feet per second) \#SPEED\_RATIO\# \* (A:ANIMATION DELTA TIME, seconds) \* +</ANIM\_CODE> <ANIM\_WRAP>1</ANIM\_WRAP> <ANIM\_DELTA>1</ANIM\_DELTA> </UseTemplate> </Template> <Template Name="ASOBO\_WindDirection\_Template"> <DefaultTemplateParameters> <ANIM\_NAME>Orientation</ANIM\_NAME> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(A:AMBIENT WIND DIRECTION,degrees) (A:PLANE HEADING DEGREES TRUE, degrees) - 180 + dnor</ANIM\_CODE> <ANIM\_WRAP>1</ANIM\_WRAP> <ANIM\_LENGTH>360</ANIM\_LENGTH> </UseTemplate> </Template> <Template Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <DefaultTemplateParameters> <MIN\_POSITION>0</MIN\_POSITION> <MAX\_POSITION>0</MAX\_POSITION> <SPEED>0.1</SPEED> <ANIMATION\_BASE\_CODE></ANIMATION\_BASE\_CODE> <!-- Necessary : VAR\_CURRENT, VAR\_TARGET, ANIM\_NAME --> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE> \#ANIMATION\_BASE\_CODE\# (\#VAR\_TARGET\#) \#MAX\_POSITION\# > if{ \#MAX\_POSITION\# (>\#VAR\_TARGET\#) } (\#VAR\_TARGET\#) \#MIN\_POSITION\# < if{ \#MIN\_POSITION\# (>\#VAR\_TARGET\#) } (\#VAR\_CURRENT\#) \#MAX\_POSITION\# > if{ \#MAX\_POSITION\# (>\#VAR\_CURRENT\#) } (\#VAR\_CURRENT\#) \#MIN\_POSITION\# < if{ \#MIN\_POSITION\# (>\#VAR\_CURRENT\#) } (\#VAR\_CURRENT\#) (\#VAR\_TARGET\#) - abs 0.01 > if{ (\#VAR\_CURRENT\#) (\#VAR\_TARGET\#) > if{ (\#VAR\_CURRENT\#) \#SPEED\# (A:ANIMATION DELTA TIME,seconds) \* - (\#VAR\_TARGET\#) max (>\#VAR\_CURRENT\#) } els{ (\#VAR\_CURRENT\#) \#SPEED\# (A:ANIMATION DELTA TIME,seconds) \* + (\#VAR\_TARGET\#) min (>\#VAR\_CURRENT\#) } } els{ (\#VAR\_TARGET\#) (>\#VAR\_CURRENT\#) } (\#VAR\_CURRENT\#) \#MIN\_POSITION\# - 100 \#MAX\_POSITION\# \#MIN\_POSITION\# - / \* </ANIM\_CODE> <ANIM\_LENGTH>100</ANIM\_LENGTH> </UseTemplate> </Template> <Template Name="ASOBO\_Jetway\_Hood\_Left\_Bend"> <DefaultTemplateParameters> <!-- Required : ANIM\_NAME --> <PERCENT\_PER\_SECOND>50</PERCENT\_PER\_SECOND> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodLeftBendCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD LEFT BEND,percent</VAR\_TARGET> <MIN\_POSITION>0</MIN\_POSITION> <MAX\_POSITION>100</MAX\_POSITION> <SPEED>\#PERCENT\_PER\_SECOND\#</SPEED> </UseTemplate> </Template> <Template Name="ASOBO\_Jetway\_Hood\_Left\_Deployment"> <DefaultTemplateParameters> <!-- Required : ANIM\_NAME --> <DEGREE\_PER\_SECOND>20</DEGREE\_PER\_SECOND> <MIN\_ANGLE>0</MIN\_ANGLE> <MAX\_ANGLE>45</MAX\_ANGLE> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodLeftDeploymentCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD LEFT DEPLOYMENT,degrees</VAR\_TARGET> <MIN\_POSITION>\#MIN\_ANGLE\#</MIN\_POSITION> <MAX\_POSITION>\#MAX\_ANGLE\#</MAX\_POSITION> <SPEED>\#DEGREE\_PER\_SECOND\#</SPEED> </UseTemplate> </Template> <Template Name="ASOBO\_Jetway\_Hood\_Right\_Bend"> <DefaultTemplateParameters> <!-- Required : ANIM\_NAME --> <PERCENT\_PER\_SECOND>50</PERCENT\_PER\_SECOND> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodRightBendCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD RIGHT BEND,percent</VAR\_TARGET> <MIN\_POSITION>0</MIN\_POSITION> <MAX\_POSITION>100</MAX\_POSITION> <SPEED>\#PERCENT\_PER\_SECOND\#</SPEED> </UseTemplate> </Template> <Template Name="ASOBO\_Jetway\_Hood\_Right\_Deployment"> <DefaultTemplateParameters> <!-- Required : ANIM\_NAME --> <DEGREE\_PER\_SECOND>20</DEGREE\_PER\_SECOND> <MIN\_ANGLE>0</MIN\_ANGLE> <MAX\_ANGLE>45</MAX\_ANGLE> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodRightDeploymentCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD RIGHT DEPLOYMENT,degrees</VAR\_TARGET> <MIN\_POSITION>\#MIN\_ANGLE\#</MIN\_POSITION> <MAX\_POSITION>\#MAX\_ANGLE\#</MAX\_POSITION> <SPEED>\#DEGREE\_PER\_SECOND\#</SPEED> </UseTemplate> </Template> <Template Name="ASOBO\_Jetway\_Hood\_Top\_Horizontal"> <DefaultTemplateParameters> <!-- Required : ANIM\_NAME --> <PERCENT\_PER\_SECOND>100</PERCENT\_PER\_SECOND> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodTopHorizontalCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD TOP HORIZONTAL,percent</VAR\_TARGET> <MIN\_POSITION>-100</MIN\_POSITION> <MAX\_POSITION>100</MAX\_POSITION> <SPEED>\#PERCENT\_PER\_SECOND\# 2 \*</SPEED> </UseTemplate> </Template> <Template Name="ASOBO\_Jetway\_Hood\_Top\_Vertical"> <DefaultTemplateParameters> <!-- Required : ANIM\_NAME --> <PERCENT\_PER\_SECOND>100</PERCENT\_PER\_SECOND> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodTopVerticalCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD TOP VERTICAL,percent</VAR\_TARGET> <MIN\_POSITION>-100</MIN\_POSITION> <MAX\_POSITION>100</MAX\_POSITION> <SPEED>\#PERCENT\_PER\_SECOND\# 2 \*</SPEED> </UseTemplate> </Template> <Template Name="ASOBO\_Jetway\_Wheel\_Roll"> <DefaultTemplateParameters> <ANIM\_NAME>Wheel\_Rotation</ANIM\_NAME> <WHEEL\_RADIUS>0.5</WHEEL\_RADIUS> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(A:JETWAY WHEEL SPEED,meters per second) (A:ANIMATION DELTA TIME, seconds) \* 2 pi \* \#WHEEL\_RADIUS\# \* / 100 \*</ANIM\_CODE> <ANIM\_DELTA>1</ANIM\_DELTA> <ANIM\_WRAP>1</ANIM\_WRAP> <ANIM\_LENGTH>100</ANIM\_LENGTH> </UseTemplate> </Template> <Template Name="ASOBO\_Jetway\_Wheel\_Orientation"> <DefaultTemplateParameters> <ANIM\_NAME>Wheel\_Orientation</ANIM\_NAME> <MIN\_ANGLE>-90</MIN\_ANGLE> <MAX\_ANGLE>90</MAX\_ANGLE> <MIN\_TO\_MAX>1</MIN\_TO\_MAX> <!-- 1 if the anim starts at min and ends at max --> <SPEED>30</SPEED> <!-- degrees per sec --> <SMOOTH\_TIME\_FACTOR>0.5</SMOOTH\_TIME\_FACTOR> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE> (\* Target is in \[-90,90\]. Moves smoothed target to be closer \*) (A:JETWAY WHEEL ORIENTATION TARGET,degrees) (O:XMLVAR\_JetwayWheelOrientationTarget) - abs 90 > if{ (O:XMLVAR\_JetwayWheelOrientationTarget) (A:JETWAY WHEEL ORIENTATION TARGET,degrees) > if{ (O:XMLVAR\_JetwayWheelOrientationTarget) 180 - (>O:XMLVAR\_JetwayWheelOrientationTarget) } els{ (O:XMLVAR\_JetwayWheelOrientationTarget) 180 + (>O:XMLVAR\_JetwayWheelOrientationTarget) } } (\* Smooth the target to avoid wobble \*) (A:ANIMATION DELTA TIME, seconds) \#SMOOTH\_TIME\_FACTOR\# / (>O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) (O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) 1 > if{ 1 (>O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) } (O:XMLVAR\_JetwayWheelOrientationTarget) 1 (O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) - \* (A:JETWAY WHEEL ORIENTATION TARGET,degrees) (O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) \* + (>O:XMLVAR\_JetwayWheelOrientationTarget) (\* Move the smoothed target to \[-90,90\] \*) (O:XMLVAR\_JetwayWheelOrientationTarget) 90 > if{ (O:XMLVAR\_JetwayWheelOrientationTarget) 180 - (>O:XMLVAR\_JetwayWheelOrientationTarget) } (O:XMLVAR\_JetwayWheelOrientationTarget) -90 < if{ (O:XMLVAR\_JetwayWheelOrientationTarget) 180 + (>O:XMLVAR\_JetwayWheelOrientationTarget) } (\* Move the current to \[-90,90\] \*) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 90 > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) -90 < if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (\* Target is in \[-90,90\]. Moves current to be closer \*) (O:XMLVAR\_JetwayWheelOrientationTarget) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) - abs 90 > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) (O:XMLVAR\_JetwayWheelOrientationTarget) > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } els{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } } (\* If target is close enough, match it with current, otherwise add the delta in the correct direction \*) (O:XMLVAR\_JetwayWheelOrientationTarget) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) - abs (A:ANIMATION DELTA TIME, seconds) \#SPEED\# \* < if{ (O:XMLVAR\_JetwayWheelOrientationTarget) (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } els{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) (O:XMLVAR\_JetwayWheelOrientationTarget) > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) (A:ANIMATION DELTA TIME, seconds) \#SPEED\# \* - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } els{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) (A:ANIMATION DELTA TIME, seconds) \#SPEED\# \* + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } } (\* Move current back to \[-180,180\] \*) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 360 - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) -180 < if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 360 + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (\* if anim is \[-90,90\] or \[0,180\], it is symmetric with a 180 deg rotation, so add +-180 to match the \[min,max\] interval (hopefully) \*) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) \#MAX\_ANGLE\# > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) \#MIN\_ANGLE\# < if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (\* first frame of animation might be min\_angle or max\_angle, match the angle to frame accordingly \*) \#MIN\_TO\_MAX\# 1 == if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) \#MIN\_ANGLE\# - 100 \#MAX\_ANGLE\# \#MIN\_ANGLE\# - / \* } els{ \#MAX\_ANGLE\# (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) - 100 \#MAX\_ANGLE\# \#MIN\_ANGLE\# - / \* } </ANIM\_CODE> <ANIM\_LENGTH>100</ANIM\_LENGTH> </UseTemplate> </Template> </ModelBehaviors>     ### Includes - RelativeFile: [..\\\\Generic.xml](../generic/) ### Templates Template list 1. [ASOBO\_WindTurbine\_Template](#ASOBO_WindTurbine_Template) 2. [ASOBO\_WindDirection\_Template](#ASOBO_WindDirection_Template) 3. [ASOBO\_SimObject\_Smooth\_VarEvolution](#ASOBO_SimObject_Smooth_VarEvolution) 4. [ASOBO\_Jetway\_Hood\_Left\_Bend](#ASOBO_Jetway_Hood_Left_Bend) 5. [ASOBO\_Jetway\_Hood\_Left\_Deployment](#ASOBO_Jetway_Hood_Left_Deployment) 6. [ASOBO\_Jetway\_Hood\_Right\_Bend](#ASOBO_Jetway_Hood_Right_Bend) 7. [ASOBO\_Jetway\_Hood\_Right\_Deployment](#ASOBO_Jetway_Hood_Right_Deployment) 8. [ASOBO\_Jetway\_Hood\_Top\_Horizontal](#ASOBO_Jetway_Hood_Top_Horizontal) 9. [ASOBO\_Jetway\_Hood\_Top\_Vertical](#ASOBO_Jetway_Hood_Top_Vertical) 10. [ASOBO\_Jetway\_Wheel\_Roll](#ASOBO_Jetway_Wheel_Roll) 11. [ASOBO\_Jetway\_Wheel\_Orientation](#ASOBO_Jetway_Wheel_Orientation) - #### ASOBO\_WindTurbine\_Template Definition from XML <Template Name="ASOBO\_WindTurbine\_Template"> <DefaultTemplateParameters> <ANIM\_NAME>WindMil\_Rotate</ANIM\_NAME> <SPEED\_RATIO>1</SPEED\_RATIO> <STARTANGLE Process="float">rand 360 \*</STARTANGLE> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(O:XMLVAR\_IsInit) 0 == if{ 1 (>O:XMLVAR\_IsInit) \#STARTANGLE\# sp0 } l0 (A:AMBIENT WIND VELOCITY,feet per second) \#SPEED\_RATIO\# \* (A:ANIMATION DELTA TIME, seconds) \* +</ANIM\_CODE> <ANIM\_WRAP>1</ANIM\_WRAP> <ANIM\_DELTA>1</ANIM\_DELTA> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIM\_NAME - SPEED\_RATIO - STARTANGLE   Templates used: - [ASOBO\_GT\_Anim\_Code](../generic/animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_CODE (using STARTANGLE, SPEED\_RATIO) - ANIM\_WRAP - ANIM\_DELTA [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_WindDirection\_Template Definition from XML <Template Name="ASOBO\_WindDirection\_Template"> <DefaultTemplateParameters> <ANIM\_NAME>Orientation</ANIM\_NAME> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(A:AMBIENT WIND DIRECTION,degrees) (A:PLANE HEADING DEGREES TRUE, degrees) - 180 + dnor</ANIM\_CODE> <ANIM\_WRAP>1</ANIM\_WRAP> <ANIM\_LENGTH>360</ANIM\_LENGTH> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIM\_NAME   Templates used: - [ASOBO\_GT\_Anim\_Code](../generic/animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_CODE - ANIM\_WRAP - ANIM\_LENGTH [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_SimObject\_Smooth\_VarEvolution Definition from XML <Template Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <DefaultTemplateParameters> <MIN\_POSITION>0</MIN\_POSITION> <MAX\_POSITION>0</MAX\_POSITION> <SPEED>0.1</SPEED> <ANIMATION\_BASE\_CODE/> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE> \#ANIMATION\_BASE\_CODE\# (\#VAR\_TARGET\#) \#MAX\_POSITION\# > if{ \#MAX\_POSITION\# (>\#VAR\_TARGET\#) } (\#VAR\_TARGET\#) \#MIN\_POSITION\# < if{ \#MIN\_POSITION\# (>\#VAR\_TARGET\#) } (\#VAR\_CURRENT\#) \#MAX\_POSITION\# > if{ \#MAX\_POSITION\# (>\#VAR\_CURRENT\#) } (\#VAR\_CURRENT\#) \#MIN\_POSITION\# < if{ \#MIN\_POSITION\# (>\#VAR\_CURRENT\#) } (\#VAR\_CURRENT\#) (\#VAR\_TARGET\#) - abs 0.01 > if{ (\#VAR\_CURRENT\#) (\#VAR\_TARGET\#) > if{ (\#VAR\_CURRENT\#) \#SPEED\# (A:ANIMATION DELTA TIME,seconds) \* - (\#VAR\_TARGET\#) max (>\#VAR\_CURRENT\#) } els{ (\#VAR\_CURRENT\#) \#SPEED\# (A:ANIMATION DELTA TIME,seconds) \* + (\#VAR\_TARGET\#) min (>\#VAR\_CURRENT\#) } } els{ (\#VAR\_TARGET\#) (>\#VAR\_CURRENT\#) } (\#VAR\_CURRENT\#) \#MIN\_POSITION\# - 100 \#MAX\_POSITION\# \#MIN\_POSITION\# - / \* </ANIM\_CODE> <ANIM\_LENGTH>100</ANIM\_LENGTH> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - MIN\_POSITION - MAX\_POSITION - SPEED - ANIMATION\_BASE\_CODE   Templates used: - [ASOBO\_GT\_Anim\_Code](../generic/animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_CODE (using ANIMATION\_BASE\_CODE, VAR\_TARGET, MAX\_POSITION, MIN\_POSITION, VAR\_CURRENT, SPEED) - ANIM\_LENGTH [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_Jetway\_Hood\_Left\_Bend Definition from XML <Template Name="ASOBO\_Jetway\_Hood\_Left\_Bend"> <DefaultTemplateParameters> <PERCENT\_PER\_SECOND>50</PERCENT\_PER\_SECOND> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodLeftBendCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD LEFT BEND,percent</VAR\_TARGET> <MIN\_POSITION>0</MIN\_POSITION> <MAX\_POSITION>100</MAX\_POSITION> <SPEED>\#PERCENT\_PER\_SECOND\#</SPEED> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - PERCENT\_PER\_SECOND   Templates used: - [ASOBO\_SimObject\_Smooth\_VarEvolution](simobjects/#ASOBO_SimObject_Smooth_VarEvolution) Parameters set: - VAR\_CURRENT - VAR\_TARGET - MIN\_POSITION - MAX\_POSITION - SPEED (using PERCENT\_PER\_SECOND) [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_Jetway\_Hood\_Left\_Deployment Definition from XML <Template Name="ASOBO\_Jetway\_Hood\_Left\_Deployment"> <DefaultTemplateParameters> <DEGREE\_PER\_SECOND>20</DEGREE\_PER\_SECOND> <MIN\_ANGLE>0</MIN\_ANGLE> <MAX\_ANGLE>45</MAX\_ANGLE> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodLeftDeploymentCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD LEFT DEPLOYMENT,degrees</VAR\_TARGET> <MIN\_POSITION>\#MIN\_ANGLE\#</MIN\_POSITION> <MAX\_POSITION>\#MAX\_ANGLE\#</MAX\_POSITION> <SPEED>\#DEGREE\_PER\_SECOND\#</SPEED> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - DEGREE\_PER\_SECOND - MIN\_ANGLE - MAX\_ANGLE   Templates used: - [ASOBO\_SimObject\_Smooth\_VarEvolution](simobjects/#ASOBO_SimObject_Smooth_VarEvolution) Parameters set: - VAR\_CURRENT - VAR\_TARGET - MIN\_POSITION (using MIN\_ANGLE) - MAX\_POSITION (using MAX\_ANGLE) - SPEED (using DEGREE\_PER\_SECOND) [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_Jetway\_Hood\_Right\_Bend Definition from XML <Template Name="ASOBO\_Jetway\_Hood\_Right\_Bend"> <DefaultTemplateParameters> <PERCENT\_PER\_SECOND>50</PERCENT\_PER\_SECOND> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodRightBendCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD RIGHT BEND,percent</VAR\_TARGET> <MIN\_POSITION>0</MIN\_POSITION> <MAX\_POSITION>100</MAX\_POSITION> <SPEED>\#PERCENT\_PER\_SECOND\#</SPEED> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - PERCENT\_PER\_SECOND   Templates used: - [ASOBO\_SimObject\_Smooth\_VarEvolution](simobjects/#ASOBO_SimObject_Smooth_VarEvolution) Parameters set: - VAR\_CURRENT - VAR\_TARGET - MIN\_POSITION - MAX\_POSITION - SPEED (using PERCENT\_PER\_SECOND) [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_Jetway\_Hood\_Right\_Deployment Definition from XML <Template Name="ASOBO\_Jetway\_Hood\_Right\_Deployment"> <DefaultTemplateParameters> <DEGREE\_PER\_SECOND>20</DEGREE\_PER\_SECOND> <MIN\_ANGLE>0</MIN\_ANGLE> <MAX\_ANGLE>45</MAX\_ANGLE> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodRightDeploymentCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD RIGHT DEPLOYMENT,degrees</VAR\_TARGET> <MIN\_POSITION>\#MIN\_ANGLE\#</MIN\_POSITION> <MAX\_POSITION>\#MAX\_ANGLE\#</MAX\_POSITION> <SPEED>\#DEGREE\_PER\_SECOND\#</SPEED> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - DEGREE\_PER\_SECOND - MIN\_ANGLE - MAX\_ANGLE   Templates used: - [ASOBO\_SimObject\_Smooth\_VarEvolution](simobjects/#ASOBO_SimObject_Smooth_VarEvolution) Parameters set: - VAR\_CURRENT - VAR\_TARGET - MIN\_POSITION (using MIN\_ANGLE) - MAX\_POSITION (using MAX\_ANGLE) - SPEED (using DEGREE\_PER\_SECOND) [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_Jetway\_Hood\_Top\_Horizontal Definition from XML <Template Name="ASOBO\_Jetway\_Hood\_Top\_Horizontal"> <DefaultTemplateParameters> <PERCENT\_PER\_SECOND>100</PERCENT\_PER\_SECOND> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodTopHorizontalCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD TOP HORIZONTAL,percent</VAR\_TARGET> <MIN\_POSITION>-100</MIN\_POSITION> <MAX\_POSITION>100</MAX\_POSITION> <SPEED>\#PERCENT\_PER\_SECOND\# 2 \*</SPEED> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - PERCENT\_PER\_SECOND   Templates used: - [ASOBO\_SimObject\_Smooth\_VarEvolution](simobjects/#ASOBO_SimObject_Smooth_VarEvolution) Parameters set: - VAR\_CURRENT - VAR\_TARGET - MIN\_POSITION - MAX\_POSITION - SPEED (using PERCENT\_PER\_SECOND) [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_Jetway\_Hood\_Top\_Vertical Definition from XML <Template Name="ASOBO\_Jetway\_Hood\_Top\_Vertical"> <DefaultTemplateParameters> <PERCENT\_PER\_SECOND>100</PERCENT\_PER\_SECOND> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_SimObject\_Smooth\_VarEvolution"> <VAR\_CURRENT>O:XMLVAR\_JetwayHoodTopVerticalCurrent</VAR\_CURRENT> <VAR\_TARGET>A:JETWAY HOOD TOP VERTICAL,percent</VAR\_TARGET> <MIN\_POSITION>-100</MIN\_POSITION> <MAX\_POSITION>100</MAX\_POSITION> <SPEED>\#PERCENT\_PER\_SECOND\# 2 \*</SPEED> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - PERCENT\_PER\_SECOND   Templates used: - [ASOBO\_SimObject\_Smooth\_VarEvolution](simobjects/#ASOBO_SimObject_Smooth_VarEvolution) Parameters set: - VAR\_CURRENT - VAR\_TARGET - MIN\_POSITION - MAX\_POSITION - SPEED (using PERCENT\_PER\_SECOND) [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_Jetway\_Wheel\_Roll Definition from XML <Template Name="ASOBO\_Jetway\_Wheel\_Roll"> <DefaultTemplateParameters> <ANIM\_NAME>Wheel\_Rotation</ANIM\_NAME> <WHEEL\_RADIUS>0.5</WHEEL\_RADIUS> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(A:JETWAY WHEEL SPEED,meters per second) (A:ANIMATION DELTA TIME, seconds) \* 2 pi \* \#WHEEL\_RADIUS\# \* / 100 \*</ANIM\_CODE> <ANIM\_DELTA>1</ANIM\_DELTA> <ANIM\_WRAP>1</ANIM\_WRAP> <ANIM\_LENGTH>100</ANIM\_LENGTH> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIM\_NAME - WHEEL\_RADIUS   Templates used: - [ASOBO\_GT\_Anim\_Code](../generic/animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_CODE (using WHEEL\_RADIUS) - ANIM\_DELTA - ANIM\_WRAP - ANIM\_LENGTH [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html) - #### ASOBO\_Jetway\_Wheel\_Orientation Definition from XML <Template Name="ASOBO\_Jetway\_Wheel\_Orientation"> <DefaultTemplateParameters> <ANIM\_NAME>Wheel\_Orientation</ANIM\_NAME> <MIN\_ANGLE>-90</MIN\_ANGLE> <MAX\_ANGLE>90</MAX\_ANGLE> <MIN\_TO\_MAX>1</MIN\_TO\_MAX> <SPEED>30</SPEED> <SMOOTH\_TIME\_FACTOR>0.5</SMOOTH\_TIME\_FACTOR> </DefaultTemplateParameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE> (\* Target is in \[-90,90\]. Moves smoothed target to be closer \*) (A:JETWAY WHEEL ORIENTATION TARGET,degrees) (O:XMLVAR\_JetwayWheelOrientationTarget) - abs 90 > if{ (O:XMLVAR\_JetwayWheelOrientationTarget) (A:JETWAY WHEEL ORIENTATION TARGET,degrees) > if{ (O:XMLVAR\_JetwayWheelOrientationTarget) 180 - (>O:XMLVAR\_JetwayWheelOrientationTarget) } els{ (O:XMLVAR\_JetwayWheelOrientationTarget) 180 + (>O:XMLVAR\_JetwayWheelOrientationTarget) } } (\* Smooth the target to avoid wobble \*) (A:ANIMATION DELTA TIME, seconds) \#SMOOTH\_TIME\_FACTOR\# / (>O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) (O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) 1 > if{ 1 (>O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) } (O:XMLVAR\_JetwayWheelOrientationTarget) 1 (O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) - \* (A:JETWAY WHEEL ORIENTATION TARGET,degrees) (O:XMLVAR\_JetwayWheelOrientation\_SmoothFactor) \* + (>O:XMLVAR\_JetwayWheelOrientationTarget) (\* Move the smoothed target to \[-90,90\] \*) (O:XMLVAR\_JetwayWheelOrientationTarget) 90 > if{ (O:XMLVAR\_JetwayWheelOrientationTarget) 180 - (>O:XMLVAR\_JetwayWheelOrientationTarget) } (O:XMLVAR\_JetwayWheelOrientationTarget) -90 < if{ (O:XMLVAR\_JetwayWheelOrientationTarget) 180 + (>O:XMLVAR\_JetwayWheelOrientationTarget) } (\* Move the current to \[-90,90\] \*) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 90 > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) -90 < if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (\* Target is in \[-90,90\]. Moves current to be closer \*) (O:XMLVAR\_JetwayWheelOrientationTarget) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) - abs 90 > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) (O:XMLVAR\_JetwayWheelOrientationTarget) > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } els{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } } (\* If target is close enough, match it with current, otherwise add the delta in the correct direction \*) (O:XMLVAR\_JetwayWheelOrientationTarget) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) - abs (A:ANIMATION DELTA TIME, seconds) \#SPEED\# \* < if{ (O:XMLVAR\_JetwayWheelOrientationTarget) (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } els{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) (O:XMLVAR\_JetwayWheelOrientationTarget) > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) (A:ANIMATION DELTA TIME, seconds) \#SPEED\# \* - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } els{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) (A:ANIMATION DELTA TIME, seconds) \#SPEED\# \* + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } } (\* Move current back to \[-180,180\] \*) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 360 - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) -180 < if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 360 + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (\* if anim is \[-90,90\] or \[0,180\], it is symmetric with a 180 deg rotation, so add +-180 to match the \[min,max\] interval (hopefully) \*) (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) \#MAX\_ANGLE\# > if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 - (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) \#MIN\_ANGLE\# < if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) 180 + (>A:JETWAY WHEEL ORIENTATION CURRENT,degrees) } (\* first frame of animation might be min\_angle or max\_angle, match the angle to frame accordingly \*) \#MIN\_TO\_MAX\# 1 == if{ (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) \#MIN\_ANGLE\# - 100 \#MAX\_ANGLE\# \#MIN\_ANGLE\# - / \* } els{ \#MAX\_ANGLE\# (A:JETWAY WHEEL ORIENTATION CURRENT,degrees) - 100 \#MAX\_ANGLE\# \#MIN\_ANGLE\# - / \* } </ANIM\_CODE> <ANIM\_LENGTH>100</ANIM\_LENGTH> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIM\_NAME - MIN\_ANGLE - MAX\_ANGLE - MIN\_TO\_MAX - SPEED - SMOOTH\_TIME\_FACTOR   Templates used: - [ASOBO\_GT\_Anim\_Code](../generic/animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_CODE (using SMOOTH\_TIME\_FACTOR, SPEED, MAX\_ANGLE, MIN\_ANGLE, MIN\_TO\_MAX) - ANIM\_LENGTH [[Go back to top]](#top) [[Go back to index]](..\..\Template_Explorer.html)