Source code for pyrobopath.process.agent_model
from __future__ import annotations
from typing import List, Hashable
from dataclasses import dataclass
from pyrobopath.collision_detection import FCLCollisionModel
from pyrobopath.tools.types import ArrayLike
[docs]
@dataclass
class AgentModel(object):
"""
A data class for storing an agent's configuration for toolpath scheduling
Parameters
----------
capabilities : list of Hashable
Capabilities the agent supports (e.g. tools indices)
collision_model : FCLCollisionModel
The agent's spatial collision model. Currently, only FCL-based models
are supported.
base_frame_position : ArrayLike
The origin of the agent's frame.
home_position : ArrayLike
Resting or return-to (default) position of the agent.
velocity : float
Standard linear motion speed used to execute tasks.
travel_velocity : float
Rapid (non-operational) motion speed used to travel between tasks.
"""
capabilities: List[Hashable]
collision_model: FCLCollisionModel
base_frame_position: ArrayLike
home_position: ArrayLike
velocity: float
travel_velocity: float