在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风格的界面
显示第一个模型
1 2 3 4 5 6 | void CSampleView::OnButtonSphere() { using namespace AnyCAD::API; auto sphere = BrepTools().MakeSphere(Vector3(0,0,0),100); ShowGeometry(sphere, 101, 1); } |
so far so easy!
注:以上示例代码包含在SDK随带的Sample工程中。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY