public class SingleArrowShape extends Shape
dashType, hasAddedToPaintList, id, isHoverTrace, mPaint, number, rotateAngle, sendByUserName, sendByUserNumber, userRole
构造器和说明 |
---|
SingleArrowShape(Paint paint,
boolean isFill,
boolean isDouble) |
限定符和类型 | 方法和说明 |
---|---|
void |
appendPoint(LPPointF point) |
void |
copyShape(Shape shape) |
RectF |
getBoundary()
获取shape 范围参数
|
Paint |
getFillPaint() |
java.util.ArrayList<LPPointF> |
getPoints()
发送用点集
|
boolean |
isBoundaryOverlap(RectF rect)
判断边界是否相交
|
boolean |
isInBoundary(float x,
float y)
判断点击事件 是否位于shape 范围
|
boolean |
isTouchShape(float x,
float y)
判断是否点击到shape
|
boolean |
isValid()
图形是否有效.
|
void |
moveShapeBy(float dx,
float dy)
move shape by
|
void |
onDraw(Canvas canvas,
Matrix matrix)
绘制图形 在onDraw里调用 避免复杂的计算和内存分配
param canvas
|
void |
onDraw(Canvas canvas,
Matrix matrix,
ShapeRegionInfo regionInfo)
绘制图形
|
void |
scaleShapeBy(int scaleDir,
float scaleX,
float scaleY,
float offsetX,
float offsetY,
RectF boundaryRect,
boolean isMoreSelect)
scale shape to sourcePoint
|
void |
setAngle(float angle)
设置当前角度
|
calcRotatePoint, copy, equals, getIn_angle, getPaint, getSourcePoint, setPaint, setSourcePoint
public void onDraw(Canvas canvas, Matrix matrix)
Shape
public void onDraw(Canvas canvas, Matrix matrix, ShapeRegionInfo regionInfo)
Shape
public boolean isInBoundary(float x, float y)
Shape
isInBoundary
在类中 Shape
x
- rawXy
- rawYpublic boolean isTouchShape(float x, float y)
Shape
isTouchShape
在类中 Shape
x
- rawXy
- rawYpublic RectF getBoundary()
Shape
getBoundary
在类中 Shape
public void moveShapeBy(float dx, float dy)
Shape
moveShapeBy
在类中 Shape
dx
- distance by xdy
- distance by ypublic void scaleShapeBy(int scaleDir, float scaleX, float scaleY, float offsetX, float offsetY, RectF boundaryRect, boolean isMoreSelect)
Shape
scaleShapeBy
在类中 Shape
scaleDir
- scale directionscaleX
- X xiascaleY
- Y xiaoffsetX
- 缩放X轴相对原来中心点偏移量offsetY
- 缩放Y轴相对原来中心点偏移量boundaryRect
- 外接框范围isMoreSelect
- 是否多选缩放,需要处理旋转角度在90 ~ 270scaleDir置相反public boolean isBoundaryOverlap(RectF rect)
Shape
isBoundaryOverlap
在类中 Shape
public Paint getFillPaint()
public void appendPoint(LPPointF point)
appendPoint
在类中 Shape