明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 832|回复: 13

[提问] 多段线连接不能统一线宽

[复制链接]
发表于 2022-5-12 09:35 | 显示全部楼层 |阅读模式
各位侠,网上下载的多段线连接小程序,但不能统一线宽,请大侠帮优化一下

本帖子中包含更多资源

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

x
发表于 2022-5-12 13:04 | 显示全部楼层
  1. (defun c:pjj () (c:pljoinfuzz))
  2. (defun c:pljoinfuzz ()
  3.   "多段线线模糊连接"
  4.   (setq        cc (getvar "cmdecho")
  5.         pc (getvar "PEDITACCEPT")
  6.   )
  7.   (setvar "cmdecho" 0)
  8.   (if (setq A2k4 (>= (substr (getvar "ACADVER") 1 2) "16"))
  9.     (setvar "PEDITACCEPT" 0)
  10.   )
  11.   (setq fuzz (getdist "\n模糊距离 <0.1>: "))
  12.   (setq pw (getdist "\n线宽 <0>: "))
  13.   (if (= fuzz nil)
  14.     (setq fuzz 0.1)
  15.   )
  16.   (if (= pw nil)
  17.     (setq pm 0)
  18.   )
  19.   (setq qf '((0 . "LINE,ARC,POLYLINE,LWPOLYLINE")))
  20.   (princ "\n请选择需要连接的直线,圆弧,多义线: ")
  21.   (while (and (setq ss1 (ssget qf)) (> (sslength ss1) 1))
  22.     (setq et (cdr (assoc 0 (entget (ssname ss1 0)))))
  23.     (if        (member et '("LINE" "ARC"))
  24.       (command "_.pedit" "_M" ss1 "" "_Y" "_J" "_J" "_B" fuzz "")
  25.       (command "_.pedit" "_M" ss1 "" "_J" "_J" "_B" fuzz "")
  26.     )
  27.     (setq s1 (entlast))
  28.     (command "pedit" s1 "w" pw "")
  29.   )
  30.   (setvar "cmdecho" cc)
  31.   (if A2k4
  32.     (setvar "PEDITACCEPT" pc)
  33.   )
  34.   (princ)
  35. )
  36. (princ)
发表于 2022-5-19 09:53 | 显示全部楼层
wanhongron 发表于 2022-5-18 17:18
各位侠,有好用点的源码吗?能使连接后的多段线全局宽度同最先选择的一致,不用每次都要定义一次。

最先选择的是什么意思?   院长写的就可以,你把这个改成获得的线宽就可以了(setq pw (getdist "\n线宽 <0>: "))
发表于 2022-5-12 20:40 来自手机 | 显示全部楼层
wanhongron 发表于 2022-5-12 15:11
非常谢谢热心的xyp1964侠,好像还不能实现,我的想法是多段线连接后能连接多段线并按照最先选择的对象统一 ...

先不考虑宽度直接连接,然后每条线读取它的所有宽度取最大值作为全局宽度进行修改
另外,线宽和宽度是两个概念。。。
 楼主| 发表于 2022-5-12 15:11 | 显示全部楼层
非常谢谢热心的xyp1964侠,好像还不能实现,我的想法是多段线连接后能连接多段线并按照最先选择的对象统一线宽,不用每次再改线宽。
发表于 2022-5-12 18:13 | 显示全部楼层
用(ssname SS 0)取出第一个图元,获取线宽,后面根据这个线宽修改图元就行
发表于 2022-5-13 07:27 | 显示全部楼层
提取第一个的线宽  然后  修改合并后的宽度属性即可
发表于 2022-5-13 10:17 | 显示全部楼层
再增加一个切换设置,用户可选width为:第一/第二个对象的统一/最大/最小/平均/宽度,用户指定宽度,第一个对象的末段结尾宽度,第二个对象的第一段起始宽度...可能性比较多...
 楼主| 发表于 2022-5-13 11:22 | 显示全部楼层
guosheyang思路就是我想要的,但是不知道怎么实现
 楼主| 发表于 2022-5-13 11:25 | 显示全部楼层
@mj0000能帮写个样本吗?
发表于 2022-5-13 13:00 | 显示全部楼层
  试用下

本帖子中包含更多资源

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

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

本版积分规则

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

GMT+8, 2024-4-25 03:50 , Processed in 0.253892 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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