version 0.6.0

Functions/Subroutines

pure subroutine mod_cg3_line_polyhedron::cg3_does_direction_intersect_face (polyhedron, face, origin, direction, is_intersected, is_origin_on_face)
 Determine if a ray (origin + direction) intersect a face of a given polyhedron. More...
 
pure subroutine mod_cg3_line_polyhedron::cg3_compute_ray_face_intersection (polyhedron, face, ray, has_normal, is_intersected, intersection)
 Intersect a face of a given polyhedron with a ray. More...
 

Detailed Description

Function/Subroutine Documentation

◆ cg3_compute_ray_face_intersection()

pure subroutine mod_cg3_line_polyhedron::cg3_compute_ray_face_intersection ( type(t_polyhedron), intent(in)  polyhedron,
integer, intent(in)  face,
type(t_ray), intent(in)  ray,
logical, intent(in)  has_normal,
logical, intent(out)  is_intersected,
type(t_intersection), intent(out)  intersection 
)
Parameters
[in]polyhedronany polyhedron
[in]faceface index of the polyhedron
[in]rayray
[in]has_normalflag to determine if the normal vector must be computed
[out]is_intersectedtrue if the ray intersects the face
[out]intersectionintersection

◆ cg3_does_direction_intersect_face()

pure subroutine mod_cg3_line_polyhedron::cg3_does_direction_intersect_face ( type(t_polyhedron), intent(in)  polyhedron,
integer, intent(in)  face,
double precision, dimension(3), intent(in)  origin,
integer, intent(in)  direction,
logical, intent(out)  is_intersected,
logical, intent(out), optional  is_origin_on_face 
)
Parameters
[in]polyhedronany polyhedron
[in]faceface index of the polyhedron
[in]originorigin of the ray
[in]directiondirection of the ray
[out]is_intersectedtrue if the ray intersects the face
[out]is_origin_on_facetrue if the origin of the ray belong to the face