#include <Octree.h>
Definition at line 12 of file Octree.h.
◆ Octree() [1/2]
geo::Octree::Octree |
( |
double |
size, |
|
|
double |
resolution = 0.1 |
|
) |
| |
◆ Octree() [2/2]
geo::Octree::Octree |
( |
const Octree & |
orig | ) |
|
◆ ~Octree()
◆ add()
void geo::Octree::add |
( |
const Vector3 & |
p | ) |
|
◆ clear()
void geo::Octree::clear |
( |
| ) |
|
◆ clone()
Octree * geo::Octree::clone |
( |
| ) |
const |
|
virtual |
◆ contains()
bool geo::Octree::contains |
( |
const Vector3 & |
p | ) |
const |
|
virtual |
Determines whether a point p lies within the shape.
- Parameters
-
- Returns
- True means point p lies inside the shape
Let the line segment P connect points p and an arbitrary point p_out outside of the shape We count the number of intersections between P and the shape. A positive number means point p is inside the shape. We use plucker coordinates to determine whether or not a triangle intersects line segment P. more details https://members.loria.fr/SLazard/ARC-Visi3D/Pant-project/files/Line_Segment_Triangle.html
Reimplemented from geo::Shape.
Definition at line 85 of file Octree.cpp.
◆ getCubes()
◆ getMaxRadius()
double geo::Octree::getMaxRadius |
( |
| ) |
const |
|
virtual |
Calculate the maximum distance from the origin of the shape to any point of the shape.
- Returns
- Maximum radius found.
Reimplemented from geo::Shape.
Definition at line 64 of file Octree.cpp.
◆ getMesh()
const Mesh & geo::Octree::getMesh |
( |
| ) |
const |
|
virtual |
return the mesh defining the shape
- Returns
- a constant reference to the mesh of the shape
Reimplemented from geo::Shape.
Definition at line 110 of file Octree.cpp.
◆ getResolution()
double geo::Octree::getResolution |
( |
| ) |
const |
◆ intersect() [1/2]
bool geo::Octree::intersect |
( |
const Box & |
b | ) |
const |
◆ intersect() [2/2]
bool geo::Octree::intersect |
( |
const Ray & |
r, |
|
|
float |
t0, |
|
|
float |
t1, |
|
|
double & |
distance |
|
) |
| const |
|
virtual |
intersect: currently always throws a logic error
- Parameters
-
- Returns
- true when the ray intersects the shape
Reimplemented from geo::Shape.
Definition at line 50 of file Octree.cpp.
◆ raytrace()
void geo::Octree::raytrace |
( |
const Ray & |
r, |
|
|
float |
t0, |
|
|
float |
t1 |
|
) |
| |
◆ setResolution()
double geo::Octree::setResolution |
( |
double |
resolution | ) |
|
◆ OctreeNode
◆ max_
◆ mesh_
◆ offset_
◆ resolution_
double geo::Octree::resolution_ |
|
protected |
◆ root_
◆ size_
double geo::Octree::size_ |
|
protected |
The documentation for this class was generated from the following files: