navigate_close_to_position()
  • 1 Minute to read

navigate_close_to_position()


Article summary

This function allows you to navigate to close to a desired goal destination based off a min and max radius.

Reference

Arguments

ArgumentsTypeDefault value
xfloatX-coordinate of the target position
yfloatY-coordinate of the target position
min_radiusfloat0.0minimum radius from the target position
max_radiusfloat0.8maximum radius from the target position
pos_unitPOSITION_UNITPOSITION_UNIT.PIXELSUnit of measurement for the points (PIXELs or METERS).
callback_feedbackCallableNoneCallable function for feedback (optional).
callback_finishCallableNoneCallable function for finish (optional).
waitboolFalseCoolean indicating whether to wait for user response (optional).

Callback Arguments

callback_feedback

ArgumentType
feedback_codeintCode for the type of feedback.
feedback_msgstrDetails regarding the feedback code (empty if no error).
distance_to_goalfloatDistance to goal in meters.
speedfloatRobot current speed.

For a complete list of feedbacks see the complete list of navigation feedbacks.

callback_finish

ArgumentType
error_codeint
error_msgstr

Return

None, unless there is callback.

Exceptions

  • RayaNavNotLocated
  • RayaNavAlreadyNavigating
  • RayaUnableToFollowPath
  • RayaUnableToComputePath
  • RayaNavUnkownError

See the complete list of navigation exceptions.

Usage Example

Code:

...
class RayaApplication(RayaApplicationBase):

    async def setup(self):
        self.navigation = await self.enable_controller('navigation')
        ...

    async def loop(self):
        ...
           await self.navigation.navigate_close_to_position( 
                x=1.42, 
                y=-2.96, 
                min_radius=0.4,
                max_radius=0.8,
                pos_unit=POSITION_UNIT.METERS,
                callback_feedback=self.cb_nav_feedback,
                callback_finish=self.cb_nav_finish,
                wait=True,
            )
            ...
            
    async def finish(self):
       ...

See the nav_all_unity_apartment example to check some valid uses.


Was this article helpful?

What's Next