LeviLamina
Loading...
Searching...
No Matches
VoxelShape.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/container/small_vector.h"
7#include "mc/deps/voxel_shapes/JoinOperation.h"
8
9// auto generated forward declare list
10// clang-format off
11class AABB;
12class Vec3;
13namespace VoxelShapes { class Cells; }
14// clang-format on
15
16namespace VoxelShapes {
17
18class VoxelShape {
19public:
20 // member variables
21 // NOLINTBEGIN
26 // NOLINTEND
27
28public:
29 // prevent constructor by default
30 VoxelShape& operator=(VoxelShape const&);
31 VoxelShape();
32
33public:
34 // member functions
35 // NOLINTBEGIN
37
39
40 MCNAPI VoxelShape(
45 );
46
47 MCNAPI ::VoxelShapes::VoxelShape computeFaceShape(uchar face) const;
48
49 MCNAPI ::VoxelShapes::VoxelShape& operator=(::VoxelShapes::VoxelShape&&);
50
51 MCNAPI bool operator==(::VoxelShapes::VoxelShape const&) const;
52
53 MCNAPI void rotate(::Vec3 const& rotationDegrees, ::Vec3 const& rotationPivot);
54
55 MCNAPI ::std::vector<::AABB> toAabbs() const;
56
57 MCNAPI ~VoxelShape();
58 // NOLINTEND
59
60public:
61 // static functions
62 // NOLINTBEGIN
63 MCNAPI static ::VoxelShapes::VoxelShape
64 createCuboidShape(float xMin, float yMin, float zMin, float xMax, float yMax, float zMax);
65
66 MCNAPI static ::VoxelShapes::VoxelShape createEmptyShape();
67
68 MCNAPI static ::VoxelShapes::VoxelShape join(
69 ::VoxelShapes::VoxelShape const& first,
70 ::VoxelShapes::VoxelShape const& second,
71 ::VoxelShapes::JoinOperation operation
72 );
73
74 MCNAPI_C static bool joinIsNotEmpty(
75 ::VoxelShapes::VoxelShape const& first,
76 ::VoxelShapes::VoxelShape const& second,
77 ::VoxelShapes::JoinOperation operation
78 );
79
80 MCNAPI static ::VoxelShapes::VoxelShape joinUnoptimized(
81 ::VoxelShapes::VoxelShape const& first,
82 ::VoxelShapes::VoxelShape const& second,
83 ::VoxelShapes::JoinOperation operation
84 );
85
86 MCNAPI static ::VoxelShapes::VoxelShape transform(
88 ::Vec3 const& scale,
89 ::Vec3 const& scalePivot,
90 ::Vec3 const& rotation,
91 ::Vec3 const& rotationPivot,
92 ::Vec3 const& translation
93 );
94 // NOLINTEND
95
96public:
97 // static variables
98 // NOLINTBEGIN
99 MCNAPI static ::VoxelShapes::VoxelShape const& emptyShape();
100
101 MCNAPI static ::VoxelShapes::VoxelShape const& unitCubeShape();
102 // NOLINTEND
103
104public:
105 // constructor thunks
106 // NOLINTBEGIN
108
109 MCNAPI void* $ctor(::VoxelShapes::VoxelShape const&);
110
111 MCNAPI void* $ctor(
116 );
117 // NOLINTEND
118
119public:
120 // destructor thunk
121 // NOLINTBEGIN
122 MCNAPI void $dtor();
123 // NOLINTEND
124};
125
126} // namespace VoxelShapes
Definition AABB.h:18
Definition small_vector.h:8
Definition Vec3.h:10
Definition Cells.h:18
Definition VoxelShape.h:18
static MCAPI ::VoxelShapes::VoxelShape const & unitCubeShape()
MCAPI VoxelShape(::VoxelShapes::Cells cells, ::Bedrock::small_vector< float, 12 > xCoords, ::Bedrock::small_vector< float, 12 > yCoords, ::Bedrock::small_vector< float, 12 > zCoords)
MCAPI VoxelShape(::VoxelShapes::VoxelShape const &)
static MCAPI ::VoxelShapes::VoxelShape createEmptyShape()
MCAPI void * $ctor(::VoxelShapes::VoxelShape const &)
MCAPI VoxelShape(::VoxelShapes::VoxelShape &&)
MCAPI void * $ctor(::VoxelShapes::Cells cells, ::Bedrock::small_vector< float, 12 > xCoords, ::Bedrock::small_vector< float, 12 > yCoords, ::Bedrock::small_vector< float, 12 > zCoords)
MCAPI void * $ctor(::VoxelShapes::VoxelShape &&)
MCAPI void rotate(::Vec3 const &rotationDegrees, ::Vec3 const &rotationPivot)
static MCAPI ::VoxelShapes::VoxelShape const & emptyShape()
MCAPI ::std::vector<::AABB > toAabbs() const
MCAPI::VoxelShapes::VoxelShape computeFaceShape(uchar face) const
static MCAPI ::VoxelShapes::VoxelShape joinUnoptimized(::VoxelShapes::VoxelShape const &first, ::VoxelShapes::VoxelShape const &second, ::VoxelShapes::JoinOperation operation)
MCAPI::VoxelShapes::VoxelShape & operator=(::VoxelShapes::VoxelShape &&)
static MCAPI ::VoxelShapes::VoxelShape transform(::VoxelShapes::VoxelShape shape, ::Vec3 const &scale, ::Vec3 const &scalePivot, ::Vec3 const &rotation, ::Vec3 const &rotationPivot, ::Vec3 const &translation)
static MCAPI ::VoxelShapes::VoxelShape join(::VoxelShapes::VoxelShape const &first, ::VoxelShapes::VoxelShape const &second, ::VoxelShapes::JoinOperation operation)
MCAPI bool operator==(::VoxelShapes::VoxelShape const &) const
static MCAPI ::VoxelShapes::VoxelShape createCuboidShape(float xMin, float yMin, float zMin, float xMax, float yMax, float zMax)
Definition Alias.h:14