Click or drag to resize

NavigationManager Class

Verizon Connect Logo
Print this page
Learn more about Verizon Connect GeoBase.
Get information about the latest release
The NavigationManager is a simple drop-in class to provide navigation services with the help from UI controls.
Inheritance Hierarchy
SystemObject
  Telogis.GeoBase.NavigationNavigationManager

Namespace:  Telogis.GeoBase.Navigation
Assembly:  geobase.net (in geobase.net.dll) Version: 4.99.0.0
Syntax
public class NavigationManager : IMapRenderer, 
	IMapMouseHandler, IDisposable

The NavigationManager type exposes the following members.

Constructors
  NameDescription
Public methodNavigationManager(MapCtrl, String, CultureInfo)
Construct a new NavigationManager for a given map control, path to language files and culture.
Public methodNavigationManager(MapCtrl, String, String)
Construct a new NavigationManager for a given map control, path to language files and culture.
Public methodNavigationManager(MapCtrl, String, CultureInfo, Boolean)
Construct a new NavigationManager for a given map control, path to language files and culture, with the option to perform all language-based operations in debug mode.
Public methodNavigationManager(MapCtrl, String, String, Boolean)
Construct a new NavigationManager for a given map control, path to language files and culture, with the option to perform all language-based operations in debug mode.
Top
Properties
  NameDescription
Public propertyAnnouncer
The IAnnouncer used by this NavigationManager.
Public propertyAnnouncerEnabled
Enable the WaveAnnouncer.
Public propertyCurrentZoom
Gets the currently selected ZoomLevel. If MapControlMode is set to FixedZooms. then this property gets the currently displayed zoom level. If MapControlMode Is set to DynamicZooms then this property gets the currently displayed zoom level, but may be adjusted according to vehicle speed and distance from the next approaching turn.
Public propertyDynamicZoomSettings
Returns the NavigationManager's DynamicZoomer. These dynamic zoom settings are applied when MapControlMode is set to DynamicZooms.
Public propertyFastZoom
The map will zoom to this level when the GPS is reporting a speed faster than the Crossover Speed. The value of this field is used when MapControlMode is set to CrossoverZoom. See GetZoomCrossoverSpeed(SpeedUnit).
Public propertyFreeLook
Allows the map to be freely panned and zoomed.
Public propertyHorizonRenderer
The renderer that renders the horizon on the map.
Public propertyLastMapTime
Gets the time taken to render the last map.
Public propertyMapControlMode
Gets or sets zoom mode for map control: CrossoverZoom, FixedZooms and DynamicZooms.
Public propertyMapCtrl
Gets or sets the map control.
Public propertyMapMouseEventsHandler
Get the MapMouseEventsHandler used by this NavigationManager. Always null.
Public propertyMovementArrow
The renderer that renders arrows on the map at turns.
Public propertyNavigator
Gets the Navigator used by this NavigationManager.
Public propertyOrientation
Gets or sets the MapOrientation used by this NavigationManager.
Public propertyRenderHorizon
Display the horizon on the map.
Public propertyRequiredRendermodes
Gets a mask representing the render modes that this object should be called for.
Public propertyShowGpsType
Display a string on the map indicating the type of Gps being used.
Public propertyShowMemoryStats
Display memory usage.
Public propertyShowMovementArrow
Gets or sets whether to render arrows on the map at turns. Default is true.
Public propertySlowZoom
The map will zoom to this level when the GPS is reporting a speed slower than the Crossover Speed. The value of this field is used when MapControlMode is set to CrossoverZoom. See GetZoomCrossoverSpeed(SpeedUnit).
Public propertyStatusInfo
This returns the NavigationManager's INavigationStatus object, if present. This can be used to set update controls or change the NavigationManager's appearance.
Public propertyTwoDRecenterBorderSize
When the MapCtrl is in MapPerspective.TwoD mode and the NavigationManager.Orientation is MapOrientation.North, the map is only redrawn when the vehicle icon enters a border region around the edge of the map. This property controls the size, in pixels, of that border region.
Public propertyUnits
Gets or sets the UnitSystem (for example, metric or imperial) used by this NavigationManager.
Public propertyVehicleIcon
Gets or sets the VehicleMarker to use to display the position of the vehicle. This can be used to alter the appearance of the icon. If this is set to null, the vehicle is not displayed by the NavigationManager. Defaults to a new VehicleMarker associated with the Navigator for this object.
Public propertyZoom
Gets or sets the current ZoomLevel by index. This property is meaningful when MapControlMode is set to FixedZooms. or MapControlMode is set to DynamicZooms.
Public propertyZoomLevels
Get the current ZoomLevel list.
Top
Methods
  NameDescription
Public methodAddZoomLevel
Add a ZoomLevel to the NavigationManager. The values set using this method are used when MapControlMode is set to either FixedZooms or DynamicZooms.
Public methodAnnounce
Make the annoucer say a NavigationEvent, but if similar announcements are too close to each other the announcer might skip some of them. This method is usually bound as NotificationDelegate of a Notification object.
Public methodChangeCulture(String, CultureInfo, Boolean)
Change the culture of this NavigationManager.
Public methodChangeCulture(String, String, Boolean)
Change the culture of this NavigationManager.
Public methodClearGps
Power down and then release the GPS unit from this NavigationManager.
Public methodClearStatus
Clear status message.
Public methodClearZoomLevels
Clear all ZoomLevels from the NavigationManager. The value set using this method is used when MapControlMode is set to FixedZooms or if MapControlMode is set to DynamicZooms.
Public methodDispose
Dispose of this NavigationManager.
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Public methodForceAnnounce
Force the annoucer say a NavigationEvent. The annoucer must say it and may not skip it. This method is usually bound as NotificationDelegate of a Notification object.
Public methodForceMapPerspective
Specify a map perspective that should be used regardless of heading.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodGetZoomCrossoverSpeed
Get the zoom crossover speed in the given units. This value returned is used when MapControlMode is set to CrossoverZoom.
Public methodHitTest
Check for a mouse hit on this NavigationManager.
Public methodInvalidate
Invalidates the map.
Public methodLoadRoutingProfile
Load a speed routing profile (with speeds measured in miles per hour) from a given text file. See remarks.
Public methodQuickBeep
Make the annoucer ring a bell if AnnouncerEnabled is set to true, and the announcer is enabled for ringing a bell. This method is usually bound as NotificationDelegate of a Notification object.
Public methodRemoveZoomLevel
Remove a ZoomLevel from the NavigationManager. Used when MapControlMode is set to either FixedZooms or DynamicZooms.
Public methodRender
Render the NavigationManager on the given graphics with the given render context. Should not be called directly.
Public methodReplaceZoomLevels
Replace all ZoomLevel s with specified levels. Initial ZoomLevel is specified with initialZoom. The values set using this method are used when MapControlMode is set to FixedZooms or if MapControlMode is set to DynamicZooms.
Public methodResume
Resume the NavigationManager. See also Suspend()
Public methodSetControls(INavigationStatus)
Set which controls should be used based on an INavigationStatus.
Public methodSetControls(LabelBox, LabelBox, LabelBox, TurnBox, LabelBox)
Set which controls should be used by this NavigationManager. To disable a control, set it to null.
Public methodSetDestination
Set the destination. The NavigationManager will navigate to this destination.
Public methodSetGps
Sets the GPS unit that this NavigationManager should use.
Public methodSetStatus
Set a status message, using the AddressBox (set using SetControls).
Public methodSetStatusPhrase
Set a status message, using a phrase from the Strings section of the NavigationManager's current MessagesBundle.
Public methodSetZoomCrossoverSpeed
Set the zoom crossover speed in the given units. The zoom crossover speed is used to define the speed-dependent boundary between a close zoom (when traveling at a rate less than the zoom crossover speed) and a far zoom (when traveling faster than the zoom crossover speed). The value of the zoom crossover speed is used when MapControlMode is set to CrossoverZoom.
Public methodStop
Stops the NavigationManager. Once the NavigationManager has been stopped the destination will have to be manually set (using SetDestination(LatLon)) to start the NavigationManager again. To temporarily pause the NavigationManager see Suspend.
Public methodSuspend
Temporarily suspend the NavigationManager from providing updates. See also Resume().
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodUnforceMapPerspective
Clear any forced map perspective so that the map perspective is set dynamically based on heading.
Top
Events
  NameDescription
Public eventArrive
An eventhandler which will be fired when the navigator arrives at the destination.
Public eventRequestDirections
An eventhandler which will be fired when directions are requested.
Top
Remarks

Navigation services provided by the NavigationManager include visual route guidance, audible announcements and GPS filtering. The NavigationManager can provide feedback using UI controls: a TurnBox (to guide the user through upcoming turns) and LabelBoxes to display the current address, speed, destination and ETA. These controls may be set using the SetControls(INavigationStatus) method.

Instance members of the NavigationManager class are not guaranteed to be thread safe.

Related articles: Navigation Tutorial, Implementing an IGps Member, Using Languages and Cultures.

See Also