|
virtual int | GetnPoints (void) |
|
wxString | IsPointNameValid (RoutePoint *pRP, const wxString &name) const |
|
void | AddPoint (RoutePoint *pNewPoint, bool b_rename_in_sequence=true, bool b_deferBoxCalc=false) |
|
void | InsertPointAndSegment (RoutePoint *pNewPoint, int insert_after, bool b_rename_in_sequence=true, bool b_deferBoxCalc=false) |
|
void | AddPointAndSegment (RoutePoint *pNewPoint, bool b_rename_in_sequence=true, bool b_deferBoxCalc=false) |
|
RoutePoint * | GetPoint (int nPoint) |
|
RoutePoint * | GetPoint (const wxString &guid) |
|
int | GetIndexOf (RoutePoint *prp) |
|
RoutePoint * | InsertPointBefore (RoutePoint *pRP, double rlat, double rlon, bool bRenamePoints=false) |
|
RoutePoint * | InsertPointAfter (RoutePoint *pRP, double rlat, double rlon, bool bRenamePoints=false) |
|
RoutePoint * | GetLastPoint () |
|
void | DeletePoint (RoutePoint *rp, bool bRenamePoints=false) |
|
void | RemovePoint (RoutePoint *rp, bool bRenamePoints=false) |
|
void | DeSelectRoute () |
|
void | FinalizeForRendering () |
|
void | UpdateSegmentDistance (RoutePoint *prp0, RoutePoint *prp, double planspeed=-1.0) |
| Updates the navigation data for a single route segment between two waypoints.
|
|
void | UpdateSegmentDistances (double planspeed=-1.0) |
|
LLBBox & | GetBBox () |
|
void | SetHiLite (int width) |
|
void | Reverse (bool bRenamePoints=false) |
|
void | RebuildGUIDList (void) |
|
void | RenameRoutePoints () |
|
void | ReloadRoutePointIcons () |
|
wxString | GetNewMarkSequenced (void) |
|
void | AssembleRoute () |
|
bool | IsEqualTo (Route *ptargetroute) |
|
void | CloneRoute (Route *psourceroute, int start_nPoint, int end_nPoint, const wxString &suffix, const bool duplicate_first_point=false) |
|
void | ClearHighlights (void) |
|
void | SetVisible (bool visible=true, bool includeWpts=true) |
|
void | SetListed (bool visible=true) |
|
bool | IsVisible () |
|
bool | IsListed () |
|
bool | IsActive () |
|
bool | IsSelected () |
|
bool | ContainsSharedWP () |
|
void | SetSharedWPViz (bool sharedWPVIZ) |
|
bool | GetSharedWPViz () |
|
double | GetRouteArrivalRadius (void) |
|
void | SetRouteArrivalRadius (double radius) |
|
void | SetDepartureDate (const wxDateTime &dt) |
| Set the departure time of the route.
|
|
wxString | GetName () const |
|
wxString | GetTo () const |
|
wxString | GetGUID () const |
|
void | ShowWaypointNames (bool bshow) |
|
bool | AreWaypointNamesVisible () |
|
|
int | m_ConfigRouteNum |
| Internal configuration/identification number for this route.
|
|
bool | m_bRtIsSelected |
| Flag indicating whether this route is currently selected in the UI.
|
|
bool | m_bRtIsActive |
| Flag indicating whether this route is currently active for navigation.
|
|
RoutePoint * | m_pRouteActivePoint |
| Pointer to the currently active waypoint within this route.
|
|
bool | m_bIsBeingCreated |
| Flag indicating that the route is currently being created by the user.
|
|
bool | m_bIsBeingEdited |
| Flag indicating that the route is currently being edited by the user.
|
|
double | m_route_length |
| Total length of the route in nautical miles, calculated using rhumb line (Mercator) distances.
|
|
double | m_route_time |
| Total estimated time to complete the route in seconds.
|
|
wxString | m_RouteNameString |
| User-assigned name for the route.
|
|
wxString | m_RouteStartString |
| Name or description of the route's starting point.
|
|
wxString | m_RouteEndString |
| Name or description of the route's ending point.
|
|
wxString | m_RouteDescription |
| Additional descriptive information about the route.
|
|
bool | m_bDeleteOnArrival |
| Flag indicating whether the route should be deleted once navigation reaches the end.
|
|
wxString | m_GUID |
| Globally unique identifier for this route.
|
|
bool | m_bIsInLayer |
| Flag indicating whether this route belongs to a layer.
|
|
int | m_LayerID |
| Identifier of the layer containing this route.
|
|
int | m_width |
| Width of the route line in pixels when rendered on the chart.
|
|
wxPenStyle | m_style |
| Style of the route line when rendered on the chart.
|
|
int | m_lastMousePointIndex |
| Index of the most recently interacted with route point.
|
|
bool | m_NextLegGreatCircle |
| Flag indicating whether the next leg should be calculated using great circle navigation or rhumb line navigation.
|
|
double | m_PlannedSpeed |
| Default planned speed for the route in knots.
|
|
wxDateTime | m_PlannedDeparture |
| Planned departure time for the route, in UTC.
|
|
wxString | m_TimeDisplayFormat |
| Format for displaying times in the UI.
|
|
RoutePointList * | pRoutePointList |
| Ordered list of waypoints (RoutePoints) that make up this route.
|
|
wxRect | active_pt_rect |
| Bounding rectangle for the active point in screen coordinates.
|
|
wxString | m_Colour |
| Color name for rendering the route on the chart.
|
|
bool | m_btemp |
| Flag indicating if this is a temporary route.
|
|
int | m_hiliteWidth |
| Width in pixels for highlighting the route when selected.
|
|
HyperlinkList * | m_HyperlinkList |
| List of hyperlinks associated with this route.
|
|
Represents a navigational route in the navigation system.
The Route class manages an ordered list of RoutePoints that define a navigational path between waypoints. It provides functionality for route creation, manipulation, and navigation calculations such as distances, bearings, and estimated times.
A Route can be:
- Active or inactive for navigation
- Visible or hidden on the chart
- Temporary or persistent
- Part of a layer or standalone
The class supports various route operations like adding, inserting, or removing waypoints, calculating segment distances, and handling waypoint sharing between multiple routes. It also maintains navigation-related attributes like planned speeds, departure times, and style attributes for rendering.
- See also
- RoutePoint
Definition at line 98 of file route.h.
bool Route::m_NextLegGreatCircle |
Flag indicating whether the next leg should be calculated using great circle navigation or rhumb line navigation.
This flag affects the visual rendering of the route segment during route creation, but notably does NOT affect how m_route_length is calculated.
The flag is set automatically during route creation when the difference between great circle and rhumb line distances exceeds a threshold, prompting the user to choose whether to include great circle routing points for the leg.
Great circle routes are visually represented by drawing multiple intermediate points along the great circle path to create a segmented approximation.
Definition at line 314 of file route.h.
double Route::m_route_length |
Total length of the route in nautical miles, calculated using rhumb line (Mercator) distances.
This value is the sum of all individual segment lengths between consecutive waypoints. Each segment length is calculated using the Mercator projection formula, which provides distances along rhumb lines.
Rhumb line calculations are used because they maintain a constant bearing, which can be easier to navigate with traditional methods, even though they may result in longer overall distances compared to great circle routes.
Definition at line 236 of file route.h.