#include "VehicleDefines.h"
|
virtual void | CalculatePassengerPosition (float &x, float &y, float &z, float *o=nullptr) const =0 |
| This method transforms supplied transport offsets into global coordinates.
|
|
virtual void | CalculatePassengerOffset (float &x, float &y, float &z, float *o=nullptr) const =0 |
| This method transforms supplied global coordinates into local offsets.
|
|
|
static void | CalculatePassengerPosition (float &x, float &y, float &z, float *o, float transX, float transY, float transZ, float transO) |
|
static void | CalculatePassengerOffset (float &x, float &y, float &z, float *o, float transX, float transY, float transZ, float transO) |
|
◆ TransportBase()
TransportBase::TransportBase |
( |
| ) |
|
|
protecteddefault |
◆ ~TransportBase()
virtual TransportBase::~TransportBase |
( |
| ) |
|
|
protectedvirtualdefault |
◆ CalculatePassengerOffset() [1/2]
static void TransportBase::CalculatePassengerOffset |
( |
float & |
x, |
|
|
float & |
y, |
|
|
float & |
z, |
|
|
float * |
o, |
|
|
float |
transX, |
|
|
float |
transY, |
|
|
float |
transZ, |
|
|
float |
transO |
|
) |
| |
|
inlinestaticprotected |
155 {
156 if (o)
158
159 z -= transZ;
160 y -= transY;
161 x -= transX;
162 float inx = x, iny = y;
163 y = (iny - inx * std::tan(transO)) / (std::cos(transO) + std::sin(transO) * std::tan(transO));
164 x = (inx + iny * std::tan(transO)) / (std::cos(transO) + std::sin(transO) * std::tan(transO));
165 }
static float NormalizeOrientation(float o)
Definition Position.h:237
References Position::NormalizeOrientation().
◆ CalculatePassengerOffset() [2/2]
virtual void TransportBase::CalculatePassengerOffset |
( |
float & |
x, |
|
|
float & |
y, |
|
|
float & |
z, |
|
|
float * |
o = nullptr |
|
) |
| const |
|
pure virtual |
◆ CalculatePassengerPosition() [1/2]
static void TransportBase::CalculatePassengerPosition |
( |
float & |
x, |
|
|
float & |
y, |
|
|
float & |
z, |
|
|
float * |
o, |
|
|
float |
transX, |
|
|
float |
transY, |
|
|
float |
transZ, |
|
|
float |
transO |
|
) |
| |
|
inlinestaticprotected |
144 {
145 float inx = x, iny = y, inz = z;
146 if (o)
148
149 x = transX + inx * std::cos(transO) - iny * std::sin(transO);
150 y = transY + iny * std::cos(transO) + inx * std::sin(transO);
151 z = transZ + inz;
152 }
References Position::NormalizeOrientation().
◆ CalculatePassengerPosition() [2/2]
virtual void TransportBase::CalculatePassengerPosition |
( |
float & |
x, |
|
|
float & |
y, |
|
|
float & |
z, |
|
|
float * |
o = nullptr |
|
) |
| const |
|
pure virtual |
The documentation for this class was generated from the following file: