Blender
V3.3
|
#include <HashGrid.h>
Public Types | |
typedef map< Vec3u, Cell * > | GridHashTable |
Public Member Functions | |
HashGrid () | |
virtual | ~HashGrid () |
virtual void | clear () |
virtual void | configure (const Vec3r &orig, const Vec3r &size, unsigned nb) |
virtual Cell * | getCell (const Vec3u &p) |
virtual void | fillCell (const Vec3u &p, Cell &cell) |
![]() | |
Grid () | |
virtual | ~Grid () |
void | getCellCoordinates (const Vec3r &p, Vec3u &res) |
Cell * | getCell (const Vec3r &p) |
void | getCellOrigin (const Vec3u &cell_coord, Vec3r &orig) |
void | getCellBox (const Vec3u &cell_coord, Vec3r &min_out, Vec3r &max_out) |
void | insertOccluder (Polygon3r *occluder) |
void | addOccluder (Polygon3r *occluder) |
void | castRay (const Vec3r &orig, const Vec3r &end, OccludersSet &occluders, unsigned timestamp) |
void | initAcceleratedRay (const Vec3r &orig, const Vec3r &end, unsigned timestamp) |
void | castInfiniteRay (const Vec3r &orig, const Vec3r &dir, OccludersSet &occluders, unsigned timestamp) |
bool | initAcceleratedInfiniteRay (const Vec3r &orig, const Vec3r &dir, unsigned timestamp) |
Polygon3r * | castRayToFindFirstIntersection (const Vec3r &orig, const Vec3r &dir, double &t, double &u, double &v, unsigned timestamp) |
void | initRay (const Vec3r &orig, const Vec3r &end, unsigned timestamp) |
bool | initInfiniteRay (const Vec3r &orig, const Vec3r &dir, unsigned timestamp) |
const Vec3r & | getOrigin () const |
Vec3r | gridSize () const |
Vec3r | getCellSize () const |
OccludersSet * | getOccluders () |
void | displayDebug () |
Protected Attributes | |
GridHashTable | _cells |
![]() | |
unsigned int | _timestamp |
Vec3u | _cells_nb |
Vec3r | _cell_size |
Vec3r | _size |
Vec3r | _orig |
Vec3r | _ray_dir |
Vec3u | _current_cell |
Vec3r | _pt |
real | _t_end |
real | _t |
OccludersSet | _occluders |
Additional Inherited Members | |
![]() | |
void | castRayInternal (GridVisitor &visitor) |
bool | nextRayCell (Vec3u ¤t_cell, Vec3u &next_cell) |
Class to define a regular grid used for ray casting computations
Definition at line 41 of file HashGrid.h.
typedef map<Vec3u, Cell *> Freestyle::HashGrid::GridHashTable |
Definition at line 43 of file HashGrid.h.
|
inline |
Definition at line 45 of file HashGrid.h.
|
inlinevirtual |
Definition at line 49 of file HashGrid.h.
References clear().
|
virtual |
clears the grid Deletes all the cells, clears the hashtable, resets size, size of cell, number of cells.
Reimplemented from Freestyle::Grid.
Definition at line 12 of file HashGrid.cpp.
References _cells, and Freestyle::Grid::clear().
Referenced by ~HashGrid().
Sets the different parameters of the grid orig The grid origin size The grid's dimensions nb The number of cells of the grid
Reimplemented from Freestyle::Grid.
Definition at line 25 of file HashGrid.cpp.
References Freestyle::Grid::configure(), and size().
Fills the case p with the cell iCell
Implements Freestyle::Grid.
Definition at line 82 of file HashGrid.h.
References _cells.
returns the cell whose coordinates are passed as argument
Implements Freestyle::Grid.
Definition at line 70 of file HashGrid.h.
|
protected |
Definition at line 88 of file HashGrid.h.
Referenced by clear(), fillCell(), and getCell().