12#ifndef __IntersectorMesh3DSegment_H
13#define __IntersectorMesh3DSegment_H
31 std::vector<GeometryUtilities::PointPolyhedronPositionResult>
Positions;
38 std::vector<GeometryUtilities::SegmentPolyhedronPositionResult>
Positions;
41 std::vector<IntersectionMeshPoint>
Points;
62 std::map<double, IntersectionPoint> &
points,
81 bool CheckSegmentFaceIntersection(
const Eigen::Vector3d &
segment_origin,
109 std::vector<IntersectionMesh::IntersectionMeshSegment> CreateIntersectionSegments(
111 const std::vector<IntersectionMesh::IntersectionMeshPoint> &
mesh1D_points)
const;
113 std::vector<IntersectionMesh::IntersectionMeshPoint> FindSegmentIntersectionPoints(
121 void SegmentCell3DIntersection(
const Eigen::Vector3d &
segmentOrigin,
Eigen column vector.
Definition Eigen_Array.hpp:23
The GeometryUtilities class intersects 3D segments.
Definition GeometryUtilities.hpp:37
PointSegmentPositionTypes
Definition GeometryUtilities.hpp:68
The IMeshDAO (mesh data access object) class to read and write mesh data.
Definition IMeshDAO.hpp:24
Definition IntersectorMesh3DSegment.hpp:23
FindSegmentStartingCell3DResult FindSegmentStartingCell3D(const Eigen::Vector3d &segmentOrigin, const Eigen::Vector3d &segmentEnd, const Gedim::IMeshDAO &mesh3D, const Gedim::MeshUtilities::MeshGeometricData3D &mesh3D_geometricData) const
Definition IntersectorMesh3DSegment.cpp:557
static std::vector< std::vector< unsigned int > > MeshSegmentsCell3Ds(const IntersectorMesh3DSegment::IntersectionMesh &intersectingMesh)
Definition IntersectorMesh3DSegment.cpp:38
~IntersectorMesh3DSegment()
Definition IntersectorMesh3DSegment.cpp:24
static std::string ToString(const IntersectorMesh3DSegment::IntersectionMesh &intersectingMesh)
Definition IntersectorMesh3DSegment.cpp:48
static std::vector< double > ToCurvilinearCoordinates(const IntersectorMesh3DSegment::IntersectionMesh &intersectingMesh)
Definition IntersectorMesh3DSegment.cpp:28
IntersectionMesh CreateIntersectionMesh(const Eigen::Vector3d &segmentOrigin, const Eigen::Vector3d &segmentEnd, const Eigen::Vector3d &segmentTangent, const Gedim::IMeshDAO &mesh3D, const Gedim::MeshUtilities::MeshGeometricData3D &mesh3D_geometricData) const
Definition IntersectorMesh3DSegment.cpp:915
MeshUtilities.
Definition MeshUtilities.hpp:23
Definition Eigen_Array.cpp:22
Definition GeometryUtilities.hpp:643
Definition IntersectorMesh3DSegment.hpp:51
bool SegmentFullInsideCell3D
Definition IntersectorMesh3DSegment.hpp:53
GeometryUtilities::PointPolyhedronPositionResult Position
Definition IntersectorMesh3DSegment.hpp:54
unsigned int StartingCell3DIndex
Definition IntersectorMesh3DSegment.hpp:52
Definition IntersectorMesh3DSegment.hpp:28
std::vector< GeometryUtilities::PointPolyhedronPositionResult > Positions
Definition IntersectorMesh3DSegment.hpp:31
double CurvilinearCoordinate
Definition IntersectorMesh3DSegment.hpp:29
std::vector< unsigned int > Cell3DIds
Definition IntersectorMesh3DSegment.hpp:30
Definition IntersectorMesh3DSegment.hpp:35
std::array< unsigned int, 2 > PointsIndex
Definition IntersectorMesh3DSegment.hpp:36
std::vector< unsigned int > Cell3DIds
Definition IntersectorMesh3DSegment.hpp:37
std::vector< GeometryUtilities::SegmentPolyhedronPositionResult > Positions
Definition IntersectorMesh3DSegment.hpp:38
Definition IntersectorMesh3DSegment.hpp:26
std::vector< IntersectionMeshPoint > Points
Definition IntersectorMesh3DSegment.hpp:41
std::vector< IntersectionMeshSegment > Segments
Definition IntersectorMesh3DSegment.hpp:42
Definition IntersectorMesh3DSegment.hpp:46
std::set< unsigned int > Cell3DIds
Definition IntersectorMesh3DSegment.hpp:47
Definition MeshUtilities.hpp:215