Acad新建个文档怎么这么费劲
2010-01-10 13:45
344 查看
static void ArxProject1docnew(void)
{
acutPrintf(_T("/ndocnew!"));
AcDbDatabase *pDb = acdbCurDwg();
createDwg(pDb);
newDoc();
}
void
createDwg(AcDbDatabase *&pDb)
{
// AcDbDatabase *pDb = new AcDbDatabase();
AcDbBlockTable *pBtbl;
pDb->getSymbolTable(pBtbl, AcDb::kForRead);
AcDbBlockTableRecord *pBtblRcd;
pBtbl->getAt(ACDB_MODEL_SPACE, pBtblRcd,
AcDb::kForWrite);
pBtbl->close();
AcDbCircle *pCir1 = new AcDbCircle(AcGePoint3d(1,1,1),
AcGeVector3d(0,0,1),
1.0),
*pCir2 = new AcDbCircle(AcGePoint3d(4,4,4),
AcGeVector3d(0,0,1),
2.0);
pBtblRcd->appendAcDbEntity(pCir1);
pCir1->close();
pBtblRcd->appendAcDbEntity(pCir2);
pCir2->close();
pBtblRcd->close();
// AcDbDatabase::saveAs() does NOT automatically
// append a DWG file extension, so it
// must be specified.
pDb->saveAs(_T("c://test1.dwg"));
}
Acad::ErrorStatus newDoc(CString dwgpath)
{
Acad::ErrorStatus result = Acad::eOk;
if(acDocManager->isApplicationContext())
{
result = acDocManager->appContextNewDocument(dwgpath);
if(result != Acad::eOk)
acutPrintf(CString(_T("ERROR: ")) + acadErrorStatusText(result));
}
else
acDocManager->executeInApplicationContext(NewDocHelper, &dwgpath);
return result;
}
void NewDocHelper(void *pData)
{
Acad::ErrorStatus result ;
if(acDocManager->isApplicationContext())
{
CString* dwg = (CString*)pData;
result = acDocManager->appContextNewDocument(*dwg);
if(result != Acad::eOk)
acutPrintf(CString(_T("ERROR: ")) + acadErrorStatusText(result));
}
else
acutPrintf(CString(_T("ERROR: in Document context :")) + acDocManager->curDocument()->fileName());
}
{
acutPrintf(_T("/ndocnew!"));
AcDbDatabase *pDb = acdbCurDwg();
createDwg(pDb);
newDoc();
}
void
createDwg(AcDbDatabase *&pDb)
{
// AcDbDatabase *pDb = new AcDbDatabase();
AcDbBlockTable *pBtbl;
pDb->getSymbolTable(pBtbl, AcDb::kForRead);
AcDbBlockTableRecord *pBtblRcd;
pBtbl->getAt(ACDB_MODEL_SPACE, pBtblRcd,
AcDb::kForWrite);
pBtbl->close();
AcDbCircle *pCir1 = new AcDbCircle(AcGePoint3d(1,1,1),
AcGeVector3d(0,0,1),
1.0),
*pCir2 = new AcDbCircle(AcGePoint3d(4,4,4),
AcGeVector3d(0,0,1),
2.0);
pBtblRcd->appendAcDbEntity(pCir1);
pCir1->close();
pBtblRcd->appendAcDbEntity(pCir2);
pCir2->close();
pBtblRcd->close();
// AcDbDatabase::saveAs() does NOT automatically
// append a DWG file extension, so it
// must be specified.
pDb->saveAs(_T("c://test1.dwg"));
}
Acad::ErrorStatus newDoc(CString dwgpath)
{
Acad::ErrorStatus result = Acad::eOk;
if(acDocManager->isApplicationContext())
{
result = acDocManager->appContextNewDocument(dwgpath);
if(result != Acad::eOk)
acutPrintf(CString(_T("ERROR: ")) + acadErrorStatusText(result));
}
else
acDocManager->executeInApplicationContext(NewDocHelper, &dwgpath);
return result;
}
void NewDocHelper(void *pData)
{
Acad::ErrorStatus result ;
if(acDocManager->isApplicationContext())
{
CString* dwg = (CString*)pData;
result = acDocManager->appContextNewDocument(*dwg);
if(result != Acad::eOk)
acutPrintf(CString(_T("ERROR: ")) + acadErrorStatusText(result));
}
else
acutPrintf(CString(_T("ERROR: in Document context :")) + acDocManager->curDocument()->fileName());
}
相关文章推荐
- 需要的资源怎么下载一下就这么费劲!
- 鼠标右键的新建文本文档消失了,怎么办
- Oracle 存储过程返回结果集怎么这么费劲?
- 怎么找回右键新建文本文档
- 怎么找回右键新建文本文档
- 发个博客怎么这么费劲,为什么无法调字体大小
- 怎么解决点右键无法新建文本文档的问题
- 怎么破解4位组合型Excel文档密码
- 如何将右键新建文本文档默认编码设为UTF-8格式
- 添加找回鼠标右键新建菜单里的新建office2003/2007/2010文档的简洁方法
- extjs学习教程二--怎么理解extjs官方文档
- 利用altium怎么生成PDF及怎么1:1打印文档
- 【cocos2d-x官方文档】怎么使用pthread
- 怎么将pdf转换成word文本文档
- 怎么用Transformer+从PDF文档编辑数据
- Win10电子书无法打开怎么办?win10无法打开电子书文档的解决方法
- 转:SharePoint 2010 禁用列表或文档库新建文件夹命令的三种方法
- 今天又有了别的收获。青云怎么这么厉害呢- -。。感觉无论付出多么大的努力,和他差不多就行~~
- 打印个东西怎么这么难。。。。
- HOW TO:利用 Visual C# .NET 使 Word 自动新建文档