One Logo Pool Ball
Spatial · IOS API REFERENCE

ProjectiveTransform3D

struct · iOS 16.0+ · SDK 27.1

struct ProjectiveTransform3D

Members (56)

method · iOS 16.0+

concatenating

TypeScript
concatenating(t2: ProjectiveTransform3D): ProjectiveTransform3D
Swift declaration
func concatenating(_ t2: ProjectiveTransform3D) -> ProjectiveTransform3D
method · iOS 16.0+

is3DProjection

TypeScript
is3DProjection(): boolean
Swift declaration
func is3DProjection() -> Bool
get · iOS 16.0+

isAffine

TypeScript
get isAffine(): boolean
Swift declaration
var isAffine: Bool { get }
get · iOS 16.0+

isIdentity

TypeScript
get isIdentity(): boolean
Swift declaration
var isIdentity: Bool { get }
get · iOS 16.0+

isInvertible

TypeScript
get isInvertible(): boolean
Swift declaration
var isInvertible: Bool { get }
get · iOS 16.0+

isRectilinear

TypeScript
get isRectilinear(): boolean
Swift declaration
var isRectilinear: Bool { get }
get · iOS 16.0+

isTranslation

TypeScript
get isTranslation(): boolean
Swift declaration
var isTranslation: Bool { get }
get · iOS 16.0+

isUniform

TypeScript
get isUniform(): boolean
Swift declaration
var isUniform: Bool { get }
init · iOS 16.0+

init

TypeScript
static initLeftTangentRightTangentTopTangentBottomTangentNearZFarZReverseZ(leftTangent: number, rightTangent: number, topTangent: number, bottomTangent: number, nearZ: number, farZ: number, reverseZ: boolean): ProjectiveTransform3D
Swift declaration
init(leftTangent: Double, rightTangent: Double, topTangent: Double, bottomTangent: Double, nearZ: Double, farZ: Double, reverseZ: Bool)
init · iOS 16.0+

init

TypeScript
static initRotation(rotation: Rotation3D): ProjectiveTransform3D
Swift declaration
init(rotation: Rotation3D)
init · iOS 16.0+

init

TypeScript
static initScale(scale: Size3D): ProjectiveTransform3D
Swift declaration
init(scale: Size3D)
init · iOS 16.0+

init

TypeScript
static initTranslation(offset: Vector3D): ProjectiveTransform3D
Swift declaration
init(translation offset: Vector3D)
init · iOS 16.0+

init

TypeScript
static init(matrix: SDKHandle): ProjectiveTransform3D
Swift declaration
init(_ matrix: simd_double4x4)
init · iOS 16.0+

init

TypeScript
static init30089(transform: AffineTransform3D): ProjectiveTransform3D
Swift declaration
init(_ transform: AffineTransform3D)
init · iOS 18.0+

init

TypeScript
static initFovYAspectRatioNearZFarZ(fovY: Angle2D, aspectRatio: number, nearZ: number, farZ: number): ProjectiveTransform3D
Swift declaration
init(fovY: Angle2D, aspectRatio: Double, nearZ: Double, farZ: Double)
init · iOS 18.0+

init

TypeScript
static initFovYAspectRatioNearZFarZReverseZ(fovY: Angle2D, aspectRatio: number, nearZ: number, farZ: number, reverseZ: boolean): ProjectiveTransform3D
Swift declaration
init(fovY: Angle2D, aspectRatio: Double, nearZ: Double, farZ: Double, reverseZ: Bool)
init · iOS 16.0+ · Deprecated in iOS 18.0

init

TypeScript
static initFovyRadiansAspectRatioNearZFarZ(fovyRadians: number, aspectRatio: number, nearZ: number, farZ: number): ProjectiveTransform3D
Swift declaration
init(fovyRadians: Double, aspectRatio: Double, nearZ: Double, farZ: Double)
init · iOS 16.0+ · Deprecated in iOS 18.0

init

TypeScript
static initFovyRadiansAspectRatioNearZFarZReverseZ(fovyRadians: number, aspectRatio: number, nearZ: number, farZ: number, reverseZ: boolean): ProjectiveTransform3D
Swift declaration
init(fovyRadians: Double, aspectRatio: Double, nearZ: Double, farZ: Double, reverseZ: Bool)
method · iOS 16.0+

rotated

TypeScript
rotatedBy(rotation: Rotation3D): ProjectiveTransform3D
Swift declaration
func rotated(by rotation: Rotation3D) -> ProjectiveTransform3D
method · iOS 16.0+

rotated

TypeScript
rotatedBy1264(quaternion: SDKHandle): ProjectiveTransform3D
Swift declaration
func rotated(by quaternion: simd_quatd) -> ProjectiveTransform3D
method · iOS 16.0+

scaled

TypeScript
scaled(scale: Size3D): ProjectiveTransform3D
Swift declaration
func scaled(by scale: Size3D) -> ProjectiveTransform3D
method · iOS 16.0+

uniformlyScaled

TypeScript
uniformlyScaled(scale: number): ProjectiveTransform3D
Swift declaration
func uniformlyScaled(by scale: Double) -> ProjectiveTransform3D
method · iOS 16.0+

translated

TypeScript
translatedBy(offset: Vector3D): ProjectiveTransform3D
Swift declaration
func translated(by offset: Vector3D) -> ProjectiveTransform3D
get · iOS 16.0+

matrix

TypeScript
get matrix(): SDKHandle
Swift declaration
var matrix: simd_double4x4
set · iOS 16.0+

matrix

TypeScript
set matrix(value: SDKHandle)
Swift declaration
var matrix: simd_double4x4
get · iOS 16.0+

identity

TypeScript
static get identity(): ProjectiveTransform3D
Swift declaration
static let identity: ProjectiveTransform3D
init · iOS 16.0+

init

TypeScript
static initMatrix(matrix: SDKHandle): ProjectiveTransform3D
Swift declaration
init(matrix: simd_double4x4)
init · iOS 18.0+

init

TypeScript
static initScaledPose(scaledPose: ScaledPose3D): ProjectiveTransform3D
Swift declaration
init(scaledPose: ScaledPose3D)
method · iOS 16.0+

translated

TypeScript
translatedBy86539(size: Size3D): ProjectiveTransform3D
Swift declaration
func translated(by size: Size3D) -> ProjectiveTransform3D

Returns the entity translated by the specified size. - Parameter size: The size structure that defines that translation.

get · iOS 16.0+

description

TypeScript
get description(): string
Swift declaration
var description: String { get }

A textual representation of this instance. Calling this property directly is discouraged. Instead, convert an instance of any type to a string by using the `String(describing:)` initializer. This initializer works with any type, and uses the custom `description` property for types that conform to `CustomStringConvertible`: struct Point: CustomStringConvertible { let x: Int, y: Int var description: String { return "(\(x), \(y))" } } let p = Point(x: 21, y: 30) let s = String(describing: p) print(s) // Prints "(21, 30)" The conversion of `p` to a string in the assignment to `s` uses the `Point` type's `description` property.

init · iOS 16.0+

init

TypeScript
static initTranslation37038(translation: Size3D): ProjectiveTransform3D
Swift declaration
init(translation: Size3D)
get · iOS 16.0+

translation

TypeScript
get translation(): Vector3D
Swift declaration
var translation: Vector3D { get set }

The translation component

set · iOS 16.0+

translation

TypeScript
set translation(value: Vector3D)
Swift declaration
var translation: Vector3D { get set }

The translation component

get · iOS 18.0+

customMirror

TypeScript
get customMirror(): SDKHandle
Swift declaration
var customMirror: Mirror { get }

The custom mirror for this instance.

get · iOS 17.0+

scaleComponent

TypeScript
get scaleComponent(): Size3D
Swift declaration
var scaleComponent: Size3D { get }

The projective transform's scale component. This function computes the scale from the first three rows of the transform matrix and ignores the fourth row.

method · iOS 16.0+

isApproximatelyEqual

TypeScript
isApproximatelyEqual(other: ProjectiveTransform3D, tolerance?: number): boolean
Swift declaration
func isApproximatelyEqual(to other: ProjectiveTransform3D, tolerance: Double = sqrt(.ulpOfOne)) -> Bool

Returns a Boolean value that indicates whether two transforms are equal within a specified tolerance. - Parameter transform: The second transform. - Parameter tolerance: The tolerance of the comparison.

method · iOS 16.0+

flip

TypeScript
flip(axis: Axis3D): void
Swift declaration
mutating func flip(along axis: Axis3D)

Flips the transform along the specified axis. - Parameter axis: The axis of the flip operation.

init · iOS 16.0+

init

TypeScript
static initPose(pose: Pose3D): ProjectiveTransform3D
Swift declaration
init(pose: Pose3D)

Returns a new transform from the specified pose. - Parameter pose: The source pose

init · iOS 16.0+

init

TypeScript
static initScaleRotationTranslation(scale: Size3D, rotation: Rotation3D, translation: Size3D): ProjectiveTransform3D
Swift declaration
init(scale: Size3D = Size3D(width: 1.0, height: 1, depth: 1), rotation: Rotation3D = .zero, translation: Size3D)

Returns a new scale, rotate, translate transform. - Parameter scale: The scale. - Parameter rotation: The rotation. - Parameter translation: The translation.

init · iOS 16.0+

init

TypeScript
static initScaleRotationTranslation71410(scale?: Size3D, rotation?: Rotation3D, translation?: Vector3D): ProjectiveTransform3D
Swift declaration
init(scale: Size3D = Size3D(width: 1.0, height: 1, depth: 1), rotation: Rotation3D = .zero, translation: Vector3D = .zero)

Returns a new scale, rotate, translate transform. - Parameter scale: The scale. - Parameter rotation: The rotation. - Parameter translation: The translation.

get · iOS 16.0+

scale

TypeScript
get scale(): (Size3D) | null
Swift declaration
var scale: Size3D? { get }

The projective transform's scale. This function computes the scale from the first three rows of the transform matrix and ignores the fourth row. If the projective transform isn't an affine scale-rotate-translate transform, this value is `nil`.

init · iOS 16.0+

init

TypeScript
static initShear(shear: AxisWithFactors): ProjectiveTransform3D
Swift declaration
init(shear: AxisWithFactors)

Returns a new shear transform - Parameter shear: The shear.

init · iOS 16.0+

init

TypeScript
static initMatrix17069(matrix: SDKHandle): ProjectiveTransform3D
Swift declaration
init(matrix: simd_float4x4)

Returns a new projective transform structure from the specified single-precision 4 x 3 matrix. - note: This function is provided as a convenience. All Spatial storage and calculations are double-precision.

get · iOS 16.0+

offset

TypeScript
get offset(): Vector3D
Swift declaration
var offset: Vector3D { get set }
set · iOS 16.0+

offset

TypeScript
set offset(value: Vector3D)
Swift declaration
var offset: Vector3D { get set }
method · iOS 16.0+

flipped

TypeScript
flipped(axis: Axis3D): ProjectiveTransform3D
Swift declaration
func flipped(along axis: Axis3D) -> ProjectiveTransform3D

Returns the transform flipped along the specified axis. - Parameter axis: The axis of the flip operation.

get · iOS 16.0+

inverse

TypeScript
get inverse(): (ProjectiveTransform3D) | null
Swift declaration
var inverse: ProjectiveTransform3D? { get }

The projective transform's inverse. If the source transform isn't invertible, this value is `nil`.

method · iOS 16.0+

sheared

TypeScript
sheared(shear: AxisWithFactors): ProjectiveTransform3D
Swift declaration
func sheared(_ shear: AxisWithFactors) -> ProjectiveTransform3D

Returns the transform sheared by the specified shear. - Parameter shear: The axis and shear factors. - Returns The sheared transform.

method · iOS 16.0+

inverted

TypeScript
inverted(): (ProjectiveTransform3D) | null
Swift declaration
func inverted() -> ProjectiveTransform3D?
get · iOS 16.0+

rotation

TypeScript
get rotation(): (Rotation3D) | null
Swift declaration
var rotation: Rotation3D? { get }

The projective transform's rotation. This function computes the rotation from the first three rows of the transform matrix and ignores the fourth row. This function can't extract rotation from a non-scale-rotate-translate projective transform. In that case, the function returns `nil`.

method · iOS 16.0+

scaledBy

TypeScript
scaledBy(x: number, y: number, z: number): ProjectiveTransform3D
Swift declaration
func scaledBy(x: Double, y: Double, z: Double) -> ProjectiveTransform3D

Returns the transform scaled by the specified values. - Parameter x: The scale factor on the `x` dimension. - Parameter y: The scale factor on the `y` dimension. - Parameter z: The scale factor on the `z` dimension. - Returns The scaled transform.

method · iOS 16.0+

isUniform

TypeScript
isUniformOverDimensions(overDimensions: Dimension3DSet): boolean
Swift declaration
func isUniform(overDimensions: Dimension3DSet) -> Bool

Returns `true` if the transform is affine and uniform over the specified dimensions. - Parameter overDimensions: The dimensions that the function tests are uniform. If you specify `overDimensions` as `Dimension3DSet.all`, the function returns the same result as `Transform3D.getter:isUniform`. If you specify as `overDimensions` with zero or one dimension, the function returns the same result as `Transform3D.getter:isRectilinear`.

init · iOS 16.0+

init

TypeScript
static init26901(): ProjectiveTransform3D
Swift declaration
init()

Returns a new identity projective transform.

init · iOS 26.0+

init

TypeScript
static init68251(transform: ProjectiveTransform3DFloat): ProjectiveTransform3D
Swift declaration
init(_ transform: ProjectiveTransform3DFloat)

Returns a double-precision projective transformation from a single-precision projective transformation.

init · iOS 16.0+

init

TypeScript
static init88572(matrix: SDKHandle): ProjectiveTransform3D
Swift declaration
init(_ matrix: simd_float4x4)

Returns a new affine transform structure from the specified single-precision 4 x 3 matrix. - note: This function is provided as a convenience. All Spatial storage and calculations are double-precision.

init · iOS 16.0+

init

TypeScript
static init85817(): ProjectiveTransform3D
Swift declaration
init()

Returns a new identity projective transform.

Skipped declarations

No declarations were skipped in this snapshot.

All Spatial types →