0.6.0
Loading...
Searching...
No Matches
line_segment.f90 File Reference

Modules

module  mod_cg2_line_segment
 

Functions/Subroutines

logical pure function mod_cg2_line_segment::cg2_does_segments_intersect (p0, p1, q0, q1)
 Check if two line segments intersect [p0, p1] ∩ [q0, q1].
 
logical pure function mod_cg2_line_segment::cg2_does_line_intersect_segment (l0, l1, s0, s1)
 Check if a line intersect a line segment (l0, l1) ∩ [s0, s1].
 
double precision pure function mod_cg2_line_segment::cg2_line_point_distance (l0, l1, p)
 Return the distance of the point p to the line (l0, l1).
 
double precision pure function mod_cg2_line_segment::cg2_line_point_signed_distance (l0, l1, p, pref)
 Return the signed distance of point p to the line (l0, l1) relatively to the point pref.
 
pure subroutine mod_cg2_line_segment::cg2_point_line_segment_closest_point (s0, s1, p, point)
 Return the closest point of point p to the line segment [s0, s1].
 
pure subroutine mod_cg2_line_segment::cg2_line_segment_intersection (l0, l1, s0, s1, is_intersection, intersection_point)
 Return the intersection point of a line and a segment (l0, l1) ∩ [s0, s1].
 
pure subroutine mod_cg2_line_segment::cg2_line_segment_intersection2 (origin, v, s0, s1, is_intersection, intersection_point)
 Return the intersection point of a line and a segment {origin, v} ∩ [s0, s1].
 
pure subroutine mod_cg2_line_segment::cg2_line_segment_inclusive_intersection (l0, l1, s0, s1, is_intersection, intersection_point)
 Return the intersection point of a line and a segment (l0, l1) ∩ [s0, s1] including end points.
 
pure subroutine mod_cg2_line_segment::cg2_segments_intersection (p0, p1, q0, q1, is_intersection, intersection_point)
 Return the intersection point of two line segments [p0, p1] ∩ [q0, q1].
 
pure subroutine mod_cg2_line_segment::cg2_segment_ray_intersection (p0, p1, o, d, is_intersection, distance, intersection_point)
 Return the intersection point a line segment [p0, p1] and a ray.
 
pure subroutine mod_cg2_line_segment::cg2_segments_overlap (p0, p1, q0, q1, s0, s1, are_overlapping)
 Check and compute the overlapping of two line segments.
 
subroutine mod_cg2_line_segment::cg2_line_write_vtk_file (s0, s1, filename)
 Print a line segment into a VTK file for debug purpose.