谁有绘制二次,三次bezier线的快速算法?

quace 2003-04-23 05:57:35
有没有这方面的资料,给思路,文献或者算法名称也可以,最好能尽量避免浮点运算。
...全文
29 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
1. 做一个集成的图形界面的程序,可调用每一次作业子程序。 2. 调用画点的函数,用DDA、中点算法画直线和中点算法及正负法画圆和抛物线。 3. 交互式的二维直线求交:如果存在交点,用实心圆显示交点,并用文字显示其坐标。 4. 用动画实现二维图形变换的各种算法,实现对指定形体的平移、旋转和缩放。(包括自行车行走和绕固定点旋转的自旋转物体动画。) 5. 线段裁剪和多边形裁剪算法的动画演示实现。(两种线段裁剪算法和H-S多边形逐边裁剪算法)多边形裁剪算法的动画演示要求先画出一个封闭的多边形,再画矩形的裁剪窗口,然后选择裁剪按钮(或命令),按下“上边裁剪”按钮(或执行“上边裁剪”命令),多边形相对裁剪窗口的上边进行裁剪,显示上边裁剪后的多边形,依此进行其它各边裁剪。 6. 两种扫描多边形扫描转换算法实现(扫描线算法为必做,基于求余运算的边缘填充和边标志算法任选一种); 7. 4连通区域的递归种子填充算法,和扫描线种子填充算法,要求种子点(x,y)可交互输入)。 8. 简单三维图形系统:凸多面体的建模、透视投影,隐藏面的消除及基本图形变换(平移、旋转、缩放)。 9. 交互式Bezier线的输入绘制程序实现
图形学大作业----内容 一、主菜单的菜单项 基本图形绘制、图形变换、自由曲线绘制、图形裁剪、图形填充 二、二级子菜单(基本图形绘制) 1.直线绘制: 1)Bresenham绘制线 2)DDA绘制线 3)改进的Bresenham绘制线 4)系统库函数绘制线——直线线宽、线形设计 2.绘制圆(中点Bresenham) 3.Bresenham绘制椭圆 4.矩形、正方形的绘制 5.任意多边形的绘制 6.任意圆弧的绘制 三、二级子菜单(图形变换) 1.基本图形变换 1)平移变换 2)比例变换(等比例、不等比例) 3)错切变换(x方向、y方向、x-y方向) 4)对称变换(坐标轴、原点、45°直线) 5) 旋转变换(顺时针旋转、逆时针旋转) 2.复合变换(两次变换) 1)复合平移变换 2)复合比例变换 3)复合旋转变换 3.相对任意参考点的比例变换 4.相对任意直线的错切变换 四、二级子菜单(自由曲线绘制) 1. Bezier线绘制 1)1次Bezier线 2)2次Bezier线 3)3次Bezier线 2. 3次B样条曲线 3. Hermite三次样条曲线 4. 2次Bezier线的拼接 五、二级菜单(图形裁剪和图形填充) 1.图形裁剪(直线裁剪) 2.图形填充 附加: 撰写大作业要求: 1)要求作品的系统设计结构合理,条理清晰,界面友好;具有较强的交互能力,完成功能。 2)要求使用visual studio进行系统开发,提供源代码项目文件夹和可执行文件(生成release的exe文件)。 3)大作业报告要求撰写字迹工整,条理清晰,语言流畅。 内容包括:1)设计概述 2)软硬件运行环境 3)系统功能设计(系统功能图) 4)算法原理 5)成果展示(打印,并裁剪为合适大小,粘贴在报告中。) 6)实现代码(打印) 7)个人总结
一个集成的图形界面的程序,可调用每一次作业子程序。一、调用画点的函数,用DDA、中点算法画直线和中点算法画圆和椭圆。二、多边形扫描转换算法和区域填充算法实现(扫描线算法为必做,基于求余运算的边缘填充和边标志算法为任选;基于种子的区域填充采用4连通区域的递归种子填充算法,或扫描线种子填充算法,要求种子点(x,y)可交互输入)。三、线段裁剪和多边形裁剪算法的动画演示实现。(两种线段裁剪算法和H-S多边形逐边裁剪算法)多边形裁剪算法的动画演示要求先画出一个封闭的多边形,再画矩形的裁剪窗口,然后选择裁剪按钮(或命令),按下“上边裁剪”按钮(或执行“上边裁剪”命令),多边形相对裁剪窗口的上边进行裁剪,显示上边裁剪后的多边形,依此进行其它各边裁剪。四、用动画实现二维图形变换的各种算法,实现对指定形体的平移、旋转和缩放。(包括类似自行车行走和绕固定点旋转的自旋转物体动画。)五、简单三维图形系统:凸多面体的建模、透视投影,隐藏面的消除及基本图形变换(平移、旋转、缩放)。六、交互式Bezier线的输入绘制程序实现 PS:请用VC6打开程序!程序中不包含DEBUG文件。附有操作指南。

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧