1 / 56
文档名称:

计算机图形学(徐长青、许志闻)曲线和曲面(最终稿).doc

格式:doc   大小:930KB   页数:56页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

计算机图形学(徐长青、许志闻)曲线和曲面(最终稿).doc

上传人:Q+1243595614 2018/1/9 文件大小:930 KB

下载得到文件列表

计算机图形学(徐长青、许志闻)曲线和曲面(最终稿).doc

文档介绍

文档介绍:曲线和曲面
第一节 Hermite多项式
三次Hermite多项式
Hermite多项式是非常有用的曲线形式。三次Hermite多项式就是一类常用的曲线,因为它们提供了对形状的局部控制,并且提供了C1连续性。若给定参数方程f(t)在起点和终点的位置、和一阶导数、,则可以利用下式构造一个三次Hermite多项式:
(1)
式中式(t)就是对于函数f(t)的Hermite插值多项式,矩阵H称为Hermite矩阵

绘制三次Hermite曲线,用户必须指定位置和导数,所以必须提供针对导数的特别界面。一种方式是通过用户通过鼠标确定曲线的起点和终点的位置,并给出起点和终点的导数,即可给出三次Hermite多项式所需的插值信息。
Hermite曲线绘制的程序设计
根据给出的三次Hermite多项式,利用逐点绘制的方法即可实现三次Hermite多项式的绘制。
程序“Hermite”的设计步骤如下:
创建工程名称为“Hermite”单文档应用程序框架。
添加消息处理函数。
利用ClassWizard(类向导)为应用程序添加与菜单项相关的消息处理函数,ClassName栏中选择CHermiteView,根据表 1建立如下的消息映射函数,ClassWizard会自动完成有关的函数声明。
表 1 菜单项的消息处理函数
标示符ID
消息
消息处理函数
CHermiteView
WM_LBUTTONDOWN
OnLButtonDown(UINT nFlags, CPoint point);
CHermiteView
WM_LBUTTONUP
OnLButtonUp(UINT nFlags, CPoint point);
CHermiteView
WM_MOUSEMOVE
OnMouseMove(UINT nFlags, CPoint point);
添加函数。
在工程中添加应用函数的方法,,。
// : interface of the CHermiteView class
//
/////////////////////////////////////////////////////////////////////////////
const int N=3;//N次Hermite曲线
const int npoints=50;//由npoints+1个点构成的折线逼近Hermite曲线
class Point//二维平面点Point类
{
public:
double x,y;//二维平面中的点坐标为双精度浮点小数
Point(){x=0;y=0;};//构造函数
Point(double _x,double _y){x=_x;y=_y;};//构造函数
Point(CPoint p){x=;y=;};//构造函数
inline Point operator =(Point p){x=;y=;return (*this);};//Point对象的赋值运算
inline Point operator =(CPoint p){x=;y=;return (*this);};//CPoint对象的赋值运算
inline Point operator +=(Point p){x+=;y+=;return (*this);};//重载+=运算
inline Point operator +=(CPoint p){x+=;y+=;return (*this);};//重载+=运算
inline Point operator -=(Point p){x-=;y-=;return (*this);};//重载-=运算
inline Point operator -=(CPoint p){x-=;y-=;return (*this);};//重载-=运算
inline Point operator *=(double s){x*=s;y*=s;return (*this);};//重载*=运算
inline Point operator /=(double s){x/=s;y/=s;return (*this);};//重载/=运算
inline Point operator +(Point p){Point t;=x+;=y+;return (t);};//重载+运算
inline

最近更新

《冬凌草生产技术规程》(征求意见稿) 7页

安全标准化培训作业安全 38页

黔东南苗族水鼓舞的现状与发展研究 22页

学会宽容善待他人 16页

学习雷锋精神主题班会 24页

香飘飘案例分析 6页

降低化学反应活化能酶省公开课一等奖全国示范.. 41页

选修6unit1Grammar虚拟语气市公开课一等奖省赛.. 43页

项目组织管理方面保证措施 22页

英语词源趣谈省公开课一等奖全国示范课微课金.. 50页

第一讲-数学方法论数学史省公开课金奖全国赛课.. 42页

研究生英语高级写作五省公开课一等奖全国示范.. 27页

生物催化剂酶省公开课一等奖全国示范课微课金.. 22页

锅炉打灰的原理和作用 23页

DB52 T 1631-2021 自然保护区综合科学考察技术.. 21页

新PEP四年级下册unit5-B-Let27s-talk市公开课.. 19页

大面积脑梗塞护理查房 31页

广东省梅州市五华县城镇中学高中化学-乙炔-新.. 10页

大规模分布式计算 30页

连杆零件机械加工工艺规程及夹具毕业设计论文.. 17页

DB45 T 2718-2023高速公路沥青路面预防养护技.. 20页

区域地理-英国精华省公开课一等奖全国示范课微.. 31页

走出年终总结的六大误区6 34页

2025项目经理个人工作计划范本 6页

车辆模型教案完整 21页

生物医药研发项目跟投方案 4页

小学:英语自然拼读法教学 11页

小学语文四年级上册《53天天练》答案 8页

传染病防控工作督导检查表模板 6页

我们赖以生存的隐喻 3页