Foxit PDF SDK
com.foxit.sdk.common.fxcrt.Matrix2D类 参考

Public 成员函数

 Matrix2D ()
 构造一个单位变换矩阵。
 
 Matrix2D (float a1, float b1, float c1, float d1, float e1, float f1)
 用六个输入系数构造矩阵。 更多...
 
void concat (float a, float b, float c, float d, float e, float f, boolean bPrepended)
 与另一个矩阵连接。 更多...
 
void concat (Matrix2D m, boolean bPrepended)
 与另一个矩阵连接。 更多...
 
void concatInverse (Matrix2D m, boolean bPrepended)
 连接另一个矩阵的逆矩阵。 更多...
 
void copy (Matrix2D m)
 从另一个矩阵复制系数。 更多...
 
float getA ()
 Get 系数a。 更多...
 
float getB ()
 Get 系数b。 更多...
 
float getC ()
 Get 系数c。 更多...
 
float getD ()
 Get 系数d。 更多...
 
float getE ()
 Get 系数e。 更多...
 
float getF ()
 Get 系数f。 更多...
 
float getUnitArea ()
 获取由两个单位向量组成的平行四边形的面积。 更多...
 
RectF getUnitRect ()
 获取由两个单位向量组成的平行四边形的边界矩形。 更多...
 
float getXUnit ()
 获取X方向的单位大小。 更多...
 
float getYUnit ()
 获取Y方向的单位大小。 更多...
 
boolean is90Rotated ()
 此矩阵是否包含90度或-90度的旋转。 更多...
 
boolean isIdentity ()
 确定矩阵是否为单位变换。 更多...
 
boolean isInvertible ()
 确定矩阵是否可逆。 更多...
 
boolean isScaled ()
 此矩阵是否仅包含缩放(或平移)。没有旋转。 更多...
 
void matchRect (RectF dest, RectF src)
 获取将源矩形变换到目标矩形的矩阵。 更多...
 
void reset ()
 重置当前矩阵。 更多...
 
void rotate (float fRadian, boolean bPrepended)
 旋转矩阵。 更多...
 
void rotateAt (float fRadian, float x, float y, boolean bPrepended)
 在指定位置旋转矩阵。 更多...
 
void scale (float sx, float sy, boolean bPrepended)
 缩放矩阵。 更多...
 
void set (float a, float b, float c, float d, float e, float f)
 更改矩阵中的系数。 更多...
 
void set (float[] n)
 更改矩阵中的系数。 更多...
 
void setA (float value)
 Set 系数a。 更多...
 
void setB (float value)
 Set 系数b。 更多...
 
void setC (float value)
 Set 系数c。 更多...
 
void setD (float value)
 Set 系数d。 更多...
 
void setE (float value)
 Set 系数e。 更多...
 
void setF (float value)
 Set 系数f。 更多...
 
void setIdentity ()
 将矩阵设置为单位变换矩阵。 更多...
 
void setReverse (Matrix2D m)
 将另一个矩阵的逆矩阵的系数设置到此矩阵中。 更多...
 
void shear (float fAlphaRadian, float fBetaRadian, boolean bPrepended)
 剪切矩阵。 更多...
 
float transformDistance (float dx, float dy)
 变换由X和Y值指定的距离。 更多...
 
int transformDistance (int dx, int dy)
 变换由X和Y值指定的距离。 更多...
 
float transformDistance (float distance)
 变换距离。 更多...
 
void transformPoint (java.lang.Float x, java.lang.Float y)
 变换由X和Y值指定的点。 更多...
 
void transformPoint (java.lang.Integer x, java.lang.Integer y)
 变换由X和Y值指定的点。 更多...
 
void transformRect (RectF rect)
 变换一个矩形并返回边界矩形。 结果矩形总是标准化的:left <= right,且 bottom <= top。 更多...
 
void transformRect (RectI rect)
 变换一个矩形并返回边界矩形。 结果矩形总是标准化的:left <= right,且 bottom <= top。 更多...
 
float transformXDistance (float dx)
 变换X距离。 更多...
 
int transformXDistance (int dx)
 变换X距离。 更多...
 
float transformYDistance (float dy)
 变换Y距离。 更多...
 
int transformYDistance (int dy)
 变换Y距离。 更多...
 
void translate (float x, float y, boolean bPrepended)
 平移矩阵。 更多...
 
void translateI (int x, int y, boolean bPrepended)
 平移矩阵。使用整数值。 更多...
 

详细描述

仿射(线性)变换矩阵。

它定义了六个系数:a、b、c、d、e、f。 变换方程为: dest_x = a * src_x + c * src_y + e; dest_y = b * src_x + d * src_y + f;

构造及析构函数说明

◆ Matrix2D()

com.foxit.sdk.common.fxcrt.Matrix2D.Matrix2D ( float  a1,
float  b1,
float  c1,
float  d1,
float  e1,
float  f1 
)

用六个输入系数构造矩阵。

参数
[in]a1输入系数a。
[in]b1输入系数b。
[in]c1输入系数c。
[in]d1输入系数d。
[in]e1输入系数e。
[in]f1输入系数f。

成员函数说明

◆ concat() [1/2]

void com.foxit.sdk.common.fxcrt.Matrix2D.concat ( float  a,
float  b,
float  c,
float  d,
float  e,
float  f,
boolean  bPrepended 
)

与另一个矩阵连接。

参数
[in]a输入矩阵的系数a。
[in]b输入矩阵的系数b。
[in]c输入矩阵的系数c。
[in]d输入矩阵的系数d。
[in]e输入矩阵的系数e。
[in]f输入矩阵的系数f。
[in]bPrepended如果为 true,连接矩阵在左侧相乘,否则在右侧相乘。
返回
无。

◆ concat() [2/2]

void com.foxit.sdk.common.fxcrt.Matrix2D.concat ( Matrix2D  m,
boolean  bPrepended 
)

与另一个矩阵连接。

参数
[in]m输入的矩阵。
[in]bPrepended如果为 true,连接矩阵在左侧相乘,否则在右侧相乘。
返回
无。

◆ concatInverse()

void com.foxit.sdk.common.fxcrt.Matrix2D.concatInverse ( Matrix2D  m,
boolean  bPrepended 
)

连接另一个矩阵的逆矩阵。

参数
[in]m输入的矩阵。
[in]bPrepended如果为 true,连接矩阵在左侧相乘,否则在右侧相乘。
返回
无。

◆ copy()

void com.foxit.sdk.common.fxcrt.Matrix2D.copy ( Matrix2D  m)

从另一个矩阵复制系数。

参数
[in]m输入的矩阵。
返回
无。

◆ getA()

com.foxit.sdk.common.fxcrt.Matrix2D.getA ( )

Get 系数a。

返回
系数a。

◆ getB()

com.foxit.sdk.common.fxcrt.Matrix2D.getB ( )

Get 系数b。

返回
系数b。

◆ getC()

com.foxit.sdk.common.fxcrt.Matrix2D.getC ( )

Get 系数c。

返回
系数c。

◆ getD()

com.foxit.sdk.common.fxcrt.Matrix2D.getD ( )

Get 系数d。

返回
系数d。

◆ getE()

com.foxit.sdk.common.fxcrt.Matrix2D.getE ( )

Get 系数e。

返回
系数e。

◆ getF()

com.foxit.sdk.common.fxcrt.Matrix2D.getF ( )

Get 系数f。

返回
系数f。

◆ getUnitArea()

float com.foxit.sdk.common.fxcrt.Matrix2D.getUnitArea ( )

获取由两个单位向量组成的平行四边形的面积。

返回
由两个单位向量组成的平行四边形的面积。

◆ getUnitRect()

RectF com.foxit.sdk.common.fxcrt.Matrix2D.getUnitRect ( )

获取由两个单位向量组成的平行四边形的边界矩形。

返回
单位矩形。

◆ getXUnit()

float com.foxit.sdk.common.fxcrt.Matrix2D.getXUnit ( )

获取X方向的单位大小。

返回
X方向的单位大小。

◆ getYUnit()

float com.foxit.sdk.common.fxcrt.Matrix2D.getYUnit ( )

获取Y方向的单位大小。

返回
Y方向的单位大小。

◆ is90Rotated()

boolean com.foxit.sdk.common.fxcrt.Matrix2D.is90Rotated ( )

此矩阵是否包含90度或-90度的旋转。

返回
true表示当前矩阵包含90度或-90度的旋转,false表示不包含。

◆ isIdentity()

boolean com.foxit.sdk.common.fxcrt.Matrix2D.isIdentity ( )

确定矩阵是否为单位变换。

返回
true表示当前矩阵是单位矩阵,false表示不是。

◆ isInvertible()

boolean com.foxit.sdk.common.fxcrt.Matrix2D.isInvertible ( )

确定矩阵是否可逆。

返回
true表示当前矩阵可逆,false表示不可逆。

◆ isScaled()

boolean com.foxit.sdk.common.fxcrt.Matrix2D.isScaled ( )

此矩阵是否仅包含缩放(或平移)。没有旋转。

返回
true表示当前矩阵仅包含缩放(或平移),false表示不是。

◆ matchRect()

void com.foxit.sdk.common.fxcrt.Matrix2D.matchRect ( RectF  dest,
RectF  src 
)

获取将源矩形变换到目标矩形的矩阵。

参数
[in]dest目标矩形。
[in]src源矩形。
返回
无。

◆ reset()

void com.foxit.sdk.common.fxcrt.Matrix2D.reset ( )

重置当前矩阵。

返回
无。

◆ rotate()

void com.foxit.sdk.common.fxcrt.Matrix2D.rotate ( float  fRadian,
boolean  bPrepended 
)

旋转矩阵。

参数
[in]fRadian以弧度为单位的旋转角度。
[in]bPrepended如果为 true,旋转矩阵在左侧相乘,否则在右侧相乘。
返回
无。

◆ rotateAt()

void com.foxit.sdk.common.fxcrt.Matrix2D.rotateAt ( float  fRadian,
float  x,
float  y,
boolean  bPrepended 
)

在指定位置旋转矩阵。

参数
[in]fRadian以弧度为单位的旋转角度。
[in]x旋转的X坐标。
[in]y旋转的Y坐标。
[in]bPrepended如果为 true,旋转矩阵在左侧相乘,否则在右侧相乘。
返回
无。

◆ scale()

void com.foxit.sdk.common.fxcrt.Matrix2D.scale ( float  sx,
float  sy,
boolean  bPrepended 
)

缩放矩阵。

参数
[in]sxX方向的缩放系数。
[in]syY方向的缩放系数。
[in]bPrepended如果为 true,缩放矩阵在左侧相乘,否则在右侧相乘。
返回
无。

◆ set() [1/2]

void com.foxit.sdk.common.fxcrt.Matrix2D.set ( float  a,
float  b,
float  c,
float  d,
float  e,
float  f 
)

更改矩阵中的系数。

参数
[in]a输入系数a。
[in]b输入系数b。
[in]c输入系数c。
[in]d输入系数d。
[in]e输入系数e。
[in]f输入系数f。
返回
无。

◆ set() [2/2]

void com.foxit.sdk.common.fxcrt.Matrix2D.set ( float []  n)

更改矩阵中的系数。

参数
[in]n输入的系数数组。
返回
无。

◆ setA()

com.foxit.sdk.common.fxcrt.Matrix2D.setA ( float  value)

Set 系数a。

参数
[in]value系数a。
返回
None.

◆ setB()

com.foxit.sdk.common.fxcrt.Matrix2D.setB ( float  value)

Set 系数b。

参数
[in]value系数b。
返回
None.

◆ setC()

com.foxit.sdk.common.fxcrt.Matrix2D.setC ( float  value)

Set 系数c。

参数
[in]value系数c。
返回
None.

◆ setD()

com.foxit.sdk.common.fxcrt.Matrix2D.setD ( float  value)

Set 系数d。

参数
[in]value系数d。
返回
None.

◆ setE()

com.foxit.sdk.common.fxcrt.Matrix2D.setE ( float  value)

Set 系数e。

参数
[in]value系数e。
返回
None.

◆ setF()

com.foxit.sdk.common.fxcrt.Matrix2D.setF ( float  value)

Set 系数f。

参数
[in]value系数f。
返回
None.

◆ setIdentity()

void com.foxit.sdk.common.fxcrt.Matrix2D.setIdentity ( )

将矩阵设置为单位变换矩阵。

返回
无。

◆ setReverse()

void com.foxit.sdk.common.fxcrt.Matrix2D.setReverse ( Matrix2D  m)

将另一个矩阵的逆矩阵的系数设置到此矩阵中。

参数
[in]m输入的矩阵。
返回
无。

◆ shear()

void com.foxit.sdk.common.fxcrt.Matrix2D.shear ( float  fAlphaRadian,
float  fBetaRadian,
boolean  bPrepended 
)

剪切矩阵。

参数
[in]fAlphaRadianX轴的剪切角度。
[in]fBetaRadianY轴的剪切角度。
[in]bPrepended如果为 true,剪切矩阵在左侧相乘,否则在右侧相乘。
返回
无。

◆ transformDistance() [1/3]

float com.foxit.sdk.common.fxcrt.Matrix2D.transformDistance ( float  dx,
float  dy 
)

变换由X和Y值指定的距离。

参数
[in]dx输入的X值。
[in]dy输入的Y值。
返回
变换后的距离。

◆ transformDistance() [2/3]

int com.foxit.sdk.common.fxcrt.Matrix2D.transformDistance ( int  dx,
int  dy 
)

变换由X和Y值指定的距离。

参数
[in]dx输入的X值。
[in]dy输入的Y值。
返回
变换后的距离。

◆ transformDistance() [3/3]

float com.foxit.sdk.common.fxcrt.Matrix2D.transformDistance ( float  distance)

变换距离。

参数
[in]distance输入的距离。
返回
变换后的距离。

◆ transformPoint() [1/2]

void com.foxit.sdk.common.fxcrt.Matrix2D.transformPoint ( java.lang.Float  x,
java.lang.Float  y 
)

变换由X和Y值指定的点。

参数
[in,out]x点的输入X坐标,并接收输出的变换后X坐标。
[in,out]y点的输入Y坐标,并接收输出的变换后Y坐标。
返回
无。

◆ transformPoint() [2/2]

void com.foxit.sdk.common.fxcrt.Matrix2D.transformPoint ( java.lang.Integer  x,
java.lang.Integer  y 
)

变换由X和Y值指定的点。

参数
[in,out]x点的输入X坐标,并接收输出的变换后X坐标。
[in,out]y点的输入Y坐标,并接收输出的变换后Y坐标。
返回
无。

◆ transformRect() [1/2]

void com.foxit.sdk.common.fxcrt.Matrix2D.transformRect ( RectF  rect)

变换一个矩形并返回边界矩形。 结果矩形总是标准化的:left <= right,且 bottom <= top。

参数
[in,out]rect输入的矩形,并接收输出的变换并标准化后的矩形。
返回
无。

◆ transformRect() [2/2]

void com.foxit.sdk.common.fxcrt.Matrix2D.transformRect ( RectI  rect)

变换一个矩形并返回边界矩形。 结果矩形总是标准化的:left <= right,且 bottom <= top。

参数
[in,out]rect输入的矩形,并接收输出的变换并标准化后的矩形。
返回
无。

◆ transformXDistance() [1/2]

float com.foxit.sdk.common.fxcrt.Matrix2D.transformXDistance ( float  dx)

变换X距离。

参数
[in]dx输入的X距离。
返回
变换后的距离。

◆ transformXDistance() [2/2]

int com.foxit.sdk.common.fxcrt.Matrix2D.transformXDistance ( int  dx)

变换X距离。

参数
[in]dx输入的X距离。
返回
变换后的距离。

◆ transformYDistance() [1/2]

float com.foxit.sdk.common.fxcrt.Matrix2D.transformYDistance ( float  dy)

变换Y距离。

参数
[in]dy输入的Y距离。
返回
变换后的距离。

◆ transformYDistance() [2/2]

int com.foxit.sdk.common.fxcrt.Matrix2D.transformYDistance ( int  dy)

变换Y距离。

参数
[in]dy输入的Y距离。
返回
变换后的距离。

◆ translate()

void com.foxit.sdk.common.fxcrt.Matrix2D.translate ( float  x,
float  y,
boolean  bPrepended 
)

平移矩阵。

参数
[in]xX方向的偏移值。
[in]yY方向的偏移值。
[in]bPrepended如果为 true,平移矩阵在左侧相乘,否则在右侧相乘。
返回
无。

◆ translateI()

void com.foxit.sdk.common.fxcrt.Matrix2D.translateI ( int  x,
int  y,
boolean  bPrepended 
)

平移矩阵。使用整数值。

参数
[in]xX方向的偏移整数值。
[in]yY方向的偏移整数值。
[in]bPrepended如果为 true,平移矩阵在左侧相乘,否则在右侧相乘。
返回
无。