OpenEnroth 73e68f7
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
BLVFace Struct Reference

#include <Indoor.h>

Public Member Functions

void _get_normals (Vec3f *outU, Vec3f *outV)
 
void FromODM (ODMFace *face)
 
void SetTexture (std::string_view filename)
 
GraphicsImageGetTexture () const
 
bool Invisible () const
 
bool Visible () const
 
bool isPortal () const
 
bool isFluid () const
 
bool Indoor_sky () const
 
bool Clickable () const
 
bool Pressure_Plate () const
 
bool Ethereal () const
 
bool IsTextureFrameTable () const
 
void ToggleIsTextureFrameTable ()
 
void Flatten (FlatFace *points, int model_idx, FaceAttributes override_plane=0) const
 
bool Contains (const Vec3f &pos, int model_idx, int slack=0, FaceAttributes override_plane=0) const
 

Public Attributes

Planef facePlane
 
PlaneZCalcf zCalc
 
FaceAttributes uAttributes
 
int16_t * pVertexIDs = nullptr
 
int16_t * pVertexUIDs = nullptr
 
int16_t * pVertexVIDs = nullptr
 
uint16_t uFaceExtraID = 0
 
void * resource = nullptr
 
int texunit = -1
 
int texlayer = -1
 
int uSectorID = 0
 
int uBackSectorID = 0
 
BBoxf pBounding
 
PolygonType uPolygonType = POLYGON_Invalid
 
uint8_t uNumVertices = 0
 

Member Function Documentation

◆ _get_normals()

void BLVFace::_get_normals ( Vec3f outU,
Vec3f outV 
)

◆ Clickable()

bool BLVFace::Clickable ( ) const
inline

◆ Contains()

bool BLVFace::Contains ( const Vec3f pos,
int  model_idx,
int  slack = 0,
FaceAttributes  override_plane = 0 
) const
Parameters
posPoint to check.
model_idxModel that this face belongs to, or MODEL_INDOOR for faces in indoor locations.
slackIf a point is at most slack units away from the edge, it'll still be considered to be lying on the edge.
override_planePlane override. By default the check is performed in the face's primary plane that is set in attributes, but this behavior can be overridden by e.g. passing FACE_XY_PLANE.
Returns
Whether the point lies inside this polygon, if projected on the face's primary plane.

◆ Ethereal()

bool BLVFace::Ethereal ( ) const
inline

◆ Flatten()

void BLVFace::Flatten ( FlatFace points,
int  model_idx,
FaceAttributes  override_plane = 0 
) const
Parameters
[out]pointsCoordinate storage. The storage is populated by the coordinates of this face's vertices projected onto this face's primary plane.
model_idxModel that this face belongs to, or MODEL_INDOOR for faces in indoor locations.
override_planePlane override.
See also
BLVFace::Contains

◆ FromODM()

void BLVFace::FromODM ( ODMFace face)

◆ GetTexture()

GraphicsImage * BLVFace::GetTexture ( ) const

◆ Indoor_sky()

bool BLVFace::Indoor_sky ( ) const
inline

◆ Invisible()

bool BLVFace::Invisible ( ) const
inline

◆ isFluid()

bool BLVFace::isFluid ( ) const
inline

◆ isPortal()

bool BLVFace::isPortal ( ) const
inline

◆ IsTextureFrameTable()

bool BLVFace::IsTextureFrameTable ( ) const
inline

◆ Pressure_Plate()

bool BLVFace::Pressure_Plate ( ) const
inline

◆ SetTexture()

void BLVFace::SetTexture ( std::string_view  filename)

◆ ToggleIsTextureFrameTable()

void BLVFace::ToggleIsTextureFrameTable ( )
inline

◆ Visible()

bool BLVFace::Visible ( ) const
inline

Member Data Documentation

◆ facePlane

Planef BLVFace::facePlane

◆ pBounding

BBoxf BLVFace::pBounding

◆ pVertexIDs

int16_t* BLVFace::pVertexIDs = nullptr

◆ pVertexUIDs

int16_t* BLVFace::pVertexUIDs = nullptr

◆ pVertexVIDs

int16_t* BLVFace::pVertexVIDs = nullptr

◆ resource

void* BLVFace::resource = nullptr

◆ texlayer

int BLVFace::texlayer = -1

◆ texunit

int BLVFace::texunit = -1

◆ uAttributes

FaceAttributes BLVFace::uAttributes

◆ uBackSectorID

int BLVFace::uBackSectorID = 0

◆ uFaceExtraID

uint16_t BLVFace::uFaceExtraID = 0

◆ uNumVertices

uint8_t BLVFace::uNumVertices = 0

◆ uPolygonType

PolygonType BLVFace::uPolygonType = POLYGON_Invalid

◆ uSectorID

int BLVFace::uSectorID = 0

◆ zCalc

PlaneZCalcf BLVFace::zCalc

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