hermite曲线,MFC实现


简单的实现了三次hermite曲线,可以点击绘制点进行动态的改变hermite曲线。
资源截图
代码片段和文件信息
// hermite.cpp : Defines the class behaviors for the application.
//

#include “stdafx.h“
#include “hermite.h“

#include “MainFrm.h“
#include “hermiteDoc.h“
#include “hermiteView.h“

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CHermiteApp

BEGIN_MESSAGE_MAP(CHermiteApp CWinApp)
//{{AFX_MSG_MAP(CHermiteApp)
ON_COMMAND(ID_APP_ABOUT OnAppAbout)
// NOTE - the ClassWizard will add and remove mapping macros here.
//    DO NOT EDIT what you see in these blocks of generated code!
//}}AFX_MSG_MAP
// Standard file based document commands
ON_COMMAND(ID_FILE_NEW CWinApp::OnFileNew)
ON_COMMAND(ID_FILE_OPEN CWinApp::OnFileOpen)
// Standard print setup command
ON_COMMAND(ID_FILE_PRINT_SETUP CWinApp::OnFilePrintSetup)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CHermiteApp construction

CHermiteApp::CHermiteApp()
{
// TODO: add construction code here
// Place all significant initialization in InitInstance
}

/////////////////////////////////////////////////////////////////////////////
// The one and only CHermiteApp object

CHermiteApp theApp;

/////////////////////////////////////////////////////////////////////////////
// CHermiteApp initialization

BOOL CHermiteApp::InitInstance()
{
AfxEnableControlContainer();

// Standard initialization
// If you are not using these features and wish to reduce the size
//  of your final executable you should remove from the following
//  the specific initialization routines you do not need.

#ifdef _AFXDLL
Enable3dControls(); // Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif

// Change the registry key under which our settings are stored.
// TODO: You should modify this string to be something appropriate
// such as the name of your company or organization.
SetRegistryKey(_T(“Local AppWizard-Generated Applications“));

LoadStdProfileSettings();  // Load standard INI file options (including MRU)

// Register the application‘s document templates.  Document templates
//  serve as the connection between documents frame windows and views.

CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINframe
RUNTIME_CLASS(CHermiteDoc)
RUNTIME_CLASS(CMainframe)       // main SDI frame window
RUNTIME_CLASS(CHermiteView));
AddDocTemplate(pDocTemplate);

// Parse command line for standard shell commands DDE file open
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);

// Dispatch commands specified on the command line
if (!ProcessShellCommand(cmdInfo))
return FALSE;

// The one and only window has been initialized so show and update it.
m_pMainWnd->ShowWindow(SW_SHOW);
m_pMainWnd->UpdateWindow();


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-12-06 15:34  hermite
     目录           0  2018-12-06 15:34  hermiteDebug
     文件       20370  2018-11-04 17:11  hermiteDebugMainFrm.obj
     文件           0  2018-11-04 17:11  hermiteDebugMainFrm.sbr
     文件        4384  2018-11-04 22:17  hermiteDebugP2.obj
     文件           0  2018-11-04 22:17  hermiteDebugP2.sbr
     文件      106053  2018-11-04 17:11  hermiteDebugStdAfx.obj
     文件     1376399  2018-11-04 17:11  hermiteDebugStdAfx.sbr
     文件     5350400  2018-11-13 18:35  hermiteDebughermite.bsc
     文件      127076  2018-11-13 18:35  hermiteDebughermite.exe
     文件      352304  2018-11-13 18:35  hermiteDebughermite.ilk
     文件       23463  2018-11-04 22:17  hermiteDebughermite.obj
     文件     6872020  2018-11-04 17:11  hermiteDebughermite.pch
     文件      484352  2018-11-13 18:35  hermiteDebughermite.pdb
     文件        7300  2018-11-04 18:16  hermiteDebughermite.res
     文件           0  2018-11-04 22:17  hermiteDebughermite.sbr
     文件       15220  2018-11-04 17:11  hermiteDebughermiteDoc.obj
     文件           0  2018-11-04 17:11  hermiteDebughermiteDoc.sbr
     文件       48955  2018-11-13 18:35  hermiteDebughermiteView.obj
     文件           0  2018-11-13 18:35  hermiteDebughermiteView.sbr
     文件      214016  2018-11-13 18:35  hermiteDebugvc60.idb
     文件      372736  2018-11-13 18:35  hermiteDebugvc60.pdb
     文件        2508  2018-11-04 16:45  hermiteMainFrm.cpp
     文件        1581  2018-11-04 16:45  hermiteMainFrm.h
     文件         504  2018-11-04 22:13  hermiteP2.cpp
     文件         486  2018-11-04 22:17  hermiteP2.h
     文件        4335  2018-11-04 16:45  hermiteReadMe.txt
     文件         209  2018-11-04 16:45  hermiteStdAfx.cpp
     文件        1054  2018-11-04 16:45  hermiteStdAfx.h
     文件       44396  2018-11-04 18:16  hermitehermite.aps
     文件        2301  2018-11-13 18:35  hermitehermite.clw
............此处省略18个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)