프로세싱_픽셀 좌표 구해서 쉽게 그림을 그려보자
프로세싱 공부하면서, 좌표를 머릿속에서만 어림짐작해서 그려야 하는 문제 때문에 많은 불편함을 느꼈다.
이번 과제는 안 그래도 좌표 생각하는 것 때문에 짜증 나 죽겠는데, 기하학 도형을 자유롭게 사용해서 그림을 그리는 과제.
그냥 그림판으로 도형 몇개 그리고 프로세싱으로 했다고 뻥칠려했는데, 코드를 같이 첨부하라자너~ ㅠㅠ
픽셀 좌표를 쉽게 구하는방법이 없을까?? 픽셀 좌표만 구하면 그냥 그림 그려서 좌표만 따와서 금방 그릴 수 있는데 라는 생각이 확 들었다.
그래서 알아낸 묘~수~
그래픽 툴을 활용한 픽셀좌표 구하기!
1.활용툴은 그림판/포토샵/일러스트
접근성 순서대로 나열함
참고로 저는 일러스트레이터 사용해서 과제함
대부분 내용은 마지막세션에서 적을거임
//그림판으로 이미지 픽셀좌표 구하기
최고의 캡쳐 프로그램
그림판을 키도록 하자
역시 개쩌는 그림판 아니랄까봐 그냥 마우스만 올려도 좌표가 출력된다
왼쪽하단 블록이 전체이미지사이즈기준 내 마우스가 올려져 있는 픽셀좌표계인데,
138, 357은 x축138, y축 357에 위치했다는것을 의미함.
그 옆에 블록은 전체 이미지 사이즈를 말하는데, 지금 대충만들어서 해상도가 저따구임 과제에선 800 x 600px 으로 하라했으니 주의 ㅋㅋ
//포토샵으로 이미지 픽셀좌표 구하기
미콘학생이든 아니든 이젠 기본적으론 깔려있어야 하는 포토샵.
대부분이 cs6을 사용중일거라고 예상이 되는데,
일단 나는 cc2017으로 작업했는데 cs6도 상관없음
포토샵에선 F8을 누르거나
window(창) - info를 클릭하면 픽셀 좌표계가 나오게 된다
//일러스트레이터로 이미지 픽셀좌표 구하기
이번에 내가 사용한 프로그램!
방금 소개한 두 프로그램과는 다르게 '벡터기반' 으로 작성된 그래픽툴이다!
덕분에 앞서 소개한 두 소프트웨어보다 '더 정확한 위치계산' 이 가능하다!
이유로는 대부분의 벡터기반의 그래픽툴에서 지원되는 강력하고 정밀한 컨트롤이 가능한 Snap 기능 덕분인데,
쉽게말하면 모서리나 면의중앙, 선의 정중앙을 정확히 계산해서 마우스를 탁! 달라붙게 만드는
세밀하고 정확한 작업을 위한 기능이다.
-3dmax
-Adobe Illustrator
-AutoCAD
-그외 수많은 3D,CAD프로그램들..
끝. 그냥 내가 그린 도형 꼭짓점에 마우스를 올려두면, 정확한 벡터위치가 바로 출력된다
거기다가 스냅기능으로 꼭짓점에 마우스가 바로 달라붙으니까 손가락 떨려서 위치 바뀔일도 없음
지금당장 일러스트 까쉴??
https://www.adobe.com/kr/products/illustrator.html
Adobe Illustrator (어도비 일러스트 레이터) 무료 다운로드 | 그래픽 디자인 소프트웨어 시험버전
파워풀한 성능 반응 속도가 빠른 성능과 정밀한 툴은 프로세스가 아니라 디자인에 집중할 수 있도록 해줍니다. 문서 전체에서 벡터 그래픽의 재사용이 가능하며 Photoshop, InDesign, XD, Premiere Pro와 같은 다른 Creative Cloud 앱과 원활하게 연동됩니다. Illustrator를 사용하면 아트웍을 디자인, 비디오 등에 손쉽게 추가할 수 있습니다.
www.adobe.com
2.일러스트와 프로세싱 콜라보레이션
앞에 소개한 포토샵이나 그림판은 접근성은 좋지만, 정확한 벡터계산은 안되기 떄문에, 난 일러스트를 기준으로 이번 과제를 어떻게 했는지 설명해보려한다.
그냥 과제 받자마자 아무런 고민없이 '모아이석상' 으로 하기로 했다.
아무리봐도 만만한 형태와 버텍스도 조금찍으면 될것같아서...
이게 예전에 폴리곤아트할때 자주쓰던방법인데, 위에 덧대서 그리는거라 원본이미지나 내가 그릴 도형이나 펜의 투명도는 좀 있어야 작업이 편함
원본이미지 위에 레이어를 얹을거면, 내가그릴 펜의 투명도를 조절해야하고
원본이미지 아래에 레이어를 앉을거면, 원본이미지만 투명도 조절해주면 됌
일단 나는 후자의 방법을 사용할거임
레이어 여러개만들건데 그때마다 펜 투명도 조절하면 귀찮잖아잉~ ㅜㅜ
이렇게 단순한 형태를 만들었으니, 아까 앞서 설명했던 픽셀좌표계산 구하기를 활용해서
지금 보이는 그림의 모든 꼭짓점을
알.아.낸.다
참고로 활용할 함수는 vertex함수셈 ㅋㅋ
참고로 전 앞에 noStroke(); 사용해서 endShape(CLOSE); 는 사용안함
모든 버텍스 값을 구해서 환상의 똥꼬쇼를 완수했다면, 원했던 결과를 얻을 수 있을것이다.
아, 참고로 일러스트 내부에선 딱 정수값으로 픽셀 좌표가 구해지는게아니라, 상수값으로 좌표가 구해지는데,
프로세싱 내부에선 혹시 모르니까 반올림이나 반내림해서 정수값을 입력하도록 하자.
아, 그리고 포토샵이나 일러스트같은경우엔, 레이어 개념이 레이어가 상위에 있을수록, 가장 앞에있다는 의미인데,
프로세싱같은 경우엔, 코드가 아래에 있을수록 앞에 있는것이다.
가장 아래에 있는 코드는 즉 맨 앞에 있는 그림이라는 것.
그리고 if문이나 for문 활용해서 잔상현상같은걸 표현하려했는데, 도저히 대가리가 안되서
그냥 좌표 내부에서 x축만 바꾸려고 사칙연산 부호를 사용 해 봤는데, 된다.
데챠앗!! 좌표계 안에서 사칙연상이 가능하고?!?! 진짜냐고!! ((==퍽!
3.결론
프로세싱 어디에다 써먹을려고 배우는지 진짜 모르겠다..
다들 디콘창 드랍 ㄱㄱ ㅋㅋ
컴퓨터 그래픽스 공부해야하니까 다같이 미공전공에 컴공복전 ㄱㄱ
C++공부하러 레츠고~