A reimplementation of Mario Kart Wii's physics engine in C++
Loading...
Searching...
No Matches
System::MapdataAreaBase Class Referenceabstract

Description

Definition at line 11 of file MapdataArea.hh.

Inheritance diagram for System::MapdataAreaBase:

Classes

struct  SData
 

Public Types

enum class  Shape {
  Box = 0 ,
  Cylinder = 1
}
 
enum class  Type { MovingRoad = 3 }
 

Public Member Functions

 MapdataAreaBase (const SData *data, s16 index)
 
void read (EGG::Stream &stream)
 
virtual bool testImpl (const EGG::Vector3f &pos) const =0
 
bool test (const EGG::Vector3f &pos) const
 
MapdataPointInfogetPointInfo () const
 
Type type () const
 
u8 priority () const
 
s16 param (size_t i) const
 
s16 index () const
 

Protected Attributes

const SDatam_rawData
 
Type m_type
 
u8 m_priority
 
EGG::Vector3f m_position
 
EGG::Vector3f m_rotation
 
EGG::Vector3f m_scale
 
std::array< s16, 2 > m_params
 
s8 m_railId
 
EGG::Vector3f m_right
 
EGG::Vector3f m_up
 
EGG::Vector3f m_forward
 
EGG::Vector3f m_dimensions
 
f32 m_ellipseRadiusSq
 
f32 m_ellipseAspectRatio
 
f32 m_sqBoundingSphereRadius
 Used to phase out intersection tests early.
 
s16 m_index
 

Member Enumeration Documentation

◆ Shape

enum class System::MapdataAreaBase::Shape
strong

Definition at line 27 of file MapdataArea.hh.

◆ Type

enum class System::MapdataAreaBase::Type
strong

Definition at line 32 of file MapdataArea.hh.

Constructor & Destructor Documentation

◆ MapdataAreaBase()

System::MapdataAreaBase::MapdataAreaBase ( const SData * data,
s16 index )
0x80516050

Definition at line 8 of file MapdataArea.cc.

Member Function Documentation

◆ getPointInfo()

MapdataPointInfo * System::MapdataAreaBase::getPointInfo ( ) const
nodiscard0x80516168

Definition at line 41 of file MapdataArea.cc.

◆ index()

s16 System::MapdataAreaBase::index ( ) const
inlinenodiscard

Definition at line 63 of file MapdataArea.hh.

◆ param()

s16 System::MapdataAreaBase::param ( size_t i) const
inlinenodiscard

Definition at line 58 of file MapdataArea.hh.

◆ priority()

u8 System::MapdataAreaBase::priority ( ) const
inlinenodiscard

Definition at line 54 of file MapdataArea.hh.

◆ read()

void System::MapdataAreaBase::read ( EGG::Stream & stream)

Definition at line 22 of file MapdataArea.cc.

◆ test()

bool System::MapdataAreaBase::test ( const EGG::Vector3f & pos) const
inlinenodiscard0x805160B0

Definition at line 43 of file MapdataArea.hh.

◆ type()

Type System::MapdataAreaBase::type ( ) const
inlinenodiscard

Definition at line 50 of file MapdataArea.hh.

Member Data Documentation

◆ m_dimensions

EGG::Vector3f System::MapdataAreaBase::m_dimensions
protected

Definition at line 80 of file MapdataArea.hh.

◆ m_ellipseAspectRatio

f32 System::MapdataAreaBase::m_ellipseAspectRatio
protected

Definition at line 82 of file MapdataArea.hh.

◆ m_ellipseRadiusSq

f32 System::MapdataAreaBase::m_ellipseRadiusSq
protected

Definition at line 81 of file MapdataArea.hh.

◆ m_forward

EGG::Vector3f System::MapdataAreaBase::m_forward
protected

Definition at line 79 of file MapdataArea.hh.

◆ m_index

s16 System::MapdataAreaBase::m_index
protected

Definition at line 84 of file MapdataArea.hh.

◆ m_params

std::array<s16, 2> System::MapdataAreaBase::m_params
protected

Definition at line 74 of file MapdataArea.hh.

◆ m_position

EGG::Vector3f System::MapdataAreaBase::m_position
protected

Definition at line 71 of file MapdataArea.hh.

◆ m_priority

u8 System::MapdataAreaBase::m_priority
protected

Definition at line 70 of file MapdataArea.hh.

◆ m_railId

s8 System::MapdataAreaBase::m_railId
protected

Definition at line 75 of file MapdataArea.hh.

◆ m_rawData

const SData* System::MapdataAreaBase::m_rawData
protected

Definition at line 68 of file MapdataArea.hh.

◆ m_right

EGG::Vector3f System::MapdataAreaBase::m_right
protected

Definition at line 77 of file MapdataArea.hh.

◆ m_rotation

EGG::Vector3f System::MapdataAreaBase::m_rotation
protected

Definition at line 72 of file MapdataArea.hh.

◆ m_scale

EGG::Vector3f System::MapdataAreaBase::m_scale
protected

Definition at line 73 of file MapdataArea.hh.

◆ m_sqBoundingSphereRadius

f32 System::MapdataAreaBase::m_sqBoundingSphereRadius
protected

Used to phase out intersection tests early.

Definition at line 83 of file MapdataArea.hh.

◆ m_type

Type System::MapdataAreaBase::m_type
protected

Definition at line 69 of file MapdataArea.hh.

◆ m_up

EGG::Vector3f System::MapdataAreaBase::m_up
protected

Definition at line 78 of file MapdataArea.hh.