1
0
Fork 0

Sim: Refactor views system to be in more efficent code, and reset views everywhere, add new wing views

This commit is contained in:
Josh Davidson 2020-11-27 12:13:47 -05:00
parent c7ba88dc23
commit 730c0f3117
9 changed files with 495 additions and 197 deletions

View file

@ -21,21 +21,22 @@
<path>Aircraft/A320-family/Sounds/cfm56-sound.xml</path>
</sound>
<chase-distance-m type="double" archive="y">-60.0</chase-distance-m>
<view>
<name>Pilot View</name>
<view n="0">
<name>Captain View</name>
<internal archive="y">true</internal>
<config>
<x-offset-m archive="y">-0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="100">
<name>Copilot View</name>
<name>First Officer View</name>
<type>lookfrom</type>
<internal archive="y">true</internal>
<config>
@ -43,8 +44,10 @@
<x-offset-m archive="y">0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="101">
@ -56,8 +59,10 @@
<x-offset-m archive="y">0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.72</z-offset-m>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<default-field-of-view-deg type="double">115</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="102">
@ -69,8 +74,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-14.15</z-offset-m>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="103">
@ -82,8 +89,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.8</z-offset-m>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="104">
@ -95,8 +104,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">52</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="105">
@ -108,11 +119,43 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<heading-offset-deg>129</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">129</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="106">
<name>Right Front View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">231</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<name>Left Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">103</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="108">
<name>Right Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -121,11 +164,13 @@
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<heading-offset-deg>257</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">257</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<view n="109">
<name>Left Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -134,8 +179,25 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<heading-offset-deg>63</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">63</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="110">
<name>Right Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">297</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>

View file

@ -22,19 +22,21 @@
</sound>
<chase-distance-m type="double" archive="y">-60.0</chase-distance-m>
<view>
<name>Pilot View</name>
<view n="0">
<name>Captain View</name>
<internal archive="y">true</internal>
<config>
<x-offset-m archive="y">-0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="100">
<name>Copilot View</name>
<name>First Officer View</name>
<type>lookfrom</type>
<internal archive="y">true</internal>
<config>
@ -42,8 +44,10 @@
<x-offset-m archive="y">0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="101">
@ -55,8 +59,10 @@
<x-offset-m archive="y">0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.72</z-offset-m>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<default-field-of-view-deg type="double">115</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="102">
@ -68,8 +74,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-14.15</z-offset-m>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="103">
@ -81,8 +89,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.8</z-offset-m>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="104">
@ -94,8 +104,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">52</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="105">
@ -107,11 +119,43 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<heading-offset-deg>129</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">129</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="106">
<name>Right Front View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">231</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<name>Left Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">103</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="108">
<name>Right Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -120,11 +164,13 @@
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<heading-offset-deg>257</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">257</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<view n="109">
<name>Left Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -133,19 +179,27 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<heading-offset-deg>63</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">63</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="110">
<name>Right Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">297</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<systems n="0">
<autopilot n="0">
<path>Aircraft/A320-family/Systems/fadec-cfm.xml</path>
</autopilot>
<autopilot n="10">
<path>Aircraft/A320-family/Systems/cfm56-sound.xml</path>
</autopilot>
</systems>
</sim>

View file

@ -22,19 +22,21 @@
</sound>
<chase-distance-m type="double" archive="y">-60.0</chase-distance-m>
<view>
<name>Pilot View</name>
<view n="0">
<name>Captain View</name>
<internal archive="y">true</internal>
<config>
<x-offset-m archive="y">-0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="100">
<name>Copilot View</name>
<name>First Officer View</name>
<type>lookfrom</type>
<internal archive="y">true</internal>
<config>
@ -42,8 +44,10 @@
<x-offset-m archive="y">0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="101">
@ -55,8 +59,10 @@
<x-offset-m archive="y">0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.72</z-offset-m>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<default-field-of-view-deg type="double">115</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="102">
@ -68,8 +74,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-14.15</z-offset-m>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="103">
@ -81,8 +89,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.8</z-offset-m>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="104">
@ -94,8 +104,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">52</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="105">
@ -107,11 +119,43 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<heading-offset-deg>129</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">129</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="106">
<name>Right Front View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">231</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<name>Left Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">103</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="108">
<name>Right Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -120,11 +164,13 @@
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<heading-offset-deg>257</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">257</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<view n="109">
<name>Left Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -133,8 +179,25 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<heading-offset-deg>63</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">63</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="110">
<name>Right Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">297</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>

View file

@ -22,19 +22,21 @@
</sound>
<chase-distance-m type="double" archive="y">-60.0</chase-distance-m>
<view>
<name>Pilot View</name>
<view n="0">
<name>Captain View</name>
<internal archive="y">true</internal>
<config>
<x-offset-m archive="y">-0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="100">
<name>Copilot View</name>
<name>First Officer View</name>
<type>lookfrom</type>
<internal archive="y">true</internal>
<config>
@ -42,8 +44,10 @@
<x-offset-m archive="y">0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="101">
@ -55,8 +59,10 @@
<x-offset-m archive="y">0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.72</z-offset-m>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<default-field-of-view-deg type="double">115</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="102">
@ -68,8 +74,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-14.15</z-offset-m>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="103">
@ -81,8 +89,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.8</z-offset-m>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="104">
@ -94,8 +104,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">52</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="105">
@ -107,11 +119,43 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<heading-offset-deg>129</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">129</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="106">
<name>Right Front View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">231</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<name>Left Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">103</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="108">
<name>Right Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -120,11 +164,13 @@
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<heading-offset-deg>257</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">257</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<view n="109">
<name>Left Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -133,8 +179,25 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<heading-offset-deg>63</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">63</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="110">
<name>Right Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">297</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>

View file

@ -22,19 +22,21 @@
</sound>
<chase-distance-m type="double" archive="y">-60.0</chase-distance-m>
<view>
<name>Pilot View</name>
<view n="0">
<name>Captain View</name>
<internal archive="y">true</internal>
<config>
<x-offset-m archive="y">-0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="100">
<name>Copilot View</name>
<name>First Officer View</name>
<type>lookfrom</type>
<internal archive="y">true</internal>
<config>
@ -42,8 +44,10 @@
<x-offset-m archive="y">0.45</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="101">
@ -55,8 +59,10 @@
<x-offset-m archive="y">0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.72</z-offset-m>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<default-field-of-view-deg type="double">115</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">65.5</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="102">
@ -68,8 +74,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-14.15</z-offset-m>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-76</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="103">
@ -81,8 +89,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.8</z-offset-m>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<default-field-of-view-deg type="double">63</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-82</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="104">
@ -94,8 +104,10 @@
<x-offset-m archive="y">0.0</x-offset-m>
<y-offset-m archive="y">2.34</y-offset-m>
<z-offset-m archive="y">-13.75</z-offset-m>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<default-field-of-view-deg type="double">52</default-field-of-view-deg>
<heading-offset-deg archive="y">0</heading-offset-deg>
<pitch-offset-deg archive="y">-14.6</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="105">
@ -107,11 +119,43 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<heading-offset-deg>129</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">129</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="106">
<name>Right Front View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">-6.49</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">231</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<name>Left Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">103</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="108">
<name>Right Mid View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -120,11 +164,13 @@
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">0</z-offset-m>
<heading-offset-deg>257</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">257</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="107">
<view n="109">
<name>Left Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
@ -133,8 +179,25 @@
<x-offset-m archive="y">-2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<heading-offset-deg>63</heading-offset-deg>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">63</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>
<view n="110">
<name>Right Aft View</name>
<type>lookfrom</type>
<internal archive="y">false</internal>
<config>
<from-model type="bool">true</from-model>
<x-offset-m archive="y">2.81</x-offset-m>
<y-offset-m archive="y">2.44</y-offset-m>
<z-offset-m archive="y">6.8</z-offset-m>
<default-field-of-view-deg type="double">85</default-field-of-view-deg>
<heading-offset-deg archive="y">297</heading-offset-deg>
<pitch-offset-deg archive="y">0</pitch-offset-deg>
<roll-offset-deg archive="y">0</roll-offset-deg>
</config>
</view>

View file

@ -4,147 +4,120 @@
#########
# Views #
#########
var viewNumberRaw = 0;
var shakeFlag = 0;
var resetView = func() {
if (getprop("/sim/current-view/view-number") == 0) {
if (getprop("/sim/rendering/headshake/enabled")) {
var _shakeFlag = 1;
setprop("/sim/rendering/headshake/enabled", 0);
viewNumberRaw = pts.Sim.CurrentView.viewNumberRaw.getValue();
if (viewNumberRaw == 0 or (viewNumberRaw >= 100 and viewNumberRaw <= 110)) {
if (pts.Sim.Rendering.Headshake.enabled.getBoolValue()) {
shakeFlag = 1;
pts.Sim.Rendering.Headshake.enabled.setBoolValue(0);
} else {
var _shakeFlag = 0;
shakeFlag = 0;
}
var hd = getprop("/sim/current-view/heading-offset-deg");
var hd_t = 360;
if (hd < 180) {
hd_t = hd_t - 360;
}
pts.Sim.CurrentView.fieldOfView.setValue(props.globals.getNode("/sim/view[" ~ viewNumberRaw ~ "]/config/default-field-of-view-deg").getValue());
pts.Sim.CurrentView.headingOffsetDeg.setValue(props.globals.getNode("/sim/view[" ~ viewNumberRaw ~ "]/config/heading-offset-deg").getValue());
pts.Sim.CurrentView.pitchOffsetDeg.setValue(props.globals.getNode("/sim/view[" ~ viewNumberRaw ~ "]/config/pitch-offset-deg").getValue());
pts.Sim.CurrentView.rollOffsetDeg.setValue(props.globals.getNode("/sim/view[" ~ viewNumberRaw ~ "]/config/roll-offset-deg").getValue());
pts.Sim.CurrentView.xOffsetM.setValue(props.globals.getNode("/sim/view[" ~ viewNumberRaw ~ "]/config/x-offset-m").getValue());
pts.Sim.CurrentView.yOffsetM.setValue(props.globals.getNode("/sim/view[" ~ viewNumberRaw ~ "]/config/y-offset-m").getValue());
pts.Sim.CurrentView.zOffsetM.setValue(props.globals.getNode("/sim/view[" ~ viewNumberRaw ~ "]/config/z-offset-m").getValue());
interpolate("sim/current-view/field-of-view", 63, 0.66);
interpolate("sim/current-view/heading-offset-deg", hd_t, 0.66);
interpolate("sim/current-view/pitch-offset-deg", -14.6, 0.66);
interpolate("sim/current-view/roll-offset-deg", 0, 0.66);
interpolate("sim/current-view/x-offset-m", -0.45, 0.66);
interpolate("sim/current-view/y-offset-m", 2.34, 0.66);
interpolate("sim/current-view/z-offset-m", -13.75, 0.66);
if (_shakeFlag) {
setprop("/sim/rendering/headshake/enabled", 1);
if (shakeFlag) {
pts.Sim.Rendering.Headshake.enabled.setBoolValue(1);
}
}
}
var autopilotView = func() {
if (getprop("/sim/current-view/view-number") == 0) {
if (getprop("/sim/rendering/headshake/enabled")) {
var _shakeFlag = 1;
setprop("/sim/rendering/headshake/enabled", 0);
if (pts.Sim.CurrentView.viewNumberRaw.getValue() == 0) {
if (pts.Sim.Rendering.Headshake.enabled.getBoolValue()) {
shakeFlag = 1;
pts.Sim.Rendering.Headshake.enabled.setBoolValue(0);
} else {
var _shakeFlag = 0;
shakeFlag = 0;
}
var hd = getprop("/sim/current-view/heading-offset-deg");
var hd_t = 341.7;
if (hd < 180) {
hd_t = hd_t - 360;
}
pts.Sim.CurrentView.fieldOfView.setValue(63);
pts.Sim.CurrentView.headingOffsetDeg.setValue(341.7);
pts.Sim.CurrentView.pitchOffsetDeg.setValue(-16.4);
pts.Sim.CurrentView.rollOffsetDeg.setValue(0);
pts.Sim.CurrentView.xOffsetM.setValue(-0.45);
pts.Sim.CurrentView.yOffsetM.setValue(2.34);
pts.Sim.CurrentView.zOffsetM.setValue(-13.75);
interpolate("sim/current-view/field-of-view", 63, 0.66);
interpolate("sim/current-view/heading-offset-deg", hd_t, 0.66);
interpolate("sim/current-view/pitch-offset-deg", -16.4, 0.66);
interpolate("sim/current-view/roll-offset-deg", 0, 0.66);
interpolate("sim/current-view/x-offset-m", -0.45, 0.66);
interpolate("sim/current-view/y-offset-m", 2.34, 0.66);
interpolate("sim/current-view/z-offset-m", -13.75, 0.66);
if (_shakeFlag) {
setprop("/sim/rendering/headshake/enabled", 1);
if (shakeFlag) {
pts.Sim.Rendering.Headshake.enabled.setBoolValue(1);
}
}
}
var overheadView = func() {
if (getprop("/sim/current-view/view-number") == 0) {
if (getprop("/sim/rendering/headshake/enabled")) {
var _shakeFlag = 1;
setprop("/sim/rendering/headshake/enabled", 0);
if (pts.Sim.CurrentView.viewNumberRaw.getValue() == 0) {
if (pts.Sim.Rendering.Headshake.enabled.getBoolValue()) {
shakeFlag = 1;
pts.Sim.Rendering.Headshake.enabled.setBoolValue(0);
} else {
var _shakeFlag = 0;
shakeFlag = 0;
}
var hd = getprop("/sim/current-view/heading-offset-deg");
var hd_t = 348;
if (hd < 180) {
hd_t = hd_t - 360;
}
pts.Sim.CurrentView.fieldOfView.setValue(105.8);
pts.Sim.CurrentView.headingOffsetDeg.setValue(348);
pts.Sim.CurrentView.pitchOffsetDeg.setValue(65.25);
pts.Sim.CurrentView.rollOffsetDeg.setValue(0,0.66);
pts.Sim.CurrentView.xOffsetM.setValue(-0.12);
pts.Sim.CurrentView.yOffsetM.setValue(2.34);
pts.Sim.CurrentView.zOffsetM.setValue(-13.75);
interpolate("sim/current-view/field-of-view", 105.8, 0.66);
interpolate("sim/current-view/heading-offset-deg", hd_t, 0.66);
interpolate("sim/current-view/pitch-offset-deg", 65.25, 0.66);
interpolate("sim/current-view/roll-offset-deg", 0,0.66);
interpolate("sim/current-view/x-offset-m", -0.12, 0.66);
interpolate("sim/current-view/y-offset-m", 2.34, 0.66);
interpolate("sim/current-view/z-offset-m", -13.75, 0.66);
if (_shakeFlag) {
setprop("/sim/rendering/headshake/enabled", 1);
if (shakeFlag) {
pts.Sim.Rendering.Headshake.enabled.setBoolValue(1);
}
}
}
var pedestalView = func() {
if (getprop("/sim/current-view/view-number") == 0) {
if (getprop("/sim/rendering/headshake/enabled")) {
var _shakeFlag = 1;
setprop("/sim/rendering/headshake/enabled", 0);
if (pts.Sim.CurrentView.viewNumberRaw.getValue() == 0) {
if (pts.Sim.Rendering.Headshake.enabled.getBoolValue()) {
shakeFlag = 1;
pts.Sim.Rendering.Headshake.enabled.setBoolValue(0);
} else {
var _shakeFlag = 0;
shakeFlag = 0;
}
var hd = getprop("/sim/current-view/heading-offset-deg");
var hd_t = 315;
if (hd < 180) {
hd_t = hd_t - 360;
}
pts.Sim.CurrentView.fieldOfView.setValue(63);
pts.Sim.CurrentView.headingOffsetDeg.setValue(315);
pts.Sim.CurrentView.pitchOffsetDeg.setValue(-46.3);
pts.Sim.CurrentView.rollOffsetDeg.setValue(0);
pts.Sim.CurrentView.xOffsetM.setValue(-0.45);
pts.Sim.CurrentView.yOffsetM.setValue(2.34);
pts.Sim.CurrentView.zOffsetM.setValue(-13.75);
interpolate("sim/current-view/field-of-view", 63, 0.66);
interpolate("sim/current-view/heading-offset-deg", hd_t, 0.66);
interpolate("sim/current-view/pitch-offset-deg", -46.3, 0.66);
interpolate("sim/current-view/roll-offset-deg", 0, 0.66);
interpolate("sim/current-view/x-offset-m", -0.45, 0.66);
interpolate("sim/current-view/y-offset-m", 2.34, 0.66);
interpolate("sim/current-view/z-offset-m", -13.75, 0.66);
if (_shakeFlag) {
setprop("/sim/rendering/headshake/enabled", 1);
if (shakeFlag) {
pts.Sim.Rendering.Headshake.enabled.setBoolValue(1);
}
}
}
var lightsView = func() {
if (getprop("/sim/current-view/view-number") == 0) {
if (getprop("/sim/rendering/headshake/enabled")) {
var _shakeFlag = 1;
setprop("/sim/rendering/headshake/enabled", 0);
if (pts.Sim.CurrentView.viewNumberRaw.getValue() == 0) {
if (pts.Sim.Rendering.Headshake.enabled.getBoolValue()) {
shakeFlag = 1;
pts.Sim.Rendering.Headshake.enabled.setBoolValue(0);
} else {
var _shakeFlag = 0;
shakeFlag = 0;
}
var hd = getprop("/sim/current-view/heading-offset-deg");
var hd_t = 329;
if (hd < 180) {
hd_t = hd_t - 360;
}
pts.Sim.CurrentView.fieldOfView.setValue(63);
pts.Sim.CurrentView.headingOffsetDeg.setValue(329);
pts.Sim.CurrentView.pitchOffsetDeg.setValue(17.533);
pts.Sim.CurrentView.rollOffsetDeg.setValue(0);
pts.Sim.CurrentView.xOffsetM.setValue(-0.45);
pts.Sim.CurrentView.yOffsetM.setValue(2.34);
pts.Sim.CurrentView.zOffsetM.setValue(-13.75);
interpolate("sim/current-view/field-of-view", 63, 0.66);
interpolate("sim/current-view/heading-offset-deg", hd_t, 0.66);
interpolate("sim/current-view/pitch-offset-deg", 17.533, 0.66);
interpolate("sim/current-view/roll-offset-deg", 0, 0.66);
interpolate("sim/current-view/x-offset-m", -0.45, 0.66);
interpolate("sim/current-view/y-offset-m", 2.34, 0.66);
interpolate("sim/current-view/z-offset-m", -13.75, 0.66);
if (_shakeFlag) {
setprop("/sim/rendering/headshake/enabled", 1);
if (shakeFlag) {
pts.Sim.Rendering.Headshake.enabled.setBoolValue(1);
}
}
}

View file

@ -205,6 +205,21 @@ var Position = {
var Sim = {
aero: props.globals.getNode("/sim/aero"),
CurrentView: {
fieldOfView: props.globals.getNode("/sim/current-view/field-of-view", 1),
headingOffsetDeg: props.globals.getNode("/sim/current-view/heading-offset-deg", 1),
name: props.globals.getNode("/sim/current-view/name", 1),
pitchOffsetDeg: props.globals.getNode("/sim/current-view/pitch-offset-deg", 1),
rollOffsetDeg: props.globals.getNode("/sim/current-view/roll-offset-deg", 1),
type: props.globals.getNode("/sim/current-view/type", 1),
viewNumberRaw: props.globals.getNode("/sim/current-view/view-number-raw", 1),
zOffsetDefault: props.globals.getNode("/sim/current-view/z-offset-default", 1),
xOffsetM: props.globals.getNode("/sim/current-view/x-offset-m", 1),
yOffsetM: props.globals.getNode("/sim/current-view/y-offset-m", 1),
zOffsetM: props.globals.getNode("/sim/current-view/z-offset-m", 1),
zOffsetMaxM: props.globals.getNode("/sim/current-view/z-offset-max-m", 1),
zOffsetMinM: props.globals.getNode("/sim/current-view/z-offset-min-m", 1),
},
Input: {
Selected: {
engine: [props.globals.getNode("/sim/input/selected/engine[0]", 1),props.globals.getNode("/sim/input/selected/engine[1]", 1)],
@ -214,6 +229,11 @@ var Sim = {
online: props.globals.getNode("/sim/multiplay/online"),
},
pause: props.globals.getNode("/sim/freeze/master"),
Rendering: {
Headshake: {
enabled: props.globals.getNode("/sim/rendering/headshake/enabled"),
},
},
replayState: props.globals.getNode("/sim/freeze/replay-state"),
Replay: {
replayActive: props.globals.getNode("/sim/replay/replay-state"),

View file

@ -1,4 +1,4 @@
# Distance Zooming
# Octal's Distance Zooming
# Copyright (c) 2020 Josh Davidson (Octal450)
# Based on PropertyRule file by onox
@ -6,33 +6,33 @@ var distance = 0;
var min_dist = 0;
var max_dist = 0;
var canChangeZOffset = 0;
var decStep = -1;
var incStep = 1;
var decStep = -5;
var incStep = 5;
var viewName = "XX";
var fovZoom = func(d) {
viewName = getprop("/sim/current-view/name");
canChangeZOffset = getprop("/sim/current-view/type") == "lookat" and viewName != "Tower View" and viewName != "Tower View AGL" and viewName != "Fly-By View" and viewName != "Chase View" and viewName != "Chase View Without Yaw" and viewName != "Walk View" and viewName != "Walker Orbit View";
viewName = pts.Sim.CurrentView.name.getValue();
canChangeZOffset = pts.Sim.CurrentView.type.getValue() == "lookat" and viewName != "Tower View" and viewName != "Fly-By View" and viewName != "Chase View" and viewName != "Chase View Without Yaw" and viewName != "Walk View";
if (getprop("/sim/current-view/z-offset-m") <= -20) {
decStep = -2;
if (pts.Sim.CurrentView.zOffsetM.getValue() <= -50) {
decStep = -10;
} else {
decStep = -1;
decStep = -5;
}
if (getprop("/sim/current-view/z-offset-m") < -20) { # Not a typo, the conditions are different
incStep = 2;
if (pts.Sim.CurrentView.zOffsetM.getValue() < -50) { # Not a typo, the conditions are different
incStep = 10;
} else {
incStep = 1;
incStep = 5;
}
if (d == -1) {
if (canChangeZOffset) {
distance = getprop("/sim/current-view/z-offset-m");
min_dist = getprop("/sim/current-view/z-offset-min-m");
distance = pts.Sim.CurrentView.zOffsetM.getValue();
min_dist = pts.Sim.CurrentView.zOffsetMinM.getValue();
distance = math.round(std.min(-min_dist, distance + incStep) / incStep, 0.1) * incStep;
setprop("/sim/current-view/z-offset-m", distance);
pts.Sim.CurrentView.zOffsetM.setValue(distance);
gui.popupTip(sprintf("%d meters", abs(distance)));
} else {
@ -40,11 +40,11 @@ var fovZoom = func(d) {
}
} else if (d == 1) {
if (canChangeZOffset) {
distance = getprop("/sim/current-view/z-offset-m");
max_dist = getprop("/sim/current-view/z-offset-max-m");
distance = pts.Sim.CurrentView.zOffsetM.getValue();
max_dist = pts.Sim.CurrentView.zOffsetMaxM.getValue();
distance = math.round(std.max(-max_dist, distance + decStep) / decStep, 0.1) * decStep;
setprop("/sim/current-view/z-offset-m", distance);
pts.Sim.CurrentView.zOffsetM.setValue(distance);
gui.popupTip(sprintf("%d meters", abs(distance)));
} else {
@ -52,11 +52,11 @@ var fovZoom = func(d) {
}
} else if (d == 0) {
if (canChangeZOffset) {
setprop("/sim/current-view/z-offset-m", getprop("/sim/current-view/z-offset-default") * -1);
gui.popupTip(sprintf("%d meters", getprop("/sim/current-view/z-offset-default")));
pts.Sim.CurrentView.zOffsetM.setValue(pts.Sim.CurrentView.zOffsetDefault.getValue() * -1);
gui.popupTip(sprintf("%d meters", pts.Sim.CurrentView.zOffsetDefault.getValue()));
} else {
setprop("/sim/current-view/field-of-view", getprop("/sim/view/config/default-field-of-view-deg"));
gui.popupTip(sprintf("FOV: %.1f", getprop("/sim/current-view/field-of-view")))
pts.Sim.CurrentView.fieldOfView.setValue(pts.Sim.View.Config.defaultFieldOfViewDeg.getValue());
gui.popupTip(sprintf("FOV: %.1f", pts.Sim.CurrentView.fieldOfView.getValue()));
}
}
}

View file

@ -1 +1 @@
42
43