ProjectionTransform

Represents a 3D transform similar to an AffineTransform, but it does not guarantee the preservation of parallel lines. These transforms are used whenever a perspective projection is needed to properly render an item.

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard

true if this transform is equal to the Identity transform

Link copied to clipboard

Functions

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

Transforms the given polygon. Note that the resulting polygon is a 2D projection of the transformed points. That is because this transform may map the 2D points of polygon into a set of 3d points.

inline operator fun invoke(point: Point): Vector3D
operator fun invoke(point: Vector3D): Vector3D

operator fun invoke(vararg points: Point): List<Vector3D>
operator fun invoke(vararg points: Vector3D): List<Vector3D>
@JvmName(name = "callPoint")
fun invoke(points: List<Point>): List<Vector3D>
fun invoke(points: List<Vector3D>): List<Vector3D>

Transforms the given points.

Link copied to clipboard
open operator fun times(other: AffineTransform): ProjectionTransform
open operator fun times(other: ProjectionTransform): ProjectionTransform

Allows transforms to be combined sequentially.

Link copied to clipboard
open override fun toString(): String