用C++做凸轮动画

本文详细介绍了如何使用C++和MFC在VC6.0环境下编写一个凸轮模型的动画程序。通过计算不同坐标点并响应键盘输入调整角度,实现了图形的动态变化。同时,程序能够根据窗口大小调整图形中心,还能记录和绘制凸轮的运动轨迹。

C++程序很乏味,但是它确实很优秀,与其它很多语言相比,它的运行速率是无法比拟的。而读数字媒体技术专业,免不了学这门课。

VC6.0的MFC可以做很多应用程序,去年老师让我们用C++写一个凸轮的模型。



一、 实验结果和数据处理:

1、首先我们需要为我们的工程取个名字,什么名字都好,我们做的是摇杆,我们就取YaoGan。新建一个单文档的工程,工程名为YaoGan。C++程序少不了头文件,所以我们需要声明一些我们需要用到的头文件,双击头文件CYaoGanDoc.h,添加以下代码(红色字体)。这步主要是声明头文件,方便以后我们调用sin、cos等函数。并定义PI的值为3.1415926。

#if !defined(AFX_YAOGANDOC_H__BBBA0EF9_BBDB_4D00_8E37_B89B68818E10__INCLUDED_)
#define AFX_YAOGANDOC_H__BBBA0EF9_BBDB_4D00_8E37_B89B68818E10__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include<math.h>
#define PI 3.1415926

2、接下来要给这些画图的坐标点命名(如杆1,我用一个数组Gan1[4]; 来存储它四个角的坐标),在头文件YaoGanDoc.h里面加入如下代码(红色字体),声明各个变量及用于计算其它坐标点的函数。

protected: // create from serialization only
 CYaoGanDoc();
 DECLARE_DYNCREATE(CYaoGanDoc)

// Attributes
public:

// Operations
public:
 void CalPosition();
 double angle;    //杆1与机构x轴的夹角
 double angle2; //杆2与机构y轴的夹角
 int l1,w1;                   //杆1的长度和宽度
 int l2,w2;                  //杆2的长度和宽度
 int l3,w3;                  //滑块的长度和宽度

 CPoint ZhiDian[3];   //画支点三角形的三点
 CPoint Gan1[4];       //画杆1(曲轴)四边形的四点
 CPoint Gan2[4];       //画杆2(连杆)四边形的四点
 CPoint HuaKuai[4]; //画滑块四边形的四点

 int J

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值