- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第04部分_计算机图形学_扫描转换编程实现
扫描转换编程实现 Ray ray@mail.buct.edu.cn 创建菜单和对话框 新建空的应用 新建资源 Dialog资源 4个静态文本 4个编辑框 1个按钮 新建类并添加函数 由对话框创建一个新类C××× 为该类添加函数OnInitDialog(),OnPaint() 添加变量 为4个编辑框添加变量 每个编辑框添加2个变量 建立菜单项 定制菜单 为该菜单项(在×××view里)添加一个OnMenuItem×××函数 弹出对话框 添加头文件定义 在×××view.cpp文件里,加入对话框的头文件 为OnMenuItem×××添加程序 C××× ***; ***.DoModal(); 创建绘图区域 在OnInitDialog()加入: CPaintDC dc(this); CRect rect; GetClientRect(rect); dc.SelectStockObject(WHITE_BRUSH); rect_x1=rect.left+10; rect_y1=rect.top+10; rect_x2=rect.right-130; rect_y2=rect.bottom-10; 红色变量需要手动添加 在OnPaint()加入: CDC *pDC; pDC=GetDC(); pDC-Rectangle(rect_x1,rect_y1,rect_x2,rect_y2); 直线段扫描转换 新建函数 int CDrawLine::DrawLineXY(int x1, int y1, int x2, int y2) { CDC *pDC; pDC=GetDC(); int a, b, d1, d2, d, x, y; a=y1-y2, b=x2-x1, d=2*a+b; d1=2*a, d2=2*(a+b); x=x1, y=y1; pDC-SetPixel(rect_x1+x,rect_y2-y,0x20FF); while (xx2) { if (d0) {x++, y++, d+=d2; } else {x++, d+=d1;} pDC-SetPixel(rect_x1+x,rect_y2-y,0x20FF); } return 0; } 增加按钮函数 在按钮函数中添加: DrawLineXY(10, 10, 200, 100); 使参数生效 在按钮函数中添加: UpdateData(true); DrawLineXY( int(m_edit_line_x1),int(m_edit_line_y1),int(m_edit_line_x2),int(m_edit_line_y2) ); 在OnInitDialog()加入: UpdateData(FALSE); 后续改进 x1x2的问题 在函数DrawLineXY()中添加: if (x1x2){ tmp=x1; x1=x2; x2=tmp; tmp=y1; y1=y2; y2=tmp; } 擦除 重做Onpaint()中的操作 k1的问题 颜色问题 如果是vs2010,请注意以下几点: 1. 创建项目时,应用程序类型选“MFC标准”,而不是“Visual Studio”;用户界面功能-命令栏选使用“经典菜单”,而不是“使用菜单栏和工具栏”。 2. 子菜单别添加在主菜单(Mainframe)上,菜单的处理函数加在***view类中。 3. 画矩形框的代码直接添加到wm_paint的消息处理函数即可,不必分成两部分。 第4部分 扫描转换编程实现 第*页 李辉 副教授 第4部分 扫描转换编程实现 第*页
您可能关注的文档
最近下载
- 第二单元 项目1 《 获取长城研学路线-互联网信息有哪些信誉好的足球投注网站》教学设计 2024—2025学年安徽版(2024)初中信息技术七年级上册.docx VIP
- 江苏省2024普通高中学业水平合格性考试英语真题卷 .pdf
- 第二单元+项目1+《+获取长城研学路线-互联网信息有哪些信誉好的足球投注网站》课件+2024—2025学年安徽版(2024)初中信息技术七年级上册+.pptx VIP
- 浙江交投高速公路建设管理有限公司部分中层管理岗位公开竞聘【综合基础知识500题】高频考点模拟试题及参考答案解析.docx
- 天然气对井内压力的影响(五)课件.pptx VIP
- 妇产科医疗质控总结.pptx VIP
- 企业内部控制指引.doc
- 山东大学齐鲁医院诊断证明.docx VIP
- 心胸外科出科.pptx VIP
- 2024贵州遵义市面向优秀村(社区)干部专项招聘乡镇(街道)事业单位工作人员61人笔试备考题库及答案解析.docx VIP
文档评论(0)