Class VectorPacker3Int
Vector packing helper. Packs a 3 int vector into single int value.
Inheritance
System.Object
VectorPacker3Int
Assembly: Eco.Shared.dll
Syntax
public sealed class VectorPacker3Int : ValueType
Constructors
VectorPacker3Int(Int32, Int32)
Declaration
public VectorPacker3Int(int xSize, int zSize)
Parameters
Type |
Name |
Description |
System.Int32 |
xSize |
|
System.Int32 |
zSize |
|
Fields
XSize
Declaration
public readonly int XSize
Field Value
Type |
Description |
System.Int32 |
|
ZSize
Declaration
public readonly int ZSize
Field Value
Type |
Description |
System.Int32 |
|
Properties
MaxY
Max Y which may be packed.
Declaration
Property Value
Type |
Description |
System.Int32 |
|
Methods
AddX(Int32, Int32)
Declaration
public int AddX(int packedYZX, int val)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
val |
|
Returns
Type |
Description |
System.Int32 |
|
AddY(Int32, Int32)
Declaration
public int AddY(int packedYZX, int val)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
val |
|
Returns
Type |
Description |
System.Int32 |
|
AddZ(Int32, Int32)
Declaration
public int AddZ(int packedYZX, int val)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
val |
|
Returns
Type |
Description |
System.Int32 |
|
DecrementX(Int32)
Declaration
public int DecrementX(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
DecrementY(Int32)
Declaration
public int DecrementY(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
DecrementZ(Int32)
Declaration
public int DecrementZ(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
IncrementX(Int32)
Declaration
public int IncrementX(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
IncrementY(Int32)
Declaration
public int IncrementY(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
IncrementZ(Int32)
Declaration
public int IncrementZ(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
Pack(Vector3i)
Declaration
public int Pack(Vector3i value)
Parameters
Returns
Type |
Description |
System.Int32 |
|
Pack(Int32, Int32, Int32)
Declaration
public int Pack(int x, int y, int z)
Parameters
Type |
Name |
Description |
System.Int32 |
x |
|
System.Int32 |
y |
|
System.Int32 |
z |
|
Returns
Type |
Description |
System.Int32 |
|
PackWrapped(Int32, Int32, Int32)
Packs values assuming they already wrapped. Unlike Pack(Int32, Int32, Int32) doesn't wrap X and Z to match their number space and so can exceed limits and corrupt packed value.
Declaration
public int PackWrapped(int wrappedX, int y, int wrappedZ)
Parameters
Type |
Name |
Description |
System.Int32 |
wrappedX |
|
System.Int32 |
y |
|
System.Int32 |
wrappedZ |
|
Returns
Type |
Description |
System.Int32 |
|
PackXZ(Int32, Int32)
Declaration
public int PackXZ(int x, int z)
Parameters
Type |
Name |
Description |
System.Int32 |
x |
|
System.Int32 |
z |
|
Returns
Type |
Description |
System.Int32 |
|
PackY(Int32)
Declaration
Parameters
Type |
Name |
Description |
System.Int32 |
y |
|
Returns
Type |
Description |
System.Int32 |
|
RemoveY(Int32)
Removes Y and returns packed value as if it with Y == 0.
Declaration
public int RemoveY(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
ReplaceX(Int32, Int32)
Declaration
public int ReplaceX(int packedYZX, int x)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
x |
|
Returns
Type |
Description |
System.Int32 |
|
ReplaceY(Int32, Int32)
Declaration
public int ReplaceY(int packedYZX, int y)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
y |
|
Returns
Type |
Description |
System.Int32 |
|
ReplaceZ(Int32, Int32)
Declaration
public int ReplaceZ(int packedYZX, int z)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
z |
|
Returns
Type |
Description |
System.Int32 |
|
TryAddY(Int32, Int32, out Int32)
Declaration
public bool TryAddY(int packedYZX, int val, out int newPackedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
val |
|
System.Int32 |
newPackedYZX |
|
Returns
Type |
Description |
System.Boolean |
|
TryDecrementY(Int32, out Int32)
Declaration
public bool TryDecrementY(int packedYZX, out int newPackedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
newPackedYZX |
|
Returns
Type |
Description |
System.Boolean |
|
TryIncrementY(Int32, out Int32)
Declaration
public bool TryIncrementY(int packedYZX, out int newPackedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
newPackedYZX |
|
Returns
Type |
Description |
System.Boolean |
|
TryPack(Int32, Int32, Int32, out Int32)
Declaration
public bool TryPack(int x, int y, int z, out int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
x |
|
System.Int32 |
y |
|
System.Int32 |
z |
|
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Boolean |
|
TryPackWrapped(Int32, Int32, Int32, out Int32)
Tries to pack values assuming they already wrapped, but Y may be out of bounds. Unlike TryPack(Int32, Int32, Int32, out Int32) doesn't wrap X and Z to match their number space and so can exceed limits and corrupt packed value.
Declaration
public bool TryPackWrapped(int wrappedX, int y, int wrappedZ, out int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
wrappedX |
|
System.Int32 |
y |
|
System.Int32 |
wrappedZ |
|
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Boolean |
false if Y out of bounds.
|
Unpack(Int32)
Declaration
public Vector3i Unpack(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Unpack(Int32, out Int32, out Int32, out Int32)
Declaration
public void Unpack(int packedYZX, out int x, out int y, out int z)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
System.Int32 |
x |
|
System.Int32 |
y |
|
System.Int32 |
z |
|
UnpackX(Int32)
Declaration
public int UnpackX(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
UnpackY(Int32)
Declaration
public int UnpackY(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
UnpackZ(Int32)
Declaration
public int UnpackZ(int packedYZX)
Parameters
Type |
Name |
Description |
System.Int32 |
packedYZX |
|
Returns
Type |
Description |
System.Int32 |
|
XZRange(Int32)
Returns range of packed values for specified y
.
Declaration
public IntRange XZRange(int y = 0)
Parameters
Type |
Name |
Description |
System.Int32 |
y |
|
Returns
Extension Methods