CollisionRay

from panda3d.core import CollisionRay
class CollisionRay

Bases:

Bases: CollisionSolid

An infinite ray, with a specific origin and direction. It begins at its origin and continues in one direction to infinity, and it has no radius. Useful for picking from a window, or for gravity effects.

Inheritance diagram

Inheritance diagram of CollisionRay

__init__()

Creates an invalid ray. This isn’t terribly useful; it’s expected that the user will subsequently adjust the ray via set_origin()/set_direction() or set_from_lens().

__init__(origin: LPoint3, direction: LVector3)
__init__(ox: float, oy: float, oz: float, dx: float, dy: float, dz: float)
property direction LVector3

Getter Setter

static get_class_type() TypeHandle
get_direction() LVector3
get_origin() LPoint3
property origin LPoint3

Getter Setter

set_direction(direction: LVector3)
set_direction(x: float, y: float, z: float)
set_from_lens(camera: LensNode, point: LPoint2) bool

Accepts a LensNode and a 2-d point in the range [-1,1]. Sets the CollisionRay so that it begins at the LensNode’s near plane and extends to infinity, making it suitable for picking objects from the screen given a camera and a mouse location.

Returns true if the point was acceptable, false otherwise.

set_from_lens(camera: LensNode, px: float, py: float) bool

Accepts a LensNode and a 2-d point in the range [-1,1]. Sets the CollisionRay so that it begins at the LensNode’s near plane and extends to infinity, making it suitable for picking objects from the screen given a camera and a mouse location.

set_origin(origin: LPoint3)
set_origin(x: float, y: float, z: float)