발표 챕터

69p   Shape 2: Vertices
79p   Math 2: Curves
85p   Color 1: Color by Numbers

- vertex를 사용한 보다 다양한 모양의 기하학적 shape 만들기
- 수학 방정식을 사용한 곡선 그리기
- processing에서 지원하는 color mode 및 color 사용 방법






Shape 2: Vertices

     -주요 syntax
       beginShape(), endShape(), vertex()
       curveVertex(), bezierVertex()



    - vertex 함수들을 사용하면 기존의 rect(), ellipse()등을 사용한 shape보다 더 복잡하고 다양한 shape을 만들 수 있음

    - vertex()는 반드시 beginShape()으로 시작하여 endShape()으로 닫아주어야함
 
    - beginShape()의 parameter(TRIANGLES, TRIANGLE_STRIP, TRIANGLE_FAN, QUADS, QUAD_STRIP)들을 사용하여
      같은 vertex() 값을 같더라도 다양한 shape이 가능함

    - processing에서 곡선을 그리는 함수에는 curveVertex()와 bezierVertex()가 있음.
      (curveVetex()는 시작과 끝의 control point 좌표값을 조정하여 곡선의 시작과 끝 모양을 바꿀 수 있음.
       bezierVertex() 일러스트레이터의 펜툴로 곡선을 그리는 방법과 같은 개념)




    - 중요 pages
       69p : vertex 개념 설명
       72p : beginShape()의 parameter를 바꿔서 다양한 shape 만들기
       76p : curveVertex()와 bezierVertex() 차이점을 그림으로 설명
     






Math 2: Curves


     -주요 syntax
       sq(), sqrt(), pow(), norm(), lerp(), map()



    - 수학적인 방정식을 곡선을 그리는데 이용하는 것을 설명하는 챕터
      (관련 함수들이 어떤 것이 있다는 정도만 알아도 충분함.)

    - Normalizing, Mapping 관련 함수들
      norm() : 특정 범위에 포함된 값을 0~1사이의 값으로 변환
      lerp()   : 0~1사이의 값을 특정 범위 사이의 값으로 변환( norm()과 반대의 기능)
      map() : 특정 범위에 포함된 값을 또 다른 특정 범위 사이의 값을 변환

    - 이  챕터의 함수들을 사용하면 수학적인 곡선을 그릴 수 있으며, 다른 도형을 그리는 함수들과 함께 사용하면 단순한 곡선이
      아닌 곡선의 성질을 갖는 다양한 형태의 shape을 그릴 수 있음



    - 중요 pages
       80p : Normalizing, Mapping 관련 함수 소개 및 개념 설명
       82p : 수학적인 공식으로 그려진 곡선들의 예시
       84p : 도형을 그리는 다른 함수들을 함께 사용한 예

     




Color 1: Color by Numbers



     -주요 syntax
       color, color(), colorMode()



    - processing은 크게 RGB와 HSB의 color mode를 지원함
  
    - Red, Green, Blue의 조합을 색을 만들어야 하는 RGB mode보단 색상이 0 ~360가지로 나눠져 있는 HSB mode가 대부분의
      경우 사용하기 편함.(그러나 사용 상황에 따라 적절한 color mode는 달라질 수 있음)

    - colorMode() 아래와 같은 방법으로 설정하며, RGB와 HSB 각각의 min, max값을 원하는 값으로 재설정 할 수 있음
        colorMode(mode)
        colorMode(mode, range)
        colorMode(mode, range1, range2, range3)
     


    - processing의 Tools 메뉴에 Color Selector를 사용하여 이용하고자 하는 색상의 값을 알 수 있음
     


    - color 라는 변수 타입이 있어서 지정한 color값을 변수에 저장할 수 있음
    
    - color() 함수의 parameter 갯수에 따라 사용 방법이 다름
         color(gray)                                          : parameter가 하나일때는 gray scale
         color(gray, alpha)                               : parameter가 두 개일때는 alpha값이 추가된 gray scale
         color(value1, value2, value3)             : parameter가 세 개일때는 color mode에 따라 R, G, B 또는 H, S, B 값을 나타냄
         color(value1, value2, value3, alpha)
  : parameter가 네 개일때는 위의 값에 alpha값이 추가된 것

 
   - 중요 pages
       86p : color를 사용한 예제들
       88p : alpha(투명도)에 대한 설명과 예제들
       89p : color변수와 사용예
       91p : colorMode설정 방법

Posted by 알 수 없는 사용자
발표 챕터 

43p    Math 1: Arithmetic, Functions
51p    Control 1: Decisions
61p    Control 2: Repetition

- processing에 사용되는 수학 연산용 syntax들과 관련 함수를 알아봄.
- if, else 를 사용한 conditionals(조건문)및 관련 syntax
- for를 사용한 repetition(반복문) 및 관련 syntax






Math 1: Arithmetic, Functions


     -주요 syntax
       + (add), - (subtract), * (multiply), / (divide),% (modulus)
       () (parentheses)
       ++ (increment), -- (decrement), += (add assign), -= (subtract assign)
       *= (multiply assign), /= (divide assign), - (negation)
       ceil(), floor(), round(), min(), max()


    - 기본적인 수학 연산자의 사용법은 일반적인 사용법과 동일
       (곱셉과 나눗셈은 덧셈과 뺄셈보다 우선하며, 괄호 안의 수식이 먼저 계산됨)

    - %는 나눗셈의 나머지 값을 돌려줌

    - float는 소숫점이 있는 숫자를 받는 변수 타입이며, int는 소수점이 없는 정수만을 받는 변수 타입
      (소숫점이 있는 숫자를 int 타입의 변수에 넣으면 error가 발생)

    - x++ 는 x = x + 1 과 동일한 의미. 단 ++x은 같은 연산을 하지만 계산된 값이 업데이트 되는 순서가 다름.
      x++ 는 다음 라인으로 넘어가야 계산된 값이 업데이트되며, ++x는 바로 그 라인에 계산된 값이 업데이트 됨.
        
         int x = 1;
         println(x++); // "1"을 콘솔창에 출력함
         println(x); // "2"를 콘솔창에 출력함 

         int x = 1;
         println(++x); // "2"콘솔창에 출력함
         println(x); // "2"콘솔창에 출력함



    - 중요 pages
       45p : %(modulous)관련 설명
       46p : int와 float의 차이 설명
       49p : ++, -- ,*=, /= 등 단축형 연산자 및 활용법.
       49p : ceil()올림, floor()내림, round()반올림, min(), max() 함수 소개 및 사용법





Control 1: Decisions



     - 주요 syntax
        > (greater than), < (less than)
        >= (greater than or equal to), <= (less than or equal to)
        == (equality), != (inequality)
        if, else, {} (braces)
        || (logical OR), && (logical AND), ! (logical NOT)
  


     - if, else를 사용하면 정해진 조건에 맞는 경우에만 코드가 실행되게 할 수 있음
       기본적인 형태는 아래와 같음
           
       if (주어진 조건) {
          실행될 코드
       }
       
   
       실제 코드 사용 예
       x에 할당된 값만 다른 같은 형태의 코드. x의 값에 따라 그려지는 도형이 달라짐
     
       * x가 100 보다 크기 때문에 원이 그려진다.
 



 
        * x 가 100보다 작기 때문에 사각형이 그려진다.
 
                                    
    


     - &&, || 는 두 개 이상의 조건이 필요할 때 사용하는 연산자.

  


    - 중요 pages
        54p : if, else 구조를 설명하는 다이어 그램
        57p : &&, ||, ! 등의 연산자 소개 및 사용 방법
        59p : boolean 타입의 변수 사용예








Control 2: Repetition



     - 주요 syntax
        for


    - for 문을 사용하면 여러 줄로 써야하는 반복적인 코드를 짧은 몇 줄로 줄여서 쓸 수 있다.

    

   
       for (int i = 20; i < 150; i += 10) {         => i의 초기값이 20으로 주어지고, i가 150보다 작을 때까지 i에 계속 10을
            line(i, 20, i, 180);                               더하면서 { }안의 코드를 실행하게 된다.
            }
    



    - 중요 pages
        62p : for문의 구조를 설명하는 다이어그램
        64p : for문을 사용한 예제들
        65p : for문에 또다르 for문을 사용하는 예제
        66p : for문과 앞 챕터에서 배운 if문을 함께 사용한 예제
Posted by 알 수 없는 사용자