资源简介
通过绘图选项选择绘制贝塞尔曲线或贝塞尔曲面。
左键选择控制点,右键进行绘制。
按delete键清除当前窗口图形并可以开始重新绘制。
按Y键进入控制点移动功能,将鼠标移动到需要移动的控制点并按住左键开始移动,按N键退出控制点移动功能。
代码片段和文件信息
// CAGD.cpp : 定义应用程序的类行为。
//
#include “stdafx.h“
#include “afxwinappex.h“
#include “afxdialogex.h“
#include “CAGD.h“
#include “MainFrm.h“
#include “CAGDDoc.h“
#include “CAGDView.h“
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// CCAGDApp
BEGIN_MESSAGE_MAP(CCAGDApp CWinAppEx)
ON_COMMAND(ID_APP_ABOUT &CCAGDApp::OnAppAbout)
// 基于文件的标准文档命令
ON_COMMAND(ID_FILE_NEW &CWinAppEx::OnFileNew)
ON_COMMAND(ID_FILE_OPEN &CWinAppEx::OnFileOpen)
// 标准打印设置命令
ON_COMMAND(ID_FILE_PRINT_SETUP &CWinAppEx::OnFilePrintSetup)
END_MESSAGE_MAP()
// CCAGDApp 构造
CCAGDApp::CCAGDApp()
{
m_bHiColorIcons = TRUE;
// 支持重新启动管理器
m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_ALL_ASPECTS;
#ifdef _MANAGED
// 如果应用程序是利用公共语言运行时支持(/clr)构建的,则:
// 1) 必须有此附加设置,“重新启动管理器”支持才能正常工作。
// 2) 在您的项目中,您必须按照生成顺序向 System.Windows.Forms 添加引用。
System::Windows::Forms::Application::SetUnhandledExceptionMode(System::Windows::Forms::UnhandledExceptionMode::ThrowException);
#endif
// TODO: 将以下应用程序 ID 字符串替换为唯一的 ID 字符串;建议的字符串格式
//为 CompanyName.ProductName.SubProduct.VersionInformation
SetAppID(_T(“CAGD.AppID.NoVersion“));
// TODO: 在此处添加构造代码,
// 将所有重要的初始化放置在 InitInstance 中
}
// 唯一的一个 CCAGDApp 对象
CCAGDApp theApp;
// CCAGDApp 初始化
BOOL CCAGDApp::InitInstance()
{
// 如果一个运行在 Windows XP 上的应用程序清单指定要
// 使用 ComCtl32.dll 版本 6 或更高版本来启用可视化方式,
//则需要 InitCommonControlsEx()。 否则,将无法创建窗口。
INITCOMMONCONTROLSEX InitCtrls;
InitCtrls.dwSize = sizeof(InitCtrls);
// 将它设置为包括所有要在应用程序中使用的
// 公共控件类。
InitCtrls.dwICC = ICC_WIN95_CLASSES;
InitCommonControlsEx(&InitCtrls);
CWinAppEx::InitInstance();
// 初始化 OLE 库
if (!AfxOleInit())
{
AfxMessageBox(IDP_OLE_INIT_FAILED);
return FALSE;
}
AfxEnableControlContainer();
EnableTaskbarInteraction(FALSE);
// 使用 RichEdit 控件需要 AfxInitRichEdit2()
// AfxInitRichEdit2();
// 标准初始化
// 如果未使用这些功能并希望减小
// 最终可执行文件的大小,则应移除下列
// 不需要的特定初始化例程
// 更改用于存储设置的注册表项
// TODO: 应适当修改该字符串,
// 例如修改为公司或组织名
SetRegistryKey(_T(“应用程序向导生成的本地应用程序“));
LoadStdProfileSettings(4); // 加载标准 INI 文件选项(包括 MRU)
InitContextMenuManager();
InitKeyboardManager();
InitTooltipManager();
CMFCToolTipInfo ttParams;
ttParams.m_bVislManagerTheme = TRUE;
theApp.GetTooltipManager()->SetTooltipParams(AFX_TOOLTIP_TYPE_ALL
RUNTIME_CLASS(CMFCToolTipCtrl) &ttParams);
// 注册应用程序的文档模板。 文档模板
// 将用作文档、框架窗口和视图之间的连接
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINframe
RUNTIME_CLASS(CCAGDDoc)
RUNTIME_CLASS(CMainframe) // 主 SDI 框架窗口
RUNTIME_CLASS(CCAGDView));
if (!pDocTemplate)
return FALSE;
AddDocTemplate(pDocTemplate);
// 分析标准 shell 命令、DDE、打开文件操作的命令行
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
// 调度在命令行中指定的命令。 如果
// 用 /RegServer、/Register、/Unregserver 或 /Unregister 启动应用程序,则返回 FALSE。
if (!ProcessShellCommand(cmdInfo))
return FALSE;
// 唯一的一个窗
- 上一篇:数据结构用面向对象方法和C++描述 殷人昆著
- 下一篇:基于MFC的学生信息管理系统
相关资源
- 基于MFC的学生信息管理系统
- wincap c++ mfc 网络截包 多线程
- 基于MFC 仿QQ聊天系统
- Visual C++程序设计与应用教程第二版案
- MFC将exe完美嵌套到static内
- C++操作SQL Server数据库新增 删除 修改
- C++编写电压电流表仪表盘
- 基于MFC的飞秋实现
- 相机标定——双目标定的MFC简单实现
- 相机标定——基于张正友标定标定法
- vs2010 mfc对话框五子棋小游戏
- VS2010 C++ MFC简易计算器
- 网上收集的2011.12之前的绝大部分 五子
- MFC vc6.0 RSA DES MD5 加密解密算法
- 基于Opencv的相机操作代码
- 大恒相机程序
- 计算机图形学图形剪裁与变换算法的
- MFC项目开发85个
- Visual+C++MFC编程教程
- 学生成绩管理系统V2.5MFC版 vs2008
- 计算器 3.0 源码 vs2008 MFC vc++
- MFC 子对话框向父对话框 Edit内容的同
- Visual C++MFC编程(通过85个全面讲述了
- MFC操作离线地图源程序
- MFC串口通讯接受数据双缓冲画波形图
- 贪吃蛇mfc版
- 通过MFC对SQLite进行操作
- 通过MFC实现数码管显示数字
- MFC实现向TXT中读写数据
- MFCWinPcap编写一个嗅探器.zip
评论
共有 条评论