목차 일부
그림 목차 ... 10
표 목차 ... 13
샘플 프로그램 목차 ... 14
일러 두기 ... 15
Chapter 1 컴퓨터 그래픽스와 OpenVG ... 17
1.1 컴퓨터 그래픽스 개요 ... 18
컴퓨터 그래픽스의 발전 ... 18
컴퓨터 그래픽스의 분류 ... 19
그래픽스의 시스템 ... 23
그래픽...
더보기
목차 전체
그림 목차 ... 10
표 목차 ... 13
샘플 프로그램 목차 ... 14
일러 두기 ... 15
Chapter 1 컴퓨터 그래픽스와 OpenVG ... 17
1.1 컴퓨터 그래픽스 개요 ... 18
컴퓨터 그래픽스의 발전 ... 18
컴퓨터 그래픽스의 분류 ... 19
그래픽스의 시스템 ... 23
그래픽스 소프트웨어의 구성 ... 23
1.2 KHRONOS Group과 OpenVG ... 25
KHRONOS 그룹 ... 25
OpenVG 표준 ... 27
1.3 파이프라인 ... 30
Stage 1 : Path, Transformation, Stroke, and Paint Definition ... 30
Stage 2 : Stroke Path Generation ... 33
Stage 3 : 변환 Transformation ... 34
Stage 4 : 래스터화 Rasterization ... 35
Stage 5 : 클리핑과 마스킹 ... 36
Stage 6 : Paint Generation ... 38
Stage 7 : Image Interpolation ... 39
Stage 8 : Blending and Antialiasing ... 40
Stage 9 : Multisampling (OpenVG 1.1 Only) ... 41
안티애일리어싱 효과의 이해 ... 42
OpenVG Pipeline 정리 ... 43
Chapter 2 OpenVG 개발 환경 ... 45
2.1 개발 도구 ... 46
개발 플랫폼, 윈도우 시스템에 따른 개발 방법 ... 47
2.2 휴원의 AlexVG™ StudyKit ... 48
AlexVG™ StudyKit 개요 ... 48
AlexVG 개발 도구 설치 ... 48
2.3 윈도우 시스템의 구성 ... 52
윈도우의 생성 ... 52
이벤트 핸들러 구성 ... 54
환경설정 테스트: 나의 첫번째 OpenVG 프로그래밍 ... 57
2.4 EGL에 대한 간단한 설명 ... 62
Chapter 3 OpenVG 프로그래밍 기초 ... 65
3.1 OpenVG API 의 소개 ... 66
API 설계 Concept ... 66
3.2 자료형, 오류 코드, 함수 ... 68
자료형 (Data Types) ... 68
Error Codes ... 70
Parameter의 설정 ... 71
3.3 간단한 Path 그리기 ... 72
OpenVG의 좌표계 개요 ... 72
삼각형 그리기 ... 72
삼각형의 외곽선 색상 바꾸기 ... 74
삼각형의 내부를 회색으로 칠하기 ... 75
삼각형을 변환 ... 76
3.4 이미지 간단하게 그리기 ... 77
이미지 그리기 ... 77
Chapter 4 Path ... 81
4.1 Path의 구성 ... 82
Path와 SubPath ... 82
단순 다각형과 복잡 다각형 ... 84
Subpath와 세그먼트 ... 85
4.2 직선 세그먼트 (MoveTo, LineTo, ClosePath) ... 89
MoveTo (x0,y0) ... 89
LineTo (x0,y0) ... 89
HLineTo (x0) ... 89
VLineTo (y0) ... 89
ClosePath () ... 89
4.3 곡선 세그먼트 (CubicTo, QuadTo, SCubicTo, SQuadTo ) ... 91
베지어 곡선 (Bezier Curve)의 이해 ... 91
두개의 베지어 곡선의 연결 ... 95
4.4 원호 세그먼트 (Elliptical Arc) ... 97
원호 ... 97
4.5 Path 오브젝트와 관련 명령 ... 100
Path의 생성과 삭제 (Creating and Destroying Path) ... 100
Path 데이터 입력 (Appending Client-Side Data to a Path) ... 103
Path 프로그램 작성 ... 104
렌더링 (Fill or Stroke) ... 106
4.6 Path 관련 기타 명령 ... 107
Path 관련 질의 ... 107
Path의 Capabilities ... 108
Path간 데이터 복사 ... 108
Path 데이터의 수정 ... 109
Path의 변환 ... 109
두개의 Path를 보간 ... 110
Path의 길이 ... 111
Path 상의 위치에서 위치와 접선 벡터 ... 112
Path의 Boundgin Box 질의 ... 113
Chapter 5 Fill and Stroke ... 115
5.1 Path의 Fill ... 116
Fill Rule ... 116
자동 닫힘 ... 118
5.2 Path의 Stroke ... 119
line width ... 119
end cap style ... 119
join style ... 119
miter limit ... 120
점선 (Dash) ... 122
Stroke와 Anti-aliasing ... 125
Chapter 6 페인트 ... 127
6.1 페인트의 종류 ... 128
단색 페인트 (Solid Color) ... 128
선형 그라디언트 (Linear Gradient) ... 128
원형 그라디언트 (Radial Gradient) ... 128
Color Ramp ... 129
Color Ramp Spread Modes ... 130
Pattern 페인트 ... 131
6.2 페인트 오브젝트 ... 132
페인트 오브젝트의 생성과 제거 ... 132
페인트 파라메터 설정 ... 132
페인트의 종류 설정 ... 133
컬러 페인트 설정 ... 134
선형 그라디언트 페인트 설정 ... 136
원형 그라디언트 페인트 설정 ... 138
패턴 페인트 설정 ... 140
Chapter 7 컬러와 이미지 ... 143
7.1 컬러 개요 ... 144
7.2 이미지 오브젝트 (Image Object) ... 148
이미지 포맷 (Image Formats) ... 148
이미지 출력 모드 ... 150
이미지 오브젝트의 생성과 제거 ... 156
이미지 데이터 설정 ... 159
화면에 이미지 그리기 ... 162
7.3 이미지 API ... 163
이미지 속성 질의 ... 163
자식 이미지 (Child Image) ... 163
이미지간 픽셀 복사 ... 166
화면을 이용하는 이미지 API ... 167
7.4 이미지 필터 API ... 170
이미지 형식 정규화 (Format Normalization) ... 170
컬러 조합 (Color Combination) ... 171
컨볼루션 (Convolution) ... 173
Lookup Table ... 179
Color Plates ... 181
Chapter 8 변환 ... 205
8.1 OpenVG의 좌표계 ... 206
2차원 직교 좌표계 ... 206
사용자 좌표계 ... 207
화면 좌표계 ... 208
페인트 좌표계 ... 208
8.2 변환 ... 209
변환과 행렬 ... 209
변환의 종류 ... 210
OpenVG에서의 변환의 종류 ... 212
Affine Transform과 Projective(Perspective) Transform ... 214
복합 변환 ... 215
8.3 변환 API ... 217
Matrix Mode ... 217
변환 행렬 API ... 217
Chapter 9 시저링과 매스킹 ... 223
9.1 Scissoring ... 224
Scissoring 설정 ... 225
9.2 매스킹 (Masking) ... 227
VGMaskOperation의 종류 ... 228
vgMask 함수 ... 230
9.3 RenderToMask (OpenVG 1.1 Only) ... 234
Chapter 10 컬러 변환과 블렌딩 ... 239
10. 1 컬러 변환 ... 240
컬러 변환 설정 방법 ... 240
10.2 블렌딩 ... 242
블렌딩 모드 ... 242
블렌딩 모드의 설정 ... 244
Chapter 11 대화형 그래픽스와 애니메이션 ... 251
11.1 애니메이션 ... 252
프레임율과 리프레시율 (Frame Rate and Refresh Rate) ... 252
애니메이션의 종류 ... 254
애니메이션을 위한 12개의 기본 원칙 ... 257
11.2 애니메이션 및 대화형 프로그램 설정 ... 260
타이머 설정 및 키 이벤트 설정 ... 260
프로그램 최적화 가이드라인 ... 262
11.3 애니메이션의 대상 ... 264
Chapter 12 Font와 Glyph ... 269
12.1 Text Rendering 개요 ... 270
텍스트 관련 용어 정리 ... 270
텍스트 렌더링 과정 ... 272
12.2 글리프의 위치와 텍스트의 레이아웃 ... 273
12.3 OpenVG에서 폰트의 사용 ... 275
VGFont Objects and Glyph Mapping ... 275
VGFont 오브젝트의 관리 ... 276
VGFont 오브젝트에 대한 질의 ... 277
VGFont에 글리프의 추가 삭제 ... 277
Font Sharing ... 280
12.4 Text Layout and Rendering ... 281
Chapter 13 VGU ... 289
13.1 VGU 개요 ... 290
13.2 기하 프리미티브 (Geometric Primitives) ... 291
Line ... 291
Polygon and PolyLines ... 292
직사각형 ... 294
모서리가 둥근 직사각형 ... 295
타원 ... 296
원호 ... 297
13.3 이미지 워핑 (Image Warping) ... 299
vguComputeWarpQuadToSquare ... 301
vguComputeWarpSquareToQuad ... 302
vguComputeWarpQuadToQuad ... 304
부록 ... 307
A.1 Context Parameter 종류 및 초기값 ... 308
파라미터의 역할 ... 310
구현에 따른 파라메터 값 ... 315
A.2 EGL ... 316
EGL Display ... 316
EGL Configurations ... 317
EGL Configuration 선택 ... 318
EGL Surfaces ... 318
EGL Context ... 319
EGL 설정 ... 320
EGL 해제 ... 321
A.3 헤더 파일 ... 322
openvg.h 파일 ... 322
vgu.h 파일 ... 333
egl.h 파일 ... 335
A.4 찾아보기 ... 341
더보기 닫기