第三讲一个简单的二维光栅图形软件包 SRGP( Simple raster graphics Package 3.1用图形软件包绘图 3.2基本的交互处理 33光栅操作 出流 应用 应用 图形 SRGP 模型 程序 硬件 输入流 20212/24 Graphics Lab PKU
2021/2/24 Graphics Lab.PKU 1 第三讲 一个简单的二维光栅图形软件包 3.1 用图形软件包绘图 3.2 基本的交互处理 3.3 光栅操作 SRGP(Simple Raster Graphics Package) 应用 模型 应用 程序 SRGP 图形 硬件 设备 输出流 输入流
31用图形软件包绘图 图元的声明 图元的属性 ?填充图元及属性 ?保存和恢复图元的属性 字符 20212/24 Graphics Lab PKU
2021/2/24 Graphics Lab.PKU 2 3.1 用图形软件包绘图 ? 图元的声明 ? 图元的属性 ? 填充图元及属性 ? 保存和恢复图元的属性 ? 字符
31用图形软件包绘图 图元的声明 绘图纸,屏幕, 坐标系 扫描转换:将顶点(参数表示的图形)转换为点阵表示的图 形 表示的图形扫描转换 点阵表示 的图形 用户 显示系统 20212/24 Graphics Lab PKU
2021/2/24 Graphics Lab.PKU 3 3.1 用图形软件包绘图 • 图元的声明 – 绘图纸,屏幕, – 坐标系 – 扫描转换:将顶点(参数表示的图形)转换为点阵表示的图 形 扫描转换 顶点(参数) 表示的图形 用户 点阵表示 的图形 显示系统
3.1用图形软件包绘图 基本图元绘制:点、直线段、折线、 多边形、圆弧、字符 数据类型: Struct Point intx, y; i typedef int* VertexCoordList typedef Point > VertexList 20212/24 Graphics Lab PKU
2021/2/24 Graphics Lab.PKU 4 3.1用图形软件包绘图 • 基本图元绘制:点、直线段、折线、 多边形、 圆弧、字符。 • 数据类型: Struct Point{ int x, y;} typedef int * VertexCoordList; typedef Point *VertexList;
Void PutPixel(int x, int y, int color) /{点函数, color:颜色值。 Void line coord(int 0, int yO, int xl, int y1) Void Line(point * pnto, point* pnt 1) /(线函数 4084 bowtieArray[1 70 eArray[2] 70 60 bowtieArray(3 40 76 bowi e Array[4] 1060 bowtieArray 5] Void polyline Coord( int vertexCount, Vertex CoordList xArray Vertex CoordList aRray) Void polyline(int vertex Count, VertexList vertices) /折线函数。 20212/24 Graphics Lab PKU
2021/2/24 Graphics Lab.PKU 5 Void PutPixel(int x, int y, int color); //画点函数,color :颜色值。 Void LineCoord(int x0, int y0,int x1,int y1); Void Line (Point *pnt0, Point * pnt1); //画线函数 Void polylineCoord( int vertexCount,VertexCoordList xArray, VertexCoordList yArray); Void polyline(int vertexCount, VertexList vertices) //画折线函数