Photon Quantum 3.0.0

Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Properties | List of all members
Photon.Deterministic.FPBounds2 Struct Reference

Represents an 2D axis aligned bounding box (AABB). More...

Public Member Functions

 FPBounds2 (FPVector2 center, FPVector2 extents)
 Create a new Bounds with the given center and extents. More...
 
void Encapsulate (FPBounds2 bounds)
 Expand bounds to contain bounds (if needed). More...
 
void Encapsulate (FPVector2 point)
 Expand bounds to contain point (if needed). More...
 
void Expand (FP amount)
 Expand bounds by 0.5 * amount in both directions. More...
 
void Expand (FPVector2 amount)
 Expand bounds by 0.5 * amount in both directions. More...
 
override int GetHashCode ()
 Computes the hash code of the FPBounds2 instance. More...
 
bool Intersects (FPBounds2 bounds)
 Returns true if there is an intersection between bounds. More...
 
void SetMinMax (FPVector2 min, FPVector2 max)
 Set the bounds to the given min and max points. More...
 

Static Public Member Functions

static unsafe void Serialize (void *ptr, IDeterministicFrameSerializer serializer)
 Serializes the FPBounds2 struct by serializing its FPVector2 fields. More...
 

Public Attributes

FPVector2 Center
 Center of the bounding box. More...
 
FPVector2 Extents
 Extents of the bounding box (half of the size). More...
 

Static Public Attributes

const int SIZE = FPVector2.SIZE * 2
 The size of the struct in-memory inside the Frame data-buffers or stack (when passed as value parameter). Not related to the snapshot payload this occupies, which is bit-packed and compressed. More...
 

Properties

FPVector2 Max [get, set]
 Gets or sets the maximal point of the box. This is always equal to Center + Extents. Setting this property will not affect Min. More...
 
FPVector2 Min [get, set]
 Gets or sets the minimal point of the box. This is always equal to Center - Extents. Setting this property will not affect Max. More...
 

Detailed Description

Represents an 2D axis aligned bounding box (AABB).

Constructor & Destructor Documentation

◆ FPBounds2()

Photon.Deterministic.FPBounds2.FPBounds2 ( FPVector2  center,
FPVector2  extents 
)
inline

Create a new Bounds with the given center and extents.

Parameters
centerCenter point.
extentsExtents (half the size).

Member Function Documentation

◆ Expand() [1/2]

void Photon.Deterministic.FPBounds2.Expand ( FP  amount)
inline

Expand bounds by 0.5 * amount in both directions.

Parameters
amount

◆ Expand() [2/2]

void Photon.Deterministic.FPBounds2.Expand ( FPVector2  amount)
inline

Expand bounds by 0.5 * amount in both directions.

Parameters
amount

◆ SetMinMax()

void Photon.Deterministic.FPBounds2.SetMinMax ( FPVector2  min,
FPVector2  max 
)
inline

Set the bounds to the given min and max points.

Parameters
minMinimum position.
maxMaximum position.

◆ Encapsulate() [1/2]

void Photon.Deterministic.FPBounds2.Encapsulate ( FPVector2  point)
inline

Expand bounds to contain point (if needed).

Parameters
point

◆ Encapsulate() [2/2]

void Photon.Deterministic.FPBounds2.Encapsulate ( FPBounds2  bounds)
inline

Expand bounds to contain bounds (if needed).

Parameters
bounds

◆ Intersects()

bool Photon.Deterministic.FPBounds2.Intersects ( FPBounds2  bounds)
inline

Returns true if there is an intersection between bounds.

Parameters
bounds
Returns

◆ Serialize()

static unsafe void Photon.Deterministic.FPBounds2.Serialize ( void *  ptr,
IDeterministicFrameSerializer  serializer 
)
inlinestatic

Serializes the FPBounds2 struct by serializing its FPVector2 fields.

Parameters
ptrA pointer to the FPBounds2 struct to be serialized.
serializerThe serializer object used to serialize the components.

◆ GetHashCode()

override int Photon.Deterministic.FPBounds2.GetHashCode ( )
inline

Computes the hash code of the FPBounds2 instance.

Returns
The hash code of the FPBounds2 object.

Member Data Documentation

◆ SIZE

const int Photon.Deterministic.FPBounds2.SIZE = FPVector2.SIZE * 2
static

The size of the struct in-memory inside the Frame data-buffers or stack (when passed as value parameter). Not related to the snapshot payload this occupies, which is bit-packed and compressed.

◆ Center

FPVector2 Photon.Deterministic.FPBounds2.Center

Center of the bounding box.

◆ Extents

FPVector2 Photon.Deterministic.FPBounds2.Extents

Extents of the bounding box (half of the size).

Property Documentation

◆ Max

FPVector2 Photon.Deterministic.FPBounds2.Max
getset

Gets or sets the maximal point of the box. This is always equal to Center + Extents. Setting this property will not affect Min.

◆ Min

FPVector2 Photon.Deterministic.FPBounds2.Min
getset

Gets or sets the minimal point of the box. This is always equal to Center - Extents. Setting this property will not affect Max.