Canvas MapStructure: Difference between revisions

Jump to navigation Jump to search
m
No edit summary
Line 279: Line 279:


[[File:Gpsmap196-mapstructure-layers-ratio.png|thumb|GPSMap196 with [[MapStructure]] layers (currently exhibiting some scaling/LOD issues due to hard-coded assumptions in some of the layers)]]
[[File:Gpsmap196-mapstructure-layers-ratio.png|thumb|GPSMap196 with [[MapStructure]] layers (currently exhibiting some scaling/LOD issues due to hard-coded assumptions in some of the layers)]]
{{FGCquote
  |The extra500 developers just posted a few screen shots of the Avidyne Entegra R9 in "moving map" mode, which demonstrates a few use-cases that we do not currently support in MapStructure (the ND being a different matter for now):<br/>
<br/>
[[Extra_EA-500#Map_:_Moving_Map]]<br/>
[[File:IFD_FMS-Map_FPL.png|250px]]<br/>
[[File:IFD_MAP-Map%2B.png|250px]]<br/>
<br/>
Specifically, this probably means that we may need to revamp/resurrect symbol controllers and maybe accept an optional callback to pre-/post-transform individual symbols (they're rotated apparently according to runway orientation), and allow them to be overridden when instantiating the layer (i.e. via the ctor if SVG-based). And we may also want to explore SVG styling by patching svg.nas to run a "transform" callback to customize/colorize certain elements of the SVG. The instrument itself is meanwhile making fairly aggressive use of texture-map based caching for basically ALL symbols.<br/>
<br/>
The other thing is that translation (centered/off center mode) should always be based on the parent group's dimensions (bounding box) and that we really shouldn't be using the top-level canvas, because a MFD very well be split into several screen areas (which also applies to the GPSMap196 and most other modern avionics).
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=213354#p213354
    |title=<nowiki>Evolving the MapStructure & NavDisplay Frameworks ...</nowiki>
    |author=<nowiki>Hooray</nowiki>
    |date=<nowiki>Tue Jun 24</nowiki>
  }}
}}


=== Performance ===
=== Performance ===

Navigation menu