안드로이드 개발 질문/답변
(글 수 40,700)
지금 생각해놓은 방식이 3가지가 있습니다.
1. 색 선택후 밑그림에 칠하는 방법.
2. 채우기 기능처럼 구역(?)을 색칠하는 방법.
3. 지우기 기능처럼 손가락으로 드로잉하는 부분은 그림의 원래색이 나타나게 하는 방법.
이렇게 있는데요.
1번처럼 하려면 만약 빨간색을 칠한다고 했을때 밑그림의 색(검은색)은 칠해도 적용이 안되게 하는 방법은 어떻게 해야할까요?
2번처럼 하려면 각 구역에 대해 어떻게 인식을 시켜야 할까요?
3번처럼 하려면 (포토샵에서 History Brush Tool 같은 기능) 어떻게 해야할까요?
간단간단하게 어떤 부분을 공부하고, 어떻게 적용을 해야하는지 이런걸 알려주시면 좋겠습니다.
기본적으로 베이스는 OpenGL 렌더러 or SurfaceView 둘 중 하나를 선택해야 속도에 문제가 없습니다.
1번은 기본그림이 있는 뷰를 깔고 그 위에 포토샵의 레이어처럼 뷰를 덧씌워서 칠해야 됩니다.
색상, 굵기, 스타일 등은 Paint 객체로 지정해주면 되고요..
2번은 1번과 마찬가지로 뷰를 덧씌우고 원본 레이어의 픽셀을 계산하여 칠하는 방식을 가장 많이 씁니다.
이건 프로그래밍 기술에서 어떤드로잉이라는 기술인데 이름이 생각이 않나네요. 구글링하시면 나올겁니다..
3번은 단순히 원본그림을 나타내는거라면 지워질 영역의 픽셀을 계산하여 덧씌워진 뷰에서 해당 픽셀만큼 제거하면 됩니다.