RINGMesh  Version 5.0.0
A programming library for geological model meshes
RINGMesh::Intersection Namespace Reference

Functions

std::tuple< bool, vec3 > RINGMESH_API line_plane (const Geometry::Line3D &line, const Geometry::Plane &plane)
 
std::tuple< bool, std::vector< vec3 > > RINGMESH_API line_sphere (const Geometry::Line3D &line, const Geometry::Sphere &sphere)
 
std::tuple< bool, std::vector< vec3 > > RINGMESH_API segment_sphere (const Geometry::Segment3D &segment, const Geometry::Sphere &sphere)
 
std::tuple< bool, vec3 > RINGMESH_API segment_plane (const Geometry::Segment3D &segment, const Geometry::Plane &plane)
 
std::tuple< bool, vec3 > RINGMESH_API segment_triangle (const Geometry::Segment3D &segment, const Geometry::Triangle3D &triangle)
 
std::tuple< bool, std::vector< vec3 > > RINGMESH_API circle_plane (const Geometry::Circle &circle, const Geometry::Plane &plane)
 
std::tuple< bool, vec3 > RINGMESH_API segment_disk (const Geometry::Segment3D &segment, const Geometry::Disk &disk)
 
std::tuple< bool, std::vector< vec3 > > RINGMESH_API triangle_circle (const Geometry::Triangle3D &triangle, const Geometry::Circle &circle)
 
std::tuple< bool, Geometry::Line3D > RINGMESH_API plane_plane (const Geometry::Plane &plane0, const Geometry::Plane &plane1)
 
std::tuple< bool, vec2 > RINGMESH_API line_line (const Geometry::Line2D &line0, const Geometry::Line2D &line1)
 
std::tuple< bool, vec2 > RINGMESH_API segment_segment (const Geometry::Segment2D &segment0, const Geometry::Segment2D &segment1)
 
std::tuple< bool, vec2 > RINGMESH_API segment_line (const Geometry::Segment2D &segment, const Geometry::Line2D &line)
 

Function Documentation

◆ circle_plane()

std::tuple< bool, std::vector< vec3 > > RINGMesh::Intersection::circle_plane ( const Geometry::Circle circle,
const Geometry::Plane plane 
)

Computes the intersection(s) between a circle and a plane

Returns
returns a tuple containing a boolean (true if there is at least one intersection) and the intersected points if any.

Definition at line 49 of file geometry_intersection.cpp.

◆ line_line()

std::tuple< bool, vec2 > RINGMesh::Intersection::line_line ( const Geometry::Line2D &  line0,
const Geometry::Line2D &  line1 
)

Computes the intersection between two lines

Returns
a tuple containing:
  • a boolean: true if there is an intersection.
  • the intersected point if any.

Definition at line 136 of file geometry_intersection.cpp.

◆ line_plane()

std::tuple< bool, vec3 > RINGMesh::Intersection::line_plane ( const Geometry::Line3D &  line,
const Geometry::Plane plane 
)

Computes the intersection between a plane and a line

Returns
returns a tuple containing a boolean (true if there is an intersection) and the intersected point if any.

Definition at line 234 of file geometry_intersection.cpp.

◆ line_sphere()

std::tuple< bool, std::vector< vec3 > > RINGMesh::Intersection::line_sphere ( const Geometry::Line3D &  line,
const Geometry::Sphere sphere 
)

Computes the intersection(s) between a sphere and a line

Returns
returns a tuple containing a boolean (true if there is at least one intersection) and the intersected points.

Definition at line 378 of file geometry_intersection.cpp.

◆ plane_plane()

std::tuple< bool, Geometry::Line3D > RINGMesh::Intersection::plane_plane ( const Geometry::Plane plane0,
const Geometry::Plane plane1 
)

Computes the intersection between two planes

Returns
a tuple containing:
  • a boolean: true is there is an intersection between the planes.
  • the intersected line if any.

Definition at line 95 of file geometry_intersection.cpp.

◆ segment_disk()

std::tuple< bool, vec3 > RINGMesh::Intersection::segment_disk ( const Geometry::Segment3D &  segment,
const Geometry::Disk disk 
)

Computes the intersection between a disk and a segment

Returns
returns a tuple containing a boolean (true if there is an intersection) and the intersected point if any.

Definition at line 271 of file geometry_intersection.cpp.

◆ segment_line()

std::tuple< bool, vec2 > RINGMesh::Intersection::segment_line ( const Geometry::Segment2D &  segment,
const Geometry::Line2D &  line 
)

Computes the intersection between a segment and a line

Returns
a tuple containing:
  • a boolean: true if there is an intersection.
  • the intersected point if any.

Definition at line 209 of file geometry_intersection.cpp.

◆ segment_plane()

std::tuple< bool, vec3 > RINGMesh::Intersection::segment_plane ( const Geometry::Segment3D &  segment,
const Geometry::Plane plane 
)

Computes the intersection between a plane and a segment

Returns
returns a tuple containing a boolean (true if there is an intersection) and the intersected point if any.

Definition at line 251 of file geometry_intersection.cpp.

◆ segment_segment()

std::tuple< bool, vec2 > RINGMesh::Intersection::segment_segment ( const Geometry::Segment2D &  segment0,
const Geometry::Segment2D &  segment1 
)

Computes the intersection between two segments

Returns
a tuple containing:
  • a boolean: true if there is an intersection.
  • the intersected point if any.

Definition at line 165 of file geometry_intersection.cpp.

◆ segment_sphere()

std::tuple< bool, std::vector< vec3 > > RINGMesh::Intersection::segment_sphere ( const Geometry::Segment3D &  segment,
const Geometry::Sphere sphere 
)

Computes the intersection(s) between a sphere and a segment

Returns
returns a tuple containing a boolean (true if there is at least one intersection) and the intersected points.

Definition at line 410 of file geometry_intersection.cpp.

◆ segment_triangle()

std::tuple< bool, vec3 > RINGMesh::Intersection::segment_triangle ( const Geometry::Segment3D &  segment,
const Geometry::Triangle3D &  triangle 
)

Computes the intersection of a segment and a triangle

Returns
a tuple containing a boolean (true is there is an intersection) and the intersected point if any.

Definition at line 311 of file geometry_intersection.cpp.

◆ triangle_circle()

std::tuple< bool, std::vector< vec3 > > RINGMesh::Intersection::triangle_circle ( const Geometry::Triangle3D &  triangle,
const Geometry::Circle circle 
)

Computes the intersection(s) between a circle and a triangle

Returns
returns a tuple containing a boolean (true if there is at least one intersection) and the intersected points if any.

Definition at line 289 of file geometry_intersection.cpp.