#include <vtkRecursiveSphereDirectionEncoder.h>
Inheritance diagram for vtkRecursiveSphereDirectionEncoder:
vtkRecursiveSphereDirectionEncoder is a direction encoder which uses the vertices of a recursive subdivision of an octahedron (with the vertices pushed out onto the surface of an enclosing sphere) to encode directions into a two byte value.
Definition at line 44 of file vtkRecursiveSphereDirectionEncoder.h.
Public Types | |
typedef vtkDirectionEncoder | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
int | GetEncodedDirection (float n[3]) |
float * | GetDecodedGradient (int value) |
int | GetNumberOfEncodedDirections (void) |
float * | GetDecodedGradientTable (void) |
virtual void | SetRecursionDepth (int) |
virtual int | GetRecursionDepth () |
Static Public Member Functions | |
int | IsTypeOf (const char *type) |
vtkRecursiveSphereDirectionEncoder * | SafeDownCast (vtkObject *o) |
vtkRecursiveSphereDirectionEncoder * | New () |
Protected Member Functions | |
vtkRecursiveSphereDirectionEncoder () | |
~vtkRecursiveSphereDirectionEncoder () | |
void | InitializeIndexTable (void) |
Protected Attributes | |
int | RecursionDepth |
int * | IndexTable |
float * | DecodedNormal |
int | IndexTableRecursionDepth |
int | OuterSize |
int | InnerSize |
int | GridSize |
|
Get the name of this class Reimplemented from vtkDirectionEncoder. Definition at line 47 of file vtkRecursiveSphereDirectionEncoder.h. |
|
|
|
|
|
Get the name of this class Reimplemented from vtkDirectionEncoder. |
|
Get the name of this class Reimplemented from vtkDirectionEncoder. |
|
Get the name of this class Reimplemented from vtkDirectionEncoder. |
|
Get the name of this class Reimplemented from vtkDirectionEncoder. |
|
Get the name of this class Reimplemented from vtkDirectionEncoder. |
|
Construct the object. Initialize the index table which will be used to map the normal into a patch on the recursively subdivided sphere. Reimplemented from vtkObject. |
|
Given a normal vector n, return the encoded direction Implements vtkDirectionEncoder. |
|
/ Given an encoded value, return a pointer to the normal vector Implements vtkDirectionEncoder. |
|
Return the number of encoded directions Implements vtkDirectionEncoder. |
|
Get the decoded gradient table. There are this->GetNumberOfEncodedDirections() entries in the table, each containing a normal (direction) vector. This is a flat structure - 3 times the number of directions floats in an array. Implements vtkDirectionEncoder. |
|
Set / Get the recursion depth for the subdivision. This indicates how many time one triangle on the initial 8-sided sphere model is replaced by four triangles formed by connecting triangle edge midpoints. A recursion level of 0 yields 8 triangles with 6 unique vertices. The normals are the vectors from the sphere center through the vertices. The number of directions will be 11 since the four normals with 0 z values will be duplicated in the table - once with +0 values and the other time with -0 values, and an addition index will be used to represent the (0,0,0) normal. If we instead choose a recursion level of 6 (the maximum that can fit within 2 bytes) the number of directions is 16643, with 16386 unique directions and a zero normal. |
|
Set / Get the recursion depth for the subdivision. This indicates how many time one triangle on the initial 8-sided sphere model is replaced by four triangles formed by connecting triangle edge midpoints. A recursion level of 0 yields 8 triangles with 6 unique vertices. The normals are the vectors from the sphere center through the vertices. The number of directions will be 11 since the four normals with 0 z values will be duplicated in the table - once with +0 values and the other time with -0 values, and an addition index will be used to represent the (0,0,0) normal. If we instead choose a recursion level of 6 (the maximum that can fit within 2 bytes) the number of directions is 16643, with 16386 unique directions and a zero normal. |
|
|
|
Definition at line 92 of file vtkRecursiveSphereDirectionEncoder.h. |
|
Definition at line 97 of file vtkRecursiveSphereDirectionEncoder.h. |
|
Definition at line 103 of file vtkRecursiveSphereDirectionEncoder.h. |
|
Definition at line 109 of file vtkRecursiveSphereDirectionEncoder.h. |
|
Definition at line 111 of file vtkRecursiveSphereDirectionEncoder.h. |
|
Definition at line 112 of file vtkRecursiveSphereDirectionEncoder.h. |
|
Definition at line 113 of file vtkRecursiveSphereDirectionEncoder.h. |