Group操作
2008-03-04 17:56
127 查看
// 旋转Group
Acad::ErrorStatus rotationGroup(const char* strGroupName,
const AcGePoint3d& ptRotation,
double rotationAngle)
...{
// 得到Group字典
AcGePoint3d pt;
AcDbDictionary *pGroupDict = NULL;
Acad::ErrorStatus es = acdbHostApplicationServices()->workingDatabase()
->getGroupDictionary(pGroupDict, AcDb::kForWrite);
if (es != Acad::eOk)
return es;
// 根据Group名的到Group对象
AcDbObjectId groupId;
AcDbGroup *pGroup;
pt.x = ptRotation.x;
pt.y = ptRotation.y;
pt.z = ptRotation.z;
es = pGroupDict->getAt(strGroupName, pGroup, AcDb::kForWrite);
if (es != Acad::eOk)
...{
pGroupDict->close();
return es;
}
pGroupDict->close();
// 遍历Group对象,对其中每一个实体都进行旋转
AcDbGroupIterator* pIter = pGroup->newIterator();
AcDbEntity* pEnt = NULL;
AcDbObjectId objId;
AcGeMatrix3d mat;
mat.setToRotation(rotationAngle, AcGeVector3d::kZAxis, ptRotation);
for(; !pIter->done(); pIter->next())
...{
es = pIter->getObject(pEnt, AcDb::kForWrite);
if (es != Acad::eOk)
continue;
pEnt->transformBy(mat);
pEnt->close();
}
delete pIter;
pGroup->close();
return Acad::eOk;
}
相关文章推荐
- MongoDB聚合操作 (group, aggregate, mapReduce操作)
- GPGPU OpenCL Reduction操作与group同步
- MongoDB的Group count操作
- Reverse Nodes in k-Group 指针操作 每k个翻转链表
- jQuery对radiogroup进行选中操作
- linux user/group操作
- SPGroup 和SPUser的常用操作 (转)
- 自定义 ConfigurationSection,ConfigurationSectionGroup [web.config操作]
- hdu-4638-Group-(树状数组,离线操作)
- linux group 操作
- 深入理解groupByKey、reduceByKey区别——本质就是一个local machine的reduce操作
- ExpandableListActivity 关于group和child列表长按事件,显示不同的操作列表
- PLSQL的group操作
- [Linux]用户(user)和用户组(group)管理与操作教程
- CD使用dispatch_group_notify、dispatch_group_enter、dispatch_group_leave处理多线程同步操作
- Mongodb聚合函数count、distinct、group如何实现数据聚合操作
- 【FastDev4Android框架开发】神器ViewDragHelper完全解析,妈妈再也不担心我自定义ViewGroup滑动View操作啦~(三十三)
- SPGroup 和SPUser的常用操作
- SQLAlchemy增删改查基本操作,及SQL基本技能样码(join,group)
- mongodb group php 操作