会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
sqlite例子
博客园
首页
新随笔
联系
订阅
管理
C++和ObjectARX开发一例
C++和ObjectARX开发一例 //----------------------------------------- //开发环境 //vs2008+vs2008sp1+ObjectArx2010+AutoCAD2010 //vs2008新建一个win32项目或者MFC DLL项目 //vs2008设置项目属性->配置->所有配置 //vs2008设置项目属性->配置属性->C/C++->代码生成->运行时库=多线程 DLL (/MD) //vs2008设置项目属性->配置属性->C/C++->常规->附加包含目录=E:\AutoCad开发\ObjectARX2010\inc //vs2008设置项目属性->配置属性->连接器->常规->输出文件=$(OutDir)\$(ProjectName).arx //vs2008设置项目属性->配置属性->连接器->常规->附加库目录="E:\AutoCad开发\ObjectARX2010\lib-win32" //vs2008设置项目属性->配置属性->连接器->输入->附加依赖项=rxapi.lib acdb18.lib acge18.lib acad.lib acedapi.lib
</pre><pre name="code" class="cpp">
//AutoCAD2010调用命令方法
//先加载应用程序MyArxFirst.arx
//命令: hello
//Hello World!
//----------------------------------------- //myArxFirst.def文件的内容 LIBRARY "MyArxFirst" EXPORTS acrxEntryPoint PRIVATE acrxGetApiVersion PRIVATE //----------------------------------------- // MyArxFirst.cpp : 定义 DLL 应用程序的导出函数。 // #include "stdafx.h" #include <aced.h> #include <rxregsvc.h> //定义两个函数 void initApp(); void unloadApp(); //打印"Hello world!"在AutoCAD Command上 void helloWorld(); void initApp() { //register a command with the AutoCAD command mechanism acedRegCmds->addCommand(ACRX_T("HELLOWORLD_COMMANDS"), ACRX_T("Hello"), ACRX_T("Bonjour"), ACRX_CMD_TRANSPARENT, helloWorld); } void unloadApp() { acedRegCmds->removeGroup(ACRX_T("HELLOWORLD_COMMANDS")); } void helloWorld() { acutPrintf(ACRX_T("\nHello World!")); } extern "C" AcRx::AppRetCode acrxEntryPoint(AcRx::AppMsgCode msg, void* pkt) //void acrxEntryPoint(void* pkt) { switch (msg) { case AcRx::kInitAppMsg: acrxDynamicLinker->unlockApplication(pkt); acrxRegisterAppMDIAware(pkt); initApp(); break; case AcRx::kUnloadAppMsg: unloadApp(); break; default: break; } return AcRx::kRetOK; } //ObjectARX offers the following input functions. Refer to the ObjectARX Online Help for a complete description of how to use these functions. //acedGetInt used to get an integer value //acedGetReal used to get a real value //acedGetString used to get a string //acedGetAngle used to get a angle value //acedGetKword used to get a key word //acedInitGet used to initialize acedGetXXXX functions //acedGetFileD used to retrieve file selection from a file dialog //acedGetPoint used to pick a point //acedGetDist used to get the distance between two points //acedGetCorner see Online Help for a complete description // //ObjectARX offers the following functions for selection of AutoCAD entities. (Again refer to the ObjectARX Online Help for a complete description of how to use these functions). // //acedEntSel used to select a single entity //acedNEntSel used to select a single, nested entity //acedNEntSelP used to select a single, nested entity //acutSSGet used to select multiple entities //---the end----
posted @
2011-10-26 18:04
sqlite例子
阅读(
632
) 评论(
0
)
收藏
举报
刷新页面
返回顶部
公告