天气与日历 切换到窄版

 找回密码
 立即注册
中国膜结构网
十大进口膜材评选 十大国产膜材评选 十大膜结构设计评选 十大膜结构公司评选
查看: 51|回复: 0

objectarx之取得选择集包围盒

[复制链接]

该用户从未签到

主题

0

回帖

2912

积分

管理员

积分
2912
发表于 2024-6-22 09:46:18 | 显示全部楼层 |阅读模式
// 取得选择集包围盒

static bool GetSSExtents(ads_name ss, ads_point &maxpt, ads_point &minpt)
        {
                long len;
                int ret = acedSSLength(ss, &len);
                if(ret != RTNORM || len < 1) return FALSE;
                AcDbObjectId objId;
                ads_name ename;
                AcDbEntity *pEnt;
                AcDbExtents extent;
                AcGePoint3d pt1, pt2;
                acedSSName(ss, 0, ename);
                acdbGetObjectId(objId, ename);
                acdbOpenObject(pEnt, objId, AcDb::kForRead);
                pEnt->getGeomExtents(extent);
                pt1 = extent.maxPoint();
                pt2 = extent.minPoint();
                pEnt->close();
                for(int i = 0; i < len; i++)
                {
                        acedSSName(ss, i, ename);
                        acdbGetObjectId(objId, ename);
                        acdbOpenObject(pEnt, objId, AcDb::kForRead);
                        pEnt->getGeomExtents(extent);
                        if(pt1[X] < extent.maxPoint()[X] || pt1[Y] < extent.maxPoint()[Y])
                                pt1 = extent.maxPoint();
                        if(pt2[X] > extent.minPoint()[X] || pt2[Y] > extent.minPoint()[Y])
                                pt2 = extent.minPoint();
                        pEnt->close();
                }
                maxpt[X] = pt1[X];
                maxpt[Y] = pt1[Y];
                maxpt[Z] = pt1[Z];
                minpt[X] = pt2[X];
                minpt[Y] = pt2[Y];
                minpt[Z] = pt2[Z];
                return TRUE;
        }

 

 

 

 

objectarx之取得选择集包围盒
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|中国膜结构网|中国膜结构协会|进口膜材|国产膜材|ETFE|PVDF|PTFE|设计|施工|安装|车棚|看台|污水池|中国膜结构网_中国空间膜结构协会

GMT+8, 2024-11-1 13:31 , Processed in 0.160345 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表