找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1335|回复: 5

[每日一码] HATCH添加LOOP环代码

[复制链接]

已领礼包: 13个

财富等级: 恭喜发财

发表于 2017-1-20 16:51:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
void AddLoopsToHatches(std::map<AcDbObjectId, AcDbObjectIdArray> &mapHatchToText)
{
        Acad::ErrorStatus es;
        std::map<AcDbObjectId, AcDbObjectIdArray>::const_iterator iter;
        AcDbHatch *pHatch = 0;
        AcDbEntity *pTextBound = 0;
        for (iter = mapHatchToText.begin(); iter != mapHatchToText.end(); iter++)
        {
                AcDbObjectId objIdHatch = iter->first;
                if ((es = acdbOpenObject(pHatch, objIdHatch, AcDb::kForWrite)) == Acad::eOk)
                {
                        // es = pHatch->setAssociative(true); //caused "solid-black-effect" here!!
                        const AcDbObjectIdArray &idArr = iter->second;
                        int iOb = 0;
                        for (iOb = idArr.length() - 1; iOb >= 0; iOb--)
                        {
                                AcDbObjectIdArray idLoops;
                                idLoops.append(idArr[iOb]);
                                es = pHatch->appendLoop(AcDbHatch::kDefault, idLoops);
                        }
                        es = pHatch->setAssociative(true); //No "solid-black-effect" here.
                        es = pHatch->evaluateHatch();
                        pHatch->close();
                }
        }
}


论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 488个

财富等级: 日进斗金

发表于 2017-2-3 00:12:14 | 显示全部楼层
std::map 里面不知道是怎么组织数据,没前因后果我们看的人一头雾水。

appendLoop 不是直接 ids,为什么要id一个个输入
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 13个

财富等级: 恭喜发财

 楼主| 发表于 2017-2-3 08:47:31 | 显示全部楼层

LOOP如果用数组添加,IDS里面的实体按顺序都首尾连接,能成,否则会失败。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2017-3-9 15:04:23 来自手机 | 显示全部楼层
路过,看看,乛乛完美
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3个

财富等级: 恭喜发财

发表于 2020-4-26 15:56:20 | 显示全部楼层
大佬 你好,百度了一圈 就你最有道理,你是怎么明白这个道理的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 10个

财富等级: 恭喜发财

发表于 2020-9-23 00:31:13 | 显示全部楼层
thanks code.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-21 22:55 , Processed in 0.387650 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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