irsim.lib.handler#

Handler classes for IR-SIM simulation.

This package contains factory classes for: - kinematics_handler: Kinematics factory - geometry_handler: Geometry factory

Submodules#

Classes#

GeometryFactory

Factory class to create geometry handlers.

KinematicsFactory

Factory class to create kinematics handlers.

Package Contents#

class irsim.lib.handler.GeometryFactory[source]#

Factory class to create geometry handlers.

static create_geometry(name: str = 'circle', **kwargs) geometry_handler[source]#

Create a geometry handler from a YAML shape name.

Parameters:
  • name – Shape name. Supported values are circle, polygon, rectangle, linestring, and map.

  • **kwargs – Shape-specific parameters forwarded to the handler.

Returns:

Concrete geometry handler.

Return type:

geometry_handler

Raises:

ValueError – If name is not supported.

class irsim.lib.handler.KinematicsFactory[source]#

Factory class to create kinematics handlers.

static create_kinematics(name: str | None = None, noise: bool = False, alpha: list | None = None, mode: str = 'steer', wheelbase: float | None = None, role: str = 'robot') KinematicsHandler[source]#

Create a kinematics handler from a YAML kinematics.name value.

Parameters:
  • name – Registered kinematics name, such as diff, omni, omni_angular, or acker. None uses the fallback.

  • noise – Whether to apply motion noise.

  • alpha – Noise parameters passed to the handler.

  • mode – Ackermann mode, used only by acker.

  • wheelbase – Ackermann wheelbase; defaults to 1.0 for acker.

  • role – Object role used for warnings.

Returns:

Registered handler instance, or a differential handler fallback when the name is missing or unknown.

Return type:

KinematicsHandler

static get_handler_class(name: str) type[KinematicsHandler] | None[source]#

Look up a registered handler class by name without instantiation.

Parameters:

name (str) – Kinematics name (e.g. "diff", "omni").

Returns:

The class, or None if not found.

Return type:

type[KinematicsHandler] | None