dwg的合并问题
如何使用objectarx来调用autocad中的插入--块命令,也就是说objectarx有没有一个函数能够调用这个命令的?在objectarx编程中,我输入两个dwg的文件地址,然后我想调用autoca的自带的命令将这两个dwg合并,我能否这么做来实现操作?若不行,能否提供一个好的解决方案(我想通过编程的方式实现,而并不是复制粘贴)。
请帮助我 我自己网上找了一些资料 发现acedCommand可以使用来干这个
我感觉只要指定两个地址就行了 像这样尝试
void fun() {
TCHAR fname_a = L"C:\\Users\\Sun\\Desktop\\A.dwg";
TCHAR fname_b = L"C:\\Users\\Sun\\Desktop\\B.dwg";
AcDbDatabase *pDb = new AcDbDatabase(Adesk::kFalse);
if (Acad::eOk != pDb->readDwgFile(fname_a)) return;
acedCommand( RTSTR, TEXT("INSERT"), RTSTR, fname_b, RT3DPOINT, TEXT("1000,1000,0"), RTSHORT, TEXT("1"), RTSHORT, TEXT("1"), RTREAL, TEXT("0.0"), RTNONE );
}
但很显然 他并没有工作
谁能告诉我 怎样将这个命令传递给autocad那个dwg,让它进行修改呢 把最后一行改为:
AcDbDatabase* pCurDb;
pCurDb = acdbHostApplicationServices()->workingDatabase();
if(pCurDb->insert(AcGeMatrix3d::kIdentity,pDb) != Acad::eOk)
{
delete pCurDb;
}
pDb = new AcDbDatabase(Adesk::kFalse);
if (Acad::eOk != pDb->readDwgFile(fname_b)) return;
if(pCurDb->insert(AcGeMatrix3d::kIdentity,pDb) != Acad::eOk)
{
delete pCurDb;
}
delete pDb;
页:
[1]