LeviLamina
Loading...
Searching...
No Matches
Vec3.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Vec2;
8// clang-format on
9
10class Vec3 : public ll::math::floatN3<Vec3> {
11public:
12 using floatN3::floatN3;
13
14public:
15 // member functions
16 // NOLINTBEGIN
17 MCAPI ::std::string toString() const;
18 // NOLINTEND
19
20public:
21 // static functions
22 // NOLINTBEGIN
23 MCAPI static ::Vec3 directionFromRotation(::Vec2 const& rot);
24
25 MCAPI static ::Vec3 directionFromRotation(float rotX, float rotY);
26
27#ifdef LL_PLAT_C
28 MCAPI static ::std::optional<::Vec3> getIntersection(
29 ::Vec3 const& lineOrigin,
30 ::Vec3 const& lineDirectionUnit,
31 ::Vec3 const& pointOnPlane,
32 ::Vec3 const& planeNormal,
33 bool allowBehind
34 );
35#endif
36 // NOLINTEND
37
38public:
39 // static variables
40 // NOLINTBEGIN
41#ifdef LL_PLAT_C
42 MCAPI static ::Vec3 const& HALF();
43#endif
44
45 MCAPI static ::Vec3 const& MAX();
46
47 MCAPI static ::Vec3 const& MIN();
48
49#ifdef LL_PLAT_C
50 MCAPI static ::Vec3 const& NEG_UNIT_X();
51#endif
52
53 MCAPI static ::Vec3 const& NEG_UNIT_Y();
54
55#ifdef LL_PLAT_C
56 MCAPI static ::Vec3 const& NEG_UNIT_Z();
57#endif
58
59 MCAPI static ::Vec3 const& ONE();
60
61 MCAPI static ::Vec3 const& UNIT_X();
62
63 MCAPI static ::Vec3 const& UNIT_Y();
64
65 MCAPI static ::Vec3 const& UNIT_Z();
66
67 MCAPI static ::Vec3 const& ZERO();
68 // NOLINTEND
69};
Definition Vec2.h:5
Definition Vec3.h:10