最初由 redapple 发布
[B]再请问:这个函数的用法在哪里有?帮助里面有没有?我在论坛上看到的很多函数都不知道?比如:RetVal = object.IntersectWith(IntersectObject, ExtendOption)
xdrx_entity_interSect.....
能否告知有没有... [/B]
1 InterSectWith帮助在Acad.help中可以找到
2
- xdrx_getinters
- 功 能:1.求两个AcDbCurve(曲线)实体的交点.
- 2.求一个AcDbCurve(曲线)实体和一个选择集中所有AcDbCurve(曲线)的交点。
- 3.求一个选择集中所有AcDbCurve(曲线)实体的交点.
- 4.求一个选择集SS1中的所有AcDbCurve实体和另个选择集SS2所有AcDbCurve实体的交点。
- 调用格式: 1. (xdrx_getinters <实体图元1> <实体图元2> [扩展方式])
- 2. (xdrx_getinters <实体图元名> <选择集> [扩展方式])
- 3. (xdrx_getinters <选择集> [扩展方式])
- 4. (xdrx_getinters <选择集1> <选择集2> [扩展方式])
- 5. (xdrx_getinters (<pt1>...<ptn>) <曲线实体名> [扩展方式])
- 6. (xdrx_getinters (<pt1>...<ptn>) <选择集> [扩展方式])
- 7. (xdrx_getinters (<pt1>...<ptn>) (<pt1>...<ptn>) [扩展方式])
- 说 明:1.程序能求AcDbCurve(包括:AcDbLine、AcDbArc、AcDbCircle、AcDbEllipse、AcDbSpline、
- AcDbPolyline(lwpolyline)交点。
- 2.参数[扩展方式]:
- 对于1种情况:
- 0:不延伸实体
- 1:延伸第一个实体
- 2:延伸第二个实体
- 3: 两个都延伸
- 对于第二、三、四种情况(选择集):
- 0: 不延伸实体
- 1: 两个都延伸
- 示 例: 1. 求天正建筑软件轴线层上,所有轴线的交点
- (if (setq ss (ssget "x" (list (cons 8 (xdrx_getlyrname "轴线")) '((0 . "line")))))
- (progn
- (setq intl (xdrx_getinters ss))
- )
- )
- 2. 点取一根轴线,然后求出与这个轴线相交的所有轴线交点。
- (setq lyr (xdrx_getlyrname "轴线"))
- (if (setq en (xdrx_entsel "\n请点取一个轴线<退出>:" (list (cons 8 lyr) '(0 . "line"))))
- (progn
- (xdrx_setentodb)
- (setq p1 (xdrx_getentdxf 10)
- p2 (xdrx_getentdxf 11)
- ss (ssget "f" p1 p2 (list (cons 8 lyr) '(0 . "line")))
- )
- (if (setq intl (xdrx_getinters (car en) ss))
- (progn
- .....;;intl中为交点表
- )
- )
- )
- )
|