dhart.raytracer

Description

Perform efficent ray intersections with geometry.

This library is focused on performing ray intersections with geometry. The key datatype for this is the EmbreeBVH, which is required for most functions in this package.

Raytracing involves determining where a line would intersect a mesh if it were to continue infinitely form a specific point in the space. Many of the other modules in DHARTAPI make use of ray intersections in their analysis.

Classes

EmbreeBVH(geometry[, use_precise])

An acceelerated datastructure optimized for high performane ray intersections

RayResultList(vector_ptr, data_ptr, ...)

A list of results from a set of ray queries.

ResultStruct

A struct of results containing distance, and meshid

Functions

Intersect(bvh, origin, direction[, max_distance])

Cast one or more rays to get the distance to their point of intersection and the ID of the mesh they intersected.

IntersectDistanceDouble(bvh, origin, direction)

Obtain the distance between a raycast and a point of intersection with double precision

IntersectForPoint(bvh, origins, directions)

Cast one or more rays based on input origins and directions

IntersectOccluded(bvh, origins, directions)

Cast one or more occlusion rays in C++

isValidBVH(bvh)

Check if the given object is actually a BVH before sending the pointer to C++