Module technology.sola.engine
Record Class ColliderShapeTriangle
java.lang.Object
java.lang.Record
technology.sola.engine.physics.component.collider.ColliderShapeTriangle
- Record Components:
shape
- the triangle shape of this collider
- All Implemented Interfaces:
ColliderShape<Triangle>
@NullMarked
public record ColliderShapeTriangle(Triangle shape)
extends Record
implements ColliderShape<Triangle>
ColliderShapeTriangle is a
ColliderShape
implementation for a triangle which utilize a
Triangle
for its geometric shape representation.-
Constructor Summary
ConstructorsConstructorDescriptionCreates a "unit triangle" collider shape with uniform side lengths of 1.ColliderShapeTriangle
(Triangle shape) Creates an instance of aColliderShapeTriangle
record class. -
Method Summary
Modifier and TypeMethodDescriptionvoid
debugRender
(Renderer renderer, TransformComponent transformComponent, float offsetX, float offsetY) Renders debug information for the collider shape.final boolean
Indicates whether some other object is "equal to" this one.getBoundingBox
(TransformComponent transformComponent, float offsetX, float offsetY) Returns the bounding box for thisColliderShape
.getShape
(TransformComponent transformComponent, float offsetX, float offsetY) Gets the geometricShape
for this collider shape.final int
hashCode()
Returns a hash code value for this object.shape()
Returns the value of theshape
record component.final String
toString()
Returns a string representation of this record class.type()
Gets theColliderType
of this collider.
-
Constructor Details
-
ColliderShapeTriangle
public ColliderShapeTriangle()Creates a "unit triangle" collider shape with uniform side lengths of 1. -
ColliderShapeTriangle
Creates an instance of aColliderShapeTriangle
record class.- Parameters:
shape
- the value for theshape
record component
-
-
Method Details
-
type
Description copied from interface:ColliderShape
Gets theColliderType
of this collider.- Specified by:
type
in interfaceColliderShape<Triangle>
- Returns:
- the
ColliderType
of this collider
-
getBoundingBox
public Rectangle getBoundingBox(TransformComponent transformComponent, float offsetX, float offsetY) Description copied from interface:ColliderShape
Returns the bounding box for thisColliderShape
.- Specified by:
getBoundingBox
in interfaceColliderShape<Triangle>
- Parameters:
transformComponent
- theTransformComponent
of the entityoffsetX
- the x offset of the collideroffsetY
- the y offset of the collider- Returns:
- the bounding box
-
getShape
Description copied from interface:ColliderShape
Gets the geometricShape
for this collider shape.- Specified by:
getShape
in interfaceColliderShape<Triangle>
- Parameters:
transformComponent
- theTransformComponent
for theEntity
offsetX
- the x offset off the collideroffsetY
- the y offset of the collider- Returns:
- the geometric
Shape
-
debugRender
public void debugRender(Renderer renderer, TransformComponent transformComponent, float offsetX, float offsetY) Description copied from interface:ColliderShape
Renders debug information for the collider shape.- Specified by:
debugRender
in interfaceColliderShape<Triangle>
- Parameters:
renderer
- theRenderer
transformComponent
- theEntity
'sTransformComponent
offsetX
- the collider shape x-axis offsetoffsetY
- the collider shape y-axis offset
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object)
. -
shape
Returns the value of theshape
record component.- Returns:
- the value of the
shape
record component
-