23#include <G3D/g3dmath.h>
72 double sinVal = std::sin(rotation);
73 double cosVal = std::cos(rotation);
78 float rotX = float(center.
GetPositionX() + BoxDistX * cosVal - BoxDistY*sinVal);
79 float rotY = float(center.
GetPositionY() + BoxDistY * cosVal + BoxDistX*sinVal);
85 if ((std::fabs(dx) > xradius) ||
86 (std::fabs(dy) > yradius) ||
87 (std::fabs(dz) > zradius))
96 return IsInDist2d(center, radius) && std::abs(verticalDelta) <= height;
110 if (angle >
float(
M_PI))
111 angle -= 2.0f * float(
M_PI);
113 float lborder = -1 * (arc / border);
114 float rborder = (arc / border);
115 return ((angle >= lborder) && (angle <= rborder));
130 std::stringstream sstr;
142 mod = std::fmod(mod, 2.0f *
static_cast<float>(
M_PI));
143 mod = -mod + 2.0f *
static_cast<float>(
M_PI);
146 return std::fmod(o, 2.0f *
static_cast<float>(
M_PI));
192 buf >> x >> y >> z >> o;
205 std::stringstream sstr;
DB2Storage< MapEntry > sMapStore("Map.db2", &MapLoadInfo::Instance)
ByteBuffer & operator>>(ByteBuffer &buf, Position::Streamer< Position::XY > const &streamer)
ByteBuffer & operator<<(ByteBuffer &buf, Position::ConstStreamer< Position::XY > const &streamer)
void appendPackXYZ(float x, float y, float z)
std::string GetDebugInfo() const
bool IsValidMapCoord(float c)
constexpr void SetOrientation(float orientation)
constexpr float GetPositionX() const
constexpr float GetPositionY() const
float GetExactDist2d(const float x, const float y) const
float GetRelativeAngle(float x, float y) const
constexpr bool IsInDist2d(float x, float y, float dist) const
std::string ToString() const
static float NormalizeOrientation(float o)
Position GetPositionWithOffset(Position const &offset) const
bool HasInLine(Position const *pos, float objSize, float width) const
bool HasInArc(float arcangle, Position const *pos, float border=2.0f) const
bool IsPositionValid() const
bool IsWithinDoubleVerticalCylinder(Position const *center, float radius, float height) const
bool IsWithinBox(Position const ¢er, float xradius, float yradius, float zradius) const
bool operator==(Position const &a) const
constexpr void Relocate(float x, float y)
void GetPositionOffsetTo(Position const &endPos, Position &retOffset) const
void RelocateOffset(Position const &offset)
constexpr float GetOrientation() const
constexpr float GetPositionZ() const