中国高校课件下载中心 》 教学资源 》 大学文库

浙江大学:《计算机辅助设计与图形学》课程教学资源(PPT讲稿)简单图形库介绍

文档信息
资源类别:文库
文档格式:PPTX
文档页数:50
文件大小:408.06KB
团购合买:点击进入团购
内容简介
浙江大学:《计算机辅助设计与图形学》课程教学资源(PPT讲稿)简单图形库介绍
刷新页面文档预览

简单图形库介绍

图形坐标系、像素 3 : 。。 . ······|········· 0。。。 ●●。 ●●。。。。 ······→…··········· 。 ●。●。·。 。● ·····················⊙·· ●。 ··.···········● e。。。。。 .·····.······ ······················ ●。 。。。 。 ●·················· 0

第三方图形库 ■C语言本身不提供图形绘制功能。 借助于第三方提供的图形库,可实现图形的绘 制。 图形库以C原码形式,或者以二进制目标码形式提 供 在应用第三方图形库时,不需要了解其具体的实现, 只需了解其基本功能和图形绘制流程。 直接调用相关图形库函数来实现具体的图形绘 制。 注意:图形库接口头文件应当被包含到源文件中 头文件包含了相关图形库函数的原型

 C语言本身不提供图形绘制功能。  借助于第三方提供的图形库,可实现图形的绘 制。 ▪ 图形库以C原码形式,或者以二进制目标码形式提 供。 ▪ 在应用第三方图形库时,不需要了解其具体的实现, 只需了解其基本功能和图形绘制流程。  直接调用相关图形库函数来实现具体的图形绘 制。 ▪ 注意:图形库接口头文件应当被包含到源文件中。 ▪ 头文件包含了相关图形库函数的原型

基本图形函数 Init Graphics Initializes the graphics package, open the window for renderin MovePen(, y) Moves the pen to an absolute position Draws a line from current position to a relative DrawLine(dx, dy) coordinates DrawArc(r, start, sweep) Draws an arc specified by a radius and two angles GetWindow Width Returns the width of the graphics window GetWindowHeightO Returns the height of the graphics window GetcurrentXO Returns the current x-coordinate of the pen GetcurrentYo Returns the current y-coordinate of the pen

InitGraphics() Initializes the graphics package, open the window for rendering MovePen(x, y) Moves the pen to an absolute position DrawLine(dx, dy) Draws a line from current position to a relative coordinates DrawArc(r, start, sweep) Draws an arc specified by a radius and two angles GetWindowWidth() Returns the width of the graphics window GetWindowHeight() Returns the height of the graphics window GetCurrentX() Returns the current x-coordinate of the pen GetCurrentY() Returns the current y-coordinate of the pen

初始化 本课程采用的第三方图形库是基于 windows系 统的Win32AP 在Win3AP中,第一个C函数是 Win main(),而不 是 main),且要遵循 Windows编程规范—一这 需要花很多时间去学习 为了方面初学者使用,在第三方图形库中,已 实现了通用的 Win maing)基本功能 应用程序所要做的相关初始化工作只需写在Main( 函数中即可 在Main函数中,首先要调用 I Init Graphic50来初始化 图形窗口,以便绘制图形

 本课程采用的第三方图形库是基于windows系 统的Win32API.  在Win32API中, 第一个C函数是WinMain(), 而不 是 main(),且要遵循windows编程规范——这 需要花很多时间去学习.  为了方面初学者使用,在第三方图形库中,已 实现了通用的WinMain()基本功能 ▪ 应用程序所要做的相关初始化工作只需写在Main() 函数中即可. ▪ 在Main()函数中,首先要调用InitGraphics()来初始化 图形窗口,以便绘制图形

画笔 可以想象在图形窗口里有一只虚拟的画笔 存在 设定画笔的位置(坐标): MovePen(x, y) 坐标X和y是图形窗口的绝对坐标(单位:英寸) MoveMen(xy)将把画笔移到(Xy)—一画笔当 前位置 ■接下来的图形绘制都是从该位置开始的 ■有的绘图函数可以更改画笔当前位置

 可以想象在图形窗口里有一只虚拟的画笔 存在.  设定画笔的位置(坐标): ▪ MovePen(x, y); ▪ 坐标x和y是图形窗口的绝对坐标(单位:英寸)  MovePen(x, y)将把画笔移到(x,y)——画笔当 前位置.  接下来的图形绘制都是从该位置开始的.  有的绘图函数可以更改画笔当前位置

直线 画直线函数: Drawline(dx,dy) 其中,dx和dy是相对于画笔当前位置的偏移量 假设画笔当前位置是(X,y),它从(Xy)到(X+dx y+dy)画一条直线 画完直线后,画笔当前位置移到(x+d×,y+d 画一个矩形 MoveMen(0.5, 0.5) DrawLine(0.0, 1.0); DrawLine(1.0,0.0); Drawline(0.0, -1.0) DrawLine(-1.0,0.0);

 画直线函数:DrawLine(dx, dy) ▪ 其中,dx和dy是相对于画笔当前位置的偏移量 ▪ 假设画笔当前位置是(x, y),它从(x, y)到(x+dx, y+dy) 画一条直线。 ▪ 画完直线后,画笔当前位置移到(x+dx, y+dy)  画一个矩形: MovePen(0.5, 0.5); DrawLine(0.0, 1.0); DrawLine(1.0,0.0); DrawLine(0.0,-1.0); DrawLine(-1.0,0.0);

圆与圆孤 DraWArc(r, start, sWeep 以画笔当前位置作为圆弧所在圆的Ⅹ轴上右 起点,画一段圆弧 圆孤的半径为r,起始角度为 start(单位:度, 相对于Ⅹ轴方向逆时针为正),弧度为 sweep

 DrawArc(r, start, sweep)  以画笔当前位置作为圆弧所在圆的X轴上右 起点,画一段圆弧.  圆弧的半径为r, 起始角度为start(单位:度, 相对于X轴方向逆时针为正), 弧度为sweep

文本 ■常用的 printf用于标准输出(控制台窗口) 输出格式化数据,不能用于在图形窗口输 出文本 ■图形模式下输出文本的函数 Draw TextString(char *string 从当前位置开始输出文本(字符串) string string是字符串指针

 常用的printf用于标准输出(控制台窗口) 输出格式化数据,不能用于在图形窗口输 出文本。  图形模式下输出文本的函数 DrawTextString(char *string) ▪ 从当前位置开始输出文本(字符串)string ▪ string 是字符串指针

sprintf Draw Textstring)函数只能输出文本(字符 串),不能直接输出格式化数据。 ■函数 sprint(0可将格式化数据输出到一个缓 冲区中,形成一个字符串: int sprintf( char str, const char format, .. printf的用法同 printf0( printi将结果输出到标准输出 sprintf,则输出到字符串(用户指定的str)

 DrawTextString()函数只能输出文本(字符 串),不能直接输出格式化数据。  函数sprintf()可将格式化数据输出到一个缓 冲区中,形成一个字符串: ▪ int sprintf ( char * str, const char * format, ... ) ▪ sprintf()的用法同printf(): ▪ printf将结果输出到标准输出 ▪ sprintf则输出到字符串(用户指定的str)

刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档