Navdisplay: bug fixed and new features
- Correct z-index - Add MAP CTR compass - Fix active WPT color - Hide wind data at low speeds - Move code outside main update loop - Correct ranges
This commit is contained in:
parent
394ad348c0
commit
573de77cb8
14 changed files with 1945 additions and 1464 deletions
|
@ -118,7 +118,8 @@ var init = func {
|
|||
.horiz(-14.5)
|
||||
.vert(-14.5)
|
||||
.close()
|
||||
.setStrokeLineWidth( me.layer.style.line_width );
|
||||
.setStrokeLineWidth( me.layer.style.line_width )
|
||||
.set("z-index",-2);
|
||||
|
||||
# finally scale the symbol as requested, this is done last so that people can override this when creating the layer
|
||||
me.apply_scale();
|
||||
|
|
|
@ -28,7 +28,8 @@ var drawFIX = func(group) {
|
|||
.lineTo(15,15)
|
||||
.close()
|
||||
.setStrokeLineWidth(line_width)
|
||||
.setColor(color);
|
||||
.setColor(color)
|
||||
.set("z-index",-3);
|
||||
}
|
||||
|
||||
var cache = StyleableCacheable.new(
|
||||
|
@ -44,6 +45,6 @@ var init = func {
|
|||
|
||||
# non-cached stuff:
|
||||
if (me.style.show_labels)
|
||||
me.text_fix = me.newText(me.model.id).setScale(me.style.scale_factor);
|
||||
me.text_fix = me.newText(me.model.id).setScale(me.style.scale_factor).setTranslation(17,35).set("z-index",-3);
|
||||
}
|
||||
var draw = func;
|
||||
|
|
|
@ -24,17 +24,17 @@
|
|||
guidetolerance="10"
|
||||
inkscape:pageopacity="1"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1360"
|
||||
inkscape:window-height="711"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="716"
|
||||
id="namedview102"
|
||||
showgrid="false"
|
||||
inkscape:zoom="4"
|
||||
inkscape:cx="935.56631"
|
||||
inkscape:cy="485.54807"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="33"
|
||||
inkscape:zoom="0.5"
|
||||
inkscape:cx="-212.63"
|
||||
inkscape:cy="501.603"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:current-layer="layer4"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true"
|
||||
inkscape:snap-object-midpoints="true"
|
||||
|
@ -42,10 +42,7 @@
|
|||
inkscape:snap-to-guides="false"><sodipodi:guide
|
||||
id="guide3155"
|
||||
orientation="0,1"
|
||||
position="512,200" /><sodipodi:guide
|
||||
id="guide3167"
|
||||
orientation="1,0"
|
||||
position="512,811.5" /><sodipodi:guide
|
||||
position="479.418,200" /><sodipodi:guide
|
||||
id="guide3169"
|
||||
orientation="-0.866025,0.5"
|
||||
position="512,200" /><sodipodi:guide
|
||||
|
@ -63,7 +60,7 @@
|
|||
id="guide4003" /></sodipodi:namedview><metadata
|
||||
id="metadata5186"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /><dc:creator><cc:Agent><dc:title>Gijs de Rooy</dc:title></cc:Agent></dc:creator><cc:license
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title><dc:creator><cc:Agent><dc:title>Gijs de Rooy</dc:title></cc:Agent></dc:creator><cc:license
|
||||
rdf:resource="" /></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs5184"><marker
|
||||
style="overflow:visible"
|
||||
|
@ -117,8 +114,7 @@
|
|||
style="display:inline"
|
||||
inkscape:label="base"
|
||||
id="layer3"
|
||||
inkscape:groupmode="layer"
|
||||
sodipodi:insensitive="true"><g
|
||||
inkscape:groupmode="layer"><g
|
||||
id="vorCrsPtr"
|
||||
inkscape:label="#g3282"
|
||||
inkscape:transform-center-y="-7.3565"
|
||||
|
@ -194,7 +190,8 @@
|
|||
inkscape:connector-curvature="0"
|
||||
id="selHdgLine"
|
||||
d="m 512,824.75 0,-682.634"
|
||||
style="fill:none;stroke:#ff00ff;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:32, 16;stroke-dashoffset:0" /><path
|
||||
style="fill:none;stroke:#ff00ff;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:32, 16;stroke-dashoffset:0"
|
||||
inkscape:transform-center-x="2" /><path
|
||||
inkscape:transform-center-y="-715.775"
|
||||
inkscape:label="#path3882"
|
||||
sodipodi:nodetypes="cccc"
|
||||
|
@ -213,6 +210,7 @@
|
|||
x="844.04407"
|
||||
id="tspan7245"
|
||||
sodipodi:role="line">ABCD</tspan></text>
|
||||
|
||||
<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"
|
||||
|
@ -225,6 +223,7 @@
|
|||
id="tspan7251"
|
||||
x="844.04407"
|
||||
y="126.12489">999.9</tspan></text>
|
||||
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:connector-curvature="0"
|
||||
|
@ -249,6 +248,7 @@
|
|||
id="tspan3801"
|
||||
x="36.862175"
|
||||
y="92.904839">999°/ 99</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -261,6 +261,7 @@
|
|||
x="77.874374"
|
||||
id="tspan3809"
|
||||
sodipodi:role="line">999</tspan></text>
|
||||
|
||||
<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"
|
||||
|
@ -273,6 +274,7 @@
|
|||
id="tspan3813"
|
||||
x="210.49673"
|
||||
y="53.306854">999</tspan></text>
|
||||
|
||||
<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"
|
||||
|
@ -286,6 +288,7 @@
|
|||
id="tspan3817"
|
||||
x="38.276394"
|
||||
y="53.306854">GS</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -299,6 +302,7 @@
|
|||
id="tspan3821"
|
||||
sodipodi:role="line"
|
||||
style="font-size:24px">TAS</tspan></text>
|
||||
|
||||
<g
|
||||
id="hdgGroup"
|
||||
inkscape:label="#g3141"><path
|
||||
|
@ -319,6 +323,7 @@
|
|||
x="476.28857"
|
||||
y="65.781754"
|
||||
style="font-size:48px">999</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -332,6 +337,7 @@
|
|||
id="tspan3849"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;fill:#32f519">HDG</tspan></text>
|
||||
|
||||
<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:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
|
@ -345,6 +351,7 @@
|
|||
id="tspan3853"
|
||||
x="578.66278"
|
||||
y="67.549522">MAG</tspan></text>
|
||||
|
||||
</g><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:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
|
@ -358,6 +365,7 @@
|
|||
id="tspan3056"
|
||||
x="41.732624"
|
||||
y="913.5495">VOR L</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -371,6 +379,7 @@
|
|||
id="tspan3060"
|
||||
sodipodi:role="line"
|
||||
style="font-size:24px;fill:#32f519">DME</tspan></text>
|
||||
|
||||
<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:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
|
@ -384,6 +393,7 @@
|
|||
id="tspan3068"
|
||||
x="101.1296"
|
||||
y="993.85461">99.9</tspan></text>
|
||||
|
||||
<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:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
|
@ -397,6 +407,7 @@
|
|||
id="tspan3072"
|
||||
x="41.732624"
|
||||
y="954.56171">ABC</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -410,6 +421,7 @@
|
|||
id="tspan3076"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;fill:#32f519">VOR R</tspan></text>
|
||||
|
||||
<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:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
|
@ -423,6 +435,7 @@
|
|||
id="tspan3080"
|
||||
x="889.7326"
|
||||
y="993.85461">DME</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -436,6 +449,7 @@
|
|||
id="tspan3084"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;fill:#32f519">99.9</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -449,6 +463,7 @@
|
|||
id="tspan3088"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;fill:#32f519">ABC</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -462,6 +477,7 @@
|
|||
x="844.04407"
|
||||
id="tspan3092"
|
||||
sodipodi:role="line">08 34.4z</tspan></text>
|
||||
|
||||
<g
|
||||
inkscape:label="#g3124"
|
||||
id="compass"><path
|
||||
|
@ -486,6 +502,7 @@
|
|||
x="500.44846"
|
||||
y="195.26741"
|
||||
style="font-size:40px">0</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -500,6 +517,7 @@
|
|||
x="9.1033907"
|
||||
id="tspan3082"
|
||||
sodipodi:role="line">33</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(0.5,-0.866026,0.866026,0.5,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -514,6 +532,7 @@
|
|||
x="-478.97894"
|
||||
y="231.34868"
|
||||
style="font-size:39.999996px">30</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -528,6 +547,7 @@
|
|||
x="-845.96948"
|
||||
id="tspan3090"
|
||||
sodipodi:role="line">27</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(-0.5,-0.866025,0.866025,-0.5,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -542,6 +562,7 @@
|
|||
x="-992.34058"
|
||||
y="-584.99097"
|
||||
style="font-size:39.99995px">24</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -556,6 +577,7 @@
|
|||
x="-879.19897"
|
||||
id="tspan3098"
|
||||
sodipodi:role="line">21</tspan></text>
|
||||
|
||||
<text
|
||||
transform="scale(-1,-1)"
|
||||
xml:space="preserve"
|
||||
|
@ -570,6 +592,7 @@
|
|||
x="-533.67151"
|
||||
y="-1436.3594"
|
||||
style="font-size:40.000004px">18</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -584,6 +607,7 @@
|
|||
x="-51.792171"
|
||||
id="tspan3106"
|
||||
sodipodi:role="line">15</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(-0.5,0.866026,-0.866026,-0.5,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -598,6 +622,7 @@
|
|||
x="435.97983"
|
||||
y="-1462.8785"
|
||||
style="font-size:40.000011px">12</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -612,6 +637,7 @@
|
|||
x="812.80585"
|
||||
id="tspan3114"
|
||||
sodipodi:role="line">9</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(0.5,0.866025,-0.866025,0.5,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -626,6 +652,7 @@
|
|||
x="958.43561"
|
||||
y="-645.76654"
|
||||
style="font-size:39.999981px">6</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -640,6 +667,7 @@
|
|||
x="844.79596"
|
||||
id="tspan3122"
|
||||
sodipodi:role="line">3</tspan></text>
|
||||
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccscccscccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccccc"
|
||||
id="path3181"
|
||||
|
@ -672,8 +700,7 @@
|
|||
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /><g
|
||||
id="trkInd"
|
||||
inkscape:label="#g3107"
|
||||
inkscape:transform-center-y="-318.607"
|
||||
inkscape:transform-center-x="-0.165"><path
|
||||
inkscape:transform-center-y="-331.085"><path
|
||||
inkscape:label="#path6714"
|
||||
inkscape:transform-center-y="-415.888"
|
||||
style="fill:none;stroke:#ededed;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
|
@ -705,13 +732,15 @@
|
|||
id="tspan5002"
|
||||
x="500.86594"
|
||||
y="464.10147">99</tspan></text>
|
||||
|
||||
<path
|
||||
sodipodi:nodetypes="cscc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="altArc"
|
||||
d="m 351.124,888.591 c 0,0 72.1,-39.455 161.041,-39.455 88.941,0 161.041,39.455 161.041,39.455 l 0,0"
|
||||
style="fill:none;stroke:#00ff00;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
inkscape:label="#path3888-1" /></g><text
|
||||
d="m 350.959,863.607 c 0,0 72.1,-39.455 161.041,-39.455 88.941,0 161.041,39.455 161.041,39.455 l 0,0"
|
||||
style="fill:none;stroke:#00ff00;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
|
||||
inkscape:label="#path3888-1"
|
||||
inkscape:transform-center-y="19.8725" /></g><text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
id="taOnly"
|
||||
|
@ -724,6 +753,7 @@
|
|||
id="tspan3093"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;fill:#0099d9;fill-opacity:1">TA ONLY</tspan></text>
|
||||
|
||||
<g
|
||||
id="staArrowL"
|
||||
inkscape:label="#g4072"
|
||||
|
@ -790,6 +820,7 @@
|
|||
id="tspan3097"
|
||||
x="41.732624"
|
||||
y="769.12952">WXR</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -803,6 +834,7 @@
|
|||
id="tspan3101"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;fill:#0099d9;fill-opacity:1">ARPT</tspan></text>
|
||||
|
||||
<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:#0099d9;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
|
@ -816,6 +848,7 @@
|
|||
id="tspan3105"
|
||||
x="41.732624"
|
||||
y="697.12939">WPT</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -829,6 +862,7 @@
|
|||
id="tspan3109"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;fill:#0099d9;fill-opacity:1">STA</tspan></text>
|
||||
|
||||
<path
|
||||
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"
|
||||
|
@ -872,6 +906,7 @@
|
|||
id="tspan3179"
|
||||
x="937.04547"
|
||||
y="125.43141">NM</tspan></text>
|
||||
|
||||
<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:#32f519;fill-opacity:1;stroke:none;display:inline;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
|
@ -885,6 +920,7 @@
|
|||
id="tspan4172"
|
||||
x="803.289"
|
||||
y="53.929054">ILS L</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -898,17 +934,12 @@
|
|||
id="tspan4176"
|
||||
sodipodi:role="line"
|
||||
style="font-size:32px;fill:#ededed;fill-opacity:1">999.99</tspan></text>
|
||||
|
||||
</g><g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
inkscape:label="CTR"
|
||||
style="display:inline"><path
|
||||
id="trkInd2"
|
||||
style="fill:#ff0000;fill-opacity:1;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
d="m 484.069,824.388 55.862,0 m -27.755,84.942 -0.353,-144.493 m -27.754,-469.644 55.862,0 m -27.755,-84.942 -0.353,144.493"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:label="#path3998" /><path
|
||||
id="aplSymVor"
|
||||
style="fill:none;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 523.994,501.789 0,58 51.042,0 m -51.042,0 0,57 18.782,0 m -43.653,-115 0,58 -50.158,0 m 50.158,0 0,57 -19.136,0"
|
||||
|
@ -983,6 +1014,7 @@
|
|||
x="488.38348"
|
||||
id="tspan3922"
|
||||
sodipodi:role="line">0</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(0.866025,-0.5,0.5,0.866025,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -997,6 +1029,7 @@
|
|||
x="-13.265571"
|
||||
y="377.83694"
|
||||
style="font-size:80.433212px">33</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -1011,6 +1044,7 @@
|
|||
x="-503.69513"
|
||||
id="tspan3930"
|
||||
sodipodi:role="line">30</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(0,-1,1,0,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -1025,6 +1059,7 @@
|
|||
x="-868.71942"
|
||||
y="-71.969933"
|
||||
style="font-size:80.433212px">27</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -1039,6 +1074,7 @@
|
|||
x="-1019.1653"
|
||||
id="tspan3938"
|
||||
sodipodi:role="line">24</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(-0.866026,-0.5,0.5,-0.866026,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -1053,6 +1089,7 @@
|
|||
x="-904.95624"
|
||||
y="-1033.6982"
|
||||
style="font-size:80.433212px">21</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -1067,6 +1104,7 @@
|
|||
x="-557.84332"
|
||||
id="tspan3946"
|
||||
sodipodi:role="line">18</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(-0.866025,0.5,-0.5,-0.866025,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -1081,6 +1119,7 @@
|
|||
x="-71.888855"
|
||||
y="-1543.4183"
|
||||
style="font-size:80.433212px">15</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -1095,6 +1134,7 @@
|
|||
x="409.84222"
|
||||
id="tspan3954"
|
||||
sodipodi:role="line">12</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(0,1,-1,0,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -1109,6 +1149,7 @@
|
|||
x="801.43085"
|
||||
y="-1088.3844"
|
||||
style="font-size:80.433212px">9</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -1123,6 +1164,7 @@
|
|||
x="941.70276"
|
||||
id="tspan3962"
|
||||
sodipodi:role="line">6</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(0.866026,0.5,-0.5,0.866026,0,0)"
|
||||
xml:space="preserve"
|
||||
|
@ -1137,6 +1179,7 @@
|
|||
x="831.16284"
|
||||
y="-130.83325"
|
||||
style="font-size:80.433212px">3</tspan></text>
|
||||
|
||||
<path
|
||||
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"
|
||||
|
@ -1206,6 +1249,7 @@
|
|||
id="tspan4007"
|
||||
sodipodi:role="line"
|
||||
style="font-size:24px">CRS</tspan></text>
|
||||
|
||||
<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"
|
||||
|
@ -1219,6 +1263,7 @@
|
|||
id="tspan4011"
|
||||
x="854.72168"
|
||||
y="124.87983">DME</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -1231,6 +1276,7 @@
|
|||
x="913.95801"
|
||||
id="tspan4046"
|
||||
sodipodi:role="line">999</tspan></text>
|
||||
|
||||
<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"
|
||||
|
@ -1243,6 +1289,7 @@
|
|||
id="tspan4071"
|
||||
x="913.95801"
|
||||
y="126.12444">99.9</tspan></text>
|
||||
|
||||
<g
|
||||
id="gsGroup"
|
||||
transform="matrix(0,-1,1,0,746.592,1646.26)"
|
||||
|
@ -1254,10 +1301,10 @@
|
|||
sodipodi:cy="643.93"
|
||||
sodipodi:rx="6.71751"
|
||||
sodipodi:ry="6.71751"
|
||||
d="m 386.788,643.93 c 0,3.71 -3.008,6.718 -6.718,6.718 -3.71,0 -6.718,-3.008 -6.718,-6.718 0,-3.71 3.008,-6.718 6.718,-6.718 3.71,0 6.718,3.008 6.718,6.718 z"
|
||||
d="m 386.788,643.93 a 6.71751,6.71751 0 1 1 -13.436,0 6.71751,6.71751 0 1 1 13.436,0 z"
|
||||
transform="matrix(0.968853,0.690717,-0.690717,0.968853,1048.27,-640.211)" /><path
|
||||
transform="matrix(0.968853,0.690717,-0.690717,0.968853,1123.83,-640.211)"
|
||||
d="m 386.788,643.93 c 0,3.71 -3.008,6.718 -6.718,6.718 -3.71,0 -6.718,-3.008 -6.718,-6.718 0,-3.71 3.008,-6.718 6.718,-6.718 3.71,0 6.718,3.008 6.718,6.718 z"
|
||||
d="m 386.788,643.93 a 6.71751,6.71751 0 1 1 -13.436,0 6.71751,6.71751 0 1 1 13.436,0 z"
|
||||
sodipodi:ry="6.71751"
|
||||
sodipodi:rx="6.71751"
|
||||
sodipodi:cy="643.93"
|
||||
|
@ -1272,10 +1319,10 @@
|
|||
sodipodi:cy="643.93"
|
||||
sodipodi:rx="6.71751"
|
||||
sodipodi:ry="6.71751"
|
||||
d="m 386.788,643.93 c 0,3.71 -3.008,6.718 -6.718,6.718 -3.71,0 -6.718,-3.008 -6.718,-6.718 0,-3.71 3.008,-6.718 6.718,-6.718 3.71,0 6.718,3.008 6.718,6.718 z"
|
||||
d="m 386.788,643.93 a 6.71751,6.71751 0 1 1 -13.436,0 6.71751,6.71751 0 1 1 13.436,0 z"
|
||||
transform="matrix(0.968853,0.690717,-0.690717,0.968853,1274.73,-640.211)" /><path
|
||||
transform="matrix(0.968853,0.690717,-0.690717,0.968853,1350.58,-640.21)"
|
||||
d="m 386.788,643.93 c 0,3.71 -3.008,6.718 -6.718,6.718 -3.71,0 -6.718,-3.008 -6.718,-6.718 0,-3.71 3.008,-6.718 6.718,-6.718 3.71,0 6.718,3.008 6.718,6.718 z"
|
||||
d="m 386.788,643.93 a 6.71751,6.71751 0 1 1 -13.436,0 6.71751,6.71751 0 1 1 13.436,0 z"
|
||||
sodipodi:ry="6.71751"
|
||||
sodipodi:rx="6.71751"
|
||||
sodipodi:cy="643.93"
|
||||
|
@ -1288,7 +1335,7 @@
|
|||
id="path4166"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0,1,-1,0,1646.26,-746.592)" /><path
|
||||
style="fill:#ff00ff;stroke:#ff00ff;display:inline;stroke-opacity:1;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
style="fill:#ff00ff;stroke:#ff00ff;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
d="m 1125.26,226.404 10,20 -10,20.007 -10,-20.007 z"
|
||||
id="gsDiamond"
|
||||
inkscape:connector-curvature="0"
|
||||
|
@ -1334,7 +1381,260 @@
|
|||
inkscape:connector-curvature="0"
|
||||
id="staToL2"
|
||||
d="m 512.25,316.675 -0.5,70.364 m 20.25,-7.217 -20.25,-0.283 -19.75,0 m 32.774,-51.106 -12.524,-11.758 -12.524,11.323"
|
||||
style="fill:none;stroke:#00ff00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /></g></g><g
|
||||
style="fill:none;stroke:#00ff00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /></g><g
|
||||
id="trkInd2"
|
||||
inkscape:label="#g3331"
|
||||
inkscape:transform-center-y="0.6935"><path
|
||||
inkscape:label="#path3998"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 497,824.388 30,0 M 512.176,909.33 511.823,764.837 M 497,295.193 l 30,0 m -14.824,-84.942 -0.353,144.493"
|
||||
style="fill:#ff0000;fill-opacity:1;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
id="path3998" /><path
|
||||
inkscape:transform-center-y="19.8725"
|
||||
inkscape:label="#path3888-1"
|
||||
style="fill:none;stroke:#00ff00;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
|
||||
d="m 350.959,598.552 c 0,0 72.1,-39.455 161.041,-39.455 88.942,0 161.041,39.455 161.041,39.455 l 0,0"
|
||||
id="altArcCtr"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cscc" /></g></g><g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer4"
|
||||
inkscape:label="MAP_CTR"
|
||||
style="display:inline"><g
|
||||
transform="matrix(0.497307,0,0,0.497307,257.283,150.704)"
|
||||
inkscape:transform-center-y="1.48975"
|
||||
inkscape:transform-center-x="0.028335"
|
||||
inkscape:label="#g3124"
|
||||
id="compassMapCtr"
|
||||
style="display:inline"><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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
x="488.38348"
|
||||
y="227.44069"
|
||||
id="text3342"
|
||||
sodipodi:linespacing="125%"
|
||||
inkscape:label="#text7243"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3344"
|
||||
x="488.38348"
|
||||
y="227.44069"
|
||||
style="font-size:80.433212px">0</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3346"
|
||||
y="377.83694"
|
||||
x="-13.265571"
|
||||
style="font-size:35.999931px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
xml:space="preserve"
|
||||
transform="matrix(0.866025,-0.5,0.5,0.866025,0,0)"><tspan
|
||||
style="font-size:80.433212px"
|
||||
y="377.83694"
|
||||
x="-13.265571"
|
||||
id="tspan3348"
|
||||
sodipodi:role="line">33</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(0.5,-0.866026,0.866026,0.5,0,0)"
|
||||
xml:space="preserve"
|
||||
style="font-size:36.000031px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
x="-503.69513"
|
||||
y="265.32059"
|
||||
id="text3350"
|
||||
sodipodi:linespacing="125%"
|
||||
inkscape:label="#text7243"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3352"
|
||||
x="-503.69513"
|
||||
y="265.32059"
|
||||
style="font-size:80.433212px">30</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3354"
|
||||
y="-71.969933"
|
||||
x="-868.71942"
|
||||
style="font-size:36.000011px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
xml:space="preserve"
|
||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
||||
style="font-size:80.433212px"
|
||||
y="-71.969933"
|
||||
x="-868.71942"
|
||||
id="tspan3356"
|
||||
sodipodi:role="line">27</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(-0.5,-0.866025,0.866025,-0.5,0,0)"
|
||||
xml:space="preserve"
|
||||
style="font-size:35.999966px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
x="-1019.1653"
|
||||
y="-541.37213"
|
||||
id="text3358"
|
||||
sodipodi:linespacing="125%"
|
||||
inkscape:label="#text7243"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3360"
|
||||
x="-1019.1653"
|
||||
y="-541.37213"
|
||||
style="font-size:80.433212px">24</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3362"
|
||||
y="-1033.6982"
|
||||
x="-904.95624"
|
||||
style="font-size:36.000065px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
xml:space="preserve"
|
||||
transform="matrix(-0.866026,-0.5,0.5,-0.866026,0,0)"><tspan
|
||||
style="font-size:80.433212px"
|
||||
y="-1033.6982"
|
||||
x="-904.95624"
|
||||
id="tspan3364"
|
||||
sodipodi:role="line">21</tspan></text>
|
||||
|
||||
<text
|
||||
transform="scale(-1,-1)"
|
||||
xml:space="preserve"
|
||||
style="font-size:36.000027px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
x="-557.84332"
|
||||
y="-1392.2814"
|
||||
id="text3366"
|
||||
sodipodi:linespacing="125%"
|
||||
inkscape:label="#text7243"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3368"
|
||||
x="-557.84332"
|
||||
y="-1392.2814"
|
||||
style="font-size:80.433212px">18</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3370"
|
||||
y="-1543.4183"
|
||||
x="-71.888855"
|
||||
style="font-size:35.999992px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
xml:space="preserve"
|
||||
transform="matrix(-0.866025,0.5,-0.5,-0.866025,0,0)"><tspan
|
||||
style="font-size:80.433212px"
|
||||
y="-1543.4183"
|
||||
x="-71.888855"
|
||||
id="tspan3372"
|
||||
sodipodi:role="line">15</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(-0.5,0.866026,-0.866026,-0.5,0,0)"
|
||||
xml:space="preserve"
|
||||
style="font-size:36.000061px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
x="409.84222"
|
||||
y="-1431.3702"
|
||||
id="text3374"
|
||||
sodipodi:linespacing="125%"
|
||||
inkscape:label="#text7243"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3376"
|
||||
x="409.84222"
|
||||
y="-1431.3702"
|
||||
style="font-size:80.433212px">12</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3378"
|
||||
y="-1088.3844"
|
||||
x="801.43085"
|
||||
style="font-size:36.000042px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
xml:space="preserve"
|
||||
transform="matrix(0,1,-1,0,0,0)"><tspan
|
||||
style="font-size:80.433212px"
|
||||
y="-1088.3844"
|
||||
x="801.43085"
|
||||
id="tspan3380"
|
||||
sodipodi:role="line">9</tspan></text>
|
||||
|
||||
<text
|
||||
transform="matrix(0.5,0.866025,-0.866025,0.5,0,0)"
|
||||
xml:space="preserve"
|
||||
style="font-size:36.000008px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
x="941.70276"
|
||||
y="-611.09729"
|
||||
id="text3382"
|
||||
sodipodi:linespacing="125%"
|
||||
inkscape:label="#text7243"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3384"
|
||||
x="941.70276"
|
||||
y="-611.09729"
|
||||
style="font-size:80.433212px">6</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3386"
|
||||
y="-130.83325"
|
||||
x="831.16284"
|
||||
style="font-size:36.000114px;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;font-family:Liberation Sans;-inkscape-font-specification:Liberation Sans"
|
||||
xml:space="preserve"
|
||||
transform="matrix(0.866026,0.5,-0.5,0.866026,0,0)"><tspan
|
||||
style="font-size:80.433212px"
|
||||
y="-130.83325"
|
||||
x="831.16284"
|
||||
id="tspan3388"
|
||||
sodipodi:role="line">3</tspan></text>
|
||||
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccscccscccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccccc"
|
||||
id="path3390"
|
||||
d="m 512.162,122.464 -0.03,43.913 c 0.02,0 0.04,0 0.06,0 z m -121.834,10.683 7.445,42.355 c 0.02,0 0.04,-0.03 0.06,-0.03 l -7.506,-42.324 z m 243.668,0 -7.817,44.037 c 0.03,0 0.06,0 0.09,0 l 7.724,-44.037 z m -361.763,31.641 14.42,39.771 c 0.03,-0.01 0.06,-0.02 0.09,-0.03 z m 479.859,0 -15.666,42.948 c 0.02,0 0.04,0.02 0.06,0.03 l 15.603,-42.978 z m -590.7,51.668 20.93,36.345 c 0.02,-0.01 0.04,-0.02 0.06,-0.03 l -20.993,-36.313 z m 701.536,0 -23.41,40.703 m -778.2827,29.434 26.846,32.078 c 0.02,-0.02 0.04,-0.04 0.06,-0.06 l -26.908,-32.015 z m 901.8497,0 -31.044,36.935 m -957.2909,49.55 32.01553,26.908 c 0.0199,-0.02 0.0398,-0.04 0.0598,-0.06 L -25.2519,373.078 z m 1036.9299,31.77 c 0,0.02 0,0.05 0,0.06 l 37.87,-31.83 c -12.51,10.544 -25.26,21.2 -37.87,31.77 z m -1107.065,68.391 36.3128,20.992 c 0.01,-0.02 0.02,-0.04 0.03,-0.06 l -36.3447,-20.929 z m 1215.085,0 -43.8,25.258 c 0,0.02 0,0.04 0,0.06 l 43.77,-25.321 z m -1266.752,110.841 39.739,14.512 c 0.01,-0.03 0.02,-0.06 0.03,-0.09 l -39.771,-14.42 z m 1318.422,0 -48.55,17.628 c 0,0.03 0,0.06 0,0.09 l 48.52,-17.72 z m -1350.064,118.096 42.325,7.506 c 0,-0.02 0.03,-0.04 0.03,-0.06 l -42.356,-7.444 z m 1381.704,0 -51.94,9.125 c 0,0.03 0,0.06 0,0.09 l 51.94,-9.219 z m -43.15,121.773 c 0,0.04 0,0.08 0,0.123 l 53.84,-0.06 -53.84,-0.06 z m -1305.324,0.03 -43.912,0.03 43.912,0.03 c 0,-0.02 0,-0.04 0,-0.06 z M 1149.36,936.341 c 0,0.03 0,0.06 0,0.09 l 53.65,9.407 -53.65,-9.5 z m -1284.017,1.683 -44.037,7.817 44.037,-7.723 c 0,-0.03 0,-0.06 0,-0.09 z m 1254.357,107.046 0,0.1 51.7,18.77 -51.67,-18.87 z m -1223.804,3.21 -42.948,15.66 42.978,-15.6 c 0,0 -0.02,0 -0.03,-0.1 z m 1175.754,98.68 -0.1,0.1 48.12,27.72 -48.05,-27.82 z m -1126.393,4.3 -40.642,23.52 40.6729,-23.46 c -0.01,0 -0.02,0 -0.03,-0.1 z m 1061.593,87.76 c 0,0 0,0 -0.1,0.1 l 42.79,35.85 -42.73,-35.91 z m -995.1642,4.86 -36.9357,31.05 36.9984,-30.98 c -0.02,0 -0.04,-0.1 -0.06,-0.1 z m 915.5522,74.74 c 0,0 0,0 -0.1,0.1 l 35.917,42.72 -35.847,-42.79 z m -834.2365,4.89 -31.7662,37.9 31.829,-37.87 c -0.02,0 -0.05,0 -0.06,0 z m 742.2105,59.92 -0.1,0.1 27.816,48.04 -27.726,-48.11 z m -648.561,4.31 -25.259,43.8 25.322,-43.77 c -0.02,0 -0.04,0 -0.06,0 z m 546.661,43.77 c -0.03,0 -0.06,0 -0.09,0 l 18.874,51.68 -18.78,-51.71 z m -443.452,3.15 -17.627,48.56 17.721,-48.53 c -0.03,0 -0.06,0 -0.09,0 z m 334.729,26.54 c -0.03,0 -0.06,0 -0.09,0 l 9.499,53.63 -9.407,-53.66 z m -225.135,1.71 -9.126,51.95 9.22,-51.95 c -0.03,0 -0.06,0 -0.09,0 z m 112.646,8.78 0.06,53.85 0.06,-53.85 c -0.04,0 -0.08,0 -0.124,0 z"
|
||||
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"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
style="display:inline"
|
||||
inkscape:transform-center-y="0.6935"
|
||||
inkscape:label="#g3331"
|
||||
id="trkIndMapCtr"><path
|
||||
id="path3432"
|
||||
style="fill:#ff0000;fill-opacity:1;stroke:#ededed;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
d="m 497,733.525 30,0 M 512.176,909.33 511.823,704.026 M 497,386.056 l 30,0 m -14.824,-175.805 -0.353,205.304"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:label="#path3998" /><text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
id="rangeCtr2"
|
||||
y="395.90225"
|
||||
x="492.84521"
|
||||
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"
|
||||
xml:space="preserve"><tspan
|
||||
y="395.90225"
|
||||
x="492.84521"
|
||||
id="tspan3436"
|
||||
sodipodi:role="line"
|
||||
style="text-align:end;text-anchor:end">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: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="492.84521"
|
||||
y="743.96869"
|
||||
id="rangeCtr1"
|
||||
sodipodi:linespacing="125%"
|
||||
inkscape:label="#text7243"><tspan
|
||||
style="text-align:end;text-anchor:end"
|
||||
sodipodi:role="line"
|
||||
id="tspan3440"
|
||||
x="492.84521"
|
||||
y="743.96869">99</tspan></text>
|
||||
<path
|
||||
sodipodi:nodetypes="cscc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3442"
|
||||
d="m 350.959,598.552 c 0,0 72.1,-39.455 161.041,-39.455 88.942,0 161.041,39.455 161.041,39.455 l 0,0"
|
||||
style="fill:none;stroke:#00ff00;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
|
||||
inkscape:label="#path3888-1"
|
||||
inkscape:transform-center-y="19.8725" /></g></g><g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer2"
|
||||
inkscape:label="PLAN"
|
||||
|
@ -1363,6 +1663,7 @@
|
|||
x="489.24902"
|
||||
id="tspan3178"
|
||||
sodipodi:role="line">N</tspan></text>
|
||||
|
||||
<path
|
||||
inkscape:label="#path3017"
|
||||
sodipodi:nodetypes="cccccc"
|
||||
|
@ -1381,6 +1682,7 @@
|
|||
x="33.519165"
|
||||
y="530.25165"
|
||||
style="font-size:32px">W</tspan></text>
|
||||
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3209"
|
||||
|
@ -1393,6 +1695,7 @@
|
|||
x="962.65656"
|
||||
id="tspan3211"
|
||||
sodipodi:role="line">E</tspan></text>
|
||||
|
||||
<text
|
||||
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"
|
||||
|
@ -1405,6 +1708,7 @@
|
|||
x="503.03763"
|
||||
y="1008.2553"
|
||||
style="font-size:32px">S</tspan></text>
|
||||
|
||||
</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"
|
||||
|
@ -1418,6 +1722,7 @@
|
|||
id="tspan5002-7"
|
||||
x="511.74799"
|
||||
y="320.56113">99</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -1431,6 +1736,7 @@
|
|||
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"
|
||||
|
@ -1444,6 +1750,7 @@
|
|||
id="tspan3205"
|
||||
x="512.21063"
|
||||
y="752.73596">99</tspan></text>
|
||||
|
||||
<text
|
||||
inkscape:label="#text7243"
|
||||
sodipodi:linespacing="125%"
|
||||
|
@ -1457,4 +1764,5 @@
|
|||
id="tspan3209"
|
||||
sodipodi:role="line"
|
||||
style="text-align:center;text-anchor:middle">99</tspan></text>
|
||||
|
||||
</g></svg>
|
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 110 KiB |
|
@ -38,7 +38,8 @@ var drawVOR = func(group) {
|
|||
.lineTo(-7.5,-12.5)
|
||||
.close()
|
||||
.setStrokeLineWidth(line_width)
|
||||
.setColor(color);
|
||||
.setColor(color)
|
||||
.set("z-index",-2);
|
||||
};
|
||||
|
||||
var cache = StyleableCacheable.new(
|
||||
|
@ -87,7 +88,8 @@ var draw = func {
|
|||
.arcSmallCW(radius,radius,0,-2*radius,0)
|
||||
.setStrokeLineWidth(me.style.range_line_width)
|
||||
.setStrokeDashArray(me.style.range_dash_array)
|
||||
.setColor(me.style.active_color);
|
||||
.setColor(me.style.active_color)
|
||||
.set("z-index",-2);
|
||||
|
||||
var course = me.map.controller.get_tuned_course(me.model.frequency/100);
|
||||
me.radial_vor = me.element.createChild("path")
|
||||
|
@ -96,7 +98,8 @@ var draw = func {
|
|||
.setStrokeLineWidth(me.style.radial_line_width)
|
||||
.setStrokeDashArray(me.style.radial_dash_array)
|
||||
.setColor(me.style.active_color)
|
||||
.setRotation(course*D2R);
|
||||
.setRotation(course*D2R)
|
||||
.set("z-index",-2);
|
||||
}
|
||||
me.range_vor.show();
|
||||
me.radial_vor.show();
|
||||
|
|
|
@ -31,10 +31,13 @@ var init = func {
|
|||
.lineTo(5,-5)
|
||||
.setColor(1,1,1)
|
||||
.close()
|
||||
.setScale(me.style.scale_factor);
|
||||
.setScale(me.style.scale_factor)
|
||||
.set("z-index",2);
|
||||
|
||||
me.newText(me.model.name, me.style.font_color).setTranslation(25,35)
|
||||
.setScale(me.style.scale_factor);
|
||||
me.text = me.newText(me.model.name, me.style.font_color)
|
||||
.setTranslation(25,35)
|
||||
.setScale(me.style.scale_factor)
|
||||
.set("z-index",2);
|
||||
|
||||
me.draw();
|
||||
};
|
||||
|
@ -46,6 +49,11 @@ var draw = func {
|
|||
me.style.active_color :
|
||||
me.style.inactive_color
|
||||
);
|
||||
me.text.setColor(
|
||||
active ?
|
||||
me.style.active_color :
|
||||
me.style.inactive_color
|
||||
);
|
||||
me.active = active;
|
||||
}
|
||||
};
|
||||
|
|
|
@ -15,7 +15,8 @@ var draw = func {
|
|||
.setFile("Nasal/canvas/map/Images/storm.png")
|
||||
.setSize(128*me.model.radiusNm,128*me.model.radiusNm)
|
||||
.setTranslation(-64*me.model.radiusNm,-64*me.model.radiusNm)
|
||||
.setCenter(0,0);
|
||||
.setCenter(0,0)
|
||||
.set("z-index",-4);
|
||||
# .setScale(0.3);
|
||||
# TODO: overlapping storms should probably set their z-index according to altitudes
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@ var draw_apt = func (group, apt, controller=nil, lod=0) {
|
|||
.setColor(0,0.6,0.85)
|
||||
.setFontSize(28);
|
||||
apt_grp.setGeoPosition(lat, lon)
|
||||
.set("z-index",1); # FIXME: this needs to be configurable!!
|
||||
.set("z-index",-1); # FIXME: this needs to be configurable!!
|
||||
#}
|
||||
|
||||
# draw routines should always return their canvas group to the caller for further processing
|
||||
|
|
|
@ -26,7 +26,7 @@ var drawprofile = func (group, property, disptext)
|
|||
.setTranslation(25,35)
|
||||
.setColor(0.195,0.96,0.097);
|
||||
sym_group.setGeoPosition(lat, lon)
|
||||
.set("z-index",4);
|
||||
.set("z-index",3);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -29,6 +29,6 @@ var draw_fix = func (group, fix, controller=nil, lod=0) {
|
|||
|
||||
# the fix position
|
||||
fix_grp.setGeoPosition(lat, lon)
|
||||
.set("z-index",3);
|
||||
.set("z-index",-3);
|
||||
|
||||
}
|
||||
|
|
|
@ -31,24 +31,16 @@ NDSourceDriver.new = func {
|
|||
m.get_trk_mag= func
|
||||
{
|
||||
if(getprop("/velocities/groundspeed-kt") > 80)
|
||||
{
|
||||
getprop("/orientation/track-magnetic-deg");
|
||||
}
|
||||
else
|
||||
{
|
||||
getprop("/orientation/heading-magnetic-deg");
|
||||
}
|
||||
};
|
||||
m.get_trk_tru = func
|
||||
{
|
||||
if(getprop("/velocities/groundspeed-kt") > 80)
|
||||
{
|
||||
getprop("/orientation/track-deg");
|
||||
}
|
||||
else
|
||||
{
|
||||
getprop("/orientation/heading-deg");
|
||||
}
|
||||
};
|
||||
m.get_lat= func getprop("/position/latitude-deg");
|
||||
m.get_lon= func getprop("/position/longitude-deg");
|
||||
|
@ -242,16 +234,14 @@ var NavDisplay = {
|
|||
# because things are much better configurable that way
|
||||
# now look up all required SVG elements and initialize member fields using the same name to have a convenient handle
|
||||
foreach(var element; ["dmeLDist","dmeRDist","dmeL","dmeR","vorL","vorR","vorLId","vorRId",
|
||||
"range","status.wxr","status.wpt","status.sta","status.arpt"])
|
||||
"status.wxr","status.wpt","status.sta","status.arpt"])
|
||||
me.symbols[element] = me.nd.getElementById(element);
|
||||
|
||||
# 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
|
||||
#
|
||||
foreach(var element; ["compassApp","northUp","aplSymMap","aplSymMapCtr","aplSymVor",
|
||||
"staArrowL2","staArrowR2","staFromL2","staToL2","staFromR2","staToR2",
|
||||
"hdgTrk","truMag","altArc","planArcs",
|
||||
"trkInd","compass","hdgBug","HdgBugCRT","TrkBugLCD","HdgBugLCD","curHdgPtr",
|
||||
foreach(var element; ["staArrowL2","staArrowR2","staFromL2","staToL2","staFromR2","staToR2",
|
||||
"hdgTrk","trkInd","hdgBug","HdgBugCRT","TrkBugLCD","HdgBugLCD","curHdgPtr",
|
||||
"HdgBugCRT2","TrkBugLCD2","HdgBugLCD2","hdgBug2","selHdgLine","selHdgLine2","curHdgPtr2",
|
||||
"staArrowL","staArrowR","staToL","staFromL","staToR","staFromR"] )
|
||||
me.symbols[element] = me.nd.getElementById(element).updateCenter();
|
||||
|
@ -417,13 +407,15 @@ var NavDisplay = {
|
|||
var userTrkTru = me.aircraft_source.get_trk_tru();
|
||||
|
||||
if(me.get_switch('toggle_true_north')) {
|
||||
me.symbols.truMag.setText("TRU");
|
||||
var userHdg=userHdgTru;
|
||||
me.userHdg=userHdgTru;
|
||||
var userTrk=userTrkTru;
|
||||
me.userTrk=userTrkTru;
|
||||
} else {
|
||||
me.symbols.truMag.setText("MAG");
|
||||
var userHdg=userHdgMag;
|
||||
me.userHdg=userHdgMag;
|
||||
var userTrk=userTrkMag;
|
||||
me.userTrk=userTrkMag;
|
||||
}
|
||||
# this should only ever happen when testing the experimental AI/MP ND driver hash (not critical)
|
||||
# or when an error occurs (critical)
|
||||
|
@ -431,17 +423,21 @@ var NavDisplay = {
|
|||
print("aircraft source invalid, returning !");
|
||||
return;
|
||||
}
|
||||
if (me.aircraft_source.get_gnd_spd() < 80)
|
||||
if (me.aircraft_source.get_gnd_spd() < 80) {
|
||||
userTrk = userHdg;
|
||||
me.userTrk=userHdg;
|
||||
}
|
||||
|
||||
if((me.in_mode('toggle_display_mode', ['MAP']) and me.get_switch('toggle_display_type') == "CRT")
|
||||
or (me.get_switch('toggle_track_heading') and me.get_switch('toggle_display_type') == "LCD"))
|
||||
{
|
||||
userHdgTrk = userTrk;
|
||||
me.userHdgTrk = userTrk;
|
||||
userHdgTrkTru = userTrkTru;
|
||||
me.symbols.hdgTrk.setText("TRK");
|
||||
} else {
|
||||
userHdgTrk = userHdg;
|
||||
me.userHdgTrk = userHdg;
|
||||
userHdgTrkTru = userHdgTru;
|
||||
me.symbols.hdgTrk.setText("HDG");
|
||||
}
|
||||
|
@ -562,8 +558,6 @@ var NavDisplay = {
|
|||
me.symbols.dmeRDist.setText("");
|
||||
}
|
||||
|
||||
me.symbols.range.setText(sprintf("%3.0f",me.rangeNm()/2));
|
||||
|
||||
# Hide heading bug 10 secs after change
|
||||
var vhdg_bug = getprop("autopilot/settings/heading-bug-deg") or 0;
|
||||
var hdg_bug_active = getprop("autopilot/settings/heading-bug-active");
|
||||
|
@ -574,14 +568,12 @@ var NavDisplay = {
|
|||
or (me.get_switch('toggle_track_heading') and me.get_switch('toggle_display_type') == "LCD"))
|
||||
{
|
||||
me.symbols.trkInd.setRotation(0);
|
||||
me.symbols.trkInd2.setRotation(0);
|
||||
me.symbols.curHdgPtr.setRotation((userHdg-userTrk)*D2R);
|
||||
me.symbols.curHdgPtr2.setRotation((userHdg-userTrk)*D2R);
|
||||
}
|
||||
else
|
||||
{
|
||||
me.symbols.trkInd.setRotation((userTrk-userHdg)*D2R);
|
||||
me.symbols.trkInd2.setRotation((userTrk-userHdg)*D2R);
|
||||
me.symbols.curHdgPtr.setRotation(0);
|
||||
me.symbols.curHdgPtr2.setRotation(0);
|
||||
}
|
||||
|
@ -592,22 +584,6 @@ var NavDisplay = {
|
|||
me.symbols.hdgBug.setRotation(hdgBugRot);
|
||||
me.symbols.hdgBug2.setRotation(hdgBugRot);
|
||||
me.symbols.selHdgLine2.setRotation(hdgBugRot);
|
||||
me.symbols.compass.setRotation(-userHdgTrk*D2R);
|
||||
me.symbols.compassApp.setRotation(-userHdgTrk*D2R);
|
||||
}
|
||||
if(me.get_switch('toggle_centered')) {
|
||||
if (me.in_mode('toggle_display_mode', ['APP','VOR']))
|
||||
me.symbols.compassApp.show();
|
||||
else
|
||||
me.symbols.compassApp.setVisible(me.in_mode('toggle_display_mode', ['MAP']));
|
||||
} else {
|
||||
me.symbols.compassApp.hide();
|
||||
}
|
||||
|
||||
if ((me.get_switch('toggle_centered') and !me.in_mode('toggle_display_mode', ['PLAN'])) or me.in_mode('toggle_display_mode', ['PLAN'])) {
|
||||
me.symbols.compass.hide();
|
||||
} else {
|
||||
me.symbols.compass.show();
|
||||
}
|
||||
|
||||
var staPtrVis = !me.in_mode('toggle_display_mode', ['PLAN']);
|
||||
|
@ -622,14 +598,12 @@ var NavDisplay = {
|
|||
var vorheading = userHdgTru;
|
||||
var adfheading = userHdgMag;
|
||||
}
|
||||
if(me.in_mode('toggle_display_mode', ['APP','MAP','VOR','PLAN']))
|
||||
{
|
||||
if(getprop("instrumentation/nav/heading-deg") != nil)
|
||||
var nav0hdg=getprop("instrumentation/nav/heading-deg") - vorheading;
|
||||
if(getprop("instrumentation/nav[1]/heading-deg") != nil)
|
||||
var nav1hdg=getprop("instrumentation/nav[1]/heading-deg") - vorheading;
|
||||
var adf0hdg=getprop("instrumentation/adf/indicated-bearing-deg") - adfheading;
|
||||
var adf1hdg=getprop("instrumentation/adf[1]/indicated-bearing-deg") - adfheading;
|
||||
var adf0hdg=getprop("instrumentation/adf/indicated-bearing-deg");
|
||||
var adf1hdg=getprop("instrumentation/adf[1]/indicated-bearing-deg");
|
||||
if(!me.get_switch('toggle_centered'))
|
||||
{
|
||||
if(me.in_mode('toggle_display_mode', ['PLAN']))
|
||||
|
@ -732,30 +706,6 @@ var NavDisplay = {
|
|||
}
|
||||
me.symbols.selHdgLine2.setVisible(staPtrVis and hdg_bug_active);
|
||||
}
|
||||
}
|
||||
|
||||
me.symbols.northUp.setVisible(me.in_mode('toggle_display_mode', ['PLAN']));
|
||||
me.symbols.aplSymMap.setVisible(me.in_mode('toggle_display_mode', ['APP','MAP','VOR']) and !me.get_switch('toggle_centered'));
|
||||
me.symbols.aplSymMapCtr.setVisible(me.in_mode('toggle_display_mode', ['MAP']) and me.get_switch('toggle_centered'));
|
||||
me.symbols.aplSymVor.setVisible(me.in_mode('toggle_display_mode', ['APP','VOR']) and me.get_switch('toggle_centered'));
|
||||
me.symbols.planArcs.setVisible(me.in_mode('toggle_display_mode', ['PLAN']));
|
||||
|
||||
if (abs(userVSpd) > 5) {
|
||||
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) {
|
||||
var altRangeNm = altDiff/userVSpd*userGndSpd*KT2MPS*M2NM;
|
||||
if(altRangeNm > 1) {
|
||||
var altRangePx = (350/me.rangeNm())*altRangeNm;
|
||||
if (altRangePx > 700)
|
||||
altRangePx = 700;
|
||||
me.symbols.altArc.setTranslation(0,-altRangePx);
|
||||
}
|
||||
me.symbols.altArc.setVisible(me.in_mode('toggle_display_mode', ['MAP']) and !me.get_switch('toggle_centered'));
|
||||
} else
|
||||
me.symbols.altArc.hide();
|
||||
} else {
|
||||
me.symbols.altArc.hide();
|
||||
}
|
||||
|
||||
## run all predicates in the NDStyle hash and evaluate their true/false behavior callbacks
|
||||
## this is in line with the original design, but normally we don't need to getprop/poll here,
|
||||
|
|
|
@ -319,6 +319,38 @@ var NDStyles = {
|
|||
is_false: func(nd) nd.symbols.gsGroup.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'compassApp',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.get_switch('toggle_centered') and nd.in_mode('toggle_display_mode', ['APP','VOR'])),
|
||||
is_true: func(nd) {
|
||||
if(nd.get_switch('toggle_true_north'))
|
||||
var hdg = nd.aircraft_source.get_trk_tru();
|
||||
else
|
||||
var hdg = nd.aircraft_source.get_trk_mag();
|
||||
nd.symbols.compassApp.setRotation(-hdg*D2R);
|
||||
nd.symbols.compassApp.show();
|
||||
},
|
||||
is_false: func(nd) nd.symbols.compassApp.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'compassMapCtr',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.get_switch('toggle_centered') and nd.in_mode('toggle_display_mode', ['MAP'])),
|
||||
is_true: func(nd) {
|
||||
if(nd.get_switch('toggle_true_north'))
|
||||
var hdg = nd.aircraft_source.get_trk_tru();
|
||||
else
|
||||
var hdg = nd.aircraft_source.get_trk_mag();
|
||||
nd.symbols.compassMapCtr.setRotation(-hdg*D2R);
|
||||
nd.symbols.compassMapCtr.show();
|
||||
},
|
||||
is_false: func(nd) nd.symbols.compassMapCtr.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'hdg',
|
||||
impl: {
|
||||
|
@ -373,6 +405,72 @@ var NDStyles = {
|
|||
is_false: func(nd) nd.symbols.gs.setFontSize(52),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'compass',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) ((nd.get_switch('toggle_centered') and !nd.in_mode('toggle_display_mode', ['PLAN'])) or nd.in_mode('toggle_display_mode', ['PLAN'])),
|
||||
is_true: func(nd) nd.symbols.compass.hide(),
|
||||
is_false: func(nd) {
|
||||
nd.symbols.compass.show();
|
||||
nd.symbols.compass.setRotation(-nd.userHdgTrk*D2R);
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'truMag',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) nd.get_switch('toggle_true_north'),
|
||||
is_true: func(nd) nd.symbols.truMag.setText("TRU"),
|
||||
is_false: func(nd) nd.symbols.truMag.setText("MAG"),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'northUp',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) nd.in_mode('toggle_display_mode', ['PLAN']),
|
||||
is_true: func(nd) nd.symbols.northUp.show(),
|
||||
is_false: func(nd) nd.symbols.northUp.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'planArcs',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) nd.in_mode('toggle_display_mode', ['PLAN']),
|
||||
is_true: func(nd) nd.symbols.planArcs.show(),
|
||||
is_false: func(nd) nd.symbols.planArcs.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'aplSymMap',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.in_mode('toggle_display_mode', ['APP','MAP','VOR']) and !nd.get_switch('toggle_centered')),
|
||||
is_true: func(nd) nd.symbols.aplSymMap.show(),
|
||||
is_false: func(nd) nd.symbols.aplSymMap.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'aplSymMapCtr',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.in_mode('toggle_display_mode', ['MAP']) and nd.get_switch('toggle_centered')),
|
||||
is_true: func(nd) nd.symbols.aplSymMapCtr.show(),
|
||||
is_false: func(nd) nd.symbols.aplSymMapCtr.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'aplSymVor',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.in_mode('toggle_display_mode', ['APP','VOR']) and nd.get_switch('toggle_centered')),
|
||||
is_true: func(nd) nd.symbols.aplSymVor.show(),
|
||||
is_false: func(nd) nd.symbols.aplSymVor.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'rangeArcs',
|
||||
impl: {
|
||||
|
@ -380,8 +478,8 @@ var NDStyles = {
|
|||
predicate: func(nd) !nd.get_switch('toggle_centered') and nd.get_switch('toggle_rangearc'),
|
||||
is_true: func(nd) nd.symbols.rangeArcs.show(),
|
||||
is_false: func(nd) nd.symbols.rangeArcs.hide(),
|
||||
}, # of rangeArcs.impl
|
||||
}, # of rangeArcs
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'rangePln1',
|
||||
impl: {
|
||||
|
@ -430,6 +528,85 @@ var NDStyles = {
|
|||
is_false: func(nd) nd.symbols.rangePln4.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'range',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) !nd.get_switch('toggle_centered'),
|
||||
is_true: func(nd) {
|
||||
nd.symbols.range.setText(sprintf("%3.0f",nd.rangeNm()/2));
|
||||
},
|
||||
is_false: func(nd) nd.symbols.rangePln4.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'rangeCtr1',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.get_switch('toggle_centered') and nd.in_mode('toggle_display_mode', ['APP','MAP','VOR'])),
|
||||
is_true: func(nd) {
|
||||
nd.symbols.rangeCtr1.show();
|
||||
nd.symbols.rangeCtr1.setText(sprintf("%3.1f",nd.rangeNm()/4));
|
||||
},
|
||||
is_false: func(nd) nd.symbols.rangeCtr1.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'rangeCtr2',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.get_switch('toggle_centered') and nd.in_mode('toggle_display_mode', ['APP','MAP','VOR'])),
|
||||
is_true: func(nd) {
|
||||
nd.symbols.rangeCtr2.show();
|
||||
nd.symbols.rangeCtr2.setText(sprintf("%3.1f",nd.rangeNm()/4));
|
||||
},
|
||||
is_false: func(nd) nd.symbols.rangeCtr2.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'altArc',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (!nd.get_switch('toggle_centered') and nd.in_mode('toggle_display_mode', ['MAP'])),
|
||||
is_true: func(nd) {
|
||||
var altDiff = (getprop("autopilot/settings/target-altitude-ft") or 0)-(getprop("instrumentation/altimeter/indicated-altitude-ft") or 0);
|
||||
if (abs(altDiff) > 50 and altDiff/nd.aircraft_source.get_vspd() > 0) {
|
||||
var altRangeNm = altDiff/nd.aircraft_source.get_vspd()*nd.aircraft_source.get_gnd_spd()*KT2MPS*M2NM;
|
||||
if(altRangeNm > 1) {
|
||||
var altRangePx = (350/nd.rangeNm())*altRangeNm;
|
||||
if (altRangePx > 700)
|
||||
altRangePx = 700;
|
||||
nd.symbols.altArc.setTranslation(0,-altRangePx);
|
||||
}
|
||||
nd.symbols.altArc.show();
|
||||
} else
|
||||
nd.symbols.altArc.hide();
|
||||
},
|
||||
is_false: func(nd) nd.symbols.altArc.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'altArcCtr',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.get_switch('toggle_centered') and nd.in_mode('toggle_display_mode', ['MAP'])),
|
||||
is_true: func(nd) {
|
||||
var altDiff = (getprop("autopilot/settings/target-altitude-ft") or 0)-(getprop("instrumentation/altimeter/indicated-altitude-ft") or 0);
|
||||
if (abs(altDiff) > 50 and altDiff/nd.aircraft_source.get_vspd() > 0) {
|
||||
var altRangeNm = altDiff/nd.aircraft_source.get_vspd()*nd.aircraft_source.get_gnd_spd()*KT2MPS*M2NM;
|
||||
if(altRangeNm > 1) {
|
||||
var altRangePx = (175/nd.rangeNm())*altRangeNm;
|
||||
if (altRangePx > 350)
|
||||
altRangePx = 350;
|
||||
nd.symbols.altArcCtr.setTranslation(0,-altRangePx);
|
||||
}
|
||||
nd.symbols.altArcCtr.show();
|
||||
} else
|
||||
nd.symbols.altArcCtr.hide();
|
||||
},
|
||||
is_false: func(nd) nd.symbols.altArcCtr.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'crsLbl',
|
||||
impl: {
|
||||
|
@ -478,13 +655,32 @@ var NDStyles = {
|
|||
id:'trkInd2',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.in_mode('toggle_display_mode', ['MAP','APP','VOR']) and nd.get_switch('toggle_centered')),
|
||||
predicate: func(nd) (nd.in_mode('toggle_display_mode', ['APP','VOR']) and nd.get_switch('toggle_centered')),
|
||||
is_true: func(nd) {
|
||||
if (nd.get_switch('toggle_track_heading') and nd.get_switch('toggle_display_type') == "LCD")
|
||||
nd.symbols.trkInd2.setRotation(0);
|
||||
else
|
||||
nd.symbols.trkInd2.setRotation((nd.userTrk-nd.userHdg)*D2R);
|
||||
nd.symbols.trkInd2.show();
|
||||
},
|
||||
is_false: func(nd) nd.symbols.trkInd2.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'trkIndMapCtr',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: func(nd) (nd.in_mode('toggle_display_mode', ['MAP']) and nd.get_switch('toggle_centered')),
|
||||
is_true: func(nd) {
|
||||
if (nd.get_switch('toggle_display_type') == "CRT" or (nd.get_switch('toggle_track_heading') and nd.get_switch('toggle_display_type') == "LCD"))
|
||||
nd.symbols.trkIndMapCtr.setRotation(0);
|
||||
else
|
||||
nd.symbols.trkIndMapCtr.setRotation((nd.userTrk-nd.userHdg)*D2R);
|
||||
nd.symbols.trkIndMapCtr.show();
|
||||
},
|
||||
is_false: func(nd) nd.symbols.trkIndMapCtr.hide(),
|
||||
},
|
||||
},
|
||||
{
|
||||
id:'vorCrsPtr',
|
||||
impl: {
|
||||
|
@ -572,7 +768,7 @@ var NDStyles = {
|
|||
id:'wind',
|
||||
impl: {
|
||||
init: func(nd,symbol),
|
||||
predicate: ALWAYS,
|
||||
predicate: func(nd) (nd.aircraft_source.get_spd() > 100 and getprop("environment/wind-speed-kt") > 6),
|
||||
is_true: func(nd) {
|
||||
var windDir = getprop("environment/wind-from-heading-deg");
|
||||
if(!nd.get_switch('toggle_true_north'))
|
||||
|
@ -580,15 +776,16 @@ var NDStyles = {
|
|||
if(windDir < 0.5) windDir = 360 + windDir;
|
||||
elsif(windDir >= 360.5) windDir = windDir - 360;
|
||||
nd.symbols.wind.setText(sprintf("%03.0f / %02.0f",windDir,getprop("environment/wind-speed-kt")));
|
||||
nd.symbols.wind.show();
|
||||
},
|
||||
is_false: NOTHING,
|
||||
is_false: func(nd) nd.symbols.wind.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),
|
||||
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 and getprop("environment/wind-speed-kt") > 6),
|
||||
is_true: func(nd) {
|
||||
nd.symbols.windArrow.show();
|
||||
var windArrowRot = getprop("environment/wind-from-heading-deg");
|
||||
|
|
11
Nasal/canvas/map/navdisplayLayers.txt
Normal file
11
Nasal/canvas/map/navdisplayLayers.txt
Normal file
|
@ -0,0 +1,11 @@
|
|||
From top to bottom:
|
||||
|
||||
4 TCAS
|
||||
3 Altitude profile (T/C, T/D etc.)
|
||||
2 Waypoint
|
||||
1 Route
|
||||
0 Map overlay (range, track)
|
||||
-1 Airports
|
||||
-2 Stations
|
||||
-3 Fixes
|
||||
-4 Weather radar
|
|
@ -28,7 +28,8 @@ var draw_route = func (group, theroute, controller=nil, lod=0)
|
|||
|
||||
var route = route_group.createChild("path","route")
|
||||
.setStrokeLineWidth(5)
|
||||
.setColor(1,0,1);
|
||||
.setColor(1,0,1)
|
||||
.set("z-index",1);
|
||||
|
||||
var cmds = [];
|
||||
var coords = [];
|
||||
|
|
|
@ -77,7 +77,7 @@ var draw_traffic = func(group, traffic, lod=0)
|
|||
}
|
||||
|
||||
tcas_grp.setGeoPosition(lat, lon)
|
||||
.set("z-index",1);
|
||||
.set("z-index",4);
|
||||
|
||||
|
||||
#settimer(func drawtraffic(group), 2); # updates are handled by the model, not by the view!
|
||||
|
|
Loading…
Add table
Reference in a new issue