336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
- CustomView의 생성과정은 점,선,면의 생성과정과 동일하다
- Sample ( Canvas에 출력하기 / Canvas에 궤적추적출력 활용 )
- Path는 drawPath, drawTextOnPath와 같이 궤적을 따라 출력하기 위한 객체이다
- 벡터정보를 저장하고 궤적을 출력하는등 활용도가 다양하다
- 관련 메서드
- void addArc(RectF oval, float startAngle, float sweepAngle) : 호의 추가
- void addCircle(float x, float y, float radius, Path.Direction dir) : 원의 추가
- void addOval(RectF oval, Path.Direction dir) : 타원의 추가
- void addPath(Path src, Matrix matrix) : 행렬이 적용되는 Path의 추가
- void addRect(RectF rect, Path.Direction dir) : 사각형 추가
- (float left, float top, float right, float bottom, Path.Direction dir)
- void addRoundRect(RectF rect, float[] radii, Path.Direction dir) :모따진 사각형추가
- (RectF rect, float rx, float ry, Path.Direction dir)
- void arcTo(RectF oval, float startAngle, float sweepAngle, boolean forceMoveTo) : 호의 추가
- (RectF oval, float startAngle, float sweepAngle)
- void close() : 현 궤적의 종료
- void computeBounds(RectF bounds, boolean exact) : Path point의 영역산출
- void cubicTo(float x1, float y1, float x2, float y2, float x3, float y3) : 베지어 공식의 곡선
-
rCubicTo(float x1, float y1, float x2, float y2, float x3, float y3) : 상대좌표사용
- Path.FillType getFillType() : 현 Path 채우기모드의 반환
- void incReserve(int extraPtCount) : Hint to the path to prepare for adding more points.
- boolean isEmpty() : 정보가 없는 경우 true를 반환
- boolean isInverseFillType() : 반대변형이 가능한가를 판단
- boolean isRect(RectF rect) : 영역의 정보가 사각형인가를 판단
- void lineTo(float x, float y) : 마지막 Path에서 선그리기 추가
- rLineTo(float dx, float dy) : 상대좌표 사용
- void moveTo(float x, float y) : 좌표이동 추가
- rMoveTo(float dx, float dy) : 상대좌표사용
- void offset(float dx, float dy) : Offset the path by (dx,dy), returning true on success
- (float dx, float dy, Path dst)
- void quadTo(float x1, float y1, float x2, float y2) :
-
Add a quadratic bezier from the last point, approaching control point (x1,y1), and ending at (x2,y2).
-
rQuadTo(float dx1, float dy1, float dx2, float dy2) : 상대좌표사용
- void reset() : Path정보를 Empty로 만들기
- void rewind() : 라인, 커브는 지우고, 내부정보는 다시 사용하는 방법
- void set(Path src) : 정보의 수정
- void setFillType(Path.FillType ft) : 채우기 지정
- void setLastPoint(float dx, float dy) : 최종좌표의 변경
- void toggleInverseFillType() : 채우기의 반대모드로 변환하기
- void transform(Matrix matrix) : 행렬로 변형하기
- 사용 순서
- public void onDraw(Canvas canvas)에서 사용
- Path path = new Path();
- Paint paint = new Paint(); // Path출력도 Paint의 정보에 준한다
- paint정보 Setting 하기
- path정보 만들기
- canvas.drawPath( path, paint ) // Path 출력하기
- canvas.drawTextOnPath( string, path, 0, 0, paint) // 곡선, 원등에 문자출력하기
'Programming > Android' 카테고리의 다른 글
[Android] EditText에서 키보드의 특정 키 입력을 막기 (0) | 2010.07.27 |
---|---|
[Android] layout 비율 (3) | 2010.07.27 |
[Android] bitmap을 출력한 후 touch를 이용해서 drag하는 예제 (0) | 2010.07.23 |
[Android] 비율고정을통한 레이아웃 설계 (0) | 2010.07.22 |
[Android] 얼굴인식기능 FaceDetector Class (0) | 2010.07.21 |