Class OccupancyInfo
Contains information about the space that a world object occupies, in the form of a list of block occupancies, that in itself contain information about
the position relative to the world objects position, blocktype and occupancy type.
More detailed information can be found here: https://github.com/StrangeLoopGames/Eco/wiki/Occupancy-System.
Inheritance
System.Object
OccupancyInfo
Assembly: Eco.Gameplay.dll
Syntax
public class OccupancyInfo : Object
Constructors
OccupancyInfo()
Declaration
Fields
Occupancies
Declaration
public List<BlockOccupancy> Occupancies
Field Value
Range
Declaration
Field Value
Properties
CenterOffset
Declaration
public Vector3 CenterOffset { get; }
Property Value
Type |
Description |
System.Numerics.Vector3 |
|
Dimensions
Declaration
public Vector3i Dimensions { get; }
Property Value
Methods
Contains(Vector3i, Quaternion, Vector3, Vector3i)
Checks if object at origin
position rotated by rotation
and with range extended by extraExtents
contains position
.
Declaration
public bool Contains(Vector3i origin, Quaternion rotation, Vector3 position, Vector3i extraExtents = null)
Parameters
Returns
Type |
Description |
System.Boolean |
|
Create(List<BlockOccupancy>)
Declaration
public static OccupancyInfo Create(List<BlockOccupancy> blocks)
Parameters
Type |
Name |
Description |
System.Collections.Generic.List<BlockOccupancy> |
blocks |
|
Returns
GetBlockPositions(Vector3i, Quaternion)
Returns enumerable of occupancy blocks in world space for specified position
and rotation
.
Declaration
public IEnumerable<WrappedWorldPosition3i> GetBlockPositions(Vector3i position, Quaternion rotation)
Parameters
Returns
GetRange(Vector3i, Quaternion)
Returns WorldRange at origin
position and with specified rotation
. The range is exclusive.
Declaration
public WorldRange GetRange(Vector3i origin, Quaternion rotation)
Parameters
Returns
Extension Methods