|
[code]OBJECT ARX 获取标注样式信息
CString str = _T("标注样式");
CString strTmp(_T(""));
////获得当前图形的标注样式表
AcDbDimStyleTable* pDimStyleTbl;
acdbHostApplicationServices()->workingDatabase()->getDimStyleTable(pDimStyleTbl, AcDb::kForWrite);
////是否已包含
if (pDimStyleTbl->has(str)){
AcDbDimStyleTableRecord* pDims;
pDimStyleTbl->getAt(ACDB_MODEL_SPACE, pDims, AcDb::kForWrite);
double dTxtHeight = pDims->dimtxt();////标注文字的高度
strTmp.Format(_T(".1f"), dTxtHeight);
m_strTextHigh = strTmp; ////标注文字的高度
int i = pDims->dimadec(); //获取主单位精度
AcDbObjectId idTextStyle = pDims->dimtxsty(); //文字样式
AcDbTextStyleTable *pTextTable;
if (acdbOpenObject(pTextTable, idTextStyle, AcDb::kForRead) == Acad::eOk)
{
pTextTable->getAt(m_strTextStyle,idTextStyle);//获取文字样式字符串
}
pDimStyleTbl->close();
return;
}[/code] |
|