OpenEnroth 73e68f7
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Vis Class Reference

#include <Vis.h>

Public Member Functions

Vis_PIDAndDepth PickKeyboard (float pick_depth, Vis_SelectionFilter *sprite_filter, Vis_SelectionFilter *face_filter)
 
Vis_PIDAndDepth PickMouse (float fDepth, float fMouseX, float fMouseY, Vis_SelectionFilter *sprite_filter, Vis_SelectionFilter *face_filter)
 
bool DoesRayIntersectBillboard (float fDepth, unsigned int uD3DBillboardIdx)
 
Pid PickClosestActor (ObjectType object_type, unsigned int pick_depth, VisSelectFlags selectFlags, int not_at_ai_state, int at_ai_state)
 

Private Member Functions

void PickBillboards_Keyboard (float pick_depth, Vis_SelectionList *list, Vis_SelectionFilter *filter)
 
void PickIndoorFaces_Keyboard (float pick_depth, Vis_SelectionList *list, Vis_SelectionFilter *filter)
 
void PickOutdoorFaces_Keyboard (float pick_depth, Vis_SelectionList *list, Vis_SelectionFilter *filter)
 
void PickBillboards_Mouse (float fPickDepth, float fX, float fY, Vis_SelectionList *list, Vis_SelectionFilter *filter)
 
void PickIndoorFaces_Mouse (float fDepth, const Vec3f &rayOrigin, const Vec3f &rayStep, Vis_SelectionList *list, Vis_SelectionFilter *filter)
 
void PickOutdoorFaces_Mouse (float fDepth, const Vec3f &rayOrigin, const Vec3f &rayStep, Vis_SelectionList *list, Vis_SelectionFilter *filter, bool only_reachable)
 
bool isBillboardPartOfSelection (int billboardId, Vis_SelectionFilter *filter)
 
bool isFacePartOfSelection (ODMFace *odmFace, BLVFace *bvlFace, Vis_SelectionFilter *filter)
 
Vis_ObjectInfoDetermineFacetIntersection (BLVFace *face, Pid pid, float pick_depth)
 
bool IsPolygonOccludedByBillboard (RenderVertexSoft *vertices, int num_vertices, float x, float y)
 
bool DoesRayMissLevelGeom (float test_x, float test_y, float fDepth, float fTestDepth)
 
void GetPolygonCenter (RenderVertexD3D3 *pVertices, unsigned int uNumVertices, float *pCenterX, float *pCenterY)
 
void GetPolygonScreenSpaceCenter (RenderVertexSoft *vertices, int num_vertices, float *out_center_x, float *out_center_y)
 
bool IsPointInsideD3DBillboard (RenderBillboardD3D *billboard, float x, float y)
 
void SortVectors_x (RenderVertexSoft *pArray, int start, int end)
 
Vis_PIDAndDepth get_object_zbuf_val (Vis_ObjectInfo *info)
 
bool Intersect_Ray_Face (const Vec3f &origin, const Vec3f &step, RenderVertexSoft *Intersection, BLVFace *pFace, signed int pBModelID)
 
bool CheckIntersectFace (BLVFace *pFace, Vec3f IntersectPoint, signed int sModelID)
 
void CastPickRay (float fMouseX, float fMouseY, float fPickDepth, Vec3f *origin, Vec3f *step)
 
void SortVerticesByX (RenderVertexD3D3 *pArray, unsigned int uStart, unsigned int uEnd)
 
void SortVerticesByY (RenderVertexD3D3 *pArray, unsigned int uStart, unsigned int uEnd)
 
void SortByScreenSpaceX (RenderVertexSoft *pArray, int start, int end)
 
void SortByScreenSpaceY (RenderVertexSoft *pArray, int start, int end)
 

Private Attributes

Vis_SelectionList _selectionList
 

Member Function Documentation

◆ CastPickRay()

void Vis::CastPickRay ( float  fMouseX,
float  fMouseY,
float  fPickDepth,
Vec3f origin,
Vec3f step 
)
private

◆ CheckIntersectFace()

bool Vis::CheckIntersectFace ( BLVFace pFace,
Vec3f  IntersectPoint,
signed int  sModelID 
)
private

◆ DetermineFacetIntersection()

Vis_ObjectInfo * Vis::DetermineFacetIntersection ( BLVFace face,
Pid  pid,
float  pick_depth 
)
private

◆ DoesRayIntersectBillboard()

bool Vis::DoesRayIntersectBillboard ( float  fDepth,
unsigned int  uD3DBillboardIdx 
)

◆ DoesRayMissLevelGeom()

bool Vis::DoesRayMissLevelGeom ( float  test_x,
float  test_y,
float  fDepth,
float  fTestDepth 
)
private
Parameters
test_xScreen x position of ray.
test_yScreen y position of ray.
fDepthMaximum screen depth of ray.
fTestDepthScreen depth to test geometery against.
Returns
Whether no level geometery is hit at this location before fTestDepth.

◆ get_object_zbuf_val()

Vis_PIDAndDepth Vis::get_object_zbuf_val ( Vis_ObjectInfo info)
private

◆ GetPolygonCenter()

void Vis::GetPolygonCenter ( RenderVertexD3D3 pVertices,
unsigned int  uNumVertices,
float *  pCenterX,
float *  pCenterY 
)
private

◆ GetPolygonScreenSpaceCenter()

void Vis::GetPolygonScreenSpaceCenter ( RenderVertexSoft vertices,
int  num_vertices,
float *  out_center_x,
float *  out_center_y 
)
private

◆ Intersect_Ray_Face()

bool Vis::Intersect_Ray_Face ( const Vec3f origin,
const Vec3f step,
RenderVertexSoft Intersection,
BLVFace pFace,
signed int  pBModelID 
)
private

◆ isBillboardPartOfSelection()

bool Vis::isBillboardPartOfSelection ( int  billboardId,
Vis_SelectionFilter filter 
)
private

◆ isFacePartOfSelection()

bool Vis::isFacePartOfSelection ( ODMFace odmFace,
BLVFace bvlFace,
Vis_SelectionFilter filter 
)
private

◆ IsPointInsideD3DBillboard()

bool Vis::IsPointInsideD3DBillboard ( RenderBillboardD3D billboard,
float  x,
float  y 
)
private

◆ IsPolygonOccludedByBillboard()

bool Vis::IsPolygonOccludedByBillboard ( RenderVertexSoft vertices,
int  num_vertices,
float  x,
float  y 
)
private

◆ PickBillboards_Keyboard()

void Vis::PickBillboards_Keyboard ( float  pick_depth,
Vis_SelectionList list,
Vis_SelectionFilter filter 
)
private

◆ PickBillboards_Mouse()

void Vis::PickBillboards_Mouse ( float  fPickDepth,
float  fX,
float  fY,
Vis_SelectionList list,
Vis_SelectionFilter filter 
)
private

◆ PickClosestActor()

Pid Vis::PickClosestActor ( ObjectType  object_type,
unsigned int  pick_depth,
VisSelectFlags  selectFlags,
int  not_at_ai_state,
int  at_ai_state 
)

◆ PickIndoorFaces_Keyboard()

void Vis::PickIndoorFaces_Keyboard ( float  pick_depth,
Vis_SelectionList list,
Vis_SelectionFilter filter 
)
private

◆ PickIndoorFaces_Mouse()

void Vis::PickIndoorFaces_Mouse ( float  fDepth,
const Vec3f rayOrigin,
const Vec3f rayStep,
Vis_SelectionList list,
Vis_SelectionFilter filter 
)
private

◆ PickKeyboard()

Vis_PIDAndDepth Vis::PickKeyboard ( float  pick_depth,
Vis_SelectionFilter sprite_filter,
Vis_SelectionFilter face_filter 
)

◆ PickMouse()

Vis_PIDAndDepth Vis::PickMouse ( float  fDepth,
float  fMouseX,
float  fMouseY,
Vis_SelectionFilter sprite_filter,
Vis_SelectionFilter face_filter 
)

◆ PickOutdoorFaces_Keyboard()

void Vis::PickOutdoorFaces_Keyboard ( float  pick_depth,
Vis_SelectionList list,
Vis_SelectionFilter filter 
)
private

◆ PickOutdoorFaces_Mouse()

void Vis::PickOutdoorFaces_Mouse ( float  fDepth,
const Vec3f rayOrigin,
const Vec3f rayStep,
Vis_SelectionList list,
Vis_SelectionFilter filter,
bool  only_reachable 
)
private

◆ SortByScreenSpaceX()

void Vis::SortByScreenSpaceX ( RenderVertexSoft pArray,
int  start,
int  end 
)
private

◆ SortByScreenSpaceY()

void Vis::SortByScreenSpaceY ( RenderVertexSoft pArray,
int  start,
int  end 
)
private

◆ SortVectors_x()

void Vis::SortVectors_x ( RenderVertexSoft pArray,
int  start,
int  end 
)
private

◆ SortVerticesByX()

void Vis::SortVerticesByX ( RenderVertexD3D3 pArray,
unsigned int  uStart,
unsigned int  uEnd 
)
private

◆ SortVerticesByY()

void Vis::SortVerticesByY ( RenderVertexD3D3 pArray,
unsigned int  uStart,
unsigned int  uEnd 
)
private

Member Data Documentation

◆ _selectionList

Vis_SelectionList Vis::_selectionList
private

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