MutableRoundedRectangle

Represents a mutable transformable rounded rectangle in a two-dimensional Euclidean space.

Constructors

Link copied to clipboard
constructor(center: Vector2F, orientation: ComplexF, width: Float, height: Float, cornerRadius: Float)

Creates a new instance of MutableRoundedRectangle.

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
open override val area: Float

Returns the area of this shape.

Link copied to clipboard
open override val center: Vector2F

Returns the center of this rounded rectangle.

Link copied to clipboard
open override val cornerCenterA: Vector2F

Returns the corner center A of this rounded rectangle.

Link copied to clipboard
open override val cornerCenterB: Vector2F

Returns the corner center B of this rounded rectangle.

Link copied to clipboard
open override val cornerCenterC: Vector2F

Returns the corner center C of this rounded rectangle.

Link copied to clipboard
open override val cornerCenterD: Vector2F

Returns the corner center D of this rounded rectangle.

Link copied to clipboard
open override val cornerRadius: Float

Returns the corner radius of this rounded rectangle.

Link copied to clipboard
open override val height: Float

Returns the height of this rounded rectangle.

Link copied to clipboard
open override val orientation: ComplexF

Returns the orientation of this object in reference to the origin of ComplexF.ONE.

Link copied to clipboard
open override val perimeter: Float

Returns the perimeter of this shape.

Link copied to clipboard
open override val pointA: Vector2F

Returns the point A of this rounded rectangle.

Link copied to clipboard
open override val pointB: Vector2F

Returns the point B of this rounded rectangle.

Link copied to clipboard
open override val pointC: Vector2F

Returns the point C of this rounded rectangle.

Link copied to clipboard
open override val pointD: Vector2F

Returns the point D of this rounded rectangle.

Link copied to clipboard
open override val pointE: Vector2F

Returns the point E of this rounded rectangle.

Link copied to clipboard
open override val pointF: Vector2F

Returns the point F of this rounded rectangle.

Link copied to clipboard
open override val pointG: Vector2F

Returns the point G of this rounded rectangle.

Link copied to clipboard
open override val pointH: Vector2F

Returns the point H of this rounded rectangle.

Link copied to clipboard
open override val position: Vector2F

Returns the position of this object in reference to the origin of Vector2F.ZERO.

Link copied to clipboard
open override val width: Float

Returns the width of this rounded rectangle.

Functions

Link copied to clipboard
fun calibrate()

Calibrates the properties of this instance. If the orientation cannot be normalized, it will take the value of ONE.

Link copied to clipboard
open override fun closestPointTo(point: Vector2F): Vector2F

Returns the closest point on this rounded rectangle to the given point.

Link copied to clipboard
open operator override fun component1(): Vector2F

Returns the center of this rounded rectangle.

Link copied to clipboard
open operator override fun component2(): ComplexF

Returns the orientation of this rounded rectangle.

Link copied to clipboard
open operator override fun component3(): Float

Returns the width of this rounded rectangle.

Link copied to clipboard
open operator override fun component4(): Float

Returns the height of this rounded rectangle.

Link copied to clipboard
open operator override fun component5(): Float

Returns the cornerRadius of this rounded rectangle.

Link copied to clipboard
open operator override fun contains(point: Vector2F): Boolean

Returns true if this rounded rectangle contains the given point.

Link copied to clipboard
open override fun copy(center: Vector2F, orientation: ComplexF, width: Float, height: Float, cornerRadius: Float): MutableRoundedRectangle

Returns a copy of this instance with specified properties changed.

Link copied to clipboard

Creates an iterator over the corner centers of this rounded rectangle.

Link copied to clipboard
open override fun dilateBy(point: Vector2F, factor: Float)

Dilates this object around the point by a factor.

Link copied to clipboard
open override fun dilatedBy(point: Vector2F, factor: Float): MutableRoundedRectangle

Returns a copy of this object that is dilated around the point by a factor.

Link copied to clipboard

Indicates whether the other MutableRoundedRectangle is equal to this one.

open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard

Sets this rounded rectangle with the result of interpolation from one rounded rectangle to another rounded rectangle by a factor.

Link copied to clipboard

Returns a copy of this rounded rectangle interpolated to other rounded rectangle by a factor.

Link copied to clipboard
open override fun intersects(ray: Ray): Boolean

Returns true if this rounded rectangle intersects the given ray.

Link copied to clipboard
open override fun moveBy(displacement: Vector2F)

Moves this object by a displacement.

Link copied to clipboard
open override fun movedBy(displacement: Vector2F): MutableRoundedRectangle

Returns a copy of this object that is moved by a displacement.

Link copied to clipboard
open override fun movedTo(position: Vector2F): MutableRoundedRectangle

Returns a copy of this object that is moved to the position.

Link copied to clipboard
open override fun moveTo(position: Vector2F)

Moves this object to the position.

Link copied to clipboard
open override fun pointIterator(): Vector2FIterator

Creates an iterator over the points of this rounded rectangle.

Link copied to clipboard
open override fun rotateAroundPointBy(point: Vector2F, rotation: AngleF)
open override fun rotateAroundPointBy(point: Vector2F, rotation: ComplexF)

Rotates this object around the point by a rotation.

Link copied to clipboard
open override fun rotateAroundPointTo(point: Vector2F, orientation: AngleF)
open override fun rotateAroundPointTo(point: Vector2F, orientation: ComplexF)

Rotates this object around the point to the orientation.

Link copied to clipboard
open override fun rotateBy(rotation: AngleF)
open override fun rotateBy(rotation: ComplexF)

Rotates this object by a rotation.

Link copied to clipboard
open override fun rotatedAroundPointBy(point: Vector2F, rotation: AngleF): MutableRoundedRectangle
open override fun rotatedAroundPointBy(point: Vector2F, rotation: ComplexF): MutableRoundedRectangle

Returns a copy of this object that is rotated around the point by a rotation.

Link copied to clipboard
open override fun rotatedAroundPointTo(point: Vector2F, orientation: AngleF): MutableRoundedRectangle
open override fun rotatedAroundPointTo(point: Vector2F, orientation: ComplexF): MutableRoundedRectangle

Returns a copy of this object that is rotated around the point to the orientation.

Link copied to clipboard
open override fun rotatedBy(rotation: AngleF): MutableRoundedRectangle
open override fun rotatedBy(rotation: ComplexF): MutableRoundedRectangle

Returns a copy of this object that is rotated by a rotation.

Link copied to clipboard
open override fun rotatedTo(orientation: AngleF): MutableRoundedRectangle
open override fun rotatedTo(orientation: ComplexF): MutableRoundedRectangle

Returns a copy of this object that is rotated to the orientation.

Link copied to clipboard
open override fun rotateTo(orientation: AngleF)
open override fun rotateTo(orientation: ComplexF)

Rotates this object to the orientation.

Link copied to clipboard
open override fun scaleBy(factor: Float)

Scales this object by a factor.

Link copied to clipboard
open override fun scaledBy(factor: Float): MutableRoundedRectangle

Returns a copy of this object that is scaled by a factor.

Link copied to clipboard
fun set(center: Vector2F = this.center, orientation: ComplexF = this.orientation, width: Float = this.width, height: Float = this.height, cornerRadius: Float = this.cornerRadius)

Sets the specified properties of this instance.

Link copied to clipboard
open override fun toString(): String
Link copied to clipboard
open override fun transformBy(displacement: Vector2F, rotation: AngleF)
open override fun transformBy(displacement: Vector2F, rotation: ComplexF)

Transforms this object by moving by a displacement and rotating by a rotation.

open override fun transformBy(displacement: Vector2F, rotation: AngleF, scaleFactor: Float)
open override fun transformBy(displacement: Vector2F, rotation: ComplexF, scaleFactor: Float)

Transforms this object by moving by a displacement, rotating by a rotation, and scaling by a scaleFactor.

Link copied to clipboard
open override fun transformedBy(displacement: Vector2F, rotation: AngleF): MutableRoundedRectangle
open override fun transformedBy(displacement: Vector2F, rotation: ComplexF): MutableRoundedRectangle

Returns a copy of this object that is moved by a displacement and rotated by a rotation.

open override fun transformedBy(displacement: Vector2F, rotation: AngleF, scaleFactor: Float): MutableRoundedRectangle
open override fun transformedBy(displacement: Vector2F, rotation: ComplexF, scaleFactor: Float): MutableRoundedRectangle

Returns a copy of this object that is moved by a displacement, rotated by a rotation, and scaled by a scaleFactor.

Link copied to clipboard
open override fun transformedTo(position: Vector2F, orientation: AngleF): MutableRoundedRectangle
open override fun transformedTo(position: Vector2F, orientation: ComplexF): MutableRoundedRectangle

Returns a copy of this object that is moved to the position and rotated to the orientation.

Link copied to clipboard
open override fun transformTo(position: Vector2F, orientation: AngleF)
open override fun transformTo(position: Vector2F, orientation: ComplexF)

Transforms this object by moving to the position and rotating to the orientation.