明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: 永不言弃

[测绘] 线相交检查

[复制链接]
 楼主| 发表于 2014-1-23 12:53:51 | 显示全部楼层
好的,谢谢
发表于 2014-2-11 17:03:14 | 显示全部楼层
顶到高手出来........
发表于 2016-1-31 22:22:17 | 显示全部楼层
本帖最后由 荒野孤行 于 2016-1-31 22:24 编辑

  1. ;;;查找相交线(短路)
  2. (defun c:xj        (/ objlis)
  3.   (princ "选取直线、多段线、圆、圆弧、样条曲线:")  
  4.   (vl-load-com)
  5.   (setq
  6.     ss (ssget '((0 . "LWPOLYLINE,POLYLINE,ARC,CIRCLE,SPLINE,LINE"))
  7.        )
  8.   )
  9.   (if (not ss)
  10.     (progn (princ "\n提示:未选取对象.") (exit))
  11.   )
  12.   (setvar "osmode" 0)
  13.   (setq        i   0
  14.         num (sslength ss)
  15.   )
  16.   (command "LAYER" "M" "层-短路" "C" "251" "层-短路" "")
  17.   (repeat num
  18.     (setq ent (ssname ss i)
  19.           obj (vlax-ename->vla-object ent)
  20.     )
  21.     (setq objlis (cons obj objlis))
  22.     (setq i (1+ i))
  23.   )
  24.   (setq i 0)
  25.   (while (< i (- (length objlis) 1))
  26.     (setq obj1 (nth i objlis))
  27.     (setq j (+ 1 i))
  28.     (while (< j (length objlis))
  29.       (setq obj2 (nth j objlis))
  30.       (if (vlax-invoke obj1 'intersectwith obj2 0)
  31.         (progn
  32.           (vla-put-Layer obj1 "层-短路")
  33.           (vla-put-Layer obj2 "层-短路")
  34.         )
  35.       )
  36.       (setq j (1+ j))
  37.     )

  38.     (setq i (1+ i))
  39.   )
  40.   (alert
  41.     "★提示:如果存在短路的对象,会把它们置于“层-短路”图层!"
  42.   )
  43. (alert "若需了解更多功能的程序,欢迎下载WDY工具箱。")
  44. (command "BROWSER" "http://bbs.mjtd.com/thread-108389-1-1.html")
  45.   (princ)
  46. )


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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-20 17:16 , Processed in 0.133857 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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