StereoPlus.cpp
上传用户:fengshi120
上传日期:2014-07-17
资源大小:6155k
文件大小:3k
源码类别:

3D图形编程

开发平台:

C/C++

  1. // StereoPlus.cpp : Defines the class behaviors for the application.
  2. //
  3. #include "stdafx.h"
  4. #include "StereoPlus.h"
  5. #include <GdiPlus.h>
  6. #include "3DWindow.h"
  7. #include "StereoPlusDlg.h"
  8. #ifdef _DEBUG
  9. #define new DEBUG_NEW
  10. #undef THIS_FILE
  11. static char THIS_FILE[] = __FILE__;
  12. #endif
  13. using namespace Gdiplus;
  14. // CStereoPlusApp
  15. BEGIN_MESSAGE_MAP(CStereoPlusApp, CWinApp)
  16. ON_COMMAND(ID_HELP, CWinApp::OnHelp)
  17. END_MESSAGE_MAP()
  18. ULONG_PTR gdiplusToken;
  19. GdiplusStartupInput gdiplusStartupInput;
  20. // CStereoPlusApp construction
  21. CStereoPlusApp::CStereoPlusApp()
  22. {
  23. // TODO: add construction code here,
  24. // Place all significant initialization in InitInstance
  25. }
  26. // The one and only CStereoPlusApp object
  27. CStereoPlusApp theApp;
  28. // CStereoPlusApp initialization
  29. BOOL CStereoPlusApp::InitInstance()
  30. {
  31. // InitCommonControls() is required on Windows XP if an application
  32. // manifest specifies use of ComCtl32.dll version 6 or later to enable
  33. // visual styles.  Otherwise, any window creation will fail.
  34. InitCommonControls();
  35. CWinApp::InitInstance();
  36. // Standard initialization
  37. // If you are not using these features and wish to reduce the size
  38. // of your final executable, you should remove from the following
  39. // the specific initialization routines you do not need
  40. // Change the registry key under which our settings are stored
  41. // TODO: You should modify this string to be something appropriate
  42. // such as the name of your company or organization
  43. SetRegistryKey(_T("Gary Gray & David Demirdjian Software"));
  44. GdiplusStartup(&gdiplusToken,&gdiplusStartupInput,NULL);
  45. C3DWindow::Register();
  46. CStereoPlusDlg dlg;
  47. m_pMainWnd = &dlg;
  48. INT_PTR nResponse = dlg.DoModal();
  49. if (nResponse == IDOK)
  50. {
  51. // TODO: Place code here to handle when the dialog is
  52. //  dismissed with OK
  53. }
  54. else if (nResponse == IDCANCEL)
  55. {
  56. // TODO: Place code here to handle when the dialog is
  57. //  dismissed with Cancel
  58. }
  59. // Since the dialog has been closed, return FALSE so that we exit the
  60. //  application, rather than start the application's message pump.
  61. return FALSE;
  62. }
  63. double CStereoPlusApp::GetProfileDouble(LPCTSTR lpszSection, LPCTSTR lpszEntry, double x)
  64. {
  65. CString Result;
  66. char buf[64];
  67. sprintf(buf, "%lg", x);
  68. Result = theApp.GetProfileString(lpszSection, lpszEntry, buf);
  69. sscanf(Result, "%lf", &x);
  70. return x;
  71. }
  72. BOOL CStereoPlusApp::WriteProfileDouble(LPCTSTR lpszSection, LPCTSTR lpszEntry, double x)
  73. {
  74. CString temp;
  75. temp.Format("%lg", x);
  76. return theApp.WriteProfileString(lpszSection, lpszEntry, temp);
  77. }