找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: st788796

[教学] API应用AcDb系列(1)--AcDbCurve类函数

[复制链接]

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2014-11-8 10:26:08 | 显示全部楼层
14 AcDbCurve::isClosed 检查趋向是否闭合
闭合曲线可能包括 Circle(肯定闭合) Ellipse  Polyline Spline,后两者必须为 command 时 C 闭合,首尾点相接 isClosed 将返回 nil

1)ARX
virtual Adesk::Boolean isClosed() const;

2) Net
Curve.Closed Property

3)vlax
(vlax-curve-isclosed curve)

4 xdapi
功   能:
判断两曲线是否共面
调用格式:
(xdrx_curve_isclosed <曲线实体名>)
返 回 值:
T or NIL
说    明:


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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2014-11-8 10:26:40 | 显示全部楼层
15 AcDbCurve::isPeriodic 判断曲线是否是是期曲线

1)ARX
virtual Adesk::Boolean isPeriodic() const;

2)Net
Curve.IsPeriodic Property

3)vlax
(vlax-curve-isperiodic curve)

4) xdapi
功  能:
判断曲线是否是是期曲线
调用格式:
(xdrx_curve_isPeriodic <曲线实体名>)
返 回 值:
T or NIL
说    明:


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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2014-11-8 10:28:10 | 显示全部楼层
16 isPlanner 判断曲线是否是一个平面内曲线
平面曲线包括 arc circle ellipse 二维polyline,line 可以位于多个平面

ARX Net 无此直接函数

1)vlax
(vlax-curve-isPlanner curve)

2)xdapi
功 能:
判断曲线是否是一个平面内曲线
调用格式:
(xdrx_curve_isplanar <曲线实体名>)
返 回 值:
T or NIL
说    明:
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2014-11-8 11:30:13 | 显示全部楼层
17 AcDbCurve::getOffsetCurves 偏移曲线

以曲线前进方向为基准,距离为正左(上)偏移,距离为负右(下)偏移

1)ARX
virtual Acad::ErrorStatus getOffsetCurves(
    double offsetDist,
     AcDbVoidPtrArray& offsetCurves
) const;

2) Net
public virtual DBObjectCollection GetOffsetCurves(
    double offsetDist
);

3) ActiveX
(vla-offset obj dist) 返回 (array of object) 可能多个

4)xdapi
功  能:
偏移曲线
调用格式:
(xdrx_furve_getoffsetcurves <曲线实体名...[曲线选择集]> <偏移距离>)
返 回 值:
选择集
说    明:
距离: 曲线前进方向,左上为正,右下为负
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2014-11-8 11:31:06 | 显示全部楼层
18 AcDbCurve::getOrthoProjectedCurve 获得曲线对一个平面投影后的新曲线

1) ARX
virtual Acad::ErrorStatus getOrthoProjectedCurve(
    const AcGePlane&,
    AcDbCurve*& projCrv
) const;

2) Netpublic virtual Curve GetOrthoProjectedCurve(
    Plane planeToProjectOn
);

3) A/VLisp 无

4) xdapi
功  能:
获得曲线对一个平面投影后的新曲线
调用格式:
(xdrx_curve_getProjectCurves <曲线实体名...选择集> <Plane> [向量])
返 回  :
选择集
说    明:
参数:
PLANE: 1、 表 (原点 Z轴向量)
           2、    (原点 X轴向量 Y轴向量)
           3、    (原点 X轴向量 Y轴向量 Z轴向量)
向量:如果不给,正交投影
                   给,沿着该向到投影到平面


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

使用道具 举报

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2014-11-8 18:06:34 | 显示全部楼层
xdrx_getpropertyvalue 支持 Curve 的查询特性
20141108180518.jpg

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2014-11-8 19:12:51 | 显示全部楼层
本帖最后由 st788796 于 2014-11-8 19:16 编辑

以下为 xdapi 特有函数,仅在此列出,具体用法查看 API 手册

1 xdrx_curve->region 曲线(集) 转面域

2 xdrx_curve->spline 将曲线转换成SPLINE

3 xdrx_curve_box 包围盒

4 xdrx_curve_direction 判断曲线生成的逆(顺)时针方向

5 xdrx_curve_getinters 求交点

6 xdrx_curve_GetPlane  获得曲线的所在的平面

7 xdrx_curve_info 获取 Curve 构成的 Region 信息

编辑类函数

1 xdrx_curve_break 用一系列点断开曲线

2 xdrx_curve_intersectbreak 曲线集交点断开

3 xdrx_curve_getsplitcurves 用一系列点或参数断开曲线

4 xdrx_curve_extend 延伸曲线

5 xdrx_curve_fillet 两曲线倒角

6 xdrx_curve_trim 裁剪曲线

7 xdrx_curve_join 连接曲线

8 xdrx_curve_setclosed 闭合曲线

9 xdrx_curve_reverse 反转曲线 ( AcDbCurve::reverseCurve  / Curve.ReverseCurve

10 xdrx_curve_removedup   曲线消重

11 xdrx_curve_offset 获取曲线 offset 后曲线的模拟点表

曲线布尔(非 Region 方法)

1 xdrx_curve_union 曲线并集

2 xdrx_curve_intersect 曲线求交

3 xdrx_curve_subtract 曲线求差

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

 楼主| 发表于 2014-11-8 19:22:10 | 显示全部楼层
未公布函数

1 xdrx_curve_int

2 xdrx_curve_iscoplanner

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

使用道具 举报

已领礼包: 92个

财富等级: 招财进宝

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

已领礼包: 7个

财富等级: 恭喜发财

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

使用道具 举报

已领礼包: 2226个

财富等级: 金玉满堂

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 14:34 , Processed in 0.285252 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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