![]() |
Oolite 1.91.0.7658-250404-b1488af
|
#include <Octree.h>
Instance Methods | |
(id) | - initWithDictionary: |
(Octree *) | - octreeScaledBy: |
(void) | - drawOctree |
(void) | - drawOctreeCollisions |
(GLfloat) | - isHitByLine:v0: |
(BOOL) | - isHitByOctree:withOrigin:andIJK: |
(BOOL) | - isHitByOctree:withOrigin:andIJK:andScales:s1: |
(NSDictionary *) | - dictionaryRepresentation |
(GLfloat) | - volume |
(Vector) | - randomPoint |
(size_t) | - totalSize |
(id) | - init [implementation] |
(id) | - initWithData:radius: [implementation] |
(void) | - dealloc [implementation] |
(BOOL) | - hasCollision [implementation] |
(void) | - setHasCollision: [implementation] |
(Octree_details) | - octreeDetails [implementation] |
(void) | - drawOctreeFromLocation:loc:scale: [implementation] |
(void) | - drawOctreeCollisionFromLocation:loc:scale: [implementation] |
Class Methods | |
(static Vector) | + offsetForOctant [implementation] |
(static BOOL) | + isHitByLineSub [implementation] |
(static BOOL) | + isHitByLine [implementation] |
(static BOOL) | + isHitByOctree [implementation] |
(static GLfloat) | + volumeOfOctree [implementation] |
(static Vector) | + randomFullNodeFrom [implementation] |
Private Attributes | |
GLfloat | _radius |
uint32_t | _nodeCount |
const int * | _octree |
BOOL | _hasCollision |
unsigned char * | _collisionOctree |
NSData * | _data |
|
implementation |
Definition at line 130 of file Octree.m.
References _collisionOctree, _data, dealloc, and DESTROY.
Referenced by dealloc.
- (NSDictionary *) dictionaryRepresentation |
Definition at line 667 of file Octree.m.
References dictionaryRepresentation.
Referenced by dictionaryRepresentation, and OOCacheManager(Octree)::setOctree:forModel:.
- (void) drawOctree |
Definition at line 178 of file Octree.m.
References drawOctree, OO_ENTER_OPENGL, OOCheckOpenGLErrors(), OODebugBeginWireframe(), OODebugEndWireframe(), OOGL, OOGLBEGIN, and OOGLEND.
Referenced by drawOctree, and OOMesh::renderOpaqueParts.
|
implementation |
Provided by category Octree(Private).
Definition at line 289 of file Octree.m.
References drawTestForCollisions, OO_ENTER_OPENGL, OOGL, OOGLBEGIN, and OOGLEND.
- (void) drawOctreeCollisions |
Definition at line 272 of file Octree.m.
References _hasCollision, drawOctreeCollisions, drawTestForCollisions, OOCheckOpenGLErrors(), OODebugBeginWireframe(), and OODebugEndWireframe().
Referenced by drawOctreeCollisions.
|
implementation |
Provided by category Octree(Private).
Definition at line 204 of file Octree.m.
References OCTREE_COLOR, and OO_ENTER_OPENGL.
|
implementation |
Provided by category Octree(Private).
Definition at line 139 of file Octree.m.
References Octree(Private)::hasCollision.
Referenced by Octree(Private)::hasCollision, isHitByOctree:withOrigin:andIJK:, and isHitByOctree:withOrigin:andIJK:andScales:s1:.
|
implementation |
Definition at line 80 of file Octree.m.
Referenced by init, and initWithData:radius:.
|
implementation |
Definition at line 90 of file Octree.m.
References _collisionOctree, _data, _nodeCount, _octree, _radius, init, and nil.
Referenced by initWithDictionary:.
- (id) initWithDictionary: | (NSDictionary *) | dictionary |
Definition at line 116 of file Octree.m.
References initWithData:radius:, and nil.
|
implementation |
Definition at line 372 of file Octree.m.
References hasCollided, hit_dist, isHitByLineSub, lineCubeIntersection(), lineIntersectionWithFace(), and OctreeDebugLog.
Referenced by isHitByLine:v0:.
- (GLfloat) isHitByLine: | (Vector) | ||
v0: | (Vector) | v1 |
Definition at line 477 of file Octree.m.
References _collisionOctree, _hasCollision, _nodeCount, _octree, _radius, hasCollided, hit_dist, isHitByLine, isHitByLine(), kZeroVector, and OctreeDebugLog.
|
implementation |
Definition at line 359 of file Octree.m.
References isHitByLine(), and offsetForOctant.
Referenced by isHitByLine.
|
implementation |
Definition at line 497 of file Octree.m.
References change_oct, isHitByOctree(), Octree_details::octree, Octree_details::octree_collision, OctreeDebugLog, offsetForOctant, and Octree_details::radius.
Referenced by isHitByOctree:withOrigin:andIJK:, and isHitByOctree:withOrigin:andIJK:andScales:s1:.
- (BOOL) isHitByOctree: | (Octree *) | other | |
withOrigin: | (Vector) | origin | |
andIJK: | (Triangle) | ijk |
Definition at line 637 of file Octree.m.
References _hasCollision, hasCollision, isHitByOctree, isHitByOctree(), nil, octreeDetails, and setHasCollision:.
- (BOOL) isHitByOctree: | (Octree *) | other | |
withOrigin: | (Vector) | origin | |
andIJK: | (Triangle) | ijk | |
andScales: | (GLfloat) | ||
s1: | (GLfloat) | s2 |
Definition at line 650 of file Octree.m.
References _hasCollision, hasCollision, isHitByOctree, isHitByOctree(), octreeDetails, Octree_details::radius, and setHasCollision:.
|
implementation |
Provided by category Octree(Private).
Definition at line 151 of file Octree.m.
References Octree(Private)::octreeDetails.
Referenced by isHitByOctree:withOrigin:andIJK:, isHitByOctree:withOrigin:andIJK:andScales:s1:, Octree(Private)::octreeDetails, randomPoint, and volume.
- (Octree *) octreeScaledBy: | (GLfloat) | factor |
Definition at line 163 of file Octree.m.
|
implementation |
Definition at line 170 of file Octree.m.
Referenced by isHitByLineSub, isHitByOctree, and randomFullNodeFrom.
|
implementation |
Definition at line 730 of file Octree.m.
References Octree_details::octree, Octree_details::octree_collision, offsetForOctant, Octree_details::radius, randomFullNodeFrom(), and Ranrot().
- (Vector) randomPoint |
Definition at line 763 of file Octree.m.
References kZeroVector, octreeDetails, randomFullNodeFrom(), and randomPoint.
Referenced by ShipEntity::becomeExplosion, and randomPoint.
|
implementation |
Provided by category Octree(Private).
Definition at line 145 of file Octree.m.
Referenced by isHitByOctree:withOrigin:andIJK:, and isHitByOctree:withOrigin:andIJK:andScales:s1:.
- (size_t) totalSize |
Definition at line 770 of file Octree.m.
References _collisionOctree, _nodeCount, and totalSize.
Referenced by totalSize, and OOMesh::totalSize.
- (GLfloat) volume |
Definition at line 715 of file Octree.m.
References octreeDetails, volume, and volumeOfOctree().
Referenced by volume, and ShipEntity::volume.
|
implementation |
Definition at line 676 of file Octree.m.
References Octree_details::octree, Octree_details::octree_collision, Octree_details::radius, and volumeOfOctree().
|
private |
Definition at line 47 of file Octree.h.
Referenced by dealloc, initWithData:radius:, isHitByLine:v0:, and totalSize.
|
private |
Definition at line 49 of file Octree.h.
Referenced by dealloc, and initWithData:radius:.
|
private |
Definition at line 45 of file Octree.h.
Referenced by drawOctreeCollisions, isHitByLine:v0:, isHitByOctree:withOrigin:andIJK:, and isHitByOctree:withOrigin:andIJK:andScales:s1:.
|
private |
Definition at line 43 of file Octree.h.
Referenced by initWithData:radius:, isHitByLine:v0:, and totalSize.
|
private |
Definition at line 44 of file Octree.h.
Referenced by initWithData:radius:, and isHitByLine:v0:.
|
private |
Definition at line 42 of file Octree.h.
Referenced by initWithData:radius:, and isHitByLine:v0:.