Project New Waypoint MFD

Topper

Addon Developer
Addon Developer
Donator
Joined
Mar 28, 2008
Messages
666
Reaction score
20
Points
33
Hi,
here a some screenshots of my next little project: A Waypoint MFD
It can load routes from file and display them.
Also bases, basepads are displayed.
VOR's are displayed, if the NAV Freq. is activated and if they are in range...

Here are some examples:
VOR UHA
VOR_UHA.png

Pads at Cape
cape_pads.png

A loaded route
route.png


An example of one "route file":

Code:
#   This is an waypoint example route for cape canaveral.
#   The following options are possible for waypoints:    
#
#    for type "TURNING_POINT":
#        WAYPOINT_TYPE:LATITUDE:LONGTITUDE:SIZE[:NAME]
#
#    Name is optional, id+1 of the waypoint will be shown in MFD if name is not set here
#
#    for type "LOOPBACK_POINT":
#        WAYPOINT_TYPE:LATITUDE:LONGTITUDE:SIZE:ID_OF_LOOP_BACK_POINT[:NAME]
#
#    Name is optional, the ID_OF_LOOP_BACK_POINT is the id of the waypoint to return to.
#
#   id's would be genereated in the order they are written in this file.
#   First waypoint id is 0
#

TURNING_POINT:28.59767009415995:-80.68293401534778:500
TURNING_POINT:28.63219633933067:-80.70617220949629:500
TURNING_POINT:28.62760682133923:-80.6209119036223:500
TURNING_POINT:28.60806496816723:-80.60476529545372:500
LOOPBACK_POINT:28.58546036272783:-80.65128676992974:500:1
more will follow soon :cheers:

[EDIT]

Latest file for beta testing is attached here
Ig7NUGGyqB8AAAAASUVORK5CYII=
 

Attachments

  • waypoint_release.zip
    55.8 KB · Views: 8
Last edited:

Izack

Non sequitur
Addon Developer
Joined
Feb 4, 2010
Messages
6,665
Reaction score
13
Points
113
Location
The Wilderness, N.B.
Excellent idea!
Two requests:
-Altitude of defined points, default to 0 for VOR, base etc.
- Runways as start/end points or even a line or rectangle defining the location.

Already it looks great as an aide to all general forms of final approach. :)
 

garyw

O-F Administrator
Administrator
Moderator
Addon Developer
Tutorial Publisher
Joined
May 14, 2008
Messages
10,485
Reaction score
209
Points
138
Location
Kent
Website
blog.gdwnet.com
That looks pretty awesome, would be perfect for configuring runway HAC's - looking forward to this!
 

Topper

Addon Developer
Addon Developer
Donator
Joined
Mar 28, 2008
Messages
666
Reaction score
20
Points
33
Excellent idea!
Two requests:
-Altitude of defined points, default to 0 for VOR, base etc.
- Runways as start/end points or even a line or rectangle defining the location.

Already it looks great as an aide to all general forms of final approach. :)

Hi Izack,
The altitude function is a good idea.
But i prefere that this is just a value to be displayed, it's not a condition to get the next waypoint.

VOR's can not be selected as waypoints yet, they are just shown and only if NAV frequenz is set and if they are in range.
The position of VOR's can only be get by the API if they are in range.

Same problem for the Runways: the position can not be get over the API directly. So curently, it's not possible for me to show them or set them as waypoint.

Hoever, it's also a good idea to display runways In a future version, maybe it's possible to parse the runway positions (and all VOR's also) from the config files, but i haven't planned this for the first release.

Best Regards
Topper
 

garyw

O-F Administrator
Administrator
Moderator
Addon Developer
Tutorial Publisher
Joined
May 14, 2008
Messages
10,485
Reaction score
209
Points
138
Location
Kent
Website
blog.gdwnet.com
what about just adding a waypoint type of 'runway' with a slightly elongated box and letting the user put in the lat/lon of the middle bit of the runway? Saves you the effort of parsing config files.
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,406
Reaction score
588
Points
153
Location
Vienna
This is looking slick, nice one. Reminds me of the ORL checkpoint mfd, but with a graphic display...:thumbup:

You mean this is not graphical enough?

picture.php
 

SolarLiner

It's necessary, TARS.
Addon Developer
Joined
Jun 14, 2010
Messages
1,847
Reaction score
2
Points
0
Location
404 ROAD NOT FOUND
Hey Topper ! Really good project !
Just a little thing, about the waypoint file: I think to replace "TURNING_POINT" by "WAY" or "PT". And by extension, "VOR", "BSE", "PAD" and finally "LOOP"
I think too to an "Orbiter-like" parameters syntax; so my version of the waypoint file would be like this :
Code:
#   This is an waypoint example route for cape canaveral.
#   The following options are possible for waypoints:    
#
#    for type "WAY":
#        WAY: latitude longitude:size[ NAME]
#
#    Name is optional, id+1 of the waypoint will be shown in MFD if name is not set here
#
#    for type "LOOP":
#        LOOP: latitude longitude size:ID_Loop_start[ NAME]
#
#    Name is optional, the ID_Loop_start is the id of the waypoint to return to.
#
#   id's would be genereated in the order they are written in this file.
#   First waypoint id is 0

#    for type "PAD":
#       PAD: Base:PAD size[ NAME]
#
#    for type "BSE":
#       BSE: Base size[ NAME]
#
#    Point will be centered in the center of the base.
#
#    for type "RWY":
#       RWY: Base:RWY_ID EndID size[ NAME]
#
#    RWY_ID is the runway number (listed stating 0 and in order they are written in the base config)
#    EndID is the end number (listed with END1 and END2)
#

WAY: 28.597 -80.682     500 Test0123
WAY: 28.632 -80.706     500 Test0124
WAY: 28.627 -80.620     500 Test0125
BSE: Cape Canaveral     500 Test0126
PAD: Cape Canaveral:1   500 Test0127
RWY: Cape Canaveral:1 2 500 Test0128
LOOP:28.585 -80.651:1   500 Test0129

Just a suggestion.
 
Last edited:

Topper

Addon Developer
Addon Developer
Donator
Joined
Mar 28, 2008
Messages
666
Reaction score
20
Points
33
Hey Topper ! Really good project !
Just a little thing, about the waypoint file: I think to replace "TURNING_POINT" by "WAY" or "PT". And by extension, "VOR", "BSE", "PAD" and finally "LOOP"
I think too to an "Orbiter-like" parameters syntax; so my version of the waypoint file would be like this :
Code:
#   This is an waypoint example route for cape canaveral.
#   The following options are possible for waypoints:    
#
#    for type "WAY":
#        WAY: latitude longitude:size[ NAME]
#
#    Name is optional, id+1 of the waypoint will be shown in MFD if name is not set here
#
#    for type "LOOP":
#        LOOP: latitude longitude size:ID_Loop_start[ NAME]
#
#    Name is optional, the ID_Loop_start is the id of the waypoint to return to.
#
#   id's would be genereated in the order they are written in this file.
#   First waypoint id is 0

#    for type "PAD":
#       PAD: Base:PAD size[ NAME]
#
#    for type "BSE":
#       BSE: Base size[ NAME]
#
#    Point will be centered in the center of the base.
#
#    for type "RWY":
#       RWY: Base:RWY_ID EndID size[ NAME]
#
#    RWY_ID is the runway number (listed stating 0 and in order they are written in the base config)
#    EndID is the end number (listed with END1 and END2)
#

WAY: 28.597 -80.682     500 Test0123
WAY: 28.632 -80.706     500 Test0124
WAY: 28.627 -80.620     500 Test0125
BSE: Cape Canaveral     500 Test0126
PAD: Cape Canaveral:1   500 Test0127
RWY: Cape Canaveral:1 2 500 Test0128
LOOP:28.585 -80.651:1   500 Test0129
Just a suggestion.

So far ok, but i prefere to call it POINT.

For a PAD i don't need to have the coordinates in the file, because i get them over the API. So i think, just base name and PAD - ID shoud be enogh.
How ever, i've thinked about to use a xml syntax, what do you think about this?:
Code:
<ROUTE>
<POINTS>
  <ID=1>28.597, -80.682</ID>
  <ID=2>2,28.632, -80.706</ID>
  <ID=3>3,28.627, -80.620</ID>
</POINTS>
<WAY>
   <TAKEOFF_POINT>
      <END1> 1
      <END2> 2
      <DESC> Take off </DESC>
   </TAKEOFF_POINT>
   <TURNING_POINT>
       <ALT> 500 </ALT>
       <SPEED> 300 </SPEED>
       <DESC> Turn around here </DESC>
    </TURNING_POINT>
   <VERTICAL_LANDING_POINT>
      <BASE> Cape Canaveral </BASE>
      <PAD_ID> 3 </PAD_ID>
   </ID>
</WAY>
</ROUTE>
Maybe, it would be also be possible in a future version to parse kml- files.... :)

Here is an example:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
<Document>
    <name>Pfad ohne Namen.kml</name>
    <Style id="s_ylw-pushpin_hl">
        <IconStyle>
            <scale>1.3</scale>
            <Icon>
                <href>http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png</href>
            </Icon>
            <hotSpot x="20" y="2" xunits="pixels" yunits="pixels"/>
        </IconStyle>
        <LineStyle>
            <color>ff0000ff</color>
        </LineStyle>
    </Style>
    <Style id="s_ylw-pushpin">
        <IconStyle>
            <scale>1.1</scale>
            <Icon>
                <href>http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png</href>
            </Icon>
            <hotSpot x="20" y="2" xunits="pixels" yunits="pixels"/>
        </IconStyle>
        <LineStyle>
            <color>ff0000ff</color>
        </LineStyle>
    </Style>
    <StyleMap id="m_ylw-pushpin">
        <Pair>
            <key>normal</key>
            <styleUrl>#s_ylw-pushpin</styleUrl>
        </Pair>
        <Pair>
            <key>highlight</key>
            <styleUrl>#s_ylw-pushpin_hl</styleUrl>
        </Pair>
    </StyleMap>
    <Placemark>
        <name>Pfad ohne Namen</name>
        <styleUrl>#m_ylw-pushpin</styleUrl>
        <LineString>
            <tessellate>1</tessellate>
            <coordinates>
                -80.68293401534778,28.59767009415995,0 
                -80.70617220949629,28.63219633933067,0 
                -80.6209119036223,28.62760682133923,0 
                -80.60476529545372,28.60806496816723,0 
                -80.65128676992974,28.58546036272783,0 
            </coordinates>
        </LineString>
    </Placemark>
</Document>
</kml>

Does we can just add keys like speed, alt and kind of these points to the kml?
And does this is allowed? ( I don't know about licenses from google etc...)

[EDIT]
Oh I just read that [ame="http://en.wikipedia.org/wiki/GPS_eXchange_Format"]GPX - Format[/ame] is free and supports routes, tracks and waypoints :)
I think this is what i need...

220px-Wayroutrackp.png
(source: wikipedia)

Oh and speed and altitude is also optional...

look here:

"http://www.topografix.com/gpx_manual.asp]"

<speed>

Optional in: <wpt> <rtept> <trkpt>

Units: meters per second

<speed>4.23</speed>

Instantaneous speed at the point.
...
<ele>

Optional in: <wpt> <rtept> <trkpt>

Units: meters

<ele>1206.2</ele>

Elevation in meters of the point.
 
Last edited:

SolarLiner

It's necessary, TARS.
Addon Developer
Joined
Jun 14, 2010
Messages
1,847
Reaction score
2
Points
0
Location
404 ROAD NOT FOUND
Speed isn't taken in account in Google Earth, so I think it is same thing on the kml files.

XML is a powerful language, but you need a bit of structure inside. I really prefer the first (or my) version of the guidance. After, I've called WAY to make the code well aligned. :)
 

Topper

Addon Developer
Addon Developer
Donator
Joined
Mar 28, 2008
Messages
666
Reaction score
20
Points
33
Speed isn't taken in account in Google Earth, so I think it is same thing on the kml files.

XML is a powerful language, but you need a bit of structure inside. I really prefer the first (or my) version of the guidance. After, I've called WAY to make the code well aligned. :)

Yes your format is good for the first release!
But GPX-Format looks pretty well also,
there are all keys we need:

<lat> Latitude of the routepoint.
<lon> Longitude of the routepoint.
<ele> Elevation of the routepoint. (For alt or:
<geoidheight> Geoid height of the routepoint ?)
<desc> Descriptive description of the routepoint
<vdop> VDOP (For size?)
<type> Type (category) of routepoint (Here we can use our own values: For example :"TURNING", "HORZ_LANDING", "VERT_LANDING", ...)
...

Thats all we need and will make it possible to create routes and convert this with google earth and a converter... (KML->GPX)
 
Last edited:

SolarLiner

It's necessary, TARS.
Addon Developer
Joined
Jun 14, 2010
Messages
1,847
Reaction score
2
Points
0
Location
404 ROAD NOT FOUND
So, an XML file would be written like this ?
Code:
<route>
<point id="1">
 <lat>20.000</lat>
 <lon>15.000</lon>
 <ele>1500</ele>
 <desc>Test0123</desc>
 <vdop>1.0</vdop>
 <type>TURNING</type>
 </point>
 </route>
So, it means you can't center automatically in a base ?

DOP in Wikipedia
 

Topper

Addon Developer
Addon Developer
Donator
Joined
Mar 28, 2008
Messages
666
Reaction score
20
Points
33
Hi SolarLiner,

Don't give up ;-)
I'm just working on that problem and have a solution (It's a valid GPX file):

Code:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<gpx version="1.1" creator="GPX Editor 1.3.56.1423" xmlns="http://www.topografix.com/GPX/1/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">
    <rte>
        <type>RW_TAKEOFF</type>
        <rtept lat="28.6321963393307" lon="-80.7061722094963">
        </rtept>
        <rtept lat="28.59767009416" lon="-80.6829340153478">
        </rtept>    
    </rte>
    <rte>
        <type>RW_LAND</type>
        <rtept lat="28.6321963393307" lon="-80.7061722094963">
        </rtept>
        <rtept lat="28.59767009416" lon="-80.6829340153478">
        </rtept>    
    </rte>
    <rte>
        <name>ROUTE</name>
        <type>ROUTE</type>
        <rtept lat="28.6321963393307" lon="-80.7061722094963">
            <ele>500</ele>
            <type>TURN</type>
        </rtept>
        <rtept lat="28.6598636740617" lon="-80.6968116760254">
            <ele>500</ele>
            <type>TURN</type>
        </rtept>
        <rtept lat="28.6276068213392" lon="-80.6209119036223">
            <ele>500</ele>
            <type>TURN</type>
        </rtept>
        <rtept lat="28.6080649681672" lon="-80.6047652954537">
            <ele>500</ele>
            <type>TURN</type>
        </rtept>
    </rte>
</gpx>

RW_TAKEOFF is always the first, RW_LAND always the last WP :)
Optional, if you are takeoff / Land on a pad, there can be add a type of waypoint like "VERTICAL_TAKEOFF" or so...
P.S., I've found a great, free tool to edit gpx files:
http://ignum.dl.sourceforge.net/project/gpxeditor/GPX Editor/Version 1.03.72/GPX_Editor010372.zip

but i can't add new points :-(

---------- Post added at 02:16 PM ---------- Previous post was at 12:12 AM ----------

What do you think about this syntax?
I hope it's ok for first (I've decidet to don't support GPX in the first release)

Code:
BEGIN_POINTS
    #LAT LON
    28.6321963393307 -80.7061722094963
    28.59767009416 -80.6829340153478
    28.597 -80.682
    28.597 -80.682
END_POINTS

BEGIN_RUNWAYS
    #ID_STARTPOINT ID_ENDPOINT
    0    1
END_RUNWAYS

BEGIN_WAYPOINTS
    #CLASS ID TASK [ALT SPD] "[DESCRIPTION]"
    RUNWAY 0 TAKEOFF 0 0 "Take Off Here"    
    POINT 2    TURN 500 300
    POINT 3    TURN 1500 300
    RUNWAY 0 LAND
END_WAYPOINTS
 
Last edited:

csanders

Addon Developer
Addon Developer
Joined
Jan 18, 2012
Messages
219
Reaction score
1
Points
0
Location
Plymouth
I would recommend listing longitude before latitude. I.e.:
-80.7061722094963 28.6321963393307
instead of:
28.6321963393307 -80.7061722094963

Reason being, if you look at a map, and think of it in Cartesian coordinates, longitude would be the x-axis, which is generally listed first. Generally in orbiter config files, it's listed in that fashion, for instance a vessel's position in a scenario file: (POS lon lat).

It may seem like a silly request, but such notation standardization helps prevent bugs.
 

SolarLiner

It's necessary, TARS.
Addon Developer
Joined
Jun 14, 2010
Messages
1,847
Reaction score
2
Points
0
Location
404 ROAD NOT FOUND
Hi SolarLiner, (...)
What do you think about this syntax?
I hope it's ok for first (I've decidet to don't support GPX in the first release)

Code:
BEGIN_POINTS
    #LAT LON
    28.6321963393307 -80.7061722094963
    28.59767009416 -80.6829340153478
    28.597 -80.682
    28.597 -80.682
END_POINTS

BEGIN_RUNWAYS
    #ID_STARTPOINT ID_ENDPOINT
    0    1
END_RUNWAYS

BEGIN_WAYPOINTS
    #CLASS ID TASK [ALT SPD] "[DESCRIPTION]"
    RUNWAY 0 TAKEOFF 0 0 "Take Off Here"    
    POINT 2    TURN 500 300
    POINT 3    TURN 1500 300
    RUNWAY 0 LAND
END_WAYPOINTS

It's too clean for me :lol:
I would want to stay in my first version of the guidance file, simple but working and easy-to-code (I think, I'm only good on Visual Basic). Translating KML to a Waypoint MFD guidance can be done with an external program. Anyone (me? ^^) can code this easily!
 
Top