天天看點

在MFC程式中使用AnyCAD圖形控件

AnyCAD圖形控件有.Net版本和C++兩個版本,使用C++要比C#稍微繁雜一點。SDK中提供了針對MFC的文檔視圖的封裝,隻需改一下幾個基類即可。

準備

  • VS2010
  • 下載下傳C++版本的AnyCAD圖形控件:http://pan.baidu.com/s/1c06hmPa

項目設定

$(AnyCADSDK)替換為您的工程相對于AnyCAD C++ SDK的位置,您也可以把AnyCADSDK加到環境變量中。

  • 頭檔案

  $(AnyCADSDK)\inc

  • Lib查找目錄

       $(AnyCADSDK)\lib\$(Configuration)\

  • 依賴的lib

  AnyPlatformAPI.lib; AnyPlatformMFC.lib

  • 在stdafx.h中包含

      #include "View/AnySDK.h"

MFC相關基類修改

  • CWinApp/CWinAppEx

         把以上的類替換為AuWinApp<CWinApp>或者AuWinApp<CWinAppEx>,包括cpp檔案。

  • CMainFrame:對于多文檔應用CMainFrame的基類改為AuMainFrame<CMDIFrameWnd>;對于單文檔應用基類改為AuMainFrame<CFrameWnd>
  • CView:把需要三維顯示的類替換為AuView3d,包括cpp檔案。

         通過通路AuView3d的m_View3d成員可以擷取顯示引擎相關的對象。

使用Ribbon風格的界面

在MFC程式中使用AnyCAD圖形控件

顯示第一個模型

void CSampleView::OnButtonSphere()
{
  using namespace AnyCAD::API;
  auto sphere = BrepTools().MakeSphere(Vector3(0,0,0),100);
  ShowGeometry(sphere, 101, 1); 
}      

so far so easy!

繼續閱讀