public class PathMeasure
extends Object
java.lang.Object | |
↳ | android.graphics.PathMeasure |
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
|
PathMeasure ()
创建一个空的PathMeasure对象。 要使用它来测量路径的长度,和/或沿着它找到位置和切线,请调用setPath。 请注意,一旦路径与度量对象关联,如果路径随后被修改并且使用了度量对象,则该路径是未定义的。 如果修改了路径,则必须使用路径调用setPath。
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. |
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 |
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 |
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 |
boolean nextContour ()
移至路径中的下一个轮廓。 如果存在,则返回true;如果我们完成了路径,则返回false。
Returns | |
---|---|
boolean |
void setPath (Path path, boolean forceClosed)
指定一个新路径,或者为null以指定一个新路径。
Parameters | |
---|---|
path |
Path
|
forceClosed |
boolean
|
void finalize ()
当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。 子类会覆盖finalize
方法以处置系统资源或执行其他清理。
的常规协定finalize
是,它被调用,如果当在Java TM虚拟机已确定不再有由该目的可以通过还没有死亡,除了作为一个动作的结果的任何线程访问的任何手段取决于某些其他可以完成的对象或类别的最终定稿。 方法finalize
可以采取任何行动,包括使这个对象再次可用于其他线程; 然而, finalize
的通常目的是在对象被不可撤销地丢弃之前执行清理操作。 例如,表示输入/输出连接的对象的finalize方法可能会执行显式I / O事务,以在永久丢弃该对象之前中断连接。
类Object
的finalize
方法Object
执行特殊操作; 它只是正常返回。 Object
子类可能会覆盖此定义。
Java编程语言不保证哪个线程将为任何给定对象调用finalize
方法。 但是,保证调用finalize的线程在调用finalize时不会保留任何用户可见的同步锁。 如果finalize方法引发未捕获的异常,则忽略该异常,并终止该对象的终止。
在针对一个对象调用了 finalize
方法之后,在Java虚拟机再次确定没有任何方法可以通过尚未死亡的任何线程访问此对象之前,不会采取进一步的操作,包括可能的操作通过准备完成的其他对象或类别,此时该对象可能被丢弃。
对于任何给定的对象,Java虚拟机从不会多次调用 finalize
方法。
finalize
方法抛出的任何异常 finalize
导致此对象的终止被暂停,但是会被忽略。
Throws | |
---|---|
Throwable |