ObjectARX_符号表---->标注样式

DIMSTYLE 命令:标注样式管理器code

选中任何样式,修改能够看到该样式的属性:get

建立新的标注样式:it

void ZffCHAP4AddDimStyle()
{
// 得到要建立的标注样式名称
char styleName[100];
if (acedGetString(Adesk::kFalse, "\n输入新样式的名称:",styleName) != RTNORM)
{
return;
} 

// 得到当前图形的标注样式表
AcDbDimStyleTable *pDimStyleTbl = NULL;
acdbHostApplicationServices()->workingDatabase()->getDimStyleTable(pDimStyleTbl, AcDb::kForWrite);
if (pDimStyleTbl->has(styleName))
{
pDimStyleTbl->close();//已经存在
return;
}

// 建立新的标注样式表记录
AcDbDimStyleTableRecord *pDimStyleTblRcd = NULL;
pDimStyleTblRcd = new AcDbDimStyleTableRecord();

// 设置标注样式的特性
pDimStyleTblRcd->setName(styleName); // 样式名称
pDimStyleTblRcd->setDimasz(3);  // 箭头长度
pDimStyleTblRcd->setDimexe(3);  // 尺寸界线与标注点的偏移量
pDimStyleTblRcd->setDimtad(1);  // 文字位于标注线的上方
pDimStyleTblRcd->setDimtxt(3); // 标注文字的高度

// 将标注样式表记录添加到标注样式表中
pDimStyleTbl->add(pDimStyleTblRcd);
pDimStyleTblRcd->close();
pDimStyleTbl->close();
}

根据已有样式建立新的样式:io

// 建立新的标注样式表记录
AcDbDimStyleTableRecord *pDimStyleTblRcd = NULL;
pDimStyleTblRcd = new AcDbDimStyleTableRecord();

// 得到已经存在的标注样式ISO-25
AcDbDimStyleTableRecord *pOldStyle = NULL;
pDimStyleTbl->getAt("ISO-25", pOldStyle, AcDb::kForRead);

// 设置新标注样式的特性
pDimStyleTblRcd->setName(styleName);
pDimStyleTblRcd->setDimtxt(pOldStyle->dimtxt());
pDimStyleTblRcd->setDimasz(pOldStyle->dimasz());
pDimStyleTblRcd->setDimexe(pOldStyle->dimexe());
pDimStyleTblRcd->setDimtad(pOldStyle->dimtad());
相关文章
相关标签/搜索