Attributes of Output Primitives.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Attributes of Output Primitives.ppt

Attributes of Output Primitives Lectured by Hua Yan Contents 图元属性参数概念 颜色和灰度(Color and gray scale) 直线的属性Line attributes 曲线的属性Curve attributes 字符属性 填充区属性及填充算法(Area-Fill attributes) 反走样(Antialiasing) QA Def. 任何影响图元显示方法的参数 属性选择设计 扩展每个输出图元函数的参数列表 维护一张系统当前属性值表,并且软件包提供相应的函数设置当前值 OpenGL的所有图元使用当前属性值表中的属性显示 颜色信息存储方式 直接存储 Color Lookup Tables颜色查找表 灰度的概念 OpenGL颜色函数(P.143-147) 直接存储 Idea: 帧缓冲区像素信息直接控制RGB三枪强度(直接存储策略) 如何增大系统支持色彩数? Color Lookup Tables Idea:存储在颜色查找表中的信息控制RGB三枪 如何增大系统支持色彩数? 直接存储 Advantages 特别灵活 – 可同时使用颜色范围的任一颜色 硬件简单(仅仅在概念上) Disadvantages 帧缓冲区存储容量需求大 视频操作速度慢(例如24位色光栅系统,改变一个像素需要操作3个字节) Color Lookup Tables Advantages 使用彩色表可提供合理的同时显示的颜色数量,而无需大容量帧缓冲器。 256或512种不同颜色足以显示单个图像。 表项可随时改变,容易试验在设计、场景或图形中使用不同的颜色组合,而无需改变对图形数据结构的属性设置。 视频操作速度快,因为每个像素在帧缓冲区中占有更少的数据位。 有些图形系统提供两种能力,方便用户选择 Color Lookup Tables Disadvantages 需要高速 RAM-DAC 能同时使用颜色数有限 灰度的概念 当RGB函数中指定相同的红、绿、蓝分量时,产生的色彩是某种程度的灰色。 Line Type线型 How to? 绘制像素段 Pixel mask像素掩码 eg. 1111000 Problem 根据直线斜率调整实心段和空白段的像素数目 Line Width How to? display adjacent parallel lines显示相邻平行线段 Pen and Brush Options Shape形状 Size尺寸 Pattern 样式 Pixel Mask Line Color Curve type Pixel masks eg.11100 根据曲线斜率设置像素掩码的实心段和空白段像素数目 Curve width 水平(|m|1)或垂直 (|m|1)像素段 Curve width 填充平行曲线路径之间的区域 Eg. R=16 Pen Brush options Eg. Rectangular pen 3x3 字体 宋体 仿宋体 楷体 黑体 隶书 字高 宋体 宋体 宋体 宋体 宋体 字宽 字倾斜角 倾斜 倾斜 对齐 (左对齐、中心对齐、右对齐) 字色 红色、绿色、蓝色 …… 4.6.1 扫描线多边形填充算法 Idea(P.159) 算法技巧 如何处理奇数个交点? 如何处理水平边? 如何计算交点坐标? 数据结构 算法描述 程序实现(第二版P.87) Idea 扫描线自底向上扫描,计算扫描线与多边形边界的交点确定填充区间,再用要求的颜色显示这些区间的像素,即完成填充工作。一条扫描线的填充过程分为求交、排序、配对和填色四个步骤。 算法技巧 – 交点数 Example 多边形顶点的调整---单调递增情况 多边形顶点的调整---单调递减情况 多边形顶点调整后 算法技巧 – 水平边 不计算水平边和扫描线的交点 算法技巧 – 交点坐标计算 交点坐标计算 Yi+1 = Yi + 1 Xi+1 = xi + 1/m m=dy/dx 数据结构 输入参数 顶点数以及顶点坐标 数据结构 有序边表sorted edge table 活化边表active edge table 有序边表 有序边表 typedef struct tEdge { int yUpper; float xIntersect; float dxPerScan; struct tEdge * next; }Edge; 活化边表 4.6.2 边界填充算法 IDEA –填充区域边界以一种颜色指定;从区域的一个内部点开始,由内至外绘制直到边界。 适用于单色边界 填充方式 4

文档评论(0)

you-you + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档