NavigationClient class Services

A client for the navigation service.

Inheritance
Implemented types
Mixed-in types

Constructors

Properties

callOptions → CallOptions
no setterinherited
channel ↔ ClientChannelBase
getter/setter pairoverride
client → NavigationServiceClient
no setteroverride
hashCode → int
The hash code for this object.
no setterinherited
name → String
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

addLocation(String locationName, {NavigationPosition? position, Map<String, dynamic>? extra}) → Future<Location>
Save a named NavigationPosition on the active map. If position is omitted, the robot's current position is saved.
addRoute(String routeName, List<Waypoint> waypoints, {Map<String, dynamic>? extra}) → Future<Route>
Create a named Route from an ordered list of waypoints. Every referenced location must already exist.
addZone(String zoneName, String type, Map<String, dynamic> geometry, {double? maxSpeed, Map<String, dynamic>? extra}) → Future<Zone>
Create a keep-out or speed-limit Zone on the active map. type is either keepout or speed_limit, and geometry describes a circle, box, or polygon. maxSpeed, in meters per second, is required for a speed_limit zone.
cancel({Map<String, dynamic>? extra}) → Future<NavigationStatus>
Stop all motion and discard both the active goal and any suspended goal.
deleteLocation(String locationName, {Map<String, dynamic>? extra}) → Future<void>
Delete a saved location. The location is also removed from every route that references it.
deleteRoute(String routeName, {Map<String, dynamic>? extra}) → Future<void>
Delete a route. The locations it references are not affected.
deleteZone(String zoneName, {Map<String, dynamic>? extra}) → Future<void>
Delete a zone.
disableDebugLogging() → void
Disable debug logging for gRPC calls by removing the trace key from the metadata.
inherited
doCommand(Map<String, dynamic> command) → Future<Map<String, dynamic>>
Send/Receive arbitrary commands to the Resource
override
enableDebugLogging({String? traceKey}) → void
Enable debug logging for gRPC calls by setting a trace key in the metadata. If no trace key is provided, a random one will be generated.
inherited
executePlan(Plan plan, {Map<String, dynamic>? extra}) → Future<NavigationStatus>
Drive a Plan, typically one from planToPoint or planToLocation. While navigating, the active path is available on getNavigationStatus. Rejected if the plan's path is empty.
getCostmap({String? layer, int? stride, Map<String, dynamic>? extra}) → Future<GetCostmapResponse>
Get the local or global costmap as a downsampled grid, for display in UIs. layer is auto, local, or global, and stride is the downsample factor.
getLocation(String locationName, {Map<String, dynamic>? extra}) → Future<Location>
Get a saved Location by name. This does not return the robot's current position; use getPosition for that.
getNavigationStatus({Map<String, dynamic>? extra}) → Future<NavigationStatus>
Get the full navigation state, including the robot's current position and its latest goal.
getPosition({Map<String, dynamic>? extra}) → Future<NavigationPosition>
Get the robot's current NavigationPosition on the active map. Use this for frequent position polling; getNavigationStatus reports the same position alongside the rest of the navigation state.
getProperties() → Future<NavigationProperties>
Get the MapType the service operates on and the robot's properties. These values do not change while the service is running.
getRoute(String routeName, {Map<String, dynamic>? extra}) → Future<Route>
Get a Route by name.
getStatus() → Future<Map<String, dynamic>>
Get the status of the Resource
inherited
getZone(String zoneName, {Map<String, dynamic>? extra}) → Future<Zone>
Get a Zone by name.
goToLocation(String locationName, {bool? wait, double? linearMPerSec, Map<String, dynamic>? extra}) → Future<NavigationStatus>
Drive directly to a saved location with a closed-loop controller, without full path planning. Intended for short hops and docking. wait defaults to true; with false, this returns immediately while navigating.
goToPoint(NavigationPosition destination, {bool? wait, double? linearMPerSec, Map<String, dynamic>? extra}) → Future<NavigationStatus>
Drive directly to destination with a closed-loop controller, without full path planning. Intended for short hops and docking. wait defaults to true; with false, this returns immediately while navigating.
listLocations({Map<String, dynamic>? extra}) → Future<List<Location>>
Get every Location saved on the active map.
listRoutes({Map<String, dynamic>? extra}) → Future<List<Route>>
Get every Route on the active map.
listZones({String? type, Map<String, dynamic>? extra}) → Future<List<Zone>>
Get the Zones on the active map, optionally filtered by type (keepout or speed_limit).
Drive a route one waypoint at a time using the obstacle-aware planner. Provide either routeName, for a saved route, or waypoints, for an inline list. startNearest overrides startIndex, and with loop set, a wait of true only returns once the robot has stopped.
Plan an obstacle-aware path to a saved location and start driving it. Returns once the goal is accepted; track progress with getNavigationStatus.
Plan an obstacle-aware path to destination and start driving it. Returns once the goal is accepted; track progress with getNavigationStatus.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
planToLocation(String locationName, {NavigationPosition? start, Map<String, dynamic>? extra}) → Future<Plan>
Compute a Plan to a saved location without moving. Accepts the same optional start as planToPoint. Throws if no path exists.
planToPoint(NavigationPosition destination, {NavigationPosition? start, Map<String, dynamic>? extra}) → Future<Plan>
Compute a Plan from the robot, or from start, to destination without moving. Pass the result to executePlan to drive it. Throws if no path exists.
resume({Map<String, dynamic>? extra}) → Future<NavigationStatus>
Resume the suspended goal the same way it was started: planned navigation, simple go-to, or a route from its current waypoint.
suspend({String? reason, Map<String, dynamic>? extra}) → Future<NavigationStatus>
Stop motion but remember the current goal, including the current waypoint and loop setting for routes. A suspended goal must be canceled before a new one can start.
toString() → String
A string representation of this object.
inherited
updateLocation(String locationName, {NavigationPosition? position, String? newName, Map<String, dynamic>? extra}) → Future<Location>
Change a saved location's position and/or its name. Omitted values are left unchanged. Renaming a location updates every route waypoint that references it.
updateRoute(String routeName, {String? newName, List<Waypoint>? waypoints, Map<String, dynamic>? extra}) → Future<Route>
Rename a route and/or replace its waypoints. Omitting waypoints leaves them unchanged; passing a list, including an empty one, replaces them.
updateZone(String zoneName, {String? type, Map<String, dynamic>? geometry, double? maxSpeed, String? newName, Map<String, dynamic>? extra}) → Future<Zone>
Change a zone's type, geometry, maxSpeed, and/or its name. Omitted values are left unchanged.

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

fromRobot(RobotClient robot, String name) → NavigationClient
Get the NavigationClient named name from the provided robot.
getResourceName(String name) → ResourceName
Get the common_pb.ResourceName for this NavigationClient with the given name

Constants

subtype → const Subtype