public abstract class VoxelShape
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected VoxelShapePart |
part |
private VoxelShape[] |
projectionCache |
Constructor and Description |
---|
VoxelShape(VoxelShapePart part) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
contains(double x,
double y,
double z) |
private VoxelShape |
doProject(Direction side) |
void |
forEachBox(VoxelShapes.ILineConsumer action) |
void |
forEachEdge(VoxelShapes.ILineConsumer action) |
protected double |
getAllowedOffset(AxisRotation movementAxis,
AxisAlignedBB collisionBox,
double desiredOffset) |
double |
getAllowedOffset(Direction.Axis movementAxis,
AxisAlignedBB collisionBox,
double desiredOffset) |
AxisAlignedBB |
getBoundingBox() |
protected int |
getClosestIndex(Direction.Axis axis,
double position) |
double |
getEnd(Direction.Axis axis) |
double |
getStart(Direction.Axis axis) |
protected abstract it.unimi.dsi.fastutil.doubles.DoubleList |
getValues(Direction.Axis axis) |
protected double |
getValueUnchecked(Direction.Axis axis,
int index) |
boolean |
isEmpty() |
double |
max(Direction.Axis p_197760_1_,
double p_197760_2_,
double p_197760_4_) |
double |
min(Direction.Axis axis,
double p_197764_2_,
double p_197764_4_) |
VoxelShape |
project(Direction side) |
BlockRayTraceResult |
rayTrace(Vec3d p_212433_1_,
Vec3d p_212433_2_,
BlockPos p_212433_3_) |
VoxelShape |
simplify() |
java.util.List<AxisAlignedBB> |
toBoundingBoxList() |
java.lang.String |
toString() |
VoxelShape |
withOffset(double xOffset,
double yOffset,
double zOffset) |
protected final VoxelShapePart part
@Nullable private VoxelShape[] projectionCache
VoxelShape(VoxelShapePart part)
public double getStart(Direction.Axis axis)
public double getEnd(Direction.Axis axis)
public AxisAlignedBB getBoundingBox()
protected double getValueUnchecked(Direction.Axis axis, int index)
protected abstract it.unimi.dsi.fastutil.doubles.DoubleList getValues(Direction.Axis axis)
public boolean isEmpty()
public VoxelShape withOffset(double xOffset, double yOffset, double zOffset)
public VoxelShape simplify()
public void forEachEdge(VoxelShapes.ILineConsumer action)
public void forEachBox(VoxelShapes.ILineConsumer action)
public java.util.List<AxisAlignedBB> toBoundingBoxList()
public double min(Direction.Axis axis, double p_197764_2_, double p_197764_4_)
public double max(Direction.Axis p_197760_1_, double p_197760_2_, double p_197760_4_)
protected int getClosestIndex(Direction.Axis axis, double position)
protected boolean contains(double x, double y, double z)
@Nullable public BlockRayTraceResult rayTrace(Vec3d p_212433_1_, Vec3d p_212433_2_, BlockPos p_212433_3_)
public VoxelShape project(Direction side)
private VoxelShape doProject(Direction side)
public double getAllowedOffset(Direction.Axis movementAxis, AxisAlignedBB collisionBox, double desiredOffset)
protected double getAllowedOffset(AxisRotation movementAxis, AxisAlignedBB collisionBox, double desiredOffset)
public java.lang.String toString()
toString
in class java.lang.Object