Python Bindings pycrcc

Point class

class Point
__getstate__(self: commonroad_dc.pycrcc.CollisionObject) tuple
__init__(self: commonroad_dc.pycrcc.Point, x: float, y: float) None
__setstate__(self: commonroad_dc.pycrcc.Point, arg0: tuple) None
center(self: commonroad_dc.pycrcc.Point) numpy.ndarray
collide(self: commonroad_dc.pycrcc.Point, arg0: commonroad_dc.pycrcc.CollisionObject) bool

RectAABB class

class RectAABB
__getstate__(self: commonroad_dc.pycrcc.CollisionObject) tuple
__init__(self: commonroad_dc.pycrcc.RectAABB, half_width: float, half_height: float, center_x: float, center_y: float) None
__setstate__(self: commonroad_dc.pycrcc.RectAABB, arg0: tuple) None
__str__(self: commonroad_dc.pycrcc.RectAABB) str
collide(self: commonroad_dc.pycrcc.RectAABB, arg0: commonroad_dc.pycrcc.CollisionObject) bool
draw(self: commonroad_dc.pycrcc.RectAABB, renderer: object, draw_params: object = None) None
max_x(self: commonroad_dc.pycrcc.RectAABB) float
max_y(self: commonroad_dc.pycrcc.RectAABB) float
min_x(self: commonroad_dc.pycrcc.RectAABB) float
min_y(self: commonroad_dc.pycrcc.RectAABB) float
set_all(self: commonroad_dc.pycrcc.RectAABB, arg0: float, arg1: float, arg2: float, arg3: float) None

RectOBB class

class RectOBB
__getstate__(self: commonroad_dc.pycrcc.CollisionObject) tuple
__init__(self: commonroad_dc.pycrcc.RectOBB, width/2: float, height/2: float, orientation: float, center x: float, center y: float) None
__setstate__(self: commonroad_dc.pycrcc.RectOBB, arg0: tuple) None
__str__(self: commonroad_dc.pycrcc.RectOBB) str
center(self: commonroad_dc.pycrcc.RectOBB) numpy.ndarray
collide(self: commonroad_dc.pycrcc.RectOBB, arg0: commonroad_dc.pycrcc.CollisionObject) bool
draw(self: commonroad_dc.pycrcc.RectOBB, renderer: object, draw_params: object = None) None
local_x_axis(self: commonroad_dc.pycrcc.RectOBB) numpy.ndarray
local_y_axis(self: commonroad_dc.pycrcc.RectOBB) numpy.ndarray
merge(self: commonroad_dc.pycrcc.RectOBB, arg0: commonroad_dc.pycrcc.RectOBB) commonroad_dc.pycrcc.RectOBB
orientation(self: commonroad_dc.pycrcc.RectOBB) float

OBB orientation

r_x(self: commonroad_dc.pycrcc.RectOBB) float

Positive halfwidth extent of OBB along local x-axis

r_y(self: commonroad_dc.pycrcc.RectOBB) float

Positive halfwidth extent of OBB along local y-axis

set_center(self: commonroad_dc.pycrcc.RectOBB, arg0: float, arg1: float) None

Triangle class

class Triangle
__getstate__(self: commonroad_dc.pycrcc.CollisionObject) tuple
__init__(self: commonroad_dc.pycrcc.Triangle, x1: float, y1: float, x2: float, y2: float, x3: float, y3: float) None
__setstate__(self: commonroad_dc.pycrcc.Triangle, arg0: tuple) None
__str__(self: commonroad_dc.pycrcc.Triangle) str
collide(self: commonroad_dc.pycrcc.Triangle, arg0: commonroad_dc.pycrcc.CollisionObject) bool
draw(self: commonroad_dc.pycrcc.Triangle, renderer: object, draw_params: object = None) None
vertices(self: commonroad_dc.pycrcc.Triangle) list

Circle class

class Circle
__getstate__(self: commonroad_dc.pycrcc.CollisionObject) tuple
__init__(self: commonroad_dc.pycrcc.Circle, radius: float, center x: float, center y: float) None
__setstate__(self: commonroad_dc.pycrcc.Circle, arg0: tuple) None
center(self: commonroad_dc.pycrcc.Circle) numpy.ndarray
collide(self: commonroad_dc.pycrcc.Circle, arg0: commonroad_dc.pycrcc.CollisionObject) bool
draw(self: commonroad_dc.pycrcc.Circle, renderer: object, draw_params: object = None) None
r(self: commonroad_dc.pycrcc.Circle) float

radius of the circle

x(self: commonroad_dc.pycrcc.Circle) float

x-coordinate of center

y(self: commonroad_dc.pycrcc.Circle) float

y-coordinate of center

Polygon class

class Polygon
__getstate__(self: commonroad_dc.pycrcc.CollisionObject) tuple
__init__(*args, **kwargs)

Overloaded function.

  1. __init__(self: commonroad_dc.pycrcc.Polygon, outer_boundary: List[Annotated[List[float], FixedSize(2)]], holes: List[List[Annotated[List[float], FixedSize(2)]]], triangle mesh: list) -> None

  2. __init__(self: commonroad_dc.pycrcc.Polygon, arg0: List[Annotated[List[float], FixedSize(2)]], arg1: List[List[Annotated[List[float], FixedSize(2)]]]) -> None

  3. __init__(self: commonroad_dc.pycrcc.Polygon, arg0: List[Annotated[List[float], FixedSize(2)]], arg1: List[List[Annotated[List[float], FixedSize(2)]]], arg2: int, arg3: float) -> None

__setstate__(self: commonroad_dc.pycrcc.Polygon, arg0: tuple) None
__str__(self: commonroad_dc.pycrcc.Polygon) str
collide(self: commonroad_dc.pycrcc.Polygon, arg0: commonroad_dc.pycrcc.CollisionObject) bool
draw(self: commonroad_dc.pycrcc.Polygon, renderer: object, draw_params: object = None) None
hole_vertices(self: commonroad_dc.pycrcc.Polygon) list
triangle_mesh(self: commonroad_dc.pycrcc.Polygon) list
vertices(self: commonroad_dc.pycrcc.Polygon) list

TimeVariantCollisionObject class

class TimeVariantCollisionObject
__getstate__(self: commonroad_dc.pycrcc.CollisionObject) tuple
__init__(self: commonroad_dc.pycrcc.TimeVariantCollisionObject, time_start_idx: int) None
__setstate__(self: commonroad_dc.pycrcc.TimeVariantCollisionObject, arg0: tuple) None
append_obstacle(self: commonroad_dc.pycrcc.TimeVariantCollisionObject, arg0: commonroad_dc.pycrcc.CollisionObject) None
collide(self: commonroad_dc.pycrcc.TimeVariantCollisionObject, arg0: commonroad_dc.pycrcc.CollisionObject) bool
draw(self: commonroad_dc.pycrcc.TimeVariantCollisionObject, renderer: object, draw_params: object = None) None
obstacle_at_time(self: commonroad_dc.pycrcc.TimeVariantCollisionObject, arg0: int) commonroad_dc.pycrcc.CollisionObject
time_end_idx(self: commonroad_dc.pycrcc.TimeVariantCollisionObject) int
time_start_idx(self: commonroad_dc.pycrcc.TimeVariantCollisionObject) int

ShapeGroup class

class ShapeGroup
__getstate__(self: commonroad_dc.pycrcc.CollisionObject) tuple
__init__(self: commonroad_dc.pycrcc.ShapeGroup) None
__setstate__(self: commonroad_dc.pycrcc.ShapeGroup, arg0: tuple) None
add_shape(self: commonroad_dc.pycrcc.ShapeGroup, arg0: commonroad_dc.pycrcc.Shape) None
collide(self: commonroad_dc.pycrcc.ShapeGroup, arg0: commonroad_dc.pycrcc.CollisionObject) bool
draw(self: commonroad_dc.pycrcc.ShapeGroup, renderer: object, draw_params: object = None) None
overlap(self: commonroad_dc.pycrcc.ShapeGroup, arg0: commonroad_dc.pycrcc.ShapeGroup) list
overlap_map(self: commonroad_dc.pycrcc.ShapeGroup, arg0: commonroad_dc.pycrcc.ShapeGroup) dict
size(self: commonroad_dc.pycrcc.ShapeGroup) int
unpack(self: commonroad_dc.pycrcc.ShapeGroup) list
window_query(self: commonroad_dc.pycrcc.ShapeGroup, arg0: commonroad_dc.pycrcc.RectAABB) commonroad_dc.pycrcc.ShapeGroup

CollisionChecker class

class CollisionChecker
__getstate__(self: commonroad_dc.pycrcc.CollisionChecker) tuple
__init__(self: commonroad_dc.pycrcc.CollisionChecker) None
__setstate__(self: commonroad_dc.pycrcc.CollisionChecker, arg0: tuple) None
__str__(self: commonroad_dc.pycrcc.CollisionChecker) str
add_collision_object(self: commonroad_dc.pycrcc.CollisionChecker, arg0: commonroad_dc.pycrcc.CollisionObject) None
any_collides(self: commonroad_dc.pycrcc.CollisionChecker, arg0: list) bool
clone(self: commonroad_dc.pycrcc.CollisionChecker) commonroad_dc.pycrcc.CollisionChecker
collide(self: commonroad_dc.pycrcc.CollisionChecker, arg0: commonroad_dc.pycrcc.CollisionObject) bool
draw(self: commonroad_dc.pycrcc.CollisionChecker, renderer: object, draw_params: object = None) None
find_all_colliding_objects(self: commonroad_dc.pycrcc.CollisionChecker, arg0: commonroad_dc.pycrcc.CollisionObject) list
number_of_obstacles(self: commonroad_dc.pycrcc.CollisionChecker) int
obstacles(self: commonroad_dc.pycrcc.CollisionChecker) list
raytrace(self: commonroad_dc.pycrcc.CollisionChecker, arg0: float, arg1: float, arg2: float, arg3: float, arg4: bool) list
time_slice(self: commonroad_dc.pycrcc.CollisionChecker, arg0: int) commonroad_dc.pycrcc.CollisionChecker
window_query(self: commonroad_dc.pycrcc.CollisionChecker, arg0: commonroad_dc.pycrcc.RectAABB) commonroad_dc.pycrcc.CollisionChecker

OBBTrajectoryBatch class

class OBBTrajectoryBatch
__init__(self: commonroad_dc.pycrcc.OBBTrajectoryBatch, arg0: numpy.ndarray[numpy.float64[m, n], flags.c_contiguous], arg1: numpy.ndarray[numpy.int32[m, 1]], arg2: float, arg3: float) None

See 05_collision_checks_dynamic_obstacles.ipynb for an initialization example.

preprocess_(self: commonroad_dc.pycrcc.OBBTrajectoryBatch) int

Preprocesses each trajectory using OBB sum hull (for continuous collision detection). The occupancies of the OBB boxes for two subsequent states are overapproximated with a tightly fitting OBB box. It is an in-place operation.

to_tvobstacle(self: commonroad_dc.pycrcc.OBBTrajectoryBatch) list

Returns a list of TimeVariantCollisionObjects corresponding to the OBB trajectory batch.