明经CAD社区

 找回密码
 注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 422|回复: 11

[源码] 线段端点连接源码分享

[复制链接]
发表于 2019-7-9 13:30 | 显示全部楼层 |阅读模式

[code="lisp] (defun c:ggqj (/ pl1 pl2 PT-LST1 PT-LST2)
(command "._undo" "begin")
(setvar "cmdecho" 0)
(setq pl1 (car (entsel "\n选择原始轮廓线"))
      pl2 (car (entsel "\n选择要连接的轮廓线")))
;;然后得到点表,再连接起来
(setq PT-LST1 (mapcar 'cdr (vl-remove-if-not '(lambda (x) (or (= (car x) 10)(= (car x) 11))) (entget pl1))))
(setq PT-LST2 (mapcar 'cdr (vl-remove-if-not '(lambda (x) (or (= (car x) 10)(= (car x) 11))) (entget pl2))))
(mapcar '(lambda (x y) (entmake (list '(0 . "LINE") (cons 10 x) (cons 11 y)))) PT-LST1 PT-LST2)
(command "._undo" "end")
(princ "\n************完成连线*********")
)[/code]

本帖子中包含更多资源

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

x
发表于 2019-7-9 15:52 | 显示全部楼层
谢谢! 雨的节奏 分享程序!!!!!
发表于 2019-7-10 00:47 | 显示全部楼层
谢谢了,你的代码很短,我也有这样一个功能但是代码很长
发表于 2019-7-10 00:53 | 显示全部楼层
(defun c:WMJX ( / i pts s1 ss x)
  (mx-Start)
  (setq x-jdjj (mx-dist "瓦面线对角节点间距" x-jdjj 600))
  (mapcar
    'mx-set
    '("cmdecho" "osmode")
    '(0 0)
  );15359
  (princ "\n请框选多段线")
  (if (setq ss (ssget '((0 . "lwpolyline"))))
    (progn
      (setq i (sslength ss))
      (while (setq s1 (ssname ss (setq i (1- i))))
        (setq pts(cons (mx-Polyline-GetVertices s1) pts))
      )
      (setq pts(apply 'append pts)
            pts(mapcar(function(lambda(x) (list x x))) pts)
      )
      (mapcar(function(lambda(x)
        (if(= (length x) 2)(mx-Line-Make (car x) (cadr x)))))
        (mx-Pts-GroupByDist pts x-jdjj);点表根据间距分组
      )
    )
  )
  (mx-End)
)
发表于 2019-7-10 09:04 | 显示全部楼层
你好你那个是什么工具箱能分享下吗

点评

石材行业用的工具 www.gstone.vip  发表于 2019-7-12 11:09
发表于 2019-7-11 08:47 | 显示全部楼层
不错,有点意思!!!
发表于 2019-7-12 17:08 | 显示全部楼层
怎么用不了呢?
 楼主| 发表于 2019-7-12 21:09 | 显示全部楼层

  代码的思路很清晰明了,钻石会员应该瞅一眼自己就能发现问题了
发表于 2019-7-13 10:53 | 显示全部楼层
代码不错,要是再考虑一下线的方向就更好了
发表于 2019-7-13 14:23 | 显示全部楼层
这种大多情况都是双线,可以直接框选吗?

点评

你直接改一下 ssget line ,,car cadr  发表于 2019-7-14 10:19
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2019-7-22 13:40 , Processed in 0.222730 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2013 Comsenz Inc.

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