#include <Information.hpp>#include <SurfaceMeshGenerator.hpp>#include <MeshOfTetrahedra.hpp>#include <MeshTetrahedrizor.hpp>#include <SurfaceMeshOfTriangles.hpp>#include <Structured3DMesh.hpp>#include <Scene.hpp>#include <Union.hpp>#include <Intersection.hpp>#include <Difference.hpp>#include <Not.hpp>#include <Cube.hpp>#include <Plane.hpp>#include <Cylinder.hpp>#include <InfiniteCylinder.hpp>#include <Cone.hpp>#include <InfiniteCone.hpp>#include <ObjectTransformer.hpp>#include <Mesh.hpp>#include <ConnectivityBuilder.hpp>#include <Connectivity.hpp>#include <Cell.hpp>#include <WorkingMesh.hpp>#include <TinyMatrix.hpp>#include <triangulation.hpp>#include <set>#include <iostream>#include <fstream>#include <stack>#include <algorithm>

Go to the source code of this file.
Classes | |
| class | SurfaceMeshGenerator::Internals |
| class | SurfaceMeshGenerator::Internals::IntersectionPoints |
| struct | SurfaceMeshGenerator::Internals::IntersectionTest |
| struct | SurfaceMeshGenerator::Internals::UnionTest |
| class | SurfaceMeshGenerator::Internals::MeshedObject |
| class | SurfaceMeshGenerator::Internals::TriangleCut |
Functions | |
| double | SDet (const Vertex &V1, const Vertex &V2, const Vertex &V3) |
| bool | checkInterbis (const Vertex &P1, const Vertex &P2, const Vertex &Q1, const Vertex &Q2) |
| void | plot (const SurfaceMeshOfTriangles &s, std::set< const Cell * > &hlist, Structured3DMesh &SMesh) |
| void | plot2 (const SurfaceMeshOfTriangles &s, std::set< const Cell * > &hlist, Structured3DMesh &SMesh) |
| void | plotmedit (const size_t &nobject, const SurfaceMeshOfTriangles &s_mesh, std::set< const Cell * > &toTreatHexahedra, size_t n0, size_t n1) |
| void | plothexa (size_t ncase, std::set< const Cell * > &cuttedHexahedra) |
| bool checkInterbis | ( | const Vertex & | P1, | |
| const Vertex & | P2, | |||
| const Vertex & | Q1, | |||
| const Vertex & | Q2 | |||
| ) | [inline] |
Definition at line 64 of file SurfaceMeshGenerator.cpp.
References ASSERT, and SDet().
Referenced by SurfaceMeshGenerator::Internals::__createTriangle().
00064 { 00065 // retourne true si P1P2 inter Q1Q2 != vide 00066 ASSERT(!(P1 == P2 || P1 == Q1 || P1 == Q2 || P2 == Q1 || P2 == Q2 || Q1 == Q2)); 00067 //const double eps = 1e-15; 00068 /*if (std::abs(SDet(Q1,Q2,P1)) <eps|| 00069 std::abs(SDet(Q1,Q2,P2)) <eps) { 00070 //ffout(0) << " !!!!! NO !!!!!!!" << std::endl; 00071 return true; 00072 }*/ 00073 00074 return ((SDet(P1,P2,Q1)*SDet(P1,P2,Q2) < 0) && (SDet(Q1,Q2,P1)*SDet(Q1,Q2,P2) < 0)); // version optimisée 00075 }

| void plot | ( | const SurfaceMeshOfTriangles & | s, | |
| std::set< const Cell * > & | hlist, | |||
| Structured3DMesh & | SMesh | |||
| ) |
| void plot2 | ( | const SurfaceMeshOfTriangles & | s, | |
| std::set< const Cell * > & | hlist, | |||
| Structured3DMesh & | SMesh | |||
| ) |
| void plothexa | ( | size_t | ncase, | |
| std::set< const Cell * > & | cuttedHexahedra | |||
| ) |
| void plotmedit | ( | const size_t & | nobject, | |
| const SurfaceMeshOfTriangles & | s_mesh, | |||
| std::set< const Cell * > & | toTreatHexahedra, | |||
| size_t | n0, | |||
| size_t | n1 | |||
| ) |
Definition at line 60 of file SurfaceMeshGenerator.cpp.
Referenced by Triangulation::__checkAll(), Triangulation::__find_P_in_elt(), checkInter(), and checkInterbis().
1.5.6