NavDisplay bug fixes:
- NM font correction - Range displayed in PLAN mode - ETA seconds format correction - Calculate wind arrow based on track/heading
This commit is contained in:
parent
cab89b1b5a
commit
653d86db46
2 changed files with 290 additions and 64 deletions
|
@ -29,13 +29,13 @@
|
||||||
inkscape:window-height="716"
|
inkscape:window-height="716"
|
||||||
id="namedview102"
|
id="namedview102"
|
||||||
showgrid="false"
|
showgrid="false"
|
||||||
inkscape:zoom="0.353555"
|
inkscape:zoom="1"
|
||||||
inkscape:cx="265.201"
|
inkscape:cx="303.412"
|
||||||
inkscape:cy="188.143"
|
inkscape:cy="-37.9065"
|
||||||
inkscape:window-x="-8"
|
inkscape:window-x="-8"
|
||||||
inkscape:window-y="-8"
|
inkscape:window-y="-8"
|
||||||
inkscape:window-maximized="1"
|
inkscape:window-maximized="1"
|
||||||
inkscape:current-layer="layer3"
|
inkscape:current-layer="layer2"
|
||||||
inkscape:object-nodes="true"
|
inkscape:object-nodes="true"
|
||||||
inkscape:snap-smooth-nodes="true"
|
inkscape:snap-smooth-nodes="true"
|
||||||
inkscape:snap-object-midpoints="true"
|
inkscape:snap-object-midpoints="true"
|
||||||
|
@ -46,7 +46,7 @@
|
||||||
position="512,200" /><sodipodi:guide
|
position="512,200" /><sodipodi:guide
|
||||||
id="guide3167"
|
id="guide3167"
|
||||||
orientation="1,0"
|
orientation="1,0"
|
||||||
position="512,875.213" /><sodipodi:guide
|
position="512,808.996" /><sodipodi:guide
|
||||||
id="guide3169"
|
id="guide3169"
|
||||||
orientation="-0.866025,0.5"
|
orientation="-0.866025,0.5"
|
||||||
position="512,200" /><sodipodi:guide
|
position="512,200" /><sodipodi:guide
|
||||||
|
@ -159,6 +159,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
@ -170,7 +172,9 @@
|
||||||
sodipodi:role="line"
|
sodipodi:role="line"
|
||||||
id="tspan7251"
|
id="tspan7251"
|
||||||
x="844.04407"
|
x="844.04407"
|
||||||
y="126.12489">99.9NM</tspan></text>
|
y="126.12489">99.9</tspan></text>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -203,6 +207,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -219,6 +225,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
@ -235,12 +243,14 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
x="38.276394"
|
x="38.276394"
|
||||||
y="53.306854"
|
y="53.306854"
|
||||||
id="text3815"
|
id="gsLbl"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
inkscape:label="#text7243"><tspan
|
inkscape:label="#text7243"><tspan
|
||||||
style="font-size:24px"
|
style="font-size:24px"
|
||||||
|
@ -252,10 +262,12 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
id="text3819"
|
id="tasLbl"
|
||||||
y="53.306854"
|
y="53.306854"
|
||||||
x="158.17084"
|
x="158.17084"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
@ -269,6 +281,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<g
|
<g
|
||||||
id="hdgGroup"
|
id="hdgGroup"
|
||||||
inkscape:label="#g3141"><path
|
inkscape:label="#g3141"><path
|
||||||
|
@ -293,6 +307,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -310,6 +326,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
@ -327,6 +345,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</g><text
|
</g><text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
@ -344,6 +364,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -361,6 +383,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
@ -378,6 +402,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
@ -395,6 +421,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -412,6 +440,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
@ -429,6 +459,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -446,6 +478,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -463,6 +497,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -480,6 +516,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<g
|
<g
|
||||||
inkscape:label="#g3124"
|
inkscape:label="#g3124"
|
||||||
id="compass"><path
|
id="compass"><path
|
||||||
|
@ -508,6 +546,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -526,6 +566,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(0.5,-0.866026,0.866026,0.5,0,0)"
|
transform="matrix(0.5,-0.866026,0.866026,0.5,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -544,6 +586,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -562,6 +606,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(-0.5,-0.866025,0.866025,-0.5,0,0)"
|
transform="matrix(-0.5,-0.866025,0.866025,-0.5,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -580,6 +626,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -598,6 +646,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="scale(-1,-1)"
|
transform="scale(-1,-1)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -616,6 +666,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -634,6 +686,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(-0.5,0.866026,-0.866026,-0.5,0,0)"
|
transform="matrix(-0.5,0.866026,-0.866026,-0.5,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -652,6 +706,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -670,6 +726,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(0.5,0.866025,-0.866025,0.5,0,0)"
|
transform="matrix(0.5,0.866025,-0.866025,0.5,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -688,6 +746,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -706,6 +766,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<path
|
<path
|
||||||
sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccscccscccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccccc"
|
sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccscccscccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccccc"
|
||||||
id="path3181"
|
id="path3181"
|
||||||
|
@ -775,6 +837,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<path
|
<path
|
||||||
sodipodi:nodetypes="cscc"
|
sodipodi:nodetypes="cscc"
|
||||||
inkscape:connector-curvature="0"
|
inkscape:connector-curvature="0"
|
||||||
|
@ -798,6 +862,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<path
|
<path
|
||||||
inkscape:transform-center-y="-662.357"
|
inkscape:transform-center-y="-662.357"
|
||||||
inkscape:label="#path3100"
|
inkscape:label="#path3100"
|
||||||
|
@ -862,6 +928,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -879,6 +947,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0099d9;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#0099d9;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
@ -896,6 +966,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -913,6 +985,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<path
|
<path
|
||||||
inkscape:label="#path7253"
|
inkscape:label="#path7253"
|
||||||
style="fill:none;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
style="fill:none;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||||
|
@ -933,7 +1007,21 @@
|
||||||
d="m 532,123 0,-21 -6,0 -12,21 -4,0 -12,-21 -6,0 0,21 z"
|
d="m 532,123 0,-21 -6,0 -12,21 -4,0 -12,-21 -6,0 0,21 z"
|
||||||
style="fill:none;stroke:#ff00ff;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
style="fill:none;stroke:#ff00ff;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||||
inkscape:label="#path4994"
|
inkscape:label="#path4994"
|
||||||
inkscape:transform-center-y="-711.514" /></g><g
|
inkscape:transform-center-y="-711.514" /><text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
x="918.30713"
|
||||||
|
y="125.43141"
|
||||||
|
id="wpActiveDistLbl"
|
||||||
|
sodipodi:linespacing="125%"
|
||||||
|
inkscape:label="#text7243"><tspan
|
||||||
|
style="font-size:24px"
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan3179"
|
||||||
|
x="918.30713"
|
||||||
|
y="125.43141">NM</tspan></text>
|
||||||
|
|
||||||
|
</g><g
|
||||||
inkscape:groupmode="layer"
|
inkscape:groupmode="layer"
|
||||||
id="layer1"
|
id="layer1"
|
||||||
inkscape:label="CTR"
|
inkscape:label="CTR"
|
||||||
|
@ -1013,6 +1101,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(0.866025,-0.5,0.5,0.866025,0,0)"
|
transform="matrix(0.866025,-0.5,0.5,0.866025,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -1031,6 +1121,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -1049,6 +1141,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(0,-1,1,0,0,0)"
|
transform="matrix(0,-1,1,0,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -1067,6 +1161,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -1085,6 +1181,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(-0.866026,-0.5,0.5,-0.866026,0,0)"
|
transform="matrix(-0.866026,-0.5,0.5,-0.866026,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -1103,6 +1201,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -1121,6 +1221,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(-0.866025,0.5,-0.5,-0.866025,0,0)"
|
transform="matrix(-0.866025,0.5,-0.5,-0.866025,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -1139,6 +1241,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -1157,6 +1261,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(0,1,-1,0,0,0)"
|
transform="matrix(0,1,-1,0,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -1175,6 +1281,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
inkscape:label="#text7243"
|
inkscape:label="#text7243"
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
|
@ -1193,6 +1301,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
transform="matrix(0.866026,0.5,-0.5,0.866026,0,0)"
|
transform="matrix(0.866026,0.5,-0.5,0.866026,0,0)"
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
|
@ -1211,6 +1321,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<path
|
<path
|
||||||
inkscape:connector-curvature="0"
|
inkscape:connector-curvature="0"
|
||||||
style="fill:#ededed;fill-opacity:1;fill-rule:nonzero;stroke:#ededed;stroke-width:10.054152;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
style="fill:#ededed;fill-opacity:1;fill-rule:nonzero;stroke:#ededed;stroke-width:10.054152;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||||
|
@ -1309,24 +1421,12 @@
|
||||||
id="planArcs"
|
id="planArcs"
|
||||||
inkscape:label="#g3956"
|
inkscape:label="#g3956"
|
||||||
transform="matrix(1.02827,0,0,1.02827,-14.7256,-29.1838)"><path
|
transform="matrix(1.02827,0,0,1.02827,-14.7256,-29.1838)"><path
|
||||||
transform="matrix(2.22078,0,0,2.22078,-717.74,-625.9)"
|
style="fill:none;stroke:#ededed;stroke-width:3.999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1"
|
||||||
d="m 744,524 a 190,190 0 1 1 -380,0 190,190 0 1 1 380,0 z"
|
d="m 542,308.656 c 105.903,14.466 187.5,105.282 187.5,215.156 0,109.875 -81.597,200.659 -187.5,215.126 m 0,217.75 C 767.783,941.437 946.219,753.462 946.219,523.812 946.219,294.164 767.783,106.188 542,90.9375 m -60,0.031 C 256.534,106.544 78.4688,294.391 78.4688,523.812 78.4688,753.235 256.534,941.049 482,956.625 m 0,-217.781 C 376.425,724.085 295.156,633.454 295.156,523.812 295.156,414.17 376.424,323.508 482,308.75"
|
||||||
sodipodi:ry="190"
|
transform="matrix(0.972507,0,0,0.972507,14.3208,28.3815)"
|
||||||
sodipodi:rx="190"
|
|
||||||
sodipodi:cy="524"
|
|
||||||
sodipodi:cx="554"
|
|
||||||
id="path3171"
|
id="path3171"
|
||||||
style="fill:none;stroke:#ededed;stroke-width:1.75165;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
inkscape:connector-curvature="0"
|
||||||
sodipodi:type="arc" /><path
|
sodipodi:nodetypes="csccsccsccsc" /></g><g
|
||||||
sodipodi:type="arc"
|
|
||||||
style="fill:none;stroke:#ededed;stroke-width:3.499612;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
|
||||||
id="path3954"
|
|
||||||
sodipodi:cx="554"
|
|
||||||
sodipodi:cy="524"
|
|
||||||
sodipodi:rx="190"
|
|
||||||
sodipodi:ry="190"
|
|
||||||
d="m 744,524 a 190,190 0 1 1 -380,0 190,190 0 1 1 380,0 z"
|
|
||||||
transform="matrix(1.11156,0,0,1.11156,-103.234,-44.67)" /></g><g
|
|
||||||
style="display:inline"
|
style="display:inline"
|
||||||
id="northUp"
|
id="northUp"
|
||||||
inkscape:label="#g3182"><text
|
inkscape:label="#g3182"><text
|
||||||
|
@ -1345,6 +1445,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<path
|
<path
|
||||||
inkscape:label="#path3017"
|
inkscape:label="#path3017"
|
||||||
sodipodi:nodetypes="cccccc"
|
sodipodi:nodetypes="cccccc"
|
||||||
|
@ -1367,6 +1469,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
sodipodi:linespacing="125%"
|
sodipodi:linespacing="125%"
|
||||||
id="text3209"
|
id="text3209"
|
||||||
|
@ -1383,20 +1487,76 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<text
|
<text
|
||||||
xml:space="preserve"
|
xml:space="preserve"
|
||||||
style="font-size:22px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#00ff00;fill-opacity:1;stroke:none;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
style="font-size:22px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#00ff00;fill-opacity:1;stroke:none;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
x="503.03763"
|
x="503.03763"
|
||||||
y="998.35583"
|
y="1008.2553"
|
||||||
id="text3213"
|
id="text3213"
|
||||||
sodipodi:linespacing="125%"><tspan
|
sodipodi:linespacing="125%"><tspan
|
||||||
sodipodi:role="line"
|
sodipodi:role="line"
|
||||||
id="tspan3215"
|
id="tspan3215"
|
||||||
x="503.03763"
|
x="503.03763"
|
||||||
y="998.35583"
|
y="1008.2553"
|
||||||
style="font-size:32px">S</tspan></text>
|
style="font-size:32px">S</tspan></text>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</g></g></svg>
|
|
||||||
|
|
||||||
|
</g><text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
x="511.74799"
|
||||||
|
y="320.56113"
|
||||||
|
id="rangePln2"
|
||||||
|
sodipodi:linespacing="125%"
|
||||||
|
inkscape:label="#text7243"><tspan
|
||||||
|
style="text-align:center;text-anchor:middle"
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan5002-7"
|
||||||
|
x="511.74799"
|
||||||
|
y="320.56113">99</tspan></text>
|
||||||
|
<text
|
||||||
|
inkscape:label="#text7243"
|
||||||
|
sodipodi:linespacing="125%"
|
||||||
|
id="rangePln1"
|
||||||
|
y="102.56212"
|
||||||
|
x="512.06421"
|
||||||
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
xml:space="preserve"><tspan
|
||||||
|
y="102.56212"
|
||||||
|
x="512.06421"
|
||||||
|
id="tspan3201"
|
||||||
|
sodipodi:role="line"
|
||||||
|
style="text-align:center;text-anchor:middle">99</tspan></text>
|
||||||
|
<text
|
||||||
|
xml:space="preserve"
|
||||||
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
x="512.21063"
|
||||||
|
y="752.73596"
|
||||||
|
id="rangePln3"
|
||||||
|
sodipodi:linespacing="125%"
|
||||||
|
inkscape:label="#text7243"><tspan
|
||||||
|
style="text-align:center;text-anchor:middle"
|
||||||
|
sodipodi:role="line"
|
||||||
|
id="tspan3205"
|
||||||
|
x="512.21063"
|
||||||
|
y="752.73596">99</tspan></text>
|
||||||
|
<text
|
||||||
|
inkscape:label="#text7243"
|
||||||
|
sodipodi:linespacing="125%"
|
||||||
|
id="rangePln4"
|
||||||
|
y="968.55823"
|
||||||
|
x="511.77499"
|
||||||
|
style="font-size:36px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ededed;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||||
|
xml:space="preserve"><tspan
|
||||||
|
y="968.55823"
|
||||||
|
x="511.77499"
|
||||||
|
id="tspan3209"
|
||||||
|
sodipodi:role="line"
|
||||||
|
style="text-align:center;text-anchor:middle">99</tspan></text>
|
||||||
|
</g></svg>
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 85 KiB |
|
@ -208,14 +208,23 @@ var NDStyles = {
|
||||||
id: 'tas',
|
id: 'tas',
|
||||||
impl: {
|
impl: {
|
||||||
init: func(nd,symbol),
|
init: func(nd,symbol),
|
||||||
predicate: func(nd) getprop("/velocities/airspeed-kt") > 100,
|
predicate: func(nd) nd.aircraft_source.get_spd() > 100,
|
||||||
is_true: func(nd) {
|
is_true: func(nd) {
|
||||||
nd.symbols.tas.setText(sprintf("%3.0f",getprop("/velocities/airspeed-kt") ));
|
nd.symbols.tas.setText(sprintf("%3.0f",getprop("/velocities/airspeed-kt") ));
|
||||||
nd.symbols.tas.show();
|
nd.symbols.tas.show();
|
||||||
},
|
},
|
||||||
is_false: func(nd) nd.symbols.tas.hide(),
|
is_false: func(nd) nd.symbols.tas.hide(),
|
||||||
}, # end of tas behavior callbacks
|
},
|
||||||
}, # end of tas hash
|
},
|
||||||
|
{
|
||||||
|
id: 'tasLbl',
|
||||||
|
impl: {
|
||||||
|
init: func(nd,symbol),
|
||||||
|
predicate: func(nd) nd.aircraft_source.get_spd() > 100,
|
||||||
|
is_true: func(nd) nd.symbols.tasLbl.show(),
|
||||||
|
is_false: func(nd) nd.symbols.tasLbl.hide(),
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
id: 'wpActiveId',
|
id: 'wpActiveId',
|
||||||
impl: {
|
impl: {
|
||||||
|
@ -234,12 +243,21 @@ var NDStyles = {
|
||||||
init: func(nd,symbol),
|
init: func(nd,symbol),
|
||||||
predicate: func(nd) getprop("/autopilot/route-manager/wp/dist") != nil and getprop("autopilot/route-manager/active"),
|
predicate: func(nd) getprop("/autopilot/route-manager/wp/dist") != nil and getprop("autopilot/route-manager/active"),
|
||||||
is_true: func(nd) {
|
is_true: func(nd) {
|
||||||
nd.symbols.wpActiveDist.setText(sprintf("%3.01fNM",getprop("/autopilot/route-manager/wp/dist")));
|
nd.symbols.wpActiveDist.setText(sprintf("%3.01f",getprop("/autopilot/route-manager/wp/dist")));
|
||||||
nd.symbols.wpActiveDist.show();
|
nd.symbols.wpActiveDist.show();
|
||||||
},
|
},
|
||||||
is_false: func(nd) nd.symbols.wpActiveDist.hide(),
|
is_false: func(nd) nd.symbols.wpActiveDist.hide(),
|
||||||
}, # of wpActiveDist.impl
|
},
|
||||||
}, # of wpActiveDist
|
},
|
||||||
|
{
|
||||||
|
id: 'wpActiveDistLbl',
|
||||||
|
impl: {
|
||||||
|
init: func(nd,symbol),
|
||||||
|
predicate: func(nd) getprop("/autopilot/route-manager/wp/dist") != nil and getprop("autopilot/route-manager/active"),
|
||||||
|
is_true: func(nd) nd.symbols.wpActiveDistLbl.show(),
|
||||||
|
is_false: func(nd) nd.symbols.wpActiveDistLbl.hide(),
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
id: 'eta',
|
id: 'eta',
|
||||||
impl: {
|
impl: {
|
||||||
|
@ -252,8 +270,8 @@ var NDStyles = {
|
||||||
etaSec=etaSec-3600*h;
|
etaSec=etaSec-3600*h;
|
||||||
var m = math.floor(etaSec/60);
|
var m = math.floor(etaSec/60);
|
||||||
etaSec=etaSec-60*m;
|
etaSec=etaSec-60*m;
|
||||||
var s = etaSec;
|
var s = etaSec/10;
|
||||||
nd.symbols.eta.setText(sprintf("%02.0f%02.0f.%02.0fz",h,m,s));
|
nd.symbols.eta.setText(sprintf("%02.0f%02.0f.%01.0fz",h,m,s));
|
||||||
nd.symbols.eta.show();
|
nd.symbols.eta.show();
|
||||||
},
|
},
|
||||||
is_false: func(nd) nd.symbols.eta.hide(),
|
is_false: func(nd) nd.symbols.eta.hide(),
|
||||||
|
@ -272,14 +290,14 @@ var NDStyles = {
|
||||||
id:'gs',
|
id:'gs',
|
||||||
impl: {
|
impl: {
|
||||||
init: func(nd,symbol),
|
init: func(nd,symbol),
|
||||||
common: func(nd) nd.symbols.gs.setText(sprintf("%3.0f",nd.aircraft_source.get_spd() )),
|
common: func(nd) nd.symbols.gs.setText(sprintf("%3.0f",nd.aircraft_source.get_gnd_spd() )),
|
||||||
predicate: func(nd) nd.aircraft_source.get_spd() >= 30,
|
predicate: func(nd) nd.aircraft_source.get_gnd_spd() >= 30,
|
||||||
is_true: func(nd) {
|
is_true: func(nd) {
|
||||||
nd.symbols.gs.setFontSize(36);
|
nd.symbols.gs.setFontSize(36);
|
||||||
},
|
},
|
||||||
is_false: func(nd) nd.symbols.gs.setFontSize(52),
|
is_false: func(nd) nd.symbols.gs.setFontSize(52),
|
||||||
}, # of gs.impl
|
},
|
||||||
}, # of gs
|
},
|
||||||
{
|
{
|
||||||
id:'rangeArcs',
|
id:'rangeArcs',
|
||||||
impl: {
|
impl: {
|
||||||
|
@ -289,7 +307,69 @@ var NDStyles = {
|
||||||
is_false: func(nd) nd.symbols.rangeArcs.hide(),
|
is_false: func(nd) nd.symbols.rangeArcs.hide(),
|
||||||
}, # of rangeArcs.impl
|
}, # of rangeArcs.impl
|
||||||
}, # of rangeArcs
|
}, # of rangeArcs
|
||||||
|
{
|
||||||
|
id:'rangePln1',
|
||||||
|
impl: {
|
||||||
|
init: func(nd,symbol),
|
||||||
|
predicate: func(nd) nd.get_switch('toggle_display_mode') == "PLAN",
|
||||||
|
is_true: func(nd) {
|
||||||
|
nd.symbols.rangePln1.show();
|
||||||
|
nd.symbols.rangePln1.setText(sprintf("%3.0f",nd.rangeNm()));
|
||||||
|
},
|
||||||
|
is_false: func(nd) nd.symbols.rangePln1.hide(),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:'rangePln2',
|
||||||
|
impl: {
|
||||||
|
init: func(nd,symbol),
|
||||||
|
predicate: func(nd) nd.get_switch('toggle_display_mode') == "PLAN",
|
||||||
|
is_true: func(nd) {
|
||||||
|
nd.symbols.rangePln2.show();
|
||||||
|
nd.symbols.rangePln2.setText(sprintf("%3.0f",nd.rangeNm()/2));
|
||||||
|
},
|
||||||
|
is_false: func(nd) nd.symbols.rangePln2.hide(),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:'rangePln3',
|
||||||
|
impl: {
|
||||||
|
init: func(nd,symbol),
|
||||||
|
predicate: func(nd) nd.get_switch('toggle_display_mode') == "PLAN",
|
||||||
|
is_true: func(nd) {
|
||||||
|
nd.symbols.rangePln3.show();
|
||||||
|
nd.symbols.rangePln3.setText(sprintf("%3.0f",nd.rangeNm()/2));
|
||||||
|
},
|
||||||
|
is_false: func(nd) nd.symbols.rangePln3.hide(),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:'rangePln4',
|
||||||
|
impl: {
|
||||||
|
init: func(nd,symbol),
|
||||||
|
predicate: func(nd) nd.get_switch('toggle_display_mode') == "PLAN",
|
||||||
|
is_true: func(nd) {
|
||||||
|
nd.symbols.rangePln4.show();
|
||||||
|
nd.symbols.rangePln4.setText(sprintf("%3.0f",nd.rangeNm()));
|
||||||
|
},
|
||||||
|
is_false: func(nd) nd.symbols.rangePln4.hide(),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id:'windArrow',
|
||||||
|
impl: {
|
||||||
|
init: func(nd,symbol),
|
||||||
|
predicate: func(nd) (!(nd.in_mode('toggle_display_mode', ['PLAN']) and (nd.get_switch('toggle_display_type') == "LCD")) and nd.aircraft_source.get_spd() > 100),
|
||||||
|
is_true: func(nd) {
|
||||||
|
nd.symbols.windArrow.show();
|
||||||
|
var windArrowRot = (nd.aircraft_source.get_hdg_tru()-nd.aircraft_source.get_trk_tru())*D2R;
|
||||||
|
if(nd.in_mode('toggle_display_mode', ['MAP','PLAN']))
|
||||||
|
windArrowRot = 2*windArrowRot;
|
||||||
|
nd.symbols.windArrow.setRotation(windArrowRot);
|
||||||
|
},
|
||||||
|
is_false: func(nd) nd.symbols.windArrow.hide(),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
], # end of vector with features
|
], # end of vector with features
|
||||||
|
|
||||||
|
@ -337,7 +417,8 @@ NDSourceDriver.new = func {
|
||||||
};
|
};
|
||||||
m.get_lat= func getprop("/position/latitude-deg");
|
m.get_lat= func getprop("/position/latitude-deg");
|
||||||
m.get_lon= func getprop("/position/longitude-deg");
|
m.get_lon= func getprop("/position/longitude-deg");
|
||||||
m.get_spd= func getprop("/velocities/groundspeed-kt");
|
m.get_spd= func getprop("/velocities/airspeed-kt");
|
||||||
|
m.get_gnd_spd= func getprop("/velocities/groundspeed-kt");
|
||||||
m.get_vspd= func getprop("/velocities/vertical-speed-fps");
|
m.get_vspd= func getprop("/velocities/vertical-speed-fps");
|
||||||
return m;
|
return m;
|
||||||
}
|
}
|
||||||
|
@ -444,6 +525,7 @@ var NavDisplay = {
|
||||||
get_lat: func source.getNode('position/latitude-deg').getValue(),
|
get_lat: func source.getNode('position/latitude-deg').getValue(),
|
||||||
get_lon: func source.getNode('position/longitude-deg').getValue(),
|
get_lon: func source.getNode('position/longitude-deg').getValue(),
|
||||||
get_spd: func source.getNode('velocities/true-airspeed-kt').getValue(),
|
get_spd: func source.getNode('velocities/true-airspeed-kt').getValue(),
|
||||||
|
get_gnd_spd: func source.getNode('velocities/groundspeed-kt').getValue(),
|
||||||
};
|
};
|
||||||
}, # of connectAI
|
}, # of connectAI
|
||||||
|
|
||||||
|
@ -520,7 +602,7 @@ var NavDisplay = {
|
||||||
|
|
||||||
foreach(var feature; me.nd_style.features ) {
|
foreach(var feature; me.nd_style.features ) {
|
||||||
# print("Setting up SVG feature:", feature.id);
|
# print("Setting up SVG feature:", feature.id);
|
||||||
me.symbols[feature.id] = me.nd.getElementById(feature.id);
|
me.symbols[feature.id] = me.nd.getElementById(feature.id).updateCenter();
|
||||||
if(contains(feature.impl,'init')) feature.impl.init(me.nd, feature); # call The element's init code (i.e. updateCenter)
|
if(contains(feature.impl,'init')) feature.impl.init(me.nd, feature); # call The element's init code (i.e. updateCenter)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -534,7 +616,7 @@ var NavDisplay = {
|
||||||
# load elements from vector image, and create instance variables using identical names, and call updateCenter() on each
|
# load elements from vector image, and create instance variables using identical names, and call updateCenter() on each
|
||||||
# anything that needs updatecenter called, should be added to the vector here
|
# anything that needs updatecenter called, should be added to the vector here
|
||||||
#
|
#
|
||||||
foreach(var element; ["windArrow","compassApp","northUp","aplSymMap","aplSymMapCtr","aplSymVor",
|
foreach(var element; ["compassApp","northUp","aplSymMap","aplSymMapCtr","aplSymVor",
|
||||||
"staFromL2","staToL2","staFromR2","staToR2",
|
"staFromL2","staToL2","staFromR2","staToR2",
|
||||||
"locPtr","hdgTrk","truMag","altArc","planArcs",
|
"locPtr","hdgTrk","truMag","altArc","planArcs",
|
||||||
"trkInd","compass","HdgBugCRT","TrkBugLCD","HdgBugLCD","selHdgLine","curHdgPtr",
|
"trkInd","compass","HdgBugCRT","TrkBugLCD","HdgBugLCD","selHdgLine","curHdgPtr",
|
||||||
|
@ -646,23 +728,11 @@ var NavDisplay = {
|
||||||
# me.drawdme();
|
# me.drawdme();
|
||||||
});
|
});
|
||||||
# TODO: move this to the route.model
|
# TODO: move this to the route.model
|
||||||
# Hack to draw the route on rm activation
|
|
||||||
me.listen("/autopilot/route-manager/active", func(active) {
|
|
||||||
if(active.getValue()) {
|
|
||||||
me.drawroute();
|
|
||||||
me.drawrunways();
|
|
||||||
} else {
|
|
||||||
#print("TODO: navdisplay.mfd: implement route-manager/layer clearing!");
|
|
||||||
#me.route_group.removeAllChildren(); # HACK!
|
|
||||||
}
|
|
||||||
});
|
|
||||||
me.listen("/autopilot/route-manager/current-wp", func(activeWp) {
|
me.listen("/autopilot/route-manager/current-wp", func(activeWp) {
|
||||||
canvas.updatewp( activeWp.getValue() );
|
canvas.updatewp( activeWp.getValue() );
|
||||||
});
|
});
|
||||||
|
|
||||||
},
|
},
|
||||||
drawroute: func print("drawroute no longer used!"),
|
|
||||||
drawrunways: func print("drawrunways no longer used!"),
|
|
||||||
|
|
||||||
in_mode:func(switch, modes)
|
in_mode:func(switch, modes)
|
||||||
{
|
{
|
||||||
|
@ -701,11 +771,11 @@ var NavDisplay = {
|
||||||
var userHdg=userHdgMag;
|
var userHdg=userHdgMag;
|
||||||
var userTrk=userTrkMag;
|
var userTrk=userTrkMag;
|
||||||
}
|
}
|
||||||
if (me.aircraft_source.get_spd() < 80)
|
if (me.aircraft_source.get_gnd_spd() < 80)
|
||||||
userTrk = userHdg;
|
userTrk = userHdg;
|
||||||
var userLat = me.aircraft_source.get_lat();
|
var userLat = me.aircraft_source.get_lat();
|
||||||
var userLon = me.aircraft_source.get_lon();
|
var userLon = me.aircraft_source.get_lon();
|
||||||
var userSpd = me.aircraft_source.get_spd();
|
var userGndSpd = me.aircraft_source.get_gnd_spd();
|
||||||
var userVSpd = me.aircraft_source.get_vspd();
|
var userVSpd = me.aircraft_source.get_vspd();
|
||||||
var dispLCD = me.get_switch('toggle_display_type') == "LCD";
|
var dispLCD = me.get_switch('toggle_display_type') == "LCD";
|
||||||
|
|
||||||
|
@ -799,14 +869,12 @@ var NavDisplay = {
|
||||||
|
|
||||||
# reposition the map, change heading & range:
|
# reposition the map, change heading & range:
|
||||||
if(me.in_mode('toggle_display_mode', ['PLAN'])) {
|
if(me.in_mode('toggle_display_mode', ['PLAN'])) {
|
||||||
me.symbols.windArrow.setVisible(!dispLCD);
|
|
||||||
me.map._node.getNode("hdg",1).setDoubleValue(0);
|
me.map._node.getNode("hdg",1).setDoubleValue(0);
|
||||||
if (getprop(me.efis_path ~ "/inputs/plan-wpt-index") >= 0) {
|
if (getprop(me.efis_path ~ "/inputs/plan-wpt-index") >= 0) {
|
||||||
me.map._node.getNode("ref-lat",1).setDoubleValue(getprop("/autopilot/route-manager/route/wp["~getprop(me.efis_path ~ "/inputs/plan-wpt-index")~"]/latitude-deg"));
|
me.map._node.getNode("ref-lat",1).setDoubleValue(getprop("/autopilot/route-manager/route/wp["~getprop(me.efis_path ~ "/inputs/plan-wpt-index")~"]/latitude-deg"));
|
||||||
me.map._node.getNode("ref-lon",1).setDoubleValue(getprop("/autopilot/route-manager/route/wp["~getprop(me.efis_path ~ "/inputs/plan-wpt-index")~"]/longitude-deg"));
|
me.map._node.getNode("ref-lon",1).setDoubleValue(getprop("/autopilot/route-manager/route/wp["~getprop(me.efis_path ~ "/inputs/plan-wpt-index")~"]/longitude-deg"));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
me.symbols.windArrow.show();
|
|
||||||
me.map._node.getNode("ref-lat",1).setDoubleValue(userLat);
|
me.map._node.getNode("ref-lat",1).setDoubleValue(userLat);
|
||||||
me.map._node.getNode("ref-lon",1).setDoubleValue(userLon);
|
me.map._node.getNode("ref-lon",1).setDoubleValue(userLon);
|
||||||
}
|
}
|
||||||
|
@ -834,7 +902,6 @@ var NavDisplay = {
|
||||||
me.symbols.compass.setRotation(-userTrk*D2R);
|
me.symbols.compass.setRotation(-userTrk*D2R);
|
||||||
me.symbols.compassApp.setRotation(-userTrk*D2R);
|
me.symbols.compassApp.setRotation(-userTrk*D2R);
|
||||||
me.symbols.hdgTrk.setText("TRK");
|
me.symbols.hdgTrk.setText("TRK");
|
||||||
me.symbols.windArrow.setRotation((getprop("/environment/wind-from-heading-deg")-userTrk)*D2R);
|
|
||||||
}
|
}
|
||||||
if(me.in_mode('toggle_display_mode', ['APP','VOR'])) {
|
if(me.in_mode('toggle_display_mode', ['APP','VOR'])) {
|
||||||
me.symbols.HdgBugCRT.setRotation((vhdg_bug-userHdg)*D2R);
|
me.symbols.HdgBugCRT.setRotation((vhdg_bug-userHdg)*D2R);
|
||||||
|
@ -850,7 +917,6 @@ var NavDisplay = {
|
||||||
me.symbols.compass.setRotation(-userHdg*D2R);
|
me.symbols.compass.setRotation(-userHdg*D2R);
|
||||||
me.symbols.compassApp.setRotation(-userHdg*D2R);
|
me.symbols.compassApp.setRotation(-userHdg*D2R);
|
||||||
me.symbols.hdgTrk.setText("HDG");
|
me.symbols.hdgTrk.setText("HDG");
|
||||||
me.symbols.windArrow.setRotation((getprop("/environment/wind-from-heading-deg")-userHdg)*D2R);
|
|
||||||
}
|
}
|
||||||
if(me.get_switch('toggle_centered')) {
|
if(me.get_switch('toggle_centered')) {
|
||||||
if (me.in_mode('toggle_display_mode', ['APP','VOR'])) {
|
if (me.in_mode('toggle_display_mode', ['APP','VOR'])) {
|
||||||
|
@ -1018,7 +1084,7 @@ var NavDisplay = {
|
||||||
if (abs(userVSpd) > 5) {
|
if (abs(userVSpd) > 5) {
|
||||||
var altDiff = (getprop("autopilot/settings/target-altitude-ft") or 0)-(getprop("instrumentation/altimeter/indicated-altitude-ft") or 0);
|
var altDiff = (getprop("autopilot/settings/target-altitude-ft") or 0)-(getprop("instrumentation/altimeter/indicated-altitude-ft") or 0);
|
||||||
if (abs(altDiff) > 50 and altDiff/userVSpd > 0) {
|
if (abs(altDiff) > 50 and altDiff/userVSpd > 0) {
|
||||||
var altRangeNm = altDiff/userVSpd*userSpd*KT2MPS*M2NM;
|
var altRangeNm = altDiff/userVSpd*userGndSpd*KT2MPS*M2NM;
|
||||||
if(altRangeNm > 1) {
|
if(altRangeNm > 1) {
|
||||||
var altRangePx = (350/me.rangeNm())*altRangeNm;
|
var altRangePx = (350/me.rangeNm())*altRangeNm;
|
||||||
if (altRangePx > 700)
|
if (altRangePx > 700)
|
||||||
|
|
Loading…
Add table
Reference in a new issue