LeviLamina
Loading...
Searching...
No Matches
ScriptBlockBoundingBoxUtils.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class BoundingBox;
8class Vec3;
9namespace Scripting { struct ClassBinding; }
10// clang-format on
11
12namespace ScriptModuleMinecraft {
13
15public:
16 // static functions
17 // NOLINTBEGIN
18 MCAPI static ::Scripting::ClassBinding bind();
19
20 MCAPI static ::BoundingBox createValid(::Vec3 const& min, ::Vec3 max);
21
22 MCAPI static ::BoundingBox dilate(::BoundingBox const& box, ::Vec3 const& size);
23
24 MCAPI static ::BoundingBox expand(::BoundingBox const& box, ::BoundingBox const& other);
25
26 MCAPI static ::Vec3 getCenter(::BoundingBox const& box);
27
28 MCAPI static ::std::optional<::BoundingBox> getIntersection(::BoundingBox const& box, ::BoundingBox const& other);
29
30 MCAPI static ::Vec3 getSpan(::BoundingBox const& box);
31
32 MCAPI static bool intersects(::BoundingBox const& box, ::BoundingBox const& other);
33
34 MCAPI static bool isInside(::BoundingBox const& box, ::Vec3 const& pos);
35
36 MCAPI static ::BoundingBox translate(::BoundingBox const& box, ::Vec3 const& delta);
37 // NOLINTEND
38};
39
40} // namespace ScriptModuleMinecraft
Definition BoundingBox.h:13
Definition ScriptBlockBoundingBoxUtils.h:14
Definition Vec3.h:10
Definition ClassBinding.h:19