66 void write(
const int,
const std::string);
68 void write(
const std::string);
void print()
Prints console output.
bool closestIntersection(const Vector< T, 3 > &pt, const Vector< T, 3 > &direction, Vector< T, 3 > &q, T &a)
Test intersection of ray with all triangles in Octree q contains point of closest intersection to pt ...
bool AABBTri(const STLtriangle< T > &tri, T overlap=0.)
Octree(Vector< T, 3 > center, T rad, STLmesh< T > *mesh, short maxDepth, T overlap=0., Octree< T > *parent=nullptr)
void findTriangles(T overlap=0.)
bool getInside()
Gets Inside.
bool closestIntersectionSphere(const Vector< T, 3 > &pt, const T &rad, const Vector< T, 3 > &direction, Vector< T, 3 > &q, T &a, STLtriangle< T > &tri)
Test intersection of sphere moving along ray with radius rad q contains point of closest intersection...
STLmesh< T > * getMesh()
Returns reference to _mesh.
void intersectRayNode(const Vector< T, 3 > &pt, const Vector< T, 3 > &dir, Vector< T, 3 > &s)
Computes intersection of ray with Octree boundaries.
void setInside(bool ins)
Sets Inside.
int testIntersection(const Vector< T, 3 > &pt, const Vector< T, 3 > &dir, bool print=false)
Test intersection of ray with all triangles in Octree returns number of intersections.
void getLeafs(std::vector< Octree< T > * > &pts)
Collectes all leafs.
std::vector< unsigned int > _triangles
_vector _triangles contains number of triangles
int getMaxdepth() const
Gets Maxdepth.
Octree< T > * find(const Vector< T, 3 > &, const int &maxDepth=0)
Find the node containing the first param with remaining maxDepth.
bool isLeaf()
Return status of _isLeaf;.
void getCenterpoints(std::vector< std::vector< T > > &pts)
Computes all centerpoints of Octree.
void checkRay(const Vector< T, 3 > &pt, const Vector< T, 3 > &dir, unsigned short &rayInside)
It's complicated. Computes intersections of a ray with triangles inside this Octree....
const Vector< T, 3 > & getCenter() const
Gets centerpoint.
void write(const Vector< T, 3 > &pt, const std::string no)
Write Octree.
bool getBoundaryNode()
Gets _boundarNode.
~Octree()
Destructor destructs.
void trianglesOnLine(const Vector< T, 3 > &pt1, const Vector< T, 3 > &pt2, std::set< unsigned int > &tris)
Returns set of indices of all triangles in nodes containing a line.
const T getRadius() const
Gets radius.
const std::vector< unsigned int > & getTriangles() const
Gets numbers of triangles contained by this Octree.
Top level namespace for all of OpenLB.
Definition of singletons: global, publicly available information.
efficient implementation of a vector class