Main Page Modules Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# dePortal Class Reference

`#include <dePortal_priv.hpp>`

Inheritance diagram for dePortal:

[legend]
Collaboration diagram for dePortal:

[legend]
List of all members.

## Public Member Functions
| dePortal ()
| dePortal (deVec3d Vertices[], int Num)
int | Release ()
| deletes the object
IdeVertexBuffer * | GetVBuffer ()
| Retrieve a pointer to the portal's vertex buffer.
deBoolean | IsTPortal () const
| Tell whether or not the portal is a T-portal (has normal and transformation).
void | SetTPortal (deBoolean TPortal)
| Disable any T-portal behavior this portal might have.
deBoolean | ClipFrustum (const deTransformInfo &CamPos, const IdePlaneFrustum *in, IdePlaneFrustum *out)
| Clip the view frustum of a camera to the screen projection of the portal.
deBoolean | IntersectsFrustum (const deTransformInfo &CamPos, const IdePlaneFrustum *f) const
| Test whether the input view frustum potentially contains any part of the portal.
void | SetVertices (deVec3d Vertices[], long Num)
deVec3d * | GetVertices (long &Num) const
deWorldID | GetLinkWorldID () const
| Retrieve the world ID of the Scene Room on the "other side" of the portal.
deObjectID | GetLinkObjectID () const
| Retrieve the object ID of the Scene Room on the "other side" of the portal.
void | SetLinkWorldID (deWorldID WorldID)
| Set the world ID of the Scene Room on the "other side" of the portal.
void | SetLinkObjectID (deObjectID ObjectID)
| Set the object ID of the Scene Room on the "other side" of the portal.
deBoolean | LinkTo (IdeSceneRoom *SceneRoom)
| Feed in a Scene Room to have the world and object ID's matched up for you.
deBoolean | IsPlanar ()
void | SetNormal (const deVec3d &v)
| Set the "face" normal of the portal.
void | GetNormal (deVec3d &v) const
| Retrieve the "face" normal of the portal.
void | SetPosition (const deTransformInfo &M)
| Set the world transformation of the portal's position.
void | GetPosition (deTransformInfo &M) const
| Retrieve the world transformation of the portal's position.
void | SetTransform (const deTransformInfo &M)
void | GetTransform (deTransformInfo &M) const
| Retrieve the portal's transformation matrix.
void | ConcatTransform (deTransformInfo &M)
## Protected Member Functions
| ~dePortal ()
## Private Attributes
deWorldID | m_LinkWorldID
deObjectID | m_LinkObjectID
deTransform | m_Transform
deTransform | m_Position
deTArray< deVec3d > | m_Vertices
IdeVertexBuffer * | m_VBuffer
deBoolean | m_VertsChanged
deBoolean | m_DoesTransformation
deBoolean | m_IsPlanar
deVec3d | m_Normal

## Constructor & Destructor Documentation

dePortal::~dePortal | ( |  | ) | `[protected]`

dePortal::dePortal | ( |  | ) |

dePortal::dePortal | ( | deVec3d | Vertices[],
|  | int | Num
| ) |

## Member Function Documentation

deBoolean dePortal::ClipFrustum | ( | const deTransformInfo & | CamPos,
|  | const IdePlaneFrustum * | in,
|  | IdePlaneFrustum * | out
| ) | `[virtual]`

| Clip the view frustum of a camera to the screen projection of the portal. Implements IdePortal.

void dePortal::ConcatTransform | ( | deTransformInfo & | M | ) | `[virtual]`

  | Concatenate the portal's world transformation with another transform Parameters:
  Matrix | a matrix containing a current world transform, to be concatenated with the portal's world transformation
Implements IdePortal.

deObjectID dePortal::GetLinkObjectID | ( |  | ) | const`[virtual]`

| Retrieve the object ID of the Scene Room on the "other side" of the portal. Implements IdePortal.

deWorldID dePortal::GetLinkWorldID | ( |  | ) | const`[virtual]`

| Retrieve the world ID of the Scene Room on the "other side" of the portal. Implements IdePortal.

void dePortal::GetNormal | ( | deVec3d & | v | ) | const`[virtual]`

| Retrieve the "face" normal of the portal. Implements IdePortal.

void dePortal::GetPosition | ( | deTransformInfo & | M | ) | const`[virtual]`

| Retrieve the world transformation of the portal's position. Implements IdePortal.

void dePortal::GetTransform | ( | deTransformInfo & | M | ) | const`[virtual]`

| Retrieve the portal's transformation matrix. Implements IdePortal.

IdeVertexBuffer * dePortal::GetVBuffer | ( |  | ) | `[virtual]`

| Retrieve a pointer to the portal's vertex buffer. Implements IdePortal.

deVec3d * dePortal::GetVertices | ( | long & | Num | ) | const`[virtual]`

  | Retrieve the internally held vertices Returns: pointer to the internal vertex array Parameters:
  Num | a reference to a long int to be filled with the number of vertices
Implements IdePortal.

deBoolean dePortal::IntersectsFrustum | ( | const deTransformInfo & | CamPos,
|  | const IdePlaneFrustum * | f
| ) | const`[virtual]`

| Test whether the input view frustum potentially contains any part of the portal. Implements IdePortal.

deBoolean dePortal::IsPlanar | ( |  | ) | `[virtual]`

| Implements IdePortal.

deBoolean dePortal::IsTPortal | ( |  | ) | const`[virtual]`

| Tell whether or not the portal is a T-portal (has normal and transformation). Implements IdePortal.

deBoolean dePortal::LinkTo | ( | IdeSceneRoom * | SceneRoom | ) | `[virtual]`

| Feed in a Scene Room to have the world and object ID's matched up for you. Implements IdePortal.

int dePortal::Release | ( |  | ) | `[virtual]`

| deletes the object Implements IdePortal.

void dePortal::SetLinkObjectID | ( | deObjectID | ObjectID | ) | `[virtual]`

| Set the object ID of the Scene Room on the "other side" of the portal. Implements IdePortal.

void dePortal::SetLinkWorldID | ( | deWorldID | WorldID | ) | `[virtual]`

| Set the world ID of the Scene Room on the "other side" of the portal. Implements IdePortal.

void dePortal::SetNormal | ( | const deVec3d & | v | ) | `[virtual]`

| Set the "face" normal of the portal. Implements IdePortal.

void dePortal::SetPosition | ( | const deTransformInfo & | M | ) | `[virtual]`

| Set the world transformation of the portal's position. Implements IdePortal.

void dePortal::SetTPortal | ( | deBoolean | TPortal | ) | `[virtual]`

| Disable any T-portal behavior this portal might have. Implements IdePortal.

void dePortal::SetTransform | ( | const deTransformInfo & | M | ) | `[virtual]`

| Set the portal's transformation matrix. This matrix is used to get a concatenated world matrix for objects on the "other side" of the portal Implements IdePortal.

void dePortal::SetVertices | ( | deVec3d | Vertices[],
|  | long | Num
| ) | `[virtual]`

  | Set the vertices of the portal. For a T-portal, these vertices must be planar Parameters:
  Vertices | an array of vertices to set the internal vertices to
  Num | the number of vertices in the array
Implements IdePortal.

## Member Data Documentation

deBoolean dePortal::m_DoesTransformation`[private]`

deBoolean dePortal::m_IsPlanar`[private]`

deObjectID dePortal::m_LinkObjectID`[private]`

deWorldID dePortal::m_LinkWorldID`[private]`

deVec3d dePortal::m_Normal`[private]`

deTransform dePortal::m_Position`[private]`

deTransform dePortal::m_Transform`[private]`

IdeVertexBuffer* dePortal::m_VBuffer`[private]`

deTArray<deVec3d> dePortal::m_Vertices`[private]`

deBoolean dePortal::m_VertsChanged`[private]`

The documentation for this class was generated from the following files:

- dePortal_priv.hpp
- dePortal.cpp