找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3081|回复: 3

[求助] AcEdJig 动态生成矩形 按某个角度 求教。。

[复制链接]

已领礼包: 2个

财富等级: 恭喜发财

发表于 2014-7-23 21:12:50 | 显示全部楼层 |阅读模式

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

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

×
问题是:动态拖动后 矩形线没删除。
源码:
Adesk::Boolean asdkRecJig::update()
{
        pt = ptOld;

        CreateRectangle(pPoly,ptbase, pt);

        return Adesk::kTrue;
}


void  CreateRectangle(AcDbPolyline *pPoly,AcGePoint3d pt1, AcGePoint3d pt2)
{
        // 提取两个角点的坐标值
        double x1 = pt1.x, x2 = pt2.x;
        double y1 = pt1.y, y2 = pt2.y;
        pt1.z=pt2.z=0;
        // 计算矩形的角点
        AcGePoint2d ptLeftBottom(sMin(x1, x2),sMin(y1, y2));
        AcGePoint2d ptRightBottom(sMax(x1, x2),sMin(y1, y2));
        AcGePoint2d ptRightTop(sMax(x1, x2),sMax(y1, y2));
        AcGePoint2d ptLeftTop(sMin(x1, x2),sMax(y1, y2));
        // 创建对应的多段线
       
        pPoly->addVertexAt(0, ptLeftBottom, 0, 0, 0);
        pPoly->addVertexAt(1, ptRightBottom, 0, 0, 0);
        pPoly->addVertexAt(2, ptRightTop, 0, 0, 0);
        pPoly->addVertexAt(3, ptLeftTop, 0, 0, 0);
        //pPoly->setClosed(Adesk::kTrue);
}


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

已领礼包: 2个

财富等级: 恭喜发财

 楼主| 发表于 2014-7-23 21:16:00 | 显示全部楼层
AcEdJig::DragStatus asdkRecJig::sampler()
{
        DragStatus stat;

        setUserInputControls((UserInputControls)
                (AcEdJig::kAccept3dCoordinates                                //允许3D 不允许负值 0
                | AcEdJig::kNoNegativeResponseAccepted
                | AcEdJig::kNoZeroResponseAccepted));

        static AcGePoint3d axisPointTemp;
        fast_cad_SetSnapAngle(ptbase,angle1);
        stat = acquirePoint(ptOld, ptbase);
        if (axisPointTemp != ptOld)
                axisPointTemp = ptOld;
        else if (stat == AcEdJig::kNormal)
                return AcEdJig::kNoChange;
       
        return stat;
}
还有个问题是 JIg怎么响应stat 的回车事件 空格事件
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

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

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 22:50 , Processed in 0.366070 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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