전적으로 그리는 도구에 대해 더 공부해 봅시다.
직사각형 이외에 어떤것을 더 그릴수 있을까요?
타원형을 ellipse를 이용해 그릴수 있습니다.
이는 컴퓨터가 알수있는 다른 명령어 입니다.
프로그래밍을 할때 컴퓨터를 위한 명령어를 가지고 있는데요
이를 함수라고 부릅니다.
지금부터 함수라는 단어를 명령어 라는뜻으로 사용하겠습니다.
먼저 ellipse라는 함수를 적습니다.
그리고 () 와 ; 를 적어줍니다.
작동하지 않네요!
매개변수에 대한 에러창이 뜹니다.
그게 뭔지 모르지만 말이에요.
직사각형을 그리는것을 봤을때와 비교해 봤을때 빠뜨린게 무엇이 있을까요?
ellipse 만 정의했지, 숫자에 대해서 논의하지 않았네요.
이 숫자는 직사각형에서 했던것과 똑같다고 볼수 있습니다.
이 숫자들은 매개변수라고 부릅니다.
이를 통해 함수속의 매개변수를 통해서
그 함수가 어떻게 기능하는지 알수 있습니다.
그러므로 매개변수 없이
프로그램은 그리고 싶은 원을 어디에 그리는지 모릅니다.
혹은 얼마나 크게 그릴지 말이죠.
이제 에러창이 뜬 이유가 어느정도 이해갈겁니다.
앞으로 돌아가서 4개 매개변수를 다시 봅시다.
얼마나 옆으로 떨어져있고 얼마나 아래로 떨어져 있으며 또 얼마나 넓은지,
그리고 그리고 싶은 원이 얼마나 긴지 알려줍니다.
이전과 같이, 원으로 몇몇 재밌는 움직임을 시도해볼수 있습니다.
심지어 커지거나 줄어들게도 가능합니다.
이제 기본적인 함수를 봤습니다. 이제 큰 원을 하나 그려보도록 합시다.
이 도화지의 중간에 말이죠.
첫번째로 고려해야될것은 어디가 중심이냐는 것입니다.
복습해보면, 위끝 왼쪽부분을 0,
그리고 오른쪽 위끝, 기억나려나 모르겠지만 400이구요, 바닥은 또한 400입니다.
그럼 중간은 어딜까요?
400의 절반은 200이라고 할수있겠죠 그럼 가로로 200이구요
세로로 절반은 또한 200이지요.
하려던걸 해볼수 있겠네요.
ellipse 함수를 만들고
꽤나 크게 만들기 위해 매개변수를 집어 넣습니다.
네 만들어 졌네요.
재미로, 직사각형도 그려보도록 합시다.
rect(200,200,100,100)을 적어서 조금 작게 만들겠습니다.
재밌는 모양이 됐네요.
이러한 수식을 통해 무엇을 알수 있었나요?
200,200의 점을 볼수 있습니다.
이는 원형의 중심을 어디에 잡아야 할지 알게 해줍니다.
하지만 직사각형은 다릅니다. 왜냐하면
200,200이 말하는 것은 직사각형의 왼쪽 위 가장자리 부분에 놓기 때문입니다.
이것이 모양을 배치하려할때 기억해야할 중요한 요소입니다.
이제 간단한 선그리기로 넘어갑시다.
이 함수이름은 line입니다.
다시 4개의 매개변수가 필요합니다.
하지만 선은 직사각형과 다르게 폭과 너비가 없지요?
그러면 매개변수는 무엇을 다룰까요?
첫번째와 두번째의 매개변수는 이전형태와 같습니다.
어디서 시작할지 얼마나 시작점이 옆으로 아래로 떨어져있는지 알게해줍니다.
반면에 나머지 두 매개변수는요
아 여기 뒤쪽이네요, 여기 90과 200인 두 매개변수는요
얼마나 길게 또는 낮게 선이 끝나는지 알수있게 해줍니다.
이제 어떻게 작동하는지 알겠네요.
먼저 정말 이상해 보이는것을 다뤄봅시다.
직사각형을 위끝 왼쪽부분에서 시작하면
다시말해서 직사각형의 왼쪽위 가장자리를 지정하면 어떻게 될까요?
그리고 좀 크게요
이정도 크기로 할수있겠지만, 좀 큰거 같네요.
이를 보면 원이 점점 없어지는것을 볼수 있습니다.
완전히 없앨 수도 있지요.
이젠 어디에 있었는지도 모르겠네요.
사실 프로그램은 명령대로 그린 상태입니다.
먼저 원을 그리고 그위에 직사각형을 그렸네요
그리고 선을 그렸습니다.
그러므로 원은 그자리에 그대로 있고, 여기 보신거처럼 아래에 있습니다.
이는 기억해야할 중요한 점입니다.
왜냐하면 선을 먼저 그렸을때 어떤일이 일어날까요?
선에 대해 아무것도 볼수없죠?
내 선이 어디갔냐고 의아해 할지도 모릅니다.
사실은 선은 그자리에 있고 그밑에 숨겨져 있는 것입니다.
원과 동시에 직사각형 밑에 숨겨져 있습니다.
이를 통해 단지 그리는 순서를 바꾸는것을 통해서
무엇이 위에 그리는지 정할수 있습니다.
이제 몇몇 기술적인 용어들을 소개해 드리겠습니다.
끝내기 전에 말이이요.
수학에서 배웠던것과 마찬가지로
x 라는 문자를 얼마나 멀리 떨어져있는지로 사용할수 있습니다.
이제껏 수학에서 써왔던 것과 마찬가지로 말입니다.
y 는 얼마나 아래로 멀리 떨어져 있는지를 나타냅니다.
사용하지 않았더라면 조금 이상할수도 있습니다.
이는 얼마나 떨어졌는지를 말하는것보다 나타내기 쉽습니다.
항상 말하기는 힘드니까 말이에요.
예를들어 원에서 앞의 두개의 매개변수는
x 는 200이고 y 는 229가 되겠네요.
이말은
얼마나 멀리, 얼마나 아래로 떨어졌는지와 똑같은 말입니다.
다음으로 고려해야할것은
어떤 단위가 사용되고 있느냐 입니다.
200센치미터, 200인치, 200마일 무엇일까요?
우리는 여기서 픽셀 단위를 사용합니다.
픽셀은 화면에서 아주 작은 점 하나입니다.
이 도화지는 400개의 픽셀의 너비로 구성되있습니다.
이게 왼쪽 위 모서리가 0 인 이유입니다.
이쪽이 400인 이유입니다. 왜냐하면 400 픽셀이기 때문이지요.
똑같이 200을 보면 200 픽셀을 의미하게 됩니다.
이해하셨을거라 생각합니다.
멋지네요!
line ellipse rect 세가지 함수들을 알게됬습니다.
그리고 각각의 매개변수도요.
많은것을 다루었지만 계속해서 공부하고 다룬다면
곧 익숙해질겁니다.