Most visited

Recently visited

Added in API level 1

PathMeasure

public class PathMeasure
extends Object

java.lang.Object
   ↳ android.graphics.PathMeasure


Summary

Constants

int POSITION_MATRIX_FLAG

int TANGENT_MATRIX_FLAG

Public constructors

PathMeasure()

创建一个空的PathMeasure对象。

PathMeasure(Path path, boolean forceClosed)

创建与指定的路径对象(已经创建和指定)关联的PathMeasure对象。

Public methods

float getLength()

返回当前轮廓的总长度,如果没有路径与此度量对象相关联,则返回0。

boolean getMatrix(float distance, Matrix matrix, int flags)

引脚距离为0 <= distance <= getLength(),然后计算相应的矩阵。

boolean getPosTan(float distance, float[] pos, float[] tan)

引脚距离为0 <= distance <= getLength(),然后计算相应的位置和切线。

boolean getSegment(float startD, float stopD, Path dst, boolean startWithMoveTo)

给定起始和终止距离,返回到干预部分(s)。

boolean isClosed()

如果当前轮廓已关闭,则返回true()

boolean nextContour()

移至路径中的下一个轮廓。

void setPath(Path path, boolean forceClosed)

指定一个新路径,或者为null以指定一个新路径。

Protected methods

void finalize()

当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。

Inherited methods

From class java.lang.Object

Constants

POSITION_MATRIX_FLAG

Added in API level 1
int POSITION_MATRIX_FLAG

常数值:1(0x00000001)

TANGENT_MATRIX_FLAG

Added in API level 1
int TANGENT_MATRIX_FLAG

常量值:2(0x00000002)

Public constructors

PathMeasure

Added in API level 1
PathMeasure ()

创建一个空的PathMeasure对象。 要使用它来测量路径的长度,和/或沿着它找到位置和切线,请调用setPath。 请注意,一旦路径与度量对象关联,如果路径随后被修改并且使用了度量对象,则该路径是未定义的。 如果修改了路径,则必须使用路径调用setPath。

PathMeasure

Added in API level 1
PathMeasure (Path path, 
                boolean forceClosed)

创建与指定的路径对象(已经创建和指定)关联的PathMeasure对象。 度量对象现在可以返回路径的长度以及路径上任何位置的位置和切线。 请注意,一旦路径与度量对象关联,如果路径随后被修改并且使用了度量对象,则该路径是未定义的。 如果修改了路径,则必须使用路径调用setPath。

Parameters
path Path: The path that will be measured by this object
forceClosed boolean: If true, then the path will be considered as "closed" even if its contour was not explicitly closed.

Public methods

getLength

Added in API level 1
float getLength ()

返回当前轮廓的总长度,如果没有路径与此度量对象相关联,则返回0。

Returns
float

getMatrix

Added in API level 1
boolean getMatrix (float distance, 
                Matrix matrix, 
                int flags)

引脚距离为0 <= distance <= getLength(),然后计算相应的矩阵。 如果没有路径或指定了零长度路径,则返回false,在这种情况下,矩阵不变。

Parameters
distance float: The distance along the associated path
matrix Matrix: Allocated by the caller, this is set to the transformation associated with the position and tangent at the specified distance
flags int: Specified what aspects should be returned in the matrix.
Returns
boolean

getPosTan

Added in API level 1
boolean getPosTan (float distance, 
                float[] pos, 
                float[] tan)

引脚距离为0 <= distance <= getLength(),然后计算相应的位置和切线。 如果没有路径或指定了零长度路径,则返回false,在这种情况下,位置和切线不变。

Parameters
distance float: The distance along the current contour to sample
pos float: If not null, eturns the sampled position (x==[0], y==[1])
tan float: If not null, returns the sampled tangent (x==[0], y==[1])
Returns
boolean false if there was no path associated with this measure object

getSegment

Added in API level 1
boolean getSegment (float startD, 
                float stopD, 
                Path dst, 
                boolean startWithMoveTo)

给定起始和终止距离,返回到干预部分(s)。 如果该段为零长度,则返回false,否则返回true。 startD和stopD被固定为合法值(0..getLength())。 如果startD> = stopD,则返回false(并保持dst不变)。 如果startWithMoveTo为true,则使用moveTo开始片段。

KITKAT及更早版本上,生成的路径可能不会显示在硬件加速的画布上。 一个简单的解决方法是向此路径添加单个操作,例如dst.rLineTo(0, 0)

Parameters
startD float
stopD float
dst Path
startWithMoveTo boolean
Returns
boolean

isClosed

Added in API level 1
boolean isClosed ()

如果当前轮廓已关闭,则返回true()

Returns
boolean

nextContour

Added in API level 1
boolean nextContour ()

移至路径中的下一个轮廓。 如果存在,则返回true;如果我们完成了路径,则返回false。

Returns
boolean

setPath

Added in API level 1
void setPath (Path path, 
                boolean forceClosed)

指定一个新路径,或者为null以指定一个新路径。

Parameters
path Path
forceClosed boolean

Protected methods

finalize

Added in API level 1
void finalize ()

当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。 子类会覆盖finalize方法以处置系统资源或执行其他清理。

的常规协定finalize是,它被调用,如果当在Java TM虚拟机已确定不再有由该目的可以通过还没有死亡,除了作为一个动作的结果的任何线程访问的任何手段取决于某些其他可以完成的对象或类别的最终定稿。 方法finalize可以采取任何行动,包括使这个对象再次可用于其他线程; 然而, finalize的通常目的是在对象被不可撤销地丢弃之前执行清理操作。 例如,表示输入/输出连接的对象的finalize方法可能会执行显式I / O事务,以在永久丢弃该对象之前中断连接。

Objectfinalize方法Object执行特殊操作; 它只是正常返回。 Object子类可能会覆盖此定义。

Java编程语言不保证哪个线程将为任何给定对象调用finalize方法。 但是,保证调用finalize的线程在调用finalize时不会保留任何用户可见的同步锁。 如果finalize方法引发未捕获的异常,则忽略该异常,并终止该对象的终止。

在针对一个对象调用了 finalize方法之后,在Java虚拟机再次确定没有任何方法可以通过尚未死亡的任何线程访问此对象之前,不会采取进一步的操作,包括可能的操作通过准备完成的其他对象或类别,此时该对象可能被丢弃。

对于任何给定的对象,Java虚拟机从不会多次调用 finalize方法。

finalize方法抛出的任何异常 finalize导致此对象的终止被暂停,但是会被忽略。

Throws
Throwable

Hooray!