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... | |
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 | ||
) |
[in] | polyhedron | any polyhedron |
[in] | face | face index of the polyhedron |
[in] | ray | ray |
[in] | has_normal | flag to determine if the normal vector must be computed |
[out] | is_intersected | true if the ray intersects the face |
[out] | intersection | intersection |
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 | ||
) |
[in] | polyhedron | any polyhedron |
[in] | face | face index of the polyhedron |
[in] | origin | origin of the ray |
[in] | direction | direction of the ray |
[out] | is_intersected | true if the ray intersects the face |
[out] | is_origin_on_face | true if the origin of the ray belong to the face |