(Microsoft PowerPoint - hci2-lecture11 [\310\243\310\257 \270\360\265\345])

Size: px
Start display at page:

Download "(Microsoft PowerPoint - hci2-lecture11 [\310\243\310\257 \270\360\265\345])"

Transcription

1 Overview C# GDI+ GDI (Graphical Device Interface) GDI+ 화면출력 Color, Pen, Brush, Image, Font, Graphics, etc Paint 이벤트, OnPaint() 메소드, Invalidate() 메소드 년가을학기 11/20/2015 박경신 GDI+ GDI (Graphical Device Interface) 그래픽객체의표현과출력장치에서의출력방법에대한 Windows 표준으로그래픽주변장치의종류에상관없이응용프로그램에서그래픽출력하는데필요한모든것을지원하는 C 수준의 API 장치독립적 : 모니터, 비디오카드, 프린터출력에사용되는주변장치가변경되는경우에도프로그램을수정할필요가없어야함 DC(Device Context): GDI 가생성하고관리하는데이터구조체 GDI+.NET 환경에서이전의 GDI 기능을확장한것이 GDI+ 응용프로그램 장치독립적 GDI 장치의존적 출력장치 ( 모니터, 프린터등 ) GDI+ GDI 단점 기본적인그래픽출력만가능함 그래픽속성을바꿀때마다 GDI 개체를일일이생성선택한후사용해야함 실수로 GDI 개체를해제하지않은경우리소스누출에의해시스템의안정성을위협함 GDI+ GDI+ 는 GDI 기능을개선한 Native C++ 언어로작성된클래스라이브러리 GdiPlus.dll를사용하여하위버전의운영체제 (Windows 95/98) 에서도문제없이잘실행되는향상된호환성을제공 VC++ Win32나 MFC에서 GDI+ 사용가능 초기화과정은필요함.NET에서는 GDI+ 가기본출력엔진이므로별도의초기화과정은필요하지않음

2 GDI+ 화면출력 GDI+ 화면출력 Graphics 클래스 : 모든그리기기능은단독으로존재하는함수가아니라 Graphics 클래스의메소드로정의되어있음 GDI 에서 DC 를먼저발급받아야만출력이가능한원리와동일함 GDI 의 DC 에서는출력속성들이모두들어있는데반해 GDI+ 의 Graphics 객체는도형의속성을가지지않음 GDI 에서선을그리려면 Pen 을 DC 에선택한후선을그리기함수를사용하여출력한후 Pen 선택을해제해야함 GDI+ 에서는 Pen 자체를선그리기메소드의인수로전달함 여러가지인수를받는 ( 즉, 오버로딩된 ) 그리기메소드를제공함 Pen, Brush 등 GDI 객체들은모두 C++ 객체이므로해제코드를별도로작성할필요가없음 GDI+ 에서사용하는모든문자열은 Unicode 이어야함 문자형은반드시 WCHAR 형으로선언해야함 문자열상수앞에는접두 L 을붙여야함 GDI+ 그래픽기능 System.Drawing 기본네임스페이스 GDI+ 의그래픽기능을제공하는클래스정의 GDI+ 2D 벡터그래픽 (vector graphic) 드로잉 점과선을기반으로한그래픽기능 ( 선, 사각형등 ) GDI+ 이미징 화소 (Pixel) 단위그림파일을편집하는기능 비트맵 (Bitmap) 등으로표현된사진이나그림편집 GDI+ 문자출력 시스템폰트를사용하여그래픽장치에문자출력기능 GDI+ 프린터출력 프린터장치에그래픽출력기능 상속계층구조 상속계층구조 System.Object System.Drawing System.Drawing.Design System.Drawing.Drawing2D System.Drawing.Imaging System.Drawing.Text System.Drawing.Printing // 기본드로잉 // Predefined 대화상자, 속성시트, UI // 벡터그래픽그리기 // 이미지 // 폰트및텍스트 // 프린트 System.Object System.Drawing // 기본드로잉 System.Drawing.CharacterRange // 문자열내의문자위치의범위 System.Drawing.Color // ARGB 색 System.Drawing.Point // (X, Y) 점 System.Drawing.Rectangle // 사각형의위치와크기 System.Drawing.Size // 크기 System.Drawing.Graphics // 그래픽스 System.Drawing.Pen // 펜 System.Drawing.Brush // 브러시 System.Drawing.Bitmap // 비트맵 System.Drawing.Icon // 아이콘 System.Drawing.Image // 이미지 System.Drawing.Font // 폰트

3 System.Drawing System.Drawing 네임스페이스 System.Drawing System.Drawing 네임스페이스 주요구조체 Point Rectangle Size Color (X, Y) 좌표값을저장하는구조체 사각형을그릴수있는두좌표값을저장하는구조체 주어진 ( 높이, 너비 ) 를저장하는구조체 펜, 브러시, 폰트의색을지정하는구조체 주요클래스 Icon Cursor Bitmap ColorTranslator 아이콘을담당커서를담당비트맵기능을처리색깔의표현형식을변환 주요클래스 StringFormat 문자출력스타일에대한정보를처리 Graphics GDI+ 의핵심클래스. 텍스트나이미지출력에사용 Pen 선에대한스타일과색상등을결정 Brush 사각형이나타원, 다각형등의내부를채우는데사용 Font 출력할글자의타입, 굵기, 크기, 효과등을지정 Image Bitmap, Icon, Cursor 등하위클래스에기능을제공하는추상클래스 Point Rectangle Point 구조체는화면상의한지점을나타내는데사용 Point 및메소드 Rectangle 구조체는사각형을그리는데사용 Rectangle 및속성 Point() Point(Int, Int) Point(Point) Point(Size) 메소드 Equals operator+ operator- 기본지정된 (X, Y) 값을사용하여 Point 객체생성지정된점을사용하여 Point 객체생성지정된크기를사용하여 Point 객체생성두개의 Point 좌표가같은지여부두개의 Point 좌표를더함두개의 Point 좌표를뺌 Rectangle(Point, Size) Rectangle(x1, y2, x3, x4) 속성 Bottom Height IsEmpty Left 지정된 Point와 Size를사용하여사각형객체생성지정된점과크기를사용하여사각형객체생성아래가장자리의 Y 좌표높이 Rectangle의숫자가모두 0값을갖는지여부왼쪽가장자리의 X 좌표 Location 왼쪽위모퉁이의좌표

4 Size Size 구조체는높이, 너비를나타내는데사용 Size 및속성 Size() 기본 Size(x, y) 지정된 (X, Y) 값을사용하여 Size 객체생성 Size(Point) 지정된점을사용하여 Size 객체생성 Size(Size) 지정된크기를사용하여 Size 객체생성 속성 Height 높이 IsEmpty Rectangle의숫자가모두 0값을갖는지여부 Width 너비 Color Color 구조체는색상을표현 이름나 FromArgb 를이용하여색상을지정가능 Color Color() Color(a, r, g, b) Color(r, g, b) Color(argb) 기본 (Black) Alpha, Red, Green, Blue 값을지정하여 Color 객체생성 Red, Green, Blue 값을지정하여 Color 객체생성 16 진수 ARGB 상수값으로 Color 객체생성 Color C# 에서는자주쓰는색상들을 Color 클래스의속성으로제공하여이름으로색상지정 Color 구조체의 ARGB 상수를사용하여색상을지정 // 배경색과전경색에 Color 이름을사용한예 Color forecolor = Color.Black; Color backcolor = Color.White; FromArgb 메소드를사용한색상지정 RGB 값을조절하여유연하게색상을지정 알파혼합할수있는 FromArgb 메소드사용 빨간색을만들어 Color 객체에저장하는예 // FromArgb 메소드를사용한예 Color RedColor = Color.FromArgb(255,0,0); Pen Pen 객체를이용하여선 / 곡선의색, 굵기, 정렬및스타일을제어하는펜속성을설정가능 Pen Pen(Brush) Pen(Color) 지정된 Brush 를사용하여 Pen 객체생성 지정된 Color 를사용하여 Pen 객체생성 Pen(Brush, Width) 지정된 Brush 와 Width 를사용하여 Pen 객체생성 Pen(Color, Width) 지정된 Color 와 Width 를사용하여 Pen 객체생성 // 두께 3의파란색 Pen으로선을그리는예 Graphics g = CreateGraphics(); Pen p = new Pen(Color.Blue, 3); // Pen을생성하여 g.drawline(p, 10, 10, 200, 100); // 그래픽출력에 Pen을인자로전달 p.dispose(); // Pen 객체해지

5 Pen Pen 속성 속성 Color DashCap DashStyle EndCap LineJoin PenType StartCap Width Pen 의색을가져오거나설정 Pen 을사용하여그리는파선을구성하는대시의끝에사용되는캡스타일을가져오거나설정 Pen 을사용하여그리는파선에사용될스타일을가져오거나설정 Pen 을사용하여그리는선의끝에사용되는캡스타일을가져오거나설정 Pen 을사용하여그리는두개의연속선끝에사용되는결합스타일을가져오거나설정 Pen 을사용하여그리는선의스타일을가져오거나설정 Pen 을사용하여그리는선의시작에사용되는캡스타일을가져오거나설정 Pen 의너비를가져오거나설정 Pen DashStyle 열거형 Solid Dash Dot DashDot DashDotDot DashCap 열거형 Flat Round Triangle // DashStyle 예제 Paint 이벤트핸들러 private void Form1_Paint(object sender, PaintEventArgs e) { Graphics g = e.graphics; Pen p = new Pen(Color.Black, 7); // 대시스타일테스트 p.dashstyle = DashStyle.Solid; g.drawline(p, 10, 10, 200, 10); p.dashstyle = DashStyle.Dash; g.drawline(p, 10, 30, 200, 30); p.dashstyle = DashStyle.Dot; g.drawline(p, 10, 50, 200, 50); p.dashstyle = DashStyle.DashDot; g.drawline(p, 10, 70, 200, 70); p.dashstyle = DashStyle.DashDotDot; g.drawline(p, 10, 90, 200, 90); // 대시와선의굵기테스트 p.dashstyle = DashStyle.Dot; for (int w = 1; w < 10; w += 2) { p.width = w; g.drawline(p, 10, w * 10, 200, w * 10); // DashCap 예제 Paint 이벤트핸들러 private void Form1_Paint(object sender, PaintEventArgs e) { Graphics g = e.graphics; Pen p = new Pen(Color.Black, 7); // 대시스타일테스트 p.startcap = p.endcap = LineCap.Flat; p.width = 10; p.dashstyle = DashStyle.Dash; p.dashcap = DashCap.Flat; g.drawline(p, 10, 30, 300, 30); p.dashcap = DashCap.Round; g.drawline(p, 10, 50, 300, 50); p.dashcap = DashCap.Triangle; g.drawline(p, 10, 70, 300, 70);

6 Pen StartCap/EndCap 열거형 LineCap.Flat LineCap.Round LineCap.Square LineCap.Triangle LineCap.NoAnchor LineCap.RoundAnchor LineCap.SquareAnchor LineCap.ArrowAnchor LineCap.DiamondAnchor // Pen StartCap/EndCap 예제 Paint 이벤트핸들러 private void Form1_Paint(object sender, PaintEventArgs e) { Graphics g = e.graphics; Pen p = new Pen(Color.Black, 7); g.drawline(p, 10, 20, 300, 20); p.startcap = p.endcap = LineCap.Round; g.drawline(p, 10, 40, 300, 40); p.startcap = p.endcap = LineCap.Square; g.drawline(p, 10, 60, 300, 60); p.startcap = p.endcap = LineCap.Triangle; g.drawline(p, 10, 80, 300, 80); p.startcap = p.endcap = LineCap.NoAnchor; g.drawline(p, 10, 100, 300, 100); p.startcap = p.endcap = LineCap.RoundAnchor; g.drawline(p, 10, 120, 300, 120); p.startcap = p.endcap = LineCap.SquareAnchor; g.drawline(p, 10, 140, 300, 140); p.startcap = p.endcap = LineCap.ArrowAnchor; g.drawline(p, 10, 160, 300, 160); p.startcap = p.endcap = LineCap.DiamondAnchor; g.drawline(p, 10, 180, 300, 180); Brush Brush Brush 객체를사용하여도형에다양한패턴을채우기 Brush SolidBrush(Color) HatchBrush(HatchStyle, Color) HatchBrush(HatchStyle, Color, Color) TextureBrush(Image, WrapMode) LinearGradientBrush( ) PathGradientBrush( ) 가장간단한형식의단색 Brush 미리설정된다양한패턴 Brush 지정된이미지를사용하는 Brush 그라데이션에따라혼합된두가지색을갖는 Brush 사용자정의한고유한경로에따라혼합된색의그라데이션 Brush HatchBrush HatchStyle : 52개패턴의종류를제공 forecolor : 패턴을구성하는선분들의색 backcolor : 패턴의배경색 HatcyStyle 열거형 HatchStyle 열거형 Horizontal Vertical BackwardDiagonal ForwardDiagonal Cross 등등

7 Brush // HatchBrush 예제 Paint 이벤트핸들러 private void Form1_Paint(object sender, PaintEventArgs e) { HatchStyle h = (HatchStyle)0; for (int y = 0; ; y++) { for (int x = 0; x < 8; x++) { HatchBrush b = new HatchBrush(h, Color.Black, Color.White); e.graphics.fillrectangle(b, x * 70, y * 70, 60, 60); h++; if (h > (HatchStyle)52) break; if (h > (HatchStyle)52) break; TextureBrush 이미지파일을읽어들여배경을칠하는브러시 WrapMode 열거형 WrapMode 열거형 Tile 같은이미지를바둑판모양으로반복 TileFlipX 같은이미지를수평으로반전된모양으로반복 TileFlipY 같은이미지를수직으로반전된모양으로반복 FileFlipXY 같은이미지를양방향으로반전된모양으로반복 Clamp 같은이미지를바둑판모양으로배열되지않음 // 이미지로타원내부를채우는예 Bitmap image1 = (Bitmap) Image.FromFile( test.bmp ); // 비트맵로딩 TextureBrush b = new TextureBrush(image1, WrapMode.Tile); g.fillellipse(b, new Rectangle(10, 10, 200, 100)); private int mode = 0; // TextureBrush 예제 Paint 이벤트핸들러 private void Form1_Paint(object sender, PaintEventArgs e) { Image i = Image.FromFile("lotus.jpg"); TextureBrush b = new TextureBrush(i); if (mode == 0) b.wrapmode = WrapMode.Tile; else if (mode == 1) b.wrapmode = WrapMode.TileFlipX; else if (mode == 2) b.wrapmode = WrapMode.TileFlipY; else if (mode == 3) b.wrapmode = WrapMode.TileFlipXY; else if (mode == 4) b.wrapmode = WrapMode.Clamp; e.graphics.fillrectangle(b, ClientRectangle); string str = "WrapMode=" + b.wrapmode.tostring(); // 텍스트 e.graphics.drawstring(str, Font, Brushes.Red, 10, 10); // 텍스트출력 private void Form1_KeyPress(object sender, KeyPressEventArgs e) { if (e.keychar == ' ') { // 스페이스바를누르면 mode 증가 mode++; if (mode >= 5) mode = 0; Invalidate(); // Invalidate 를호출하여 Paint 이벤트발생시켜 Form1_Paint 호출 Brush PathGradientBrush 지정된경로에따라색상이점점변하는모양으로채색하는브러시 LinearGradientBrush 지정된두색상간에점점변하는모양으로채색하는브러시 LinearGradientBrush 주요 LinearGradientBrush(Point, Point, Color, Color) LinearGradientBrush(Rectangle, Color, Color, LinearGradientMode) LinearGradientBrush(Rectangle, Color, Color, Single, Boolean) 점과색을사용하여그라데이션객체생성 사각형, 시작및끝색, 방향을기반으로그라데이션객체생성 사각형, 시작및끝색, 방향각도를기반으로그라데이션객체생성

8 private float angle = 0f; // LinearGradientBrush 예제 Paint 이벤트핸들러 private void Form1_Paint(object sender, PaintEventArgs e) { LinearGradientBrush B1 = new LinearGradientBrush(new Point(0, 0), new Point(100, 100), Color.Blue, Color.Yellow); e.graphics.fillrectangle(b1, 0, 0, 300, 150); LinearGradientBrush B2 = new LinearGradientBrush(new Rectangle(0, 0, 100, 100), Color.White, Color.Black, angle); e.graphics.fillrectangle(b2, 0, 200, 300, 150); private void Form1_KeyDown(object sender, KeyEventArgs e) { switch (e.keycode) { // 위 / 아래화살표키를누르면그라디언트브러시의각도증감 case Keys.Up: angle += 5f; break; case Keys.Down: angle -= 5f; break; Invalidate(); // Invalidate를호출하여 Paint 이벤트발생시켜 Form1_Paint 호출 Image Image 클래스는래스터이미지 ( 비트맵 ) 와벡터이미지 ( 메타파일 ) 를처리하기위한메소드를제공 Bitmap 클래스는래스터이미지의로딩, 저장및조작 BMP, GIF, JPEG, EXIF, PNG, TIFF 형식 Metafile 클래스는벡터이미지의기록및검사 GDI+ 에서는메타파일을기록하고표시할수있도록 ( 그리기명령및설정시퀀스로저장되는이미지의 ) Metafile 클래스제공 윈도우메타파일 (WMF), 확장메타파일 (EMF), EMF+ 형식 주요기능 이미지그리기및위치지정 : Graphics 클래스의 DrawImage 사용 이미지복제 : Clone 사용 이미지자르기및배율조정 : Rectangle 클래스와 DrawImage 사용 이미지열기및저장 : Bitmap 클래스또는 FromFile 사용하여로딩하고, Save 를사용하여저장 Image Image 클래스의주요메소드 메소드 FromFile 디스크의파일로부터이미지파일을로딩 FromStream 스트림으로부터이미지로딩 GetWidth 이미지의너비 GetHeight 이미지의높이 GetType 이미지의타입 ( 메타, 비트맵 ) RotateFlip 이미지를회전또는반전 GetRawFormat 이미지의포멧 Save 이미지를디스크의파일로저장 Image 이미지출력은 Graphics 클래스 DrawImage 를사용 DrawImage 메소드 DrawImage(Image, Point) DrawImage(Image, Int, Int) DrawImage(Image, Rectangle) DrawImage(Image, Int, Int, Int, Int) DrawImage(Image, Point[], Int) DrawImage(Image, Int, Int, Int, Int, Int, Int, GraphicsUnit) (150,40) 지정된위치에원래크기의 Image 출력 지정된위치에지정된크기로 Image 출력 ; 사각형영역에맞추어이미지확대 / 축소 이미지를지정된위치에출력 이미지의일부분을지정된위치에지정된크기로출력 폭 220 높이 300

9 // DrawImage 예제 Paint 이벤트핸들러 private void Form1_Paint(object sender, PaintEventArgs e) { Graphics g = e.graphics; Image i = Image.FromFile("lotus.jpg"); switch (mode) { case 0: g.drawimage(i, 0, 0); break; case 1: g.drawimage(i, new Point(10, 10)); break; case 2: g.drawimage(i, new Rectangle(10, 10, 300, 300)); break; case 3: g.drawimage(i, 0, 0, 300, 300); break; case 4: g.drawimage(i, 0, 0, 150, 300); break; case 5: g.drawimage(i, 0, 0, 300, 150); break; case 6: g.drawimage(i, 10, 10, new Rectangle(70, 20, 300, 320), GraphicsUnit.Pixel); break; case 7: g.drawimage(i, new Rectangle(10, 10, 200, 200), 70, 20, 300, 300, GraphicsUnit.Pixel); break; case 8: Rectangle r = new Rectangle(70, 20, 300, 320); Point[] pts = {new Point(0,0), new Point(300, 0), new Point(100, 200) ; g.drawimage(i, pts, r, GraphicsUnit.Pixel); break; Font f = new Font( 맑은고딕, 12); g.drawstring( 스페이스바를누르세요, f, Brushes.White, 10, 10); // 텍스트출력 Image Image 클래스의 Save 를사용하여이미지를파일로저장 Image.Save 메소드 Save(String) Save(Stream, ImageFormat) Save(String, ImageFormat) Save(Stream, ImageCodecInfo, EncoderParameters) Save(String, ImageCodecInfo, EncoderParameters) Image 를지정된파일이나스트림에저장 Image 를지정된형식의지정된스트림에저장 Image 를지정된형식으로지정된파일에저장 지정된인코더및이미지인코더매개변수를사용하여 Image 를지정된스트림에저장 지정된인코더및이미지인코더매개변수를사용하여 Image 를지정된파일에저장 Bitmap // DrawImage 예제이벤트핸들러 private void Form1_(object sender, PaintEventArgs e) { Graphics g = e.graphics; Bitmap 은이미지의픽셀데이터와그특성으로구성 Image 는파일이나스트림으로부터생성가능 Bitmap 은참조그래픽이나색상포맷정보만으로비어있는비트맵생성가능 Bitmap Bitmap(Image) Bitmap(Stream) Bitmap(String) Bitmap(Image, Size) Bitmap(Image, Int, Int) Bitmap(Int, Int, Graphics) 지정된이미지에서 Bitmap 객체생성 지정된데이터스트림에서 Bitmap 객체생성 지정된파일에서 Bitmap 객체생성 지정된크기와이미지에서 Bitmap 객체생성 지정된 Graphics 객체의해상도와지정된크기를사용하여 Bitmap 객체생성 Bitmap(Int,Int,PixelFormat) 지정된크기와형식을사용하여 Bitmap 객체

10 Bitmap Bitmap 클래스의주요메소드 메소드 FromFile FromHbitmap FromHicon FromResource FromStream Clone Save 파일로부터 Image 생성 윈도우핸들에서 Bitmap 생성 윈도우핸들에서아이콘까지 Bitmap 생성 지정된윈도우리소스에서 Bitmap 생성 지정된데이터스트림에서 Image 생성 지정된 PixelFormat 과함께정의된해당 Bitmap 부분의복사본생성 이미지를디스크의파일로저장 Font Font 객체를사용하여출력할글자의글꼴과글자크기를결정할때사용 Font Font(string, float) FontStyle 열거형 FontStyle 열거형 Bold Italic Regular StrikeOut Underline 폰트이름과크기를지정하여 Font 객체생성 Font(Font, FontStyle) 폰트와스타일을지정하여 Font 객체생성 속성 굵은체텍스트 이탤릭체텍스트 일반텍스트 중간에줄이간텍스트 밑줄이그어진텍스트 Graphics Graphics Graphics 클래스는각종그리기메소드를디스플레이장치에제공 Pen 객체를생성한후, Graphics 클래스에서제공하는메소드 ( 즉, DrawLine, DrawRectangle 등 ) 를이용하여선, 곡선, 도형을그림 Brush 객체를생성한후, Graphics 클래스에서제공하는메소드 ( 즉, FillRectangle, FillEllipse 등 ) 을이용하여도형내부를채움 Image 객체를생성한후, Graphics 클래스에서제공하는메소드 ( 즉, DrawImage 등 ) 을이용하여이미지를그림 Graphics 메소드 DrawArc DrawBezier DrawBeziers DrawClosedCurve DrawCurve DrawEllipse DrawLine DrawLines DrawPath DrawPie DrawPolygon DrawRectangle DrawRectangles Point, Size, Rectangle로지정된타원의호네개의 Point로정의된 3차원 Spline 곡선 Point 배열로정의된일련의 3차원 Splines 곡선들 Point 배열로정의된 Cardinal Spline 곡선 Point 배열을따라 Cardinal Spline 곡선 Point, Size, 높이의쌍으로지정된타원 Point 쌍에의해지정된두개의점을연결하는선 Point 배열로정의된선분들 GraphicsPath를그림 Point, Size, 높이, 두개의방사형선으로지정된타원 Point 배열에의해정의된다각형 Point, Size, Rectangle로지정된사각형 Rectangle로지정된일련의사각형들

11 Graphics Graphics Graphics 메소드 Graphics 메소드 DrawString DrawIcon DrawImage FromImage FromHdc FromHwnd 지정된위치에지정된 Brush 와 Font 로지정된텍스트문자열을그림 지정된 Icon 에의해나타나는이미지를지정된 Point 에그림 지정된 Image 를지정된위치에원래크기로그림 지정된 Image 에서새 Graphics 객체생성 지정된 DC 에대한새 Graphics 객체생성 지정된 Window 핸들에서새 Graphics 을생성 FillEllipse FillPath FillPie FillPolygon FillRectangle FillRectangles FillRegion 타원형의내부를채움 Path 의내부를채움 Pie 일부의내부를채움 Point 배열에의해정의된다각형의내부를채움 Point, Size, 높이의쌍으로지정된경계사각형에의해정의되는사각형의내부를채움 사각형들의내부를채움 Region 의내부를채움 TranslateTransform 지정된위치만큼기하학적인변환을수행 RotateTransform 지정된각도만큼기하학적인변환을수행 ScaleTransform 지정된크기만큼기하학적인변환을수행 MultiplyTransform 지정된행렬을곱함 System.Drawing.Design System.Drawing.Design 네임스페이스 미리지정된 Editor 클래스또는 ToolBox 클래스 System.Drawing.Drawing2D System.Drawing.Drawing2D 네임스페이스 벡터그래픽그리기관련클래스 클래스 주요클래스 BitmapEditor 속성브라우저에서비트맵파일을선택할수있는 UI 제공 Blend ColorBlend Gradient 브러시를위한블렌딩 ColorEditor 색을시각적으로선택할수있는편집기제공 GraphicsPath 연결된선이나곡선의집합을표현 CursorEditor FontEditor IconEditor 커서파일 (.cur) 에대한기본파일검색을수행할수있는편집기제공 폰트개체를선택하고구성하기위한 UI 제공 아이콘을시각적으로선택할수있는편집기제공 HatchBrush LinearGradientBrush Matrix Hatch 스타일브러시 Linear gradient의기능을가진브러시기하변환을위한 3x3 행렬 ImageEditor 속성에대한이미지를선택할수있는 UI 제공 ToolBoxItem 기본구현된도구상자항목제공 ToolBoxItemCollection 도구상자항목의컬랙션

12 System.Drawing.Drawing2D System.Drawing.Drawing2D 네임스페이스 벡터그래픽그리기관련클래스 주요열거형 CombineMode CompositionQuality DashStyle HatchStyle LineCap WrapMode MatrixOrder QualityMode SmoothingMode 클리핑타입 합성방법 펜으로그리는 dash line 스타일 HatchBrush 를위한패턴 펜의캡스타일 채워질영역보다텍스쳐나그라데이션이작은경우바둑판모양으로배열하는방법을지정 행렬변환작업의순서를지정 GDI+ 객체의 quality GDI+ 객체의 smoothing quality System.Drawing.Imaging System.Drawing.Imaging 네임스페이스 고급이미징기능제공 메타파일이미지를위한클래스, 또는 encoder and decoder 주요클래스 BitmapData Encoder ImageAttributes Metafile 비트맵이미지의특성을지정 이밎인코더매개변수의범주를식별하는 GUID(Globally Unique Identifier) 를캡슐화 렌더링하는동안비트맵과메타파일색을조작하는기능을제공 ( 색조정, 회색조조정, 감마보정, 색매핑테이블및임계값을포함한일부색조정설정을관리 ) 그래픽메타파일을정의 ( 메타파일에는생성및재생할수있는그래픽작업시퀀스를하는레코드 ) System.Drawing.Printing System.Drawing.Printing 네임스페이스 프린팅기능과관련된클래스제공 System.Drawing.Text System.Drawing.Text 네임스페이스 고급 GDI+ 입력체계기능을제공 주요클래스 주요클래스 PageSettings PaperSize PreviewPageInfo PrintController PrintDocument PrinterResolution 페이지셋팅종이크기한페이지를위한미리보기문서출력제어출력을프린터로보냄프린터의 resolution 지정 FontCollection InstalledFontCollection PrivateFontCollection 설치된글꼴컬랙션과전용글꼴컬랙션의기본클래스 시스템에설치된글꼴 클라이언트응용프로그램에서제공하는글꼴파일로부터만들어진글꼴패밀리의컬랙션을제공 PrinterSettings 프린터셋팅

13 폼에그리기 폼에는 GDI+ 를이용하여그리기를수행 폼에서그리기를수행하기위해서 Form 클래스의 OnPaint() 메소드를재정의하여사용 OnPaint() 메소드 Paint 이벤트가발생할때수행 Paint 이벤트처리기보다높은우선순위 Paint 이벤트발생 폼을화면에처음표시할때 폼이최소화되었다가최대화버튼을클릭할때 폼의크기를조정할때 폼이다른윈도우로가려졌다가전면에나타날때 프로그램에서 Invalidate() 메소드를호출할때 Invalid Region ( 무효영역 ) 메모장이그림판의일부를가리고있다가가려진부분이드러나는경우 ( 두가지방법이존재 ) 운영체제가가려진부분을메모리에임시저장해두었다가다시화면을복구 운영체제가화면복구를직접담당하는것 화면에다시그려야할부분을프로그램에알려주면프로그램이알아서다시그림 화면복구를각응용프로그램이담당하고운영체제는복구해야할시점과복구할영역정보전달하는것 50 OnPaint() OnPaint() 메소드 폼이나컨트롤은 Paint 이벤트가발생했을시, OnPaint() 메소드가수행하게되어있고, 이메소드안에서 Paint 이벤트핸들러를수행시키게되어있음 그리는대상이파생클래스이면 OnPaint() 메소드를재정의해서구현하는것이좋음 protected override void OnPaint(PaintEventArgs e) { Graphics g = e.graphics; // 그래픽객체참조 // Form1 의 OnPaint 재정의 그리는대상이.NET 에서제공하는클래스 ( 예 : 컨트롤 ) 이면 Paint 이벤트핸들러를작성해서사용 private void picturebox1_paint(object sender, PaintEventArgs e){ Graphics g = e.graphics; // 그래픽객체참조 // picturebox1 컨트롤의 Paint 이벤트핸들러작성 OnPaint() 다른메소드에서폼에그림을그려야할경우 현재폼에서사용하는 Graphics 객체를사용해야함 Form 클래스의 CreateGraphics() 메소드는폼에서사용하는 Graphics 객체를반환 private void Form1_MouseClick(object sender, MouseEventArgs e) { Graphics g = this.creategraphics(); // this 는폼의객체참조 Pen p = new Pen(Color.Red); g.drawelilipse(p, 8, 98, 4, 4); p.dispose(); g.dispose(); // Form1 의마우스클릭이벤트핸들러작성

14 OnPaint() 프로그램에서원하는시점에화면출력을하고자할경우 OnPaint() 메소드를직접호출하는대신 Invalidate() 메소드를이용 Invalidate() 메소드는특정폼 ( 또는컨트롤 ) 영역을무효화하고그리기이벤트메시지를폼 ( 또는컨트롤 ) 로보냄 Invalidate() 메소드는무효화영역 ( 다시그려야할필요가있는영역 ) 을인수로주는데, 만약없으면클라이언트창전체영역을의미 만약원하는시점에즉시화면에출력하고자한다면, Invalidate() 메소드를사용하여무효화영역을지정하고난후, Control 클래스의 Update() 메소드를호출 보류중인그리기요청실행 컨트롤이자신과모든자식을강제로다시그리도록하는 Refresh() 메소드를호출하면, Invalidate(true) 를호출한후 Upate() 메소드를호출한것과같은효과 Double Buffering 폼이나컨트롤에움직이는애니메이션을출력할경우화면의깜빡임 (flickering) 을방지하기위하여, C# 에서내부적으로제공해주는더블버퍼링을사용 public Form1() { InitializeComponent(); SetStyle(ControlStyles.DoubleBuffer, true); // 더블버퍼링 SetStyle(ControlStyles.AllPaintingWmPaint, true); SetStyle(ControlStyles.UserPaint, true);

Microsoft PowerPoint - hci2-lecture11.ppt [호환 모드]

Microsoft PowerPoint - hci2-lecture11.ppt [호환 모드] Overview C# GDI+ GDI (Graphical Device Interface) GDI+ 화면출력 Color, Pen, Brush, Image, Font, Graphics, etc Paint 이벤트, OnPaint() 메소드, Invalidate() 메소드 321190 2011 년가을학기 11/21/2011 박경신 GDI+ GDI (Graphical

More information

C# 입문 : 이론과 실습

C# 입문 : 이론과 실습 그리기개요 그리기곾렦자료형 도형그리기 문자열그리기 이미지그리기 [2/50] Graphics(System.Drawing.Graphics) 클래스 System.Drawing 네임스페이스에포함 선, 사각형, 타원등과같은도형을그리는데필요한기본적인메소드들이존재 그래픽객체 도형을그리기위해필요한 Graphics 클래스의객체그리기판이되는대상객체를얻거나생성하는방법 1 Paint

More information

디지털영상처리3

디지털영상처리3 비트맵개요 BMP 파일의이해실제 BMP 파일의분석 BMP 파일을화면에출력 } 비트맵 (bitmap) 윈도우즈에서영상을표현하기위해사용되는윈도우즈 GDI(Graphic Device Interface) 오브젝트의하나 } 벡터그래픽 (vector graphics) 점, 선, 면등의기본적인그리기도구를이용하여그림을그리는방식 } 윈도우즈 GDI(Graphic Device

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

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean

More information

(Microsoft PowerPoint - C#\260\355\261\3363\(WinForm\).ppt)

(Microsoft PowerPoint - C#\260\355\261\3363\(WinForm\).ppt) - 1 - C# Programming 이현정 hjyi@hotmail.com MCT/MCSD/MCAD/MCSD.NET 목차 - 2-1부 C# 언어 1장 C, C++ 그리고 C# 2장 Hello, C#! 3장변수와자료형 4장연산자 5장흐름제어 6장메쏘드 7장클래스 8장배열과컬렉션 9장속성과인덱서 10장델리게이트와이벤트 11장예외처리 12장특성 13장일반화프로그래밍

More information

PowerPoint Presentation

PowerPoint Presentation Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음

More information

Microsoft PowerPoint - ÀÚ¹Ù08Àå-1.ppt

Microsoft PowerPoint - ÀÚ¹Ù08Àå-1.ppt AWT 컴포넌트 (1) 1. AWT 패키지 2. AWT 프로그램과이벤트 3. Component 클래스 4. 컴포넌트색칠하기 AWT GUI 를만들기위한 API 윈도우프로그래밍을위한클래스와도구를포함 Graphical User Interface 그래픽요소를통해프로그램과대화하는방식 그래픽요소를 GUI 컴포넌트라함 윈도우프로그램만들기 간단한 AWT 프로그램 import

More information

PowerPoint Template

PowerPoint Template JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것

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

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 5 장생성자와접근제어 1. 객체지향기법을이해한다. 2. 클래스를작성할수있다. 3. 클래스에서객체를생성할수있다. 4. 생성자를이용하여객체를초기화할수 있다. 5. 접근자와설정자를사용할수있다. 이번장에서만들어볼프로그램 생성자 생성자 (constructor) 는초기화를담당하는함수 생성자가필요한이유 #include using namespace

More information

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

var answer = confirm( 확인이나취소를누르세요.); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write( 확인을눌렀습니다.); else { document.write( 취소를눌렀습니다.); 자바스크립트 (JavaScript) - HTML 은사용자에게인터페이스 (interface) 를제공하는언어 - 자바스크립트는서버로데이터를전송하지않고서할수있는데이터처리를수행한다. - 자바스크립트는 HTML 나 JSP 에서작성할수있고 ( 내부스크립트 ), 별도의파일로도작성이가능하다 ( 외 부스크립트 ). - 내부스크립트 - 외부스크립트

More information

디지털영상처리3

디지털영상처리3 비트맵 BMP 파일의 실제 BMP 파일의 BMP 파일을 화면에 개요 이해 분석 출력 } 비트맵 (bitmap) 윈도우즈에서영상을표현하기위해사용되는윈도우즈 GDI(Graphic Device Interface) 오브젝트의하나 } 벡터그래픽 (vector graphics) 점, 선, 면등의기본적인그리기도구를이용하여그림을그리는방식 } 윈도우즈 GDI(Graphic

More information

Microsoft PowerPoint - 07-C#-12-GDI+.ppt [호환 모드]

Microsoft PowerPoint - 07-C#-12-GDI+.ppt [호환 모드] 그래픽디바이스인터페이스 GraphicsTest 프로그램예 MyCanvas 프로그램예 순천향대학교컴퓨터학부이상정 1 그래픽디바이스인터페이스 순천향대학교컴퓨터학부이상정 2 GDI+ 개요 GDI+ 란? GDI(Graphic Device Interface) 란프로그래머가그래픽장치의종류에상관없이그래픽기능을가지는프로그램을작성하도록도와주는 API들의모음.NET 환경에서이전의

More information

JAVA PROGRAMMING 실습 08.다형성

JAVA PROGRAMMING 실습 08.다형성 2015 학년도 2 학기 1. 추상메소드 선언은되어있으나코드구현되어있지않은메소드 abstract 키워드사용 메소드타입, 이름, 매개변수리스트만선언 public abstract String getname(); public abstract void setname(string s); 2. 추상클래스 abstract 키워드로선언한클래스 종류 추상메소드를포함하는클래스

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 CHAPTER 11. 자바스크립트와캔버스로게임 만들기 캔버스 캔버스는 요소로생성 캔버스는 HTML 페이지상에서사각형태의영역 실제그림은자바스크립트를통하여코드로그려야한다. 컨텍스트객체 컨텍스트 (context) 객체 : 자바스크립트에서물감과붓의역할을한다. var canvas = document.getelementbyid("mycanvas"); var

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 3 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

Visual Basic 반복문

Visual Basic 반복문 학습목표 반복문 For Next문, For Each Next문 Do Loop문, While End While문 구구단작성기로익히는반복문 2 5.1 반복문 5.2 구구단작성기로익히는반복문 3 반복문 주어진조건이만족하는동안또는주어진조건이만족할때까지일정구간의실행문을반복하기위해사용 For Next For Each Next Do Loop While Wend 4 For

More information

Structure and Interpretation of Computer Programs: Assignment 3 Seung-Hoon Na October 4, George (아래 3개의 문제에 대한 구현이 모두 포함된 george.rkt파일을 제출하시오.

Structure and Interpretation of Computer Programs: Assignment 3 Seung-Hoon Na October 4, George (아래 3개의 문제에 대한 구현이 모두 포함된 george.rkt파일을 제출하시오. Structure and Interpretation of Computer Programs: Assignment 3 Seung-Hoon Na October 4, 2018 1 George (아래 3개의 문제에 대한 구현이 모두 포함된 george.rkt파일을 제출하시오. 실행후 Problem 1.3에 대한 Display결과가 나와야 함) George 그림은 다음과

More information

PowerPoint Presentation

PowerPoint Presentation public class SumTest { public static void main(string a1[]) { int a, b, sum; a = Integer.parseInt(a1[0]); b = Integer.parseInt(a1[1]); sum = a + b ; // 두수를더하는부분입니다 System.out.println(" 두수의합은 " + sum +

More information

Microsoft PowerPoint - 2강

Microsoft PowerPoint - 2강 컴퓨터과학과 김희천교수 학습개요 Java 언어문법의기본사항, 자료형, 변수와상수선언및사용법, 각종연산자사용법, if/switch 등과같은제어문사용법등에대해설명한다. 또한 C++ 언어와선언 / 사용방법이다른 Java의배열선언및사용법에대해서설명한다. Java 언어의효과적인활용을위해서는기본문법을이해하는것이중요하다. 객체지향의기본개념에대해알아보고 Java에서어떻게객체지향적요소를적용하고있는지살펴본다.

More information

Microsoft PowerPoint - C++ 5 .pptx

Microsoft PowerPoint - C++ 5 .pptx C++ 언어프로그래밍 한밭대학교전자. 제어공학과이승호교수 연산자중복 (operator overloading) 이란? 2 1. 연산자중복이란? 1) 기존에미리정의되어있는연산자 (+, -, /, * 등 ) 들을프로그래머의의도에맞도록새롭게정의하여사용할수있도록지원하는기능 2) 연산자를특정한기능을수행하도록재정의하여사용하면여러가지이점을가질수있음 3) 하나의기능이프로그래머의의도에따라바뀌어동작하는다형성

More information

gnu-lee-oop-kor-lec06-3-chap7

gnu-lee-oop-kor-lec06-3-chap7 어서와 Java 는처음이지! 제 7 장상속 Super 키워드 상속과생성자 상속과다형성 서브클래스의객체가생성될때, 서브클래스의생성자만호출될까? 아니면수퍼클래스의생성자도호출되는가? class Base{ public Base(String msg) { System.out.println("Base() 생성자 "); ; class Derived extends Base

More information

슬라이드 1

슬라이드 1 프로세싱 광운대학교로봇학부박광현 프로세싱실행 2 C:\processing-3.2.1 폴더 창나타내기 실행 정지 3 폭 높이 600 400 도형그리기 배경칠하기 5 background(255, 255, 255); R G B background(255, 0, 0); background(255, 122, 0); 선그리기 6 background(255, 122, 0);

More information

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 (   ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각 JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

<4D F736F F F696E74202D20C1A63233C0E520B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63233C0E520B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 23 장그래픽프로그래밍 이번장에서학습할내용 자바에서의그래픽 기초사항 기초도형그리기 색상 폰트 Java 2D Java 2D를이용한그리기 Java 2D 를이용한채우기 도형회전과평행이동 자바를이용하여서화면에그림을그려봅시다. 자바그래픽데모 자바그래픽의두가지방법 자바그래픽 AWT Java 2D AWT를사용하면기본적인도형들을쉽게그릴수있다. 어디서나잘실행된다.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 1 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

PowerPoint Presentation

PowerPoint Presentation public class SumTest { public static void main(string a1[]) { int a, b, sum; a = Integer.parseInt(a1[0]); b = Integer.parseInt(a1[1]); sum = a + b ; // 두수를더하는부분입니다 System.out.println(" 두수의합은 " + sum +

More information

12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont

12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont 12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다. 12.1 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont( in LPDIRECT3DDEVICE9 pdevice, in INT Height, in UINT

More information

UI TASK & KEY EVENT

UI TASK & KEY EVENT 2007. 2. 5 PLATFORM TEAM 정용학 차례 CONTAINER & WIDGET SPECIAL WIDGET 질의응답및토의 2 Container LCD에보여지는화면한개 1개이상의 Widget을가짐 3 Container 초기화과정 ui_init UMP_F_CONTAINERMGR_Initialize UMP_H_CONTAINERMGR_Initialize

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 11 장상속 1. 상속의개념을이해한다. 2. 상속을이용하여자식클래스를작성할수있다. 3. 상속과접근지정자와의관계를이해한다. 4. 상속시생성자와소멸자가호출되는순서를이해한다. 이번장에서만들어볼프로그램 class Circle { int x, y; int radius;... class Rect { int x, y; int width, height;... 중복 상속의개요

More information

제8장 자바 GUI 프로그래밍 II

제8장 자바 GUI 프로그래밍 II 제8장 MVC Model 8.1 MVC 모델 (1/7) MVC (Model, View, Controller) 모델 스윙은 MVC 모델에기초를두고있다. MVC란 Xerox의연구소에서 Smalltalk 언어를바탕으로사용자인터페이스를개발하기위한방법 MVC는 3개의구성요소로구성 Model : 응용프로그램의자료를표현하기위한모델 View : 자료를시각적으로 (GUI 방식으로

More information

e-비즈니스 전략 수립

e-비즈니스 전략 수립 CSS3 속성 HTML5 웹프로그래밍입문 ( 개정판 ) Contents 학습목표 CSS3가지원하는스타일속성과스타일값을활용할수있습니다. CSS3를사용해레이아웃을잡을수있습니다. 내용 CSS3 단위 박스속성 display 속성 배경속성 글자속성 위치속성 float 속성 그림자속성 그레이디언트 2/85 1. CSS3 단위 키워드단위 W3C에서미리정의한단어 키워드를입력하면키워드에해당하는스타일이자동으로적용

More information

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

Microsoft PowerPoint 자바-기본문법(Ch2).pptx 자바기본문법 1. 기본사항 2. 자료형 3. 변수와상수 4. 연산자 1 주석 (Comments) 이해를돕기위한설명문 종류 // /* */ /** */ 활용예 javadoc HelloApplication.java 2 주석 (Comments) /* File name: HelloApplication.java Created by: Jung Created on: March

More information

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 8 장클래스와객체 I 이번장에서학습할내용 클래스와객체 객체의일생직접 메소드클래스를 필드작성해 UML 봅시다. QUIZ 1. 객체는 속성과 동작을가지고있다. 2. 자동차가객체라면클래스는 설계도이다. 먼저앞장에서학습한클래스와객체의개념을복습해봅시다. 클래스의구성 클래스 (class) 는객체의설계도라할수있다. 클래스는필드와메소드로이루어진다.

More information

<4D F736F F D20C7C1B7CEB1D7B7A55FC3D6C8EFB9E85F4E4554BFA1BCADC0C B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D62E646F63>

<4D F736F F D20C7C1B7CEB1D7B7A55FC3D6C8EFB9E85F4E4554BFA1BCADC0C B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D62E646F63> 이논문에서는 MS가최신기술이자 2006년쯤에나올새로운 OS인롷혼 (Windows XP 의차세대버전 ) 의 API인 WinFX의기초가될.NET 라이브러리를사용하여 Manage( 관리 ) 환경에서의 2D 그래픽프로그래밍에대해서소개히고자한다. 본논문은크게두가지의주제로나누어설명을하고자한다. 첫째. GDI+ 를이용한 2D

More information

1

1 1 2 3 4 5 6 b b t P A S M T U s 7 m P P 8 t P A S M T U s 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Chapter 1 29 1 2 3 4 18 17 16 15 5 6 7 8 9 14 13 12 11 10 1 2 3 4 5 9 10 11 12 13 14 15

More information

Microsoft Word - cg07-midterm.doc

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

More information

PowerPoint Template

PowerPoint Template 16-1. 보조자료템플릿 (Template) 함수템플릿 클래스템플릿 Jong Hyuk Park 함수템플릿 Jong Hyuk Park 함수템플릿소개 함수템플릿 한번의함수정의로서로다른자료형에대해적용하는함수 예 int abs(int n) return n < 0? -n : n; double abs(double n) 함수 return n < 0? -n : n; //

More information

Microsoft PowerPoint - logo_2-미해답.ppt [호환 모드]

Microsoft PowerPoint - logo_2-미해답.ppt [호환 모드] Chap.2 Logo 프로그래밍기초 - 터틀그래픽명령어 ( 기본, 고급 ) 학습목표 터틀의이동과선그리기에대해살펴본다. 터틀의회전에대해살펴본다. 터틀펜과화면제어에대해살펴본다. 2012. 5. 박남제 namjepark@jejunu.ac.kr < 이동하기 > - 앞으로이동하기 forward 100 터틀이 100 픽셀만큼앞으로이동 2 < 이동하기 > forward(fd)

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 인터페이스, 람다식, 패키지 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 홈네트워킹 public interface RemoteControl { public void turnon(); // 가전제품을켠다. public void turnoff(); // 가전제품을끈다. 인터페이스를구현 public class Television

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 11 장상속 이번장에서학습할내용 상속이란? 상속의사용 메소드재정의 접근지정자 상속과생성자 Object 클래스 종단클래스 상속을코드를재사용하기위한중요한기법입니다. 상속이란? 상속의개념은현실세계에도존재한다. 상속의장점 상속의장점 상속을통하여기존클래스의필드와메소드를재사용 기존클래스의일부변경도가능 상속을이용하게되면복잡한 GUI 프로그램을순식간에작성

More information

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 객체지향프로그래밍 IT CookBook, 자바로배우는쉬운자료구조 q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 q 객체지향프로그래밍의이해 v 프로그래밍기법의발달 A 군의사업발전 1 단계 구조적프로그래밍방식 3 q 객체지향프로그래밍의이해 A 군의사업발전 2 단계 객체지향프로그래밍방식 4 q 객체지향프로그래밍의이해 v 객체란무엇인가

More information

C# 입문 : 이론과 실습

C# 입문 : 이론과 실습 C# 언어의고급프로그래밍기법 응용프로그램을보다짜임새있고원론적으로작성가능델리게이트 객체지향특성이반영된메소드포인터이벤트와스레드를처리하는방법론 애트리뷰트 프로그래밍단위 ( 어셈블리, 클래스, 메소드등 ) 에줄수있는추가적인정보언어시스템에서실행시간에다양하게활용할수있는방법을지원 예외처리 실행중에발생하는에러언어시스템에서에러처리를지원 델리게이트 (delegate) 는메소드참조기법객체지향적특징이반영된메소드포인터

More information

GDI의 개념

GDI의 개념 제 6 장그래픽객체의사용 6.1 GDI와 DC의개념 6.2 GDI 객체실습 6-1 직선과도형및비트맵그리기 6.3 GDI+ 의개념실습 6-2 사각형뷰포트에원그리기 GDI 의개념 Graphic Device Interface 윈도우가하드웨어를제어할수있도록응용프로그램에제공하는모든기능 응용프로그램과디바이스드라이버의중간역할 응용프로그램에대한장치독립적인그래픽동작수행 Device

More information

13 주차 - MDI, Exception, WebBrowser, RichTextBox, AlarmProgram 대림대학 년도 1 학기홍명덕

13 주차 - MDI, Exception, WebBrowser, RichTextBox, AlarmProgram 대림대학 년도 1 학기홍명덕 13 주차 - MDI, Exception, WebBrowser, RichTextBox, AlarmProgram 대림대학 - 2011 년도 1 학기홍명덕 (myungduk.hong@gmail.com) MDI(Multiple Document Interface) 응용프로그램은하나의응용프로그램에서동시에여러개의문서로작업할수있도록인터페이스를제공하는응용프로그램문서 (document)

More information

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770> 연습문제해답 5 4 3 2 1 0 함수의반환값 =15 5 4 3 2 1 0 함수의반환값 =95 10 7 4 1-2 함수의반환값 =3 1 2 3 4 5 연습문제해답 1. C 언어에서의배열에대하여다음중맞는것은? (1) 3차원이상의배열은불가능하다. (2) 배열의이름은포인터와같은역할을한다. (3) 배열의인덱스는 1에서부터시작한다. (4) 선언한다음, 실행도중에배열의크기를변경하는것이가능하다.

More information

[ 그림 7-1] 프로젝트 res 폴더 이미지뷰 [ 예제 7-1] 이미지뷰 1 <LinearLayout 2 ~~~~ 중간생략 ~~~~ 3 android:orientation="vertical" > 4 <ImageView

[ 그림 7-1] 프로젝트 res 폴더 이미지뷰 [ 예제 7-1] 이미지뷰 1 <LinearLayout 2 ~~~~ 중간생략 ~~~~ 3 android:orientation=vertical > 4 <ImageView 7 차시이미지처리 1 학습목표 이미지뷰를사용하는방법을배운다. 비트맵을사용하는방법을배운다. 2 확인해볼까? 3 이미지뷰와이미지버튼 1) 학습하기 [ 그림 7-1] 프로젝트 res 폴더 이미지뷰 [ 예제 7-1] 이미지뷰 1 4

More information

Chapter 6 Objects and Classes

Chapter 6 Objects and Classes 11 장상속과다형성 1 강의목표 상속 (inheritance) 을이용하여기본클래스 (base class) 로부터파생클래스 (derived class) 생성 (11.2) 파생클래스유형의객체를기본클래스유형의매개변수 (parameter) 로전달함으로써일반화프로그래밍 (generic programming) 작업 (11.3) 생성자와소멸자의연쇄적처리 (chaining)

More information

BMP 파일 처리

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

More information

슬라이드 1

슬라이드 1 핚국산업기술대학교 제 14 강 GUI (III) 이대현교수 학습안내 학습목표 CEGUI 라이브러리를이용하여, 게임메뉴 UI 를구현해본다. 학습내용 CEGUI 레이아웃의로딩및렌더링. OIS 와 CEGUI 의연결. CEGUI 위젯과이벤트의연동. UI 구현 : 하드코딩방식 C++ 코드를이용하여, 코드내에서직접위젯들을생성및설정 CEGUI::PushButton* resumebutton

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

Microsoft PowerPoint 웹 연동 기술.pptx

Microsoft PowerPoint 웹 연동 기술.pptx 웹프로그래밍및실습 ( g & Practice) 문양세강원대학교 IT 대학컴퓨터과학전공 URL 분석 (1/2) URL (Uniform Resource Locator) 프로토콜, 호스트, 포트, 경로, 비밀번호, User 등의정보를포함 예. http://kim:3759@www.hostname.com:80/doc/index.html URL 을속성별로분리하고자할경우

More information

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt 변수와상수 1 변수란무엇인가? 변수 : 정보 (data) 를저장하는컴퓨터내의특정위치 ( 임시저장공간 ) 메모리, register 메모리주소 101 번지 102 번지 변수의크기에따라 주로 byte 단위 메모리 2 기본적인변수형및변수의크기 변수의크기 해당컴퓨터에서는항상일정 컴퓨터마다다를수있음 short

More information

17장 클래스와 메소드

17장 클래스와 메소드 17 장클래스와메소드 박창이 서울시립대학교통계학과 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 1 / 18 학습내용 객체지향특징들객체출력 init 메소드 str 메소드연산자재정의타입기반의버전다형성 (polymorphism) 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 2 / 18 객체지향특징들 객체지향프로그래밍의특징 프로그램은객체와함수정의로구성되며대부분의계산은객체에대한연산으로표현됨객체의정의는

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

Microsoft PowerPoint - 09-CE-5-윈도우 핸들

Microsoft PowerPoint - 09-CE-5-윈도우 핸들 순천향대학교컴퓨터학부이상정 1 학습내용 윈도우핸들 윈도우찿기 윈도우확인및제거 윈도우숨기기 윈도우포커스 윈도우텍스트 윈도우핸들 순천향대학교컴퓨터학부이상정 3 핸들 (handle) 윈도우에서구체적인어떤대상을구분하기위해지정되는고유의번호 32비트의정수값 핸들은운영체제가발급하고사용자가이값을사용 실제값이무엇인지는몰라도상관없음 윈도우, DC, 브러쉬등등 순천향대학교컴퓨터학부이상정

More information

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어서가장중요한부분이라고도할수있기때문입니다. 1. 새로운메크로생성 새메크로만들기버튺을클릭하여파일을생성합니다. 2. 메크로저장 -

More information

Microsoft PowerPoint - lec2.ppt

Microsoft PowerPoint - lec2.ppt 2008 학년도 1 학기 상지대학교컴퓨터정보공학부 고광만 강의내용 어휘구조 토큰 주석 자료형기본자료형 참조형배열, 열거형 2 어휘 (lexicon) 어휘구조와자료형 프로그램을구성하는최소기본단위토큰 (token) 이라부름문법적으로의미있는최소의단위컴파일과정의어휘분석단계에서처리 자료형 자료객체가갖는형 구조, 개념, 값, 연산자를정의 3 토큰 (token) 정의문법적으로의미있는최소의단위예,

More information

C++ Programming

C++ Programming C++ Programming 연산자다중정의 Seo, Doo-okok clickseo@gmail.com http://www.clickseo.com 목 차 연산자다중정의 C++ 스타일의문자열 2 연산자다중정의 연산자다중정의 단항연산자다중정의 이항연산자다중정의 cin, cout 그리고 endl C++ 스타일의문자열 3 연산자다중정의 연산자다중정의 (Operator

More information

Microsoft PowerPoint - additional01.ppt [호환 모드]

Microsoft PowerPoint - additional01.ppt [호환 모드] 1.C 기반의 C++ part 1 함수 오버로딩 (overloading) 디폴트매개변수 (default parameter) 인-라인함수 (in-line function) 이름공간 (namespace) Jong Hyuk Park 함수 Jong Hyuk Park 함수오버로딩 (overloading) 함수오버로딩 (function overloading) C++ 언어에서는같은이름을가진여러개의함수를정의가능

More information

01-OOPConcepts(2).PDF

01-OOPConcepts(2).PDF Object-Oriented Programming Concepts Tel: 02-824-5768 E-mail: hhcho@selabsoongsilackr? OOP (Object) (Encapsulation) (Message) (Class) (Inheritance) (Polymorphism) (Abstract Class) (Interface) 2 1 + = (Dependency)

More information

Microsoft PowerPoint - 07-Data Manipulation.pptx

Microsoft PowerPoint - 07-Data Manipulation.pptx Digital 3D Anthropometry 7. Data Analysis Sungmin Kim SEOUL NATIONAL UNIVERSITY Body 기본정보표시 Introduction 스케일조절하기 단면형상추출 단면정보관리 3D 단면형상표시 2 기본정보표시및스케일조절 UI 및핸들러구성 void fastcall TMainForm::BeginNewProject1Click(TObject

More information

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher( 실행할페이지.jsp); 다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp"); dispatcher.forward(request, response); - 위의예에서와같이 RequestDispatcher

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

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

gnu-lee-oop-kor-lec10-1-chap10

gnu-lee-oop-kor-lec10-1-chap10 어서와 Java 는처음이지! 제 10 장이벤트처리 이벤트분류 액션이벤트 키이벤트 마우스이동이벤트 어댑터클래스 스윙컴포넌트에의하여지원되는이벤트는크게두가지의카테고리로나누어진다. 사용자가버튼을클릭하는경우 사용자가메뉴항목을선택하는경우 사용자가텍스트필드에서엔터키를누르는경우 두개의버튼을만들어서패널의배경색을변경하는프로그램을작성하여보자. 이벤트리스너는하나만생성한다. class

More information

Microsoft PowerPoint UI-Event.Notification(1.5h).pptx

Microsoft PowerPoint UI-Event.Notification(1.5h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 UI 이벤트 Event listener Touch mode Focus handling Notification Basic toast notification Customized toast notification Status bar notification 2 사용자가인터랙션하는특정 View

More information

제11장 프로세스와 쓰레드

제11장 프로세스와 쓰레드 제9장자바쓰레드 9.1 Thread 기초 (1/5) 프로그램 명령어들의연속 (a sequence of instruction) 프로세스 / Thread 실행중인프로그램 (program in execution) 프로세스생성과실행을위한함수들 자바 Thread 2 9.1 Thread 기초 (2/5) 프로세스단위작업의문제점 프로세스생성시오버헤드 컨텍스트스위치오버헤드

More information

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

(Microsoft PowerPoint - 07\300\345.ppt [\310\243\310\257 \270\360\265\345]) 클래스의응용 클래스를자유자재로사용하자. 이장에서다룰내용 1 객체의치환 2 함수와클래스의상관관계 01_ 객체의치환 객체도변수와마찬가지로치환이가능하다. 기본예제 [7-1] 객체도일반변수와마찬가지로대입이가능하다. 기본예제 [7-2] 객체의치환시에는조심해야할점이있다. 복사생성자의필요성에대하여알아보자. [ 기본예제 7-1] 클래스의치환 01 #include

More information

Design Issues

Design Issues 11 COMPUTER PROGRAMMING INHERIATANCE CONTENTS OVERVIEW OF INHERITANCE INHERITANCE OF MEMBER VARIABLE RESERVED WORD SUPER METHOD INHERITANCE and OVERRIDING INHERITANCE and CONSTRUCTOR 2 Overview of Inheritance

More information

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요 . 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요소로써안드로이드시스템에서는 Activities, Services, Content Providers,

More information

슬라이드 1

슬라이드 1 모바일소프트웨어프로젝트 지도 API 1 조 20070216 김성수 20070383 김혜준 20070965 이윤상 20071335 최진 1 매시업? 공개 API? 2 매시업 웹으로제공하고있는정보와서비스를융합하여새로운소프트웨어나서비스, 데이터베이스등을만드는것 < 최초의매시업 > 3 공개 API 누구나사용할수있도록공개된 API 지도, 검색등다양한서비스들에서제공 대표적인예

More information

PowerPoint Presentation

PowerPoint Presentation 자바프로그래밍 1 클래스와메소드심층연구 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 접근제어 class A { private int a; int b; public int c; // 전용 // 디폴트 // 공용 public class Test { public static void main(string args[]) { A obj = new

More information

이장에서다룰내용 테두리를제어하는스타일시트 외부여백 (Margin) 과내부여백 (Padding) 관련속성 위치관련속성 2

이장에서다룰내용 테두리를제어하는스타일시트 외부여백 (Margin) 과내부여백 (Padding) 관련속성 위치관련속성 2 03 장. 테두리여백지정하는속성 이번장에서는테이블, 레이어, 폼양식등의더예쁘게꾸미기위해서 CSS 를이용하여 HTML 요소의테두리속성을바꾸어보자. 이장에서다룰내용 1 2 3 테두리를제어하는스타일시트 외부여백 (Margin) 과내부여백 (Padding) 관련속성 위치관련속성 2 01. 테두리를제어하는스타일시트 속성값설명 border-width border-left-width

More information

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public Chapter 9 Lab 문제정답 1. public class Circle private double radius; static final double PI=3.141592; // PI 이름으로 3.141592 로초기화된정적상수 (1) public Circle(double r) radius = r; (2) public double getradius() return

More information

tiawPlot ac 사용방법

tiawPlot ac 사용방법 tiawplot ac 매뉴얼 BORISOFT www.borisoft.co.kr park.ji@borisoft.co.kr HP : 00-370-077 Chapter 프로그램설치. 프로그램설치 3 2 Chapter tiawplot ac 사용하기.tiawPlot ac 소개 2.tiawPlot ac 실행하기 3. 도면파일등록및삭제 4. 출력장치설정 5. 출력옵션설정

More information

제 1장 C#의 개요

제 1장 C#의 개요 C# 프로그래밍언어 MS사의앤더스헬스버그 (Anders Hejlsberg) 가고안.NET에최적화된언어컴포넌트지향프로그래밍언어자바의단점을보완 실행방법 : 자바 : 인터프리테이션, C#: 컴파일방법자바언어를대체할수있는언어 C# 의특징 객체지향언어 : 자료추상화델리게이트와이벤트멀티스레드, 예외처리연산자중복, 제네릭 C 계열의언어 C++ 와자바로부터영향을받았음. C:

More information

Microsoft PowerPoint - HS6000 Full HD Subtitle Generator Module Presentation

Microsoft PowerPoint - HS6000 Full HD Subtitle Generator Module Presentation HS6000 Full HD Subtitle Generator Module High-performance Network DVR Solution Preliminary Product Overview (Without notice, following described technical spec. can be changed) AddPac Technology 2010,

More information

02 장. 글꼴문단지정하기 이번장에서는스타일시트속성중에서글꼴과관련한속성과문단에관련된속성을살펴보도록하자.

02 장. 글꼴문단지정하기 이번장에서는스타일시트속성중에서글꼴과관련한속성과문단에관련된속성을살펴보도록하자. 02 장. 글꼴문단지정하기 이번장에서는스타일시트속성중에서글꼴과관련한속성과문단에관련된속성을살펴보도록하자. 이장에서다룰내용 1 2 3 4 5 글꼴꾸밈관련스타일시트텍스트관련스타일시트배경관련스타일시트목록관련스타일시트하이퍼링크관련스타일시트 2 01. 글꼴꾸밈관련스타일시트 v 글자에관련된스타일시트는크기, 스타일, 모양등에관련된 font 속성이가장많이사용 속성값설명 color

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 4 강. 함수와라이브러리함수목차 함수오버로딩 디폴트매개변수 라이브러리함수 clock 함수 난수발생 비버퍼형문자입력 커서이동 프로그래밍문제 1 /21 4 강. 함수와라이브러리함수함수오버로딩 2 /21 함수오버로딩 동일한이름의함수를여러개만들수있음 함수프로파일이달라야함 함수프로파일

More information

03장

03장 CHAPTER3 ( ) Gallery 67 68 CHAPTER 3 Intent ACTION_PICK URI android provier MediaStore Images Media EXTERNAL_CONTENT_URI URI SD MediaStore Intent choosepictureintent = new Intent(Intent.ACTION_PICK, ë

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

슬라이드 1

슬라이드 1 BMP 파일구조 김성영교수 금오공과대학교 컴퓨터공학부 학습목표 BMP 파일의구조및그특징을설명할수있다. 파일헤더및비트맵정보헤더의주요필드를구분하고그역할을설명할수있다. C언어를사용하여 BMP 파일을처리할수있다. 2 BMP 파일구조 File Header (BITMAPFILEHEADER) Bitmap Info. Header (BITMAPINFOHEADER) Headers

More information

UI TASK & KEY EVENT

UI TASK & KEY EVENT T9 & AUTOMATA 2007. 3. 23 PLATFORM TEAM 정용학 차례 T9 개요 새로운언어 (LDB) 추가 T9 주요구조체 / 주요함수 Automata 개요 Automata 주요함수 추후세미나계획 질의응답및토의 T9 ( 2 / 30 ) T9 개요 일반적으로 cat 이라는단어를쓸려면... 기존모드 (multitap) 2,2,2, 2,8 ( 총 6번의입력

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 06 Texture Mapping 01 Texture Mapping 의종류 02 Texture Mapping 이가능한객체생성 03 고급 Texture Mapping 01 Texture Mapping 의종류 1. 수동 Texture Mapping 2. 자동 Texture Mapping 2 01 Texture Mapping 의종류 좌표변환 Pipeline 에서

More information

No Slide Title

No Slide Title 상속 이충기 명지대학교컴퓨터공학과 상속 Q: 건설회사는기존아파트와조금다르거나추가적인특징들을가진새아파트를지을때어떻게하는가? A: 2 상속 상속 (inheritance) 은클래스들을연관시키는자연스럽고계층적인방법이다. 상속은객체지향프로그래밍의가장중요한개념중의하나이다. 상속은 은 이다 라는관계 (is-a relationship) 를나타낸다. 이관계를적용하여클래스들을상하관계로연결하는것이상속이다.

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

Microsoft PowerPoint PythonGUI-sprite

Microsoft PowerPoint PythonGUI-sprite (Sprite) 순천향대학교컴퓨터공학과 이상정 순천향대학교컴퓨터공학과 1 학습내용 소개 클래스 그룹클래스 충돌 블록수집게임예 게임레벨증가및점수표시 이동 순천향대학교컴퓨터공학과 2 소개 (sprite) 큰그래픽장면의부분으로사용되는단일 2차원이미지 => 쪽화면 게임의장면에서서로상호작용 ( 충돌등 ) 하는물체 => 캐릭터, 아바타 파이게임에서는일반적으로클래스로구현된객체

More information

KNK_C_05_Pointers_Arrays_structures_summary_v02

KNK_C_05_Pointers_Arrays_structures_summary_v02 Pointers and Arrays Structures adopted from KNK C Programming : A Modern Approach 요약 2 Pointers and Arrays 3 배열의주소 #include int main(){ int c[] = {1, 2, 3, 4}; printf("c\t%p\n", c); printf("&c\t%p\n",

More information

(Microsoft Word - \301\337\260\243\260\355\273\347.docx)

(Microsoft Word - \301\337\260\243\260\355\273\347.docx) 내장형시스템공학 (NH466) 중간고사 학번 : 이름 : 문제 배점 점수 1 20 2 20 3 20 4 20 5 10 6 10 7 15 8 20 9 15 합계 150 1. (20 점 ) 다음용어에대해서설명하시오. (1) 정보은닉 (Information Hiding) (2) 캡슐화 (Encapsulation) (3) 오버로딩 (Overloading) (4) 생성자

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

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다 이장에서사용되는 MATLAB 명령어들은비교적복잡하므로 MATLAB 창에서명령어를직접입력하지않고확장자가 m 인 text 파일을작성하여실행을한다. 즉, test.m 과같은 text 파일을만들어서 MATLAB 프로그램을작성한후실행을한다. 이와같이하면길고복잡한 MATLAB 프로그램을작성하여실행할수있고, 오류가발생하거나수정이필요한경우손쉽게수정하여실행할수있는장점이있으며,

More information

그래픽 프로그래밍

그래픽 프로그래밍 제 13 장그래픽프로그래밍 13.1 베지어곡선 실습 13-1 알고리즘을통한베지어곡선그리기 실습 13-2 컨트롤포인트이동및베지어곡선 해상도설정하기 그래픽프로그래밍 베지어곡선 베지어곡선알고리즘은곡선을생성하는대표적이고기본이되는알고리즘이다. MFC 에서의베지어곡선함수 BOOL PolyBezier(const POINT* lppoints, int ncount); lppoints

More information

Microsoft PowerPoint - chap06-1Array.ppt

Microsoft PowerPoint - chap06-1Array.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-1 참고자료 배열 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 배열의선언과사용 같은형태의자료형이많이필요할때배열을사용하면효과적이다. 배열의선언 배열의사용 배열과반복문 배열의초기화 유연성있게배열다루기 한빛미디어

More information

슬라이드 1

슬라이드 1 -Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 인터페이스 배효철 th1g@nate.com 1 목차 인터페이스의역할 인터페이스선언 인터페이스구현 인터페이스사용 타입변환과다형성 인터페이스상속 디폴트메소드와인터페이스확장 2 인터페이스의역할 인터페이스란? 개발코드와객체가서로통신하는접점 개발코드는인터페이스의메소드만알고있으면 OK 인터페이스의역할 개발코드가객체에종속되지않게 -> 객체교체할수있도록하는역할 개발코드변경없이리턴값또는실행내용이다양해질수있음

More information