interface_sdk-js/api/@ohos.matrix4.d.ts
tangjie 26c63bf668 第二批打标ArkUI增加元服务标签
Change-Id: I82f5ab9ffe8916d46ef7827d999ad7fd1979f8e6
Signed-off-by: tangjie <1402602435@qq.com>
2024-07-16 12:01:05 +08:00

1064 lines
29 KiB
TypeScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
* Copyright (c) 2020-2023 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @file
* @kit ArkUI
*/
/**
* Used to do matrix operations
*
* @namespace matrix4
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Used to do matrix operations
*
* @namespace matrix4
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Used to do matrix operations
*
* @namespace matrix4
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
declare namespace matrix4 {
/**
* Set translation parameters
*
* @interface TranslateOption
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Set translation parameters
*
* @interface TranslateOption
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Set translation parameters
*
* @interface TranslateOption
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
interface TranslateOption {
/**
* Indicates the translation distance of the x-axis, in px.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Indicates the translation distance of the x-axis, in px.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Indicates the translation distance of the x-axis, in px.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
x?: number;
/**
* Indicates the translation distance of the y-axis, in px.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Indicates the translation distance of the y-axis, in px.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Indicates the translation distance of the y-axis, in px.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
y?: number;
/**
* Indicates the translation distance of the z-axis, in px.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Indicates the translation distance of the z-axis, in px.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Indicates the translation distance of the z-axis, in px.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
z?: number;
}
/**
* Set scaling parameters
*
* @interface ScaleOption
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Set scaling parameters
*
* @interface ScaleOption
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Set scaling parameters
*
* @interface ScaleOption
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
interface ScaleOption {
/**
* Zoom factor of the x-axis.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Zoom factor of the x-axis.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Zoom factor of the x-axis.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
x?: number;
/**
* Zoom factor of the y-axis.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Zoom factor of the y-axis.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Zoom factor of the y-axis.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
y?: number;
/**
* Zoom factor of the z-axis.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Zoom factor of the z-axis.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Zoom factor of the z-axis.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
z?: number;
/**
* Transform the x-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Transform the x-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Transform the x-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
centerX?: number;
/**
* Transform the y-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Transform the y-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Transform the y-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
centerY?: number;
}
/**
* Set Rotation Parameters.
*
* @interface RotateOption
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Set Rotation Parameters.
*
* @interface RotateOption
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Set Rotation Parameters.
*
* @interface RotateOption
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
interface RotateOption {
/**
* Axis of rotation vector x coordinate.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Axis of rotation vector x coordinate.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Axis of rotation vector x coordinate.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
x?: number;
/**
* Axis of rotation vector y coordinate.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Axis of rotation vector y coordinate.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Axis of rotation vector y coordinate.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
y?: number;
/**
* Axis of rotation vector z coordinate.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Axis of rotation vector z coordinate.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Axis of rotation vector z coordinate.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
z?: number;
/**
* Transform the x-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Transform the x-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Transform the x-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
centerX?: number;
/**
* Transform the y-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Transform the y-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Transform the y-axis coordinate of the center point.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
centerY?: number;
/**
* Rotation angle.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Rotation angle.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Rotation angle.
*
* @type { ?number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
angle?: number;
}
/**
* Set poly to poly point.
*
* @interface Point
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
export interface Point {
/**
* Point x.
*
* @type { number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
x: number;
/**
* Point y.
*
* @type { number }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
y: number;
}
/**
* Set poly to poly point options.
*
* @interface PolyToPolyOptions
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
export interface PolyToPolyOptions {
/**
* Array of point coordinates for the source polygon.
*
* @type { Array<Point> }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
src: Array<Point>;
/**
* Start point index of the source polygon, which defaults to 0.
* @type { ?number }
* @default 0
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
srcIndex?: number;
/**
* Array of point coordinates for the target polygon.
*
* @type { Array<Point> }
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
dst:Array<Point>;
/**
* Start index of the target polygon, which defaults to 0.
*
* @type { ?number }
* @default src.Length/2
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
dstIndex?: number;
/**
* The number of points to be used.
* If it is 0, it returns the identity matrix.
* If it is 1, it returns a translation matrix that changed before two points.
* If it is 2-4, it returns a transformation matrix.
* @type { ?number }
* @default 0
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
pointCount?:number;
}
/**
* Matrix4Transit.
*
* @interface Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Matrix4Transit.
*
* @interface Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Matrix4Transit.
*
* @interface Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
interface Matrix4Transit {
/**
* Copy function of Matrix, which can copy a copy of the current matrix object.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Copy function of Matrix, which can copy a copy of the current matrix object.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Copy function of Matrix, which can copy a copy of the current matrix object.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
copy(): Matrix4Transit;
/**
* The inverse function of Matrix returns an inverse matrix of the current matrix object, that is, the effect is exactly the opposite.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* The inverse function of Matrix returns an inverse matrix of the current matrix object, that is, the effect is exactly the opposite.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* The inverse function of Matrix returns an inverse matrix of the current matrix object, that is, the effect is exactly the opposite.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
invert(): Matrix4Transit;
/**
* Matrix superposition function, which can superpose the effects of two matrices to generate a new matrix object.
*
* @param { Matrix4Transit } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Matrix superposition function, which can superpose the effects of two matrices to generate a new matrix object.
*
* @param { Matrix4Transit } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Matrix superposition function, which can superpose the effects of two matrices to generate a new matrix object.
*
* @param { Matrix4Transit } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
combine(options: Matrix4Transit): Matrix4Transit;
/**
* Matrix translation function, which can add the x-axis, Y-axis, or Z-axis translation effect to the current matrix.
*
* @param { TranslateOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Matrix translation function, which can add the x-axis, Y-axis, or Z-axis translation effect to the current matrix.
*
* @param { TranslateOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Matrix translation function, which can add the x-axis, Y-axis, or Z-axis translation effect to the current matrix.
*
* @param { TranslateOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
translate(options: TranslateOption): Matrix4Transit;
/**
* Scaling function of the Matrix, which can add the x-axis, Y-axis, or Z-axis scaling effect to the current matrix.
*
* @param { ScaleOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Scaling function of the Matrix, which can add the x-axis, Y-axis, or Z-axis scaling effect to the current matrix.
*
* @param { ScaleOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Scaling function of the Matrix, which can add the x-axis, Y-axis, or Z-axis scaling effect to the current matrix.
*
* @param { ScaleOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
scale(options: ScaleOption): Matrix4Transit;
/**
* Skew function of the Matrix, which can add the x-axis, y-axis skew effect to the current matrix.
* Skew function takes a generic point with coordinates (x0, y0, z0) to the point (x0 + x*y0, y0 + y*x0, z0),
* where x, y are fixed parameters, called the shear factors.
*
* @param { number } x - the shear factor of x-axis.
* @param { number } y - the shear factor of y-axis.
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
skew(x: number, y: number): Matrix4Transit;
/**
* Rotation function of the Matrix. You can add the x-axis, Y-axis, or Z-axis rotation effect to the current matrix.
*
* @param { RotateOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Rotation function of the Matrix. You can add the x-axis, Y-axis, or Z-axis rotation effect to the current matrix.
*
* @param { RotateOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Rotation function of the Matrix. You can add the x-axis, Y-axis, or Z-axis rotation effect to the current matrix.
*
* @param { RotateOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
rotate(options: RotateOption): Matrix4Transit;
/**
* Matrix coordinate point conversion function, which can apply the current transformation effect to a coordinate point.
*
* @param { [number, number] } options
* @returns { [number, number] } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Matrix coordinate point conversion function, which can apply the current transformation effect to a coordinate point.
*
* @param { [number, number] } options
* @returns { [number, number] } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Matrix coordinate point conversion function, which can apply the current transformation effect to a coordinate point.
*
* @param { [number, number] } options
* @returns { [number, number] } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
transformPoint(options: [number, number]): [number, number];
/**
* Sets matrix to map src to dst.
*
* @param { PolyToPolyOptions } options - polyToPoly options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
setPolyToPoly(options: PolyToPolyOptions): Matrix4Transit
}
/**
* Constructor of Matrix, which can create a fourth-order matrix based on the input parameters. The matrix is column-first.
*
* @param { [number,number,number,number,number,number,number,number,number,number,number,number,number,number,number,number] } options
* options indicates a fourth-order matrix
* The default value
* [1, 0, 0, 0,
* 0, 1, 0, 0,
* 0, 0, 1, 0,
* 0, 0, 0, 1]
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Constructor of Matrix, which can create a fourth-order matrix based on the input parameters. The matrix is column-first.
*
* @param { [number,number,number,number,number,number,number,number,number,number,number,number,number,number,number,number] } options
* options indicates a fourth-order matrix
* The default value
* [1, 0, 0, 0,
* 0, 1, 0, 0,
* 0, 0, 1, 0,
* 0, 0, 0, 1]
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Constructor of Matrix, which can create a fourth-order matrix based on the input parameters. The matrix is column-first.
*
* @param { [number,number,number,number,number,number,number,number,number,number,number,number,number,number,number,number] } options
* options indicates a fourth-order matrix
* The default value
* [1, 0, 0, 0,
* 0, 1, 0, 0,
* 0, 0, 1, 0,
* 0, 0, 0, 1]
* Fourth-order matrix notes:
* m00 { number } -The x-axis scale value, the identity matrix defaults to 1.
* m01 { number } -The second value, the rotation of the xyz axis affects this value.
* m02 { number } -The third value, the rotation of the xyz axis affects this value.
* m03 { number } -Meaningless.
* m10 { number } -The fifth value, the rotation of the xyz axis affects this value.
* m11 { number } -The y-axis scales the value, and the identity matrix defaults to 1.
* m12 { number } -The 7th value, the rotation of the xyz axis affects this value.
* m13 { number } -Meaningless.
* m20 { number } -The 9th value, the rotation of the xyz axis affects this value.
* m21 { number } -The 10th value, xyz axis rotation affects this value.
* m22 { number } -The z-axis scale value, the identity matrix defaults to 1.
* m23 { number } -Meaningless.
* m30 { number } -The x-axis translation value in px, the identity matrix defaults to 0.
* m31 { number } -Y-axis translation value, in px, the identity matrix defaults to 0.
* m32 { number } -The z-axis translation value in px, the identity matrix defaults to 0.
* m33 { number } -It takes effect in homogeneous coordinates to produce a perspective projection effect.
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
/**
* Constructor of Matrix, which can create a fourth-order matrix based on the input parameters. The matrix is column-first.
*
* @param { [number,number,number,number,number,number,number,number,number,number,number,number,number,number,number,number] } options
* options indicates a fourth-order matrix
* The default value
* [1, 0, 0, 0,
* 0, 1, 0, 0,
* 0, 0, 1, 0,
* 0, 0, 0, 1]
* Fourth-order matrix notes:
* m00 { number } -The x-axis scale value, the identity matrix defaults to 1.
* m01 { number } -The second value, the rotation and skew of the xyz axis affects this value.
* m02 { number } -The third value, the rotation of the xyz axis affects this value.
* m03 { number } -The fourth value, the perspective projection affects this value.
* m10 { number } -The fifth value, the rotation and skew of the xyz axis affects this value.
* m11 { number } -The y-axis scales the value, and the identity matrix defaults to 1.
* m12 { number } -The 7th value, the rotation of the xyz axis affects this value.
* m13 { number } -The 8th value, the perspective projection affects this value.
* m20 { number } -The 9th value, the rotation of the xyz axis affects this value.
* m21 { number } -The 10th value, xyz axis rotation affects this value.
* m22 { number } -The z-axis scale value, the identity matrix defaults to 1.
* m23 { number } -The 12th value, the perspective projection affects this value.
* m30 { number } -The x-axis translation value in px, the identity matrix defaults to 0.
* m31 { number } -Y-axis translation value, in px, the identity matrix defaults to 0.
* m32 { number } -The z-axis translation value in px, the identity matrix defaults to 0.
* m33 { number } -It takes effect in homogeneous coordinates to produce a perspective projection effect.
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 12
*/
function init(
options: [
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number
]
): Matrix4Transit;
/**
* Matrix initialization function, which can return an identity matrix object.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
*/
/**
* Matrix initialization function, which can return an identity matrix object.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @since 10
*/
/**
* Matrix initialization function, which can return an identity matrix object.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @crossplatform
* @atomicservice
* @since 11
*/
function identity(): Matrix4Transit;
/**
* Copy function of Matrix, which can copy a copy of the current matrix object.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
* @deprecated since 10
*/
function copy(): Matrix4Transit;
/**
* The inverse function of Matrix returns an inverse matrix of the current matrix object, that is, the effect is exactly the opposite.
*
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
* @deprecated since 10
*/
function invert(): Matrix4Transit;
/**
* Matrix superposition function, which can superpose the effects of two matrices to generate a new matrix object.
*
* @param { Matrix4Transit } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
* @deprecated since 10
*/
function combine(options: Matrix4Transit): Matrix4Transit;
/**
* Matrix translation function, which can add the x-axis, Y-axis, or Z-axis translation effect to the current matrix.
*
* @param { TranslateOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
* @deprecated since 10
*/
function translate(options: TranslateOption): Matrix4Transit;
/**
* Scaling function of the Matrix, which can add the x-axis, Y-axis, or Z-axis scaling effect to the current matrix.
*
* @param { ScaleOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
* @deprecated since 10
*/
function scale(options: ScaleOption): Matrix4Transit;
/**
* Rotation function of the Matrix. You can add the x-axis, Y-axis, or Z-axis rotation effect to the current matrix.
*
* @param { RotateOption } options
* @returns { Matrix4Transit } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
* @deprecated since 10
*/
function rotate(options: RotateOption): Matrix4Transit;
/**
* Matrix coordinate point conversion function, which can apply the current transformation effect to a coordinate point.
*
* @param { [number, number] } options
* @returns { [number, number] } Return to Matrix4Transit
* @syscap SystemCapability.ArkUI.ArkUI.Full
* @since 7
* @deprecated since 10
*/
function transformPoint(options: [number, number]): [number, number];
}
export default matrix4;