Microsoft PowerPoint - lecture2-opengl.ppt [호환 모드]

Size: px
Start display at page:

Download "Microsoft PowerPoint - lecture2-opengl.ppt [호환 모드]"

Transcription

1 OpenGL & GLUT & GLEW OpenGL & GLUT 년봄학기 3/12/2013 박경신 OpenGL Windows95 이후 OpenGL 이표준으로들어가있음. ftp://ftp.microsfot.com/softlib/mslfiles/opengl95.exe freeglut for Win32 freeglut-msvc mp.zip 내려받기 glew for Win32 glew win32.zip 내려받기 2 Installing OpenGL & GLUT & GLEW Libraries 를 Visual C++ 의 C:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\ 에설치 freeglut.lib glew32.lib glew32mx.lib Include files 을 Visual C++ 의 C:\Program Files\Microsoft SDKs\Windows\v7.0A\include\GL\ 에설치 freeglut.h freeglut_ext.h freeglut_std.h glut.h glew.h glxew.h wglew.h Dynamically-linked libraries를 C:\Windows\system32 (Windows 7 32-bit 운영체제기준 ) 에설치 freeglut.dll, glew32.dll, glew32mx.dll C:\Windows\SysWOW64 (Windows 7 64-bit 운영체제기준 ) 에도 freeglut.dll, glew32.dll, glew32mx.dll 설치 3 Compiling OpenGL Programs Visual Studio 2010 VC++ 실행 프로젝트새로만들기 메뉴에서 File->New->Projects Win32 Console Application 선택 프로젝트이름지정 Linker 에 library files 을지정 메뉴에서 Project->Settings->link->Object/library modules (Project->Properties->Linker->Input->Additional dependencies) glew32.lib lib freeglut.liblib 를넣는다 프로젝트에파일새로만들기 메뉴에서 Project->Add to Project-> Files 파일이름지정 빌드 (build) (F7) 와실행 (execute) (F5) 4

2 Windows System 윈도우시스템 Microsoft Windows X Window systems 윈도우시스템과 OpenGL 시스템은모두래스터그래픽스시스템임 OpenGL 프로그래밍을하기위해서는 사용윈도우시스템에서제공하는래스터시스템을기반으로윈도우프로그래밍수행 윈도우프로그래밍문맥에서추상적인래스터시스템인 OpenGL 시스템을윈도우시스템에연결 OpenGL 에서제공하는함수들을사용하여 3 차원그래픽스프로그래밍을수행 원하는 OpenGL 작업이실제로하드웨어를제어하고있는사용윈도우시스템이효율적으로이해할수있는형태로전환 5 OpenGL 실리콘그래픽스사 (SGI) 가개발한 3차원그래픽스라이브러리 API (1992) 2차원그래픽스는 (z축의값을 0으로처리한 ) 3차원의특수경우로봄 OpenGL 그래픽스함수는프로그래밍언어에독립적인기능으로지정되어있음 C/C++, Java, Fortran, Python 등다수언어와사용가능 OpenGL 은하드웨어에중립적임 (Window system 이나 OS에독립적인 API) No I/O library No specific model loading mechanism No hardware specific functions (but available as extensions) 6 OpenGL Evolution 초창기에 Architectural Review Board (ARB) 에의해주도 SGI, Microsoft, Nvidia, HP, 3DLabs, IBM 등 현재는 Kronos Group OpenGL 전적으로 기반으로감. 즉, 모든응용프로그램은반드시 vertex 와 fragment shader 를사용해야함 대부분 2.5 함수는 deprecated ( 누락될것이라사용을권유하지않음 ) OpenGL ES 임베디드시스템용. Ver1.0은 OpenGL 2.1을간소화. Ver2.0은 OpenGL 3.1을간소화 WebGL OpenGL ES 2.0을 Javascript로구현 OpenGL 4.1 & Geometry shader와 tesselator 추가 OpenGL 1.0 OpenGL 1.0은 1994년 7월 1일발표 OpenGL 1.0의그래픽스파이프라인은 fixed-function으로 OpenGL 1.1부터 OpenGL 2.0 (2004/09) 까지사용 Pixel Transform and Lighting Texture Store Primitive Setup and Rasterizati on Coloring and Texturing Blending

3 OpenGL 2.0 Programmable Pipeline OpenGL 2.0 은공식적으로 Programmable 를추가 그러나, Fixed-function i pipeline 도사용가능 Pixel Transform and Lighting Texture Store Primitive Setup and Rasterizati on Coloring and Texturing Blending OpenGL 3.0 OpenGL 3.0 은 deprecation model 을소개 OpenGL 이전버전까지는 backward compatibility 를지원하기위하여함수를추가해왔지만 OpenGL 3.0부터더이상 backward compatibility를지원하지않고새로운함수를제공함 OpenGL 3.1 (2009/03/24) 까지는그래픽스파이프라인이동일하게적용 OpenGL 3.1부터 forward compatible contexts를지원 Context Type Description Full Forward Compatible Includes all features (including those marked depr ecated) available in the current version of OpenGL Includes all non-deprecated features (i.e., creates a context that would be similar to the next versio nof OpenGL) Exclusively Programmable Pipeline OpenGL 3.1은 Fixed-function pipeline을제거함 프로그램은오로지 shader를사용해야함 추가적으로, 모든데이터는 GPU에보내어져서사용함 모든정점데이터는 buffer objects를사용하여보내어짐 Pixel Texture Store Primitive Setup and Rasterizati on Blending More Programmability OpenGL 3.2 (2009/09/03) 은 Geometry 단계를추가함 Pixel Texture Store Geometry Primitive Setup and Rasteriza tion Blending

4 More Evolution Context Profiles OpenGL 3.2 는 context profile 개념을소개 Profile이란응용프로그램에서 features를선택하기쉽게하기위하여제공 현재 2 가지 profile 이존재 : core & compatible OpenGL 4.1 & 4.3 OpenGL 4.1 (2010/07/25) 에서는 tessellation-control shader와 tessellation-evaluation shader를추가 가장최근버전은 OpenGL 4.3 Context Type Profile Description core All features of the current release Full compatible All features ever in OpenGL Forward Compa core All non-deprecated features tible compatible Not supported Pixel Tessellation Control Texture Store Tessellation Evaluation Geometry Primitive Setup and Rasterizatat ion Blending OpenGL Libraries OpenGL core library 윈도우시스템에서는 OpenGL32 유닉스 / 리눅스시스템에서는 libgl.a OpenGL Utility Library (GLU) OpenGL core를추가지원함 OpenGL Windows Toolkit Different platforms have different ways to integrate OpenGL with their windowing environment X Window System (GLX) Apple (AGL) Windows (WGL) IBM OS/2 (PGL) Cross-platform (GLUT OpenGL Utility Toolkit) 15 Freeglut & GLEW Freeglut는 GLUT를개선한버전 초기 GLUT는오래되고더이상개선되지않고있음. freeglut는 GLUT를개선한것으로추가적인기능제공함. GLEW (OpenGL Extension Wrangler Library) 하드웨어와연관이되어있는 OpenGL은사용하기어려움. 함수포인터를얻어내야하며 Extension 도신경써야함. GLEW는 GLSL같은 OpenGL extension을편리하게사용할수있도록함 OpenGL 응용프로그램에서 #include <glew.h> 와 glewinit() 를불러서초기화하면됨 16

5 OpenGL & GLSL 쉐이더기반의 OpenGL 대부분의 state variables, attibutes and related pre 3.1 OpenGL funtions 이더이상사용되지않음. 모든것이쉐이더를통해이루어짐 GLSL (OpenGL Shading Language) Nvidia 의 Cg 나 Microsoft HLSL 과비슷한 C 언어와흡사함 코드는쉐이더로보내어져서 GPU를통해렌더링이수행됨 17 단순히윈도우를여는프로그램예제 #include <GL/glew.h> #include <GL/freeglut.h> #include <GL/freeglut_ext.h> ext void display (void) int main(int argc, char *argv[]) glutinit(&argc, argv); glutinitdisplaymode(glut_rgba); glutinitwindowsize(512, 512); glutcreatewindow(argv[0]); t glewinit(); glutdisplayfunc(display); glutmainloop(); return 0; 18 윈도우를전부하얀색으로칠하는프로그램예제 void display (void) glclear(gl_color_buffer_bit); glflush(); void init (void) glclearcolor(1.0, 1.0, 1.0, 1.0); int main(int argc, char *argv[]) glutinit(&argc, argv); glutinitdisplaymode(glut_rgba); glutinitwindowsize(512, 512); glutcreatewindow(argv[0]); glewinit(); init(); glutdisplayfunc(display); glutmainloop(); return 0; 19 OpenGL/GLUT Program 작성예 gl 를이용한 OpenGL 2.x 프로그램 void display (void) glclear(gl_color_buffer_bit); glcolor3f(1.0, 0.0, 0.0); glbegin(gl_line_loop); gl3f(-0.75, -0.75, 0.0); gl3f(0.75, -0.75, 0.0); gl3f(0.75, 0.75, 0.0); glend(); glflush(); void init (void) /* 변경없음 */ int main(int argc, char*argv[]) argv[]) /* 변경없음 */ 20

6 gl 를이용한 OpenGL 2.x 프로그램 void display (void) glclear(gl_color_buffer_bit); glcolor3f(1.0, 0.0, 0.0); glbegin(gl_polygon); gl3f(-0.75, -0.75, 0.0); gl3f(0.75, -0.75, 0.0); gl3f(0.75, 0.75, 0.0); glend(); glflush(); OpenGL/GLUT Program 작성예 OpenGL 3.x 프로그램 void display (void) glclear(gl_color_buffer_bit); /* 이부분을쉐이더로작성 */ glflush(); OpenGL 3.x Simplified Rendering Pipeline Application GPU Flow Vertices Vertices s Pixels Processing Rasterizer Processing Framebuffer Modern OpenGL Programming in a Nutshell Modern OpenGL (OpenGL 3.x) 프로그래밍은다음과같은단계로진행 1. 프로그램을만든다. 2. 자료를 Buffer Object (VBO) 와 Array Object (VAO) 를만들고이자료를쉐이더에로딩한다. 3. 이자료의위치와쉐이더의변수와 연결 (Connect) 한다. 4. 렌더링을수행한다.

7 OpenGL 3.x Program Structure OpenGL 3.x 프로그램의일반적인구조 main(): 관련콜백함수지정등 Specifies the callback functions Opens one or more windows with the required properties Enters event loop (last executable statement) init(): 상태변수 (state variables) 지정 Viewing Attributes init(): read, compile and link shaders callbacks Display function Input and window functions #include <GL/glew.h> #include <GL/freeglut.h> th includes gl.h lh #include <GL/freeglut_ext.h> int main(int argc, char** argv) specify window properties glutinit(&argc,argv); g g glutinitdisplaymode(glut_single GLUT_RGB); glutinitwindowsize(512,512); glutinitwindowposition(0,0); glutcreatewindow(argv[0]); glutdisplayfunc(display); display callback glewinit(); init(); set OpenGL state and initialize shaders glutmainloop(); enter event loop void glutinit(int *argc, char **argv) GLUT와 OpenGL 환경을초기화. 인수에는 main의인수를그대로건네줌. void glutinitwindowsize(int width, int height) void glutinitwindowposition(int x, int y) 윈도우크기를지정함. 윈도우위치를지정함. int glutcreatewindow(char *name) 윈도우를여는함수. 인수 name은그윈도우의이름이타이틀바에표시됨. void glutdisplayfunc(void (*func)(void)) 인수 func 는열린윈도우내에디스플레이하는 ( 즉, 그림을그리는 ) callback함수포인터. 윈도우가열리거나다른윈도우에의해숨겨진윈도우가다시디스플레이될때이함수가실행 void glutmainloop(void) GLUT 루프. 이함수의호출로프로그램은이벤트를기다리는 27 상태임. void glutinitdisplaymode(unsigned int mode) 디스플레이의표시모드를설정. Mode에 GLUT_RGBA를지정했을경우는색의지정을 RGB로사용함을지정. 그밖에인덱스칼라모드 (GLUT_INDEX) 를지정하면효율을향상시킬수있음. void glclearcolor(glclampf R, Glclampf G, Glclampf B, Glclampf A) 윈도우를전부칠할때의색을지정. R, G, B, A 는 0~1 사이의값을가짐. (0, 0, 0, 1) 을지정하면검정색의불투명을그림. void glclear(glbitfield mask) 윈도우를전부칠함. Mask에는전부칠하는버퍼를지정한다. OpenGL이관리하는화면상의버퍼 ( 메모리 ) 에는 color buffer, depth buffer, stencil buffer, overlay buffer, 등이겹쳐서존재함. GL_COLOR_BUFFER를지정했을때는컬러버퍼만전부칠해짐. void glflush(void) 이함수는아직실행되지않은 OpenGL 명령을전부실행. 28

8 Immediate Mode Graphics Geometry 는정점 (vertices) 으로지정 2 차원또는 3 차원공간에한지점에정점으로지정 Points, lines, circles, polygons, curves, surfaces Immediate mode 응용프로그램에서매번정점이지정되고, 그위치값이 GPU에보내어짐 과거에 gl를사용했었음 CPU 와 GPU 간에병목현상이발생함 OpenGL 3.1 부터사라짐 Retained Mode Graphics 모든정점 (vertex) 과속성 (attribute) 정보를배열 (array) 로지정 이배열을 GPU 에보내어저장하고렌더링에사용함 Display Callback void display() glclear(gl_color_buffer_bit); gldrawarrays(gl_triangles, 0, 3); glflush(); gldrawarrays 를사용하여그리기를수행함. 이때, 배열 (arrays) 는정점배열 (vertex arrays) 을가진버퍼객체 (buffer objects) 임 Arrays 정점 (Vertices) 속성들 Position Color Texture Coordinates Application data const float vertexpositions[] = -0.75f, -0.75f, 0.0f, 1.0f, 0.75f, -0.75f, 0.0f, 1.0f, 0 75f 0 75f 0 0f 1 0f 0.75f, 0.75f, 0.0f, 1.0f, ;

9 Array Object Array Object 는모든정점자료 (positions, colors,..) 를묶어줌. 하나의 VAO에여러개의 Buffer Object을가질수있음. 예로, 위치정보버퍼와색상정보를위한버퍼를 VAO에사용. 보통하나의 Mesh마다하나의 VAO를사용함 VAO 를생성하고, bind 함. GLuint vao; // vertex array object glgenarrays(1, &vao); glbindarray(vao); 이것은 Array만을가진다는의미로아직실제데이터 (content) 는없음. Buffer Object Buffer object 는대용량자료를 GPU 에보내줄수있음. 버퍼를생성하고, bind하고, 자료를넣어줌. GLuint buffer; // vertex buffer object glgenbuffers(1, &buffer); glbindbuffer(gl_array_buffer, buffer); glbuffer(gl _ ARRAYBUFFER, _ sizeof(vertexpositions), ete osto s), vertexpositions, GL_STATIC_DRAW); 그리고 glattribpointer를호출하여현재바인드된버퍼가몇번째 Attribute 버퍼인지어떤속성을갖는지알려줌. 다음 glenableattribarray(index) 를호출해야해당버퍼의정보가렌더링됨. glattribpointer(0, 4, GL_FLOAT, GL_FALSE, 0, 0); glenableattribarray(0); Initialization init() 에서 Array Objects 와 Buffer Objects 지정 또한일반적으로 GL 의 clear color 와 parameters 도지정 또한 shaders 도지정 Read Compile Link Functions glcreateprogram 프로그램 (vertex shader, geometry shader, fragment shader를포함하는파이프라인 ) 생성 glcreate GL에서쉐이더공간을만들어달라고요청. 단지공간을생성하기위한함수 glsource 할당한쉐이더공간과쉐이더소스파일을읽어들인버퍼를연결 glcompile 쉐이더를컴파일 glattach 컴파일된쉐이더를프로그램에붙임 gllinkprogram 링크하고에러체크. 링크가완료되면프로그램이준비완료된것임 gluseprogram 이프로그램을사용

10 // Create a NULL-terminated string by reading the provided file static char* readsource(const char* shaderfile) FILE* fp = fopen(shaderfile, "r"); if ( fp == NULL ) return NULL; fseek(fp, 0L, SEEK_END); long size = ftell(fp); fseek(fp, 0L, SEEK_SET); char* buf = new char[size + 1]; fread(buf, 1, size, fp); buf[size] = '\0'; fclose(fp); // Create a GLSL program object from vertex and fragment shader files GLuint Init(const char* vfile, const char* ffile) struct const char* filename; GLenum type; GLchar* source; shaders[2] = vfile, GL_VERTEX_SHADER, NULL, ffile, GL_FRAGMENT_SHADER, NULL ; GLuint program = glcreateprogram(); for ( int i = 0; i <2;++i ) & s = shaders[i]; s.source = readsource( s.filename ); if ( shaders[i].source == NULL ) std::cerr << "Failed to read " << s.filename << std::endl; exit( EXIT_FAILURE ); GLuint shader = glcreate( s.type ); return buf; glsource( shader, 1, (const GLchar**) &s.source, NULL ); glcompile( shader ); GLUT (OpenGL Utility Toolkit) // 중간생략 delete [] ssource; s.source; glattach( program, shader ); gllinkprogram(program); GLint linked; glgetprogramiv( program, GL_LINK_STATUS, &linked ); if (!linked ) std::cerr << " program failed to link" << std::endl; GLint logsize; glgetprogramiv( g (program, GL_ INFO_ LOG_ LENGTH, &logsize); char* logmsg = new char[logsize]; glgetprograminfolog( program, logsize, NULL, logmsg ); delete [] logmsg; g exit( EXIT_FAILURE ); gluseprogram(program); return program; Mark J. Kilgard가개발한 portable windowing and interaction API Prefix glut 로시작 대부분의 window system 에보편적인기능들을 wrapping 한상위 interface제공 (portable across all PC and workstation OS platforms) OpenGL이제공하는범위보다상위수준의 utility function도제공 UNIX/X-window에서개발된 code를그대로재사용가능 Win32, MFC, Xlib 을알필요가없음 그러나 Window system의기능을제한적으로만이용가능

11 GLUT Program Structure GLUT Callbacks GLUT defines a basic program structure - an event loop, with callback functions. Callback, a function that you provide for other code to call when needed; d the "other code" is typically in a library GLUT uses callbacks for drawing, keyboard & mouse input, and other events. Whenever the window must be redrawn, your drawing callback is called. Whenever an input event occurs, your corresponding callback is called. GLUT Callbacks glutdisplayfunc glutpostredisplay glutidlefunc gluttimerfunc glutgetmodifiers glutignorekeyrepeat glutkeyboardfunc glutkeyboardupfunc glutspecialfunc glutspecialupfunc GLUT Callbacks Handling Display Callbacks glutdisplayfunc(void (*func)(void)) Specifies a function that would draw the graphical contents Argument: display function name Handling Input Events glutreshapefunc(void (*func)(int w, int h)) What action should be taken when the window is resized glutkeyboardfunc(void (*func)(unsigned char key, int x, int y)) glutmousefunc(void (*func)(int button, int state, int x, int y)) Handle keyboard key and mouse button glutmotionfunc(void (*func)(int x, int y)) What to do when the mouse is moved while a mouse button is pressed

12 The Reshape Event Callback This callback sets up OpenGL to display images in a window of the new size The value w is the new width, and the value h is the new height void reshape(int w, int h) glviewport(0, 0, w, h); The Keyboard Event Callback This callback simply causes the program to exit when the user hits the ESC key void keyboard(unsigned char key, int x, int y) switch (key): /* ESC-key & q-key exits the program */ case 27: case q : exit(0); GLUT Functions glutmainloop(void) Enter the GLUT event processing loop glutpostredisplay() Ensures that the window gets drawn at most once each time GLUT goes through the event loop. In general, never call the display callback directly, but rather use the glutpostredisplay() whenever the display needs to be redrawn.

Microsoft PowerPoint - lecture2-opengl.ppt [호환 모드]

Microsoft PowerPoint - lecture2-opengl.ppt [호환 모드] OpenGL & GLUT OpenGL & GLUT 321190 2011 년봄학기 3/15/2011 박경신 OpenGL http://www.opengl.org/ http://www.sgi.com/software/opengl Windows95 이후 OpenGL 이표준으로들어가있음. ftp://ftp.microsfot.com/softlib/mslfiles/opengl95.exe

More information

Microsoft PowerPoint - lecture2-opengl.ppt

Microsoft PowerPoint - lecture2-opengl.ppt OpenGL & GLUT OpenGL & GLUT 321190 2007년봄학기 3/9/2007 박경신 OpenGL http://www.opengl.org/ http://www.sgi.com/software/opengl Windows95 이후 OpenGL 이표준으로들어가있음. ftp://ftp.microsfot.com/softlib/mslfiles/opengl95.exe

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 01 OpenGL 과 Modeling 01 OpenGL API 02 Rendering Pipeline 03 Modeling 01 OpenGL API 1. OpenGL API 설치및환경설정 2. OpenGL API 구조 2 01 1. OpenGL API 설치및환경설정 OpenGL API 의상대적위치 System Memory Graphics Application

More information

Microsoft PowerPoint - lecture3-ch2.ppt

Microsoft PowerPoint - lecture3-ch2.ppt Coordinate Systems Graphics Programming 321190 2007년봄학기 3/13/2007 박경신 2D Cartesian Coordinate Systems 3D Cartesian Coordinate Systems Cartesian Coordination Systems -x +y y-axis x-axis +x Two axes: x-axis

More information

컴퓨터그래픽스 소프트웨어

컴퓨터그래픽스 소프트웨어 Video & Image VIPLProcessing Lab. 2014-1 Myoung-Jin Kim, Ph.D. (webzealer@ssu.ac.kr) 목차 1 래스터그래픽스및벡터그래픽스 2 컴퓨터그래픽스소프트웨어의유형 3 OpenGL 프로그래밍 래스터그래픽스영상 래스터그래픽스영상이란? 래스터 : CRT 의래스터 주사 (raster scan) 방식에서사용된용어

More information

chapter2.hwp

chapter2.hwp 2. 그래픽스프로그래밍의소개 2.1 OpenGL 이란? 2.1.1 OpenGL 의정의 2차원또는 3차원드로잉을위한표준그래픽스라이브러리 - 그래픽스하드웨어에대한소프트웨어인터페이스 - C나 C++ 과같은프로그래밍언어는아님 - 그래픽스하드웨어에잘구현될수있음 -C언어기반라이브러리 - 상태기반아키텍쳐 - 즉시모드 (Immediate mode) 기반 그래픽스라이브러리

More information

04_오픈지엘API.key

04_오픈지엘API.key 4. API. API. API..,.. 1 ,, ISO/IEC JTC1/SC24, Working Group ISO " (Architecture) " (API, Application Program Interface) " (Metafile and Interface) " (Language Binding) " (Validation Testing and Registration)"

More information

Microsoft PowerPoint - lecture4-ch2.ppt

Microsoft PowerPoint - lecture4-ch2.ppt Graphics Programming OpenGL Camera OpenGL 에서는카메라가물체의공간 (drawing coordinates) 의원점 (origin) 에위치하며 z- 방향으로향하고있다. 관측공간을지정하지않는다면, 디폴트로 2x2x2 입방체의 viewing volume을사용한다. (1, 1, 1) 321190 2007년봄학기 3/16/2007 박경신

More information

강의10

강의10 Computer Programming gdb and awk 12 th Lecture 김현철컴퓨터공학부서울대학교 순서 C Compiler and Linker 보충 Static vs Shared Libraries ( 계속 ) gdb awk Q&A Shared vs Static Libraries ( 계속 ) Advantage of Using Libraries Reduced

More information

OpenGL 프로그래밍 가이드 : OpenGL 1.2 공식 학습 가이드 제3판

OpenGL 프로그래밍 가이드 : OpenGL 1.2 공식 학습 가이드 제3판 OpenGL, (OpenGL GL, Graphics Library ). OpenGL 3.,,. OpenGL. 14. 3. 1, OpenGL OpenGL., OpenGL. 2, 3. 3, 3 2.. 4,. 26 Ope ngl Progra mming Guide - OpenGL 1.2 5,, (, ). 3 3. 3. OpenGL.. 6,,,.,,. 7, OpenGL.

More information

chap7.key

chap7.key 1 7 C 2 7.1 C (System Calls) Unix UNIX man Section 2 C. C (Library Functions) C 1975 Dennis Ritchie ANSI C Standard Library 3 (system call). 4 C?... 5 C (text file), C. (binary file). 6 C 1. : fopen( )

More information

Microsoft PowerPoint - lecture3-ch2.ppt [호환 모드]

Microsoft PowerPoint - lecture3-ch2.ppt [호환 모드] Coordinate Systems Graphics Programming 321190 2014 년봄학기 3/14/2014 박경신 2D Cartesian Coordinate Systems 3D Cartesian Coordinate Systems Cartesian Coordination Systems -x +y y-axis x-axis +x Two axes: x-axis

More information

Microsoft Word - cg09-midterm.doc

Microsoft Word - cg09-midterm.doc 중간고사 담당교수 : 단국대학교멀티미디어공학전공박경신 답은반드시답안지에기술할것. 공간이부족할경우반드시답안지몇쪽의뒤에있다고명기한후기술할것. 그외의경우의답안지뒤쪽이나연습지에기술한내용은답안으로인정안함. 답에는반드시네모를쳐서확실히표시할것. 답안지에학과, 학번, 이름외에본인의암호를기입하면성적공고시학번대신암호를사용할것임. 1. 맞으면 true, 틀리면 false를적으시오.

More information

(Microsoft PowerPoint - FZBDPQDCSHAN.ppt [\310\243\310\257 \270\360\265\345])

(Microsoft PowerPoint - FZBDPQDCSHAN.ppt [\310\243\310\257 \270\360\265\345]) Graphics Programming 2.1 The Sierpinski Gasket Sierpinski gasket 예제문제로사용 원래, Fractal geometry 에서정의 만드는방법 삼각형을그린다. 삼각형내부에 random 하게점 P i 를선택, 출력 random 하게꼭지점중의하나 V i 선택 V i 와 P i 의중점을 P i+1 로선택, 출력 위과정을반복

More information

C 프로그래밍 언어 입문 C 프로그래밍 언어 입문 김명호저 숭실대학교 출판국 머리말..... C, C++, Java, Fortran, Python, Ruby,.. C. C 1972. 40 C.. C. 1999 C99. C99. C. C. C., kmh ssu.ac.kr.. ,. 2013 12 Contents 1장 프로그래밍 시작 1.1 C 10 1.2 12

More information

K7VT2_QIG_v3

K7VT2_QIG_v3 1......... 2 3..\ 4 5 [R] : Enter Raid setup utility 6 Press[A]keytocreateRAID RAID Type: JBOD RAID 0 RAID 1: 2 7 " RAID 0 Auto Create Manual Create: 2 RAID 0 Block Size: 16K 32K

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

Open GL

Open GL Graphics Basic Windows & OpenGL Programming 컴퓨터그래픽스연구실 OpenGL 관련참고사이트 OpenGL 공식사이트 http://www.opengl.org/ Khronos Group http://www.khronos.org/ Nehe Productions http://nehe.gamedev.net/ OpenGL 파일설정 압축을푼후다음경로로파일을복사

More information

À©µµ³×Æ®¿÷ÇÁ·Î±×·¡¹Ö4Àå_ÃÖÁ¾

À©µµ³×Æ®¿÷ÇÁ·Î±×·¡¹Ö4Àå_ÃÖÁ¾ P a 02 r t Chapter 4 TCP Chapter 5 Chapter 6 UDP Chapter 7 Chapter 8 GUI C h a p t e r 04 TCP 1 3 1 2 3 TCP TCP TCP [ 4 2] listen connect send accept recv send recv [ 4 1] PC Internet Explorer HTTP HTTP

More information

PCServerMgmt7

PCServerMgmt7 Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network

More information

(Microsoft PowerPoint - JXQEUPXIEBNZ.ppt [\310\243\310\257 \270\360\265\345])

(Microsoft PowerPoint - JXQEUPXIEBNZ.ppt [\310\243\310\257 \270\360\265\345]) Input and Interaction 3.1 Interaction Input 기능의처리 input : 사용자와의대화 O/S 와밀접한관계 문제점 : portability 에심각한장애 MS Windows 용으로작성하면, 거기서만작동 OpenGL approach OpenGL 은 portability 를중시 input 은 OpenGL 기능에서되도록제거 GLUT :

More information

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - chap01-C언어개요.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을

More information

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

untitled

untitled NV40 (Chris Seitz) NV1 1 Wanda NV1x 2 2 Wolfman NV2x 6 3 Dawn NV3x 1 3 Nalu NV4x 2 2 2 95-98: Z- CPU GPU / Geometry Stage Rasterization Unit Raster Operations Unit 2D Triangles Bus (PCI) 2D Triangles (Multitexturing)

More information

歯9장.PDF

歯9장.PDF 9 Hello!! C printf() scanf() getchar() putchar() gets() puts() fopen() fclose() fprintf() fscant() fgetc() fputs() fgets() gputs() fread() fwrite() fseek() ftell() I/O 2 (stream) C (text stream) : `/n'

More information

<4D F736F F F696E74202D204347C3E2BCAEBCF6BEF D315FC4C4C7BBC5CDB1D7B7A1C7C8BDBA20B0B3B0FC2E >

<4D F736F F F696E74202D204347C3E2BCAEBCF6BEF D315FC4C4C7BBC5CDB1D7B7A1C7C8BDBA20B0B3B0FC2E > 목차 1 컴퓨터그래픽스개요 2 컴퓨터그래픽스영상 3 OpenGL 프로그래밍 이병래교수 / 방송대컴퓨터과학과 컴퓨터그래픽스란? 컴퓨터그래픽스에대한다양한시각 컴퓨터그래픽스란? 교재목차 컴퓨터를이용하여그림을그리거나조작하는기술, 제작된그림 그림을그리거나조작하기위해사용되는컴퓨터기술 제1장제2장 컴퓨터그래픽스의개관 컴퓨터그래픽스소프트웨어 하드웨어기술 입출력장치, 비디오메모리,

More information

Ⅱ. Embedded GPU 모바일 프로세서의 발전방향은 저전력 고성능 컴퓨팅이다. 이 러한 목표를 달성하기 위해서 모바일 프로세서 기술은 멀티코 어 형태로 발전해 가고 있다. 예를 들어 NVIDIA의 최신 응용프 로세서인 Tegra3의 경우 쿼드코어 ARM Corte

Ⅱ. Embedded GPU 모바일 프로세서의 발전방향은 저전력 고성능 컴퓨팅이다. 이 러한 목표를 달성하기 위해서 모바일 프로세서 기술은 멀티코 어 형태로 발전해 가고 있다. 예를 들어 NVIDIA의 최신 응용프 로세서인 Tegra3의 경우 쿼드코어 ARM Corte 스마트폰을 위한 A/V 신호처리기술 편집위원 : 김홍국 (광주과학기술원) 스마트폰에서의 영상처리를 위한 GPU 활용 박인규, 최호열 인하대학교 요 약 본 기고에서는 최근 스마트폰에서 요구되는 다양한 멀티미 디어 어플리케이션을 embedded GPU(Graphics Processing Unit)를 이용하여 고속 병렬처리하기 위한 GPGPU (General- Purpose

More information

Dialog Box 실행파일을 Web에 포함시키는 방법

Dialog Box 실행파일을 Web에 포함시키는 방법 DialogBox Web 1 Dialog Box Web 1 MFC ActiveX ControlWizard workspace 2 insert, ID 3 class 4 CDialogCtrl Class 5 classwizard OnCreate Create 6 ActiveX OCX 7 html 1 MFC ActiveX ControlWizard workspace New

More information

Microsoft PowerPoint - 13prac.pptx

Microsoft PowerPoint - 13prac.pptx Viewing 1 th Week, 29 OpenGL Viewing Functions glulookat() Defining a viewing matrix glortho() Creating a matrix for an orthographic parallel viewing i volume glfrustum() Creating a matrix for a perspective-view

More information

슬라이드 1

슬라이드 1 / 유닉스시스템개요 / 파일 / 프로세스 01 File Descriptor file file descriptor file type unix 에서의파일은단지바이트들의나열임 operating system 은파일에어떤포맷도부과하지않음 파일의내용은바이트단위로주소를줄수있음 file descriptor 는 0 이나양수임 file 은 open 이나 creat 로 file

More information

서피스셰이더프로그램 셰이더개발을쉽게! Thursday, April 12, 12

서피스셰이더프로그램 셰이더개발을쉽게! Thursday, April 12, 12 서피스셰이더프로그램 셰이더개발을쉽게! 유니티렌더링시스템소개 렌더링패스 셰이더랩 서피스셰이더 데모 2 유니티렌더링시스템 3 Deferred Lighting Rendering Path Dual Lightmapping Post Effect Processing Realtime Shadow LightProbe Directional Lightmapping HDR Gamma

More information

6주차.key

6주차.key 6, Process concept A program in execution Program code PCB (process control block) Program counter, registers, etc. Stack Heap Data section => global variable Process in memory Process state New Running

More information

adfasdfasfdasfasfadf

adfasdfasfdasfasfadf C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.

More information

2005CG01.PDF

2005CG01.PDF Computer Graphics # 1 Contents CG Design CG Programming 2005-03-10 Computer Graphics 2 CG science, engineering, medicine, business, industry, government, art, entertainment, advertising, education and

More information

DE1-SoC Board

DE1-SoC Board 실습 1 개발환경 DE1-SoC Board Design Tools - Installation Download & Install Quartus Prime Lite Edition http://www.altera.com/ Quartus Prime (includes Nios II EDS) Nios II Embedded Design Suite (EDS) is automatically

More information

13주-14주proc.PDF

13주-14주proc.PDF 12 : Pro*C/C++ 1 2 Embeded SQL 3 PRO *C 31 C/C++ PRO *C NOT! NOT AND && AND OR OR EQUAL == = SQL,,, Embeded SQL SQL 32 Pro*C C SQL Pro*C C, C Pro*C, C C 321, C char : char[n] : n int, short, long : float

More information

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V Mobile Service > IAP > Android SDK IAP SDK TOAST SDK. IAP SDK. Android Studio IDE 2.3.3 Android SDK Version 2.3.3 (API Level 10). Name Reference Version License okhttp http://square.github.io/okhttp/ 1.5.4

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다. Eclipse 개발환경에서 WindowBuilder 를이용한 Java 프로그램개발 이예는 Java 프로그램의기초를이해하고있는사람을대상으로 Embedded Microcomputer 를이용한제어시스템을 PC 에서 Serial 통신으로제어 (Graphical User Interface (GUI) 환경에서 ) 하는프로그램개발예를설명한다. WindowBuilder:

More information

초보자를 위한 C++

초보자를 위한 C++ C++. 24,,,,, C++ C++.,..,., ( ). /. ( 4 ) ( ).. C++., C++ C++. C++., 24 C++. C? C++ C C, C++ (Stroustrup) C++, C C++. C. C 24.,. C. C+ +?. X C++.. COBOL COBOL COBOL., C++. Java C# C++, C++. C++. Java C#

More information

Microsoft PowerPoint - chap13-입출력라이브러리.pptx

Microsoft PowerPoint - chap13-입출력라이브러리.pptx #include int main(void) int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; 1 학습목표 스트림의 기본 개념을 알아보고,

More information

untitled

untitled Step Motor Device Driver Embedded System Lab. II Step Motor Step Motor Step Motor source Embedded System Lab. II 2 open loop, : : Pulse, 1 Pulse,, -, 1 +5%, step Step Motor (2),, Embedded System Lab. II

More information

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070>

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070> #include "stdafx.h" #include "Huffman.h" 1 /* 비트의부분을뽑아내는함수 */ unsigned HF::bits(unsigned x, int k, int j) return (x >> k) & ~(~0

More information

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc Visual Studio 2005 + Intel Visual Fortran 9.1 install Intel Visual Fortran 9.1 intel Visual Fortran Compiler 9.1 만설치해서 DOS 모드에서실행할수있지만, Visual Studio 2005 의 IDE 를사용하기위해서는 Visual Studio 2005 를먼저설치후 Integration

More information

Microsoft PowerPoint - Install Guide[ ].ppt [호환 모드]

Microsoft PowerPoint - Install Guide[ ].ppt [호환 모드] www.viewrun.co.kr User Guide (The Imaging Source devices) 2008. 09 Contents 1 2 3 4 Driver 설치 IC Capture(Image Viewer) 설치 IC Imaging Control(SDK) 설치 Visual Studio 환경설정 (6.0, 2005) 5 Troubleshooting 6 7

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Network Programming Jo, Heeseung Network 실습 네트워크프로그래밍 멀리떨어져있는호스트들이서로데이터를주고받을수있도록프로그램을구현하는것 파일과는달리데이터를주고받을대상이멀리떨어져있기때문에소프트웨어차원에서호스트들간에연결을해주는장치가필요 이러한기능을해주는장치로소켓이라는인터페이스를많이사용 소켓프로그래밍이란용어와네트워크프로그래밍이랑용어가같은의미로사용

More information

MPLAB C18 C

MPLAB C18 C MPLAB C18 C MPLAB C18 MPLAB C18 C MPLAB C18 C #define START, c:\mcc18 errorlevel{0 1} char isascii(char ch); list[list_optioin,list_option] OK, Cancel , MPLAB IDE User s Guide MPLAB C18 C

More information

Chapter_02-3_NativeApp

Chapter_02-3_NativeApp 1 TIZEN Native App April, 2016 Dept. of software Dankook University http://embedded.dankook.ac.kr/~baeksj 목차 2 Tizen EFL Tizen EFL 3 Tizen EFL Enlightment Foundation Libraries 타이젠핵심코어툴킷 Tizen EFL 4 Tizen

More information

Microsoft PowerPoint APUE(Intro).ppt

Microsoft PowerPoint APUE(Intro).ppt 컴퓨터특강 () [Ch. 1 & Ch. 2] 2006 년봄학기 문양세강원대학교컴퓨터과학과 APUE 강의목적 UNIX 시스템프로그래밍 file, process, signal, network programming UNIX 시스템의체계적이해 시스템프로그래밍능력향상 Page 2 1 APUE 강의동기 UNIX 는인기있는운영체제 서버시스템 ( 웹서버, 데이터베이스서버

More information

歯Lecture2.PDF

歯Lecture2.PDF VISUAL C++/MFC Lecture 2? Update Visual C ++/MFC Graphic Library OpenGL? Frame OpenGL 3D Graphic library coding CLecture1View? OpenGL MFC coding Visual C++ Project Settings Link Tap Opengl32lib, Glu32lib,

More information

Microsoft PowerPoint - [2009] 02.pptx

Microsoft PowerPoint - [2009] 02.pptx 원시데이터유형과연산 원시데이터유형과연산 원시데이터유형과연산 숫자데이터유형 - 숫자데이터유형 원시데이터유형과연산 표준입출력함수 - printf 문 가장기본적인출력함수. (stdio.h) 문법 ) printf( Test printf. a = %d \n, a); printf( %d, %f, %c \n, a, b, c); #include #include

More information

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx 2018 학년도 1 학기 JAVA 프로그래밍 II 514760-1 2018 년봄학기 5/10/2018 박경신 Lab#1 (ImageTest) Lab#1 은영상파일 (Image) 을읽어서정보를출력 Java Tutorials Lesson: Working with Images https://docs.oracle.com/javase/tutorial/2d/images/index.html

More information

K_R9000PRO_101.pdf

K_R9000PRO_101.pdf GV-R9000 PRO Radeon 9000 PRO Upgrade your Life REV 101 GV-R9000 PRO - 2-2002 11 1 12 ATi Radeon 9000 PRO GPU 64MB DDR SDRAM 275MHz DirectX 81 SMARTSHADER ATI SMOOTHVISION 3D HYDRAVISION ATI CATLYST DVI-I

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Vulkan Tutorial 2016 Khronos Seoul DevU SAMSUNG Electronics Hyokuen Lee Senior Graphics Engineer (hk75.lee@samsung.com) Minwook Kim Senior Graphics Engineer (minw83.kim@samsung.com) Who I am Graphics R&D

More information

PRO1_02E [읽기 전용]

PRO1_02E [읽기 전용] Siemens AG 1999 All rights reserved File: PRO1_02E1 Information and 2 STEP 7 3 4 5 6 STEP 7 7 / 8 9 10 S7 11 IS7 12 STEP 7 13 STEP 7 14 15 : 16 : S7 17 : S7 18 : CPU 19 1 OB1 FB21 I10 I11 Q40 Siemens AG

More information

슬라이드 1

슬라이드 1 세모그래픽스 III. 게임프로그래밍에필요한 OpenGL Page 1 목차 1. 간단한 OBJ-C 2. IOS의 OGL VS Win32의 OGL 3. IOS개발환경설정 4. 뷰포트, 프로젝션, 모델뷰 ( 회전이먼저냐이동이먼저냐?) Page 2 세모그래픽스 간단한 OBJ-C 2011.07.16 김형석 Page 3 1. Obj-C (test2_cpp) #import

More information

Microsoft Word - USB복사기.doc

Microsoft Word - USB복사기.doc Version: SD/USB 80130 Content Index 1. Introduction 1.1 제품개요------------------------------------------------------------P.02 1.2 모델별 제품사양-------------------------------------------------------P.04 2. Function

More information

4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf("hihi\n"); } warning: conflicting types for functiona

4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf(hihi\n); } warning: conflicting types for functiona 이름 : 학번 : A. True or False: 각각항목마다 True 인지 False 인지적으세요. 1. (Python:) randint 함수를사용하려면, random 모듈을 import 해야한다. 2. (Python:) '' (single quote) 는한글자를표현할때, (double quote) 는문자열을표현할때사용한다. B. 다음에러를수정하는방법을적으세요.

More information

Week3

Week3 2015 Week 03 / _ Assignment 1 Flow Assignment 1 Hello Processing 1. Hello,,,, 2. Shape rect() ellipse() 3. Color stroke() fill() color selector background() 4 Hello Processing 4. Interaction setup() draw()

More information

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F > 10주차 문자 LCD 의인터페이스회로및구동함수 Next-Generation Networks Lab. 5. 16x2 CLCD 모듈 (HY-1602H-803) 그림 11-18 19 핀설명표 11-11 번호 분류 핀이름 레벨 (V) 기능 1 V SS or GND 0 GND 전원 2 V Power DD or V CC +5 CLCD 구동전원 3 V 0 - CLCD 명암조절

More information

Microsoft Word - cg09-final-answer.doc

Microsoft Word - cg09-final-answer.doc 기말고사 담당교수 : 단국대학교멀티미디어공학전공박경신 답은반드시답안지에기술할것. 공간이부족할경우반드시답안지몇쪽의뒤에있다고명기한후기술할것. 그외의경우의답안지뒤쪽이나연습지에기술한내용은답안으로인정안함. 답에는반드시네모를쳐서확실히표시할것. 성적공고시중간고사때제출한암호를사용할것임. 1. 다음문제에답하시오. (50점) 1) 직교투영 (orthographic projection),

More information

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770>

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770> i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,

More information

초보자를 위한 C# 21일 완성

초보자를 위한 C# 21일 완성 C# 21., 21 C#., 2 ~ 3 21. 2 ~ 3 21.,. 1~ 2 (, ), C#.,,.,., 21..,.,,, 3. A..,,.,.. Q&A.. 24 C#,.NET.,.,.,. Visual C# Visual Studio.NET,..,. CD., www. TeachYour sel f CSharp. com., ( )., C#.. C# 1, 1. WEEK

More information

CD-RW_Advanced.PDF

CD-RW_Advanced.PDF HP CD-Writer Program User Guide - - Ver. 2.0 HP CD-RW Adaptec Easy CD Creator Copier, Direct CD. HP CD-RW,. Easy CD Creator 3.5C, Direct CD 3.0., HP. HP CD-RW TEAM ( 02-3270-0803 ) < > 1. CD...3 CD...5

More information

Orcad Capture 9.x

Orcad Capture 9.x OrCAD Capture Workbook (Ver 10.xx) 0 Capture 1 2 3 Capture for window 4.opj ( OrCAD Project file) Design file Programe link file..dsn (OrCAD Design file) Design file..olb (OrCAD Library file) file..upd

More information

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어 개나리 연구소 C 언어 노트 (tyback.egloos.com) 프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어먹고 하더라구요. 그래서,

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program

More information

윈도우시스템프로그래밍

윈도우시스템프로그래밍 데이터베이스및설계 MySQL 을위한 MFC 를사용한 ODBC 프로그래밍 2012.05.10. 오병우 컴퓨터공학과금오공과대학교 http://www.apmsetup.com 또는 http://www.mysql.com APM Setup 설치발표자료참조 Department of Computer Engineering 2 DB 에속한테이블보기 show tables; 에러발생

More information

Microsoft PowerPoint - ch07 - 포인터 pm0415

Microsoft PowerPoint - ch07 - 포인터 pm0415 2015-1 프로그래밍언어 7. 포인터 (Pointer), 동적메모리할당 2015 년 4 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) Outline 포인터 (pointer) 란? 간접참조연산자

More information

APOGEE Insight_KR_Base_3P11

APOGEE Insight_KR_Base_3P11 Technical Specification Sheet Document No. 149-332P25 September, 2010 Insight 3.11 Base Workstation 그림 1. Insight Base 메인메뉴 Insight Base Insight Insight Base, Insight Base Insight Base Insight Windows

More information

KEY 디바이스 드라이버

KEY 디바이스 드라이버 KEY 디바이스드라이버 임베디드시스템소프트웨어 I (http://et.smu.ac.kr et.smu.ac.kr) 차례 GPIO 및 Control Registers KEY 하드웨어구성 KEY Driver 프로그램 key-driver.c 시험응용프로그램 key-app.c KEY 디바이스드라이버 11-2 GPIO(General-Purpose Purpose I/O)

More information

Chapter #01 Subject

Chapter #01  Subject Device Driver March 24, 2004 Kim, ki-hyeon 목차 1. 인터럽트처리복습 1. 인터럽트복습 입력검출방법 인터럽트방식, 폴링 (polling) 방식 인터럽트서비스등록함수 ( 커널에등록 ) int request_irq(unsigned int irq, void(*handler)(int,void*,struct pt_regs*), unsigned

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 3 if, if else, if else if, switch case for, while, do while break, continue : System.in, args, JOptionPane for (,, ) @ vs. logic data method variable Data Data Flow (Type), ( ) @ Member field

More information

PowerPoint Presentation

PowerPoint Presentation FORENSIC INSIGHT; DIGITAL FORENSICS COMMUNITY IN KOREA SQL Server Forensic AhnLab A-FIRST Rea10ne unused6@gmail.com Choi Jinwon Contents 1. SQL Server Forensic 2. SQL Server Artifacts 3. Database Files

More information

K&R2 Reference Manual 번역본

K&R2 Reference Manual 번역본 typewriter structunion struct union if-else if if else if if else if if if if else else ; auto register static extern typedef void char short int long float double signed unsigned const volatile { } struct

More information

untitled

untitled Push... 2 Push... 4 Push... 5 Push... 13 Push... 15 1 FORCS Co., LTD A Leader of Enterprise e-business Solution Push (Daemon ), Push Push Observer. Push., Observer. Session. Thread Thread. Observer ID.

More information

[ReadyToCameral]RUF¹öÆÛ(CSTA02-29).hwp

[ReadyToCameral]RUF¹öÆÛ(CSTA02-29).hwp RUF * (A Simple and Efficient Antialiasing Method with the RUF buffer) (, Byung-Uck Kim) (Yonsei Univ. Depth of Computer Science) (, Woo-Chan Park) (Yonsei Univ. Depth of Computer Science) (, Sung-Bong

More information

The_IDA_Pro_Book

The_IDA_Pro_Book The IDA Pro Book Hacking Group OVERTIME force (forceteam01@gmail.com) GETTING STARTED WITH IDA IDA New : Go : IDA Previous : IDA File File -> Open Processor type : Loading Segment and Loading Offset x86

More information

ISP and CodeVisionAVR C Compiler.hwp

ISP and CodeVisionAVR C Compiler.hwp USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 All Rights Reserved. USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 1,..... @ 1 Green Project 1991 Oak Java 1995. 5 December '90 by Patrick Naughton, Mike Sheridan and James Gosling Embedded in various consumer electronic device 1992. 9. 3 Star 7 1993 www portability

More information

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C4C656D70656C2D5A69762E637070>

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C4C656D70656C2D5A69762E637070> /* */ /* LZWIN.C : Lempel-Ziv compression using Sliding Window */ /* */ #include "stdafx.h" #include "Lempel-Ziv.h" 1 /* 큐를초기화 */ void LZ::init_queue(void) front = rear = 0; /* 큐가꽉찼으면 1 을되돌림 */ int LZ::queue_full(void)

More information

chapter4

chapter4 Basic Netw rk 1. ก ก ก 2. 3. ก ก 4. ก 2 1. 2. 3. 4. ก 5. ก 6. ก ก 7. ก 3 ก ก ก ก (Mainframe) ก ก ก ก (Terminal) ก ก ก ก ก ก ก ก 4 ก (Dumb Terminal) ก ก ก ก Mainframe ก CPU ก ก ก ก 5 ก ก ก ก ก ก ก ก ก ก

More information

10.

10. 10. 10.1 10.2 Library Routine: void perror (char* str) perror( ) str Error 0 10.3 10.3 int fd; /* */ fd = open (filename, ) /*, */ if (fd = = -1) { /* */ } fcnt1 (fd, ); /* */ read (fd, ); /* */ write

More information

Microsoft PowerPoint - Windows CE Programming_2008 [호환 모드]

Microsoft PowerPoint - Windows CE Programming_2008 [호환 모드] Programming 고재관 Microsoft Mobile Device MVP Speaker 고재관 myaustin@korea.com Microsoft MVP 2006-2008 2008 Mobile Devices 분야 500 시간세미나 / 강의 실무경력 15 년메신저 Portable Device since 1995 집필도서 커뮤니티 http://myaustin.egloos.com

More information

Microsoft PowerPoint - 06-Body Data Class.pptx

Microsoft PowerPoint - 06-Body Data Class.pptx Digital 3D Anthropometry 6. Body Data Class Sungmin Kim SEOUL NATIONAL UNIVERSITY Body Data Class 의설계 Body Model 의관리 인체데이터입출력 데이터불러오기 인체모델그리기 TOpenGL의확장 프로젝트관리 프로젝트저장 / 불러오기 추가기능구현 좌표축정렬 Face, Wireframe,

More information

Microsoft PowerPoint - NV40_Korea_KR_2.ppt

Microsoft PowerPoint - NV40_Korea_KR_2.ppt NV40의 진화 크리스 세이츠 (Chris Seitz) 그래픽의 진보 버츄어 파이터 NV1 1백만 삼각형 Wanda NV1x 2천 2백만 삼각형 Dawn NV3x 1억 3천만 삼각형 Wolfman NV2x 6천 3백만 삼각형 Nalu NV4x 2억 2천 2백만 95-98: 매핑과 Z-버퍼 CPU GPU 어플리케이션 / Geometry Stage Rasterization

More information

Chapter 1

Chapter 1 3 Oracle 설치 Objectives Download Oracle 11g Release 2 Install Oracle 11g Release 2 Download Oracle SQL Developer 4.0.3 Install Oracle SQL Developer 4.0.3 Create a database connection 2 Download Oracle 11g

More information

MAX+plus II Getting Started - 무작정따라하기

MAX+plus II Getting Started - 무작정따라하기 무작정 따라하기 2001 10 4 / Version 20-2 0 MAX+plus II Digital, Schematic Capture MAX+plus II, IC, CPLD FPGA (Logic) ALTERA PLD FLEX10K Series EPF10K10QC208-4 MAX+plus II Project, Schematic, Design Compilation,

More information

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

More information

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D> 리눅스 오류처리하기 2007. 11. 28 안효창 라이브러리함수의오류번호얻기 errno 변수기능오류번호를저장한다. 기본형 extern int errno; 헤더파일 라이브러리함수호출에실패했을때함수예 정수값을반환하는함수 -1 반환 open 함수 포인터를반환하는함수 NULL 반환 fopen 함수 2 유닉스 / 리눅스 라이브러리함수의오류번호얻기 19-1

More information

4.18.국가직 9급_전산직_컴퓨터일반_손경희_ver.1.hwp

4.18.국가직 9급_전산직_컴퓨터일반_손경희_ver.1.hwp 2015년도 국가직 9급 컴퓨터 일반 문 1. 시스템 소프트웨어에 포함되지 않는 것은? 1 1 스프레드시트(spreadsheet) 2 로더(loader) 3 링커(linker) 4 운영체제(operating system) - 시스템 소프트웨어 : 운영체제, 데이터베이스관리 프로그램,, 컴파일러, 링커, 로더, 유틸리티 소프트웨 어 등 - 스프레드시트 : 일상

More information

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - (Asynchronous Mode) - - - ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - UART (Univ ers al As y nchronous Receiver / T rans mitter) 8250A 8250A { COM1(3F8H). - Line Control Register

More information

02 C h a p t e r Java

02 C h a p t e r Java 02 C h a p t e r Java Bioinformatics in J a va,, 2 1,,,, C++, Python, (Java),,, (http://wwwbiojavaorg),, 13, 3D GUI,,, (Java programming language) (Sun Microsystems) 1995 1990 (green project) TV 22 CHAPTER

More information

10X56_NWG_KOR.indd

10X56_NWG_KOR.indd 디지털 프로젝터 X56 네트워크 가이드 이 제품을 구입해 주셔서 감사합니다. 본 설명서는 네트워크 기능 만을 설명하기 위한 것입니다. 본 제품을 올바르게 사 용하려면 이 취급절명저와 본 제품의 다른 취급절명저를 참조하시기 바랍니다. 중요한 주의사항 이 제품을 사용하기 전에 먼저 이 제품에 대한 모든 설명서를 잘 읽어 보십시오. 읽은 뒤에는 나중에 필요할 때

More information

API 매뉴얼

API 매뉴얼 PCI-DIO12 API Programming (Rev 1.0) Windows, Windows2000, Windows NT and Windows XP are trademarks of Microsoft. We acknowledge that the trademarks or service names of all other organizations mentioned

More information

±èÇö¿í Ãâ·Â

±èÇö¿í Ãâ·Â Smartphone Technical Trends and Security Technologies The smartphone market is increasing very rapidly due to the customer needs and industry trends with wireless carriers, device manufacturers, OS venders,

More information

Microsoft PowerPoint - lecture5-ch3.ppt [호환 모드]

Microsoft PowerPoint - lecture5-ch3.ppt [호환 모드] Overview Input and Interaction 514780 2018 년가을학기 9/27/2018 단국대학교박경신 입력장치 (Input device) 물리적입력장치 (Physical input devices) Mouse, Keyboard, Trackball 논리적장치 String, Locator, Pick, Choice, Valuators, Stroke

More information

USER GUIDE

USER GUIDE Solution Package Volume II DATABASE MIGRATION 2010. 1. 9. U.Tu System 1 U.Tu System SeeMAGMA SYSTEM 차 례 1. INPUT & OUTPUT DATABASE LAYOUT...2 2. IPO 중 VB DATA DEFINE 자동작성...4 3. DATABASE UNLOAD...6 4.

More information

<4D F736F F F696E74202D B3E22032C7D0B1E220C0A9B5B5BFECB0D4C0D3C7C1B7CEB1D7B7A1B9D620C1A638B0AD202D20C7C1B7B9C0D320BCD3B5B5C0C720C1B6C0FD>

<4D F736F F F696E74202D B3E22032C7D0B1E220C0A9B5B5BFECB0D4C0D3C7C1B7CEB1D7B7A1B9D620C1A638B0AD202D20C7C1B7B9C0D320BCD3B5B5C0C720C1B6C0FD> 2006 년 2 학기윈도우게임프로그래밍 제 8 강프레임속도의조절 이대현 한국산업기술대학교 오늘의학습내용 프레임속도의조절 30fps 맞추기 스프라이트프레임속도의조절 프레임속도 (Frame Rate) 프레임속도란? 얼마나빨리프레임 ( 일반적으로하나의완성된화면 ) 을만들어낼수있는지를나타내는척도 일반적으로초당프레임출력횟수를많이사용한다. FPS(Frame Per Sec)

More information

Microsoft PowerPoint 세션.ppt

Microsoft PowerPoint 세션.ppt 웹프로그래밍 () 2006 년봄학기 문양세강원대학교컴퓨터과학과 세션변수 (Session Variable) (1/2) 쇼핑몰장바구니 장바구니에서는사용자가페이지를이동하더라도장바구니의구매물품리스트의내용을유지하고있어야함 PHP 에서사용하는일반적인변수는스크립트의수행이끝나면모두없어지기때문에페이지이동시변수의값을유지할수없음 이러한문제점을해결하기위해서 PHP 에서는세션 (session)

More information