ObjectArx学习笔记
函数
将函数名注册为CAD指令
ACED_ARXCOMMAND_ENTRY_AUTO(classname, group, globCmd, locCmd, cmdFlags, UIContext)
classname: 类名
group: 注册函数的所在组名
globCmd: CAD指令全局名
locCmd: CAD指令局部名
cmdFlags: 模式
UIContext: 默认NULL
弹出标准CAD文件打开和保存对话框
int acedGetFileD (const ACHAR *title, const ACHAR *defawlt,
const ACHAR *ext, int flags,
struct resbuf *result);
title: 对话框标题
defawlt: NULL
ext: 默认文件后缀
flags: 0或者1,0是文件打开选择框,1是文件保存框
result: 文件路径
用户交互的一些函数
- acedGetString:获取用户输入的字符串
- acedGetPoint:获取用户输入的点
- acedGetInt:获取用户输入的整型
- acedGetKword:获取用户输入的关键字
- acedGetReal:获取用户输入的实数。
坐标系的转换函数
int acedTrans(const ads_point pt,
const struct resbuf* from,
const struct resbuf* to,
int disp,
ads_point result);
- ads_point pt:将被转换的三维点或三维向量
- from:源坐标系的结构缓冲区地址
- to:目标坐标系的结构缓冲区地址
- disp:若为0,则pt被当成三维点,否pt为三维向量
- result:转换坐标系后的返回点
加载线型文件
Acad::ErrorStatus acdbLoadLineTypeFile(const ACHAR *ltname,
const ACHAR *fname,
AcDbDatabase *pDb);
- ltname:线型名称
- fname:包含线型文件的文件名,一般会在cad的指定目录下去寻找,如:“ACADISO.LIN”
- pDb:数据库,用
acdbHostApplicationServices()->workingDatabase()