乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 65|回复: 19

[编程交流] 所有线路到一条线路

[复制链接]

2

主题

11

帖子

9

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 10:21:40 | 显示全部楼层 |阅读模式
你好
我在这个令人惊叹的论坛中发现了这个lisp:JOIN-LINES-J.LSP
 
我需要完成这个lisp,因为这个lisp没有将线与普林线连接起来,所以我必须将所有普林线分解为线,然后我可以使用这个lisp,所以我需要在这个lisp中添加这个“分解”动作。请帮忙!
112146eu3me0y9ysyn0ayu.jpg
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 10:28:03 | 显示全部楼层
线不能分解,尽管普林斯可以。但是,可以使用Pedit命令将线“连接”到PLINE,反之亦然。
回复

使用道具 举报

2

主题

11

帖子

9

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 10:28:52 | 显示全部楼层
我知道这个命令,但这是一个长期的行动。。我需要选择所有行并键入lisp。。只需两步。。
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 10:31:45 | 显示全部楼层
如果可以使用Pedit将直线连接到多段线,并将多段线连接到直线,那么除非存在块,否则需要分解什么?
回复

使用道具 举报

2

主题

11

帖子

9

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 10:35:25 | 显示全部楼层
看这张照片。。我有一条线。。我需要一个pline(使用pedit命令。对我来说“播放”太长了)。。我想选择所有的线(线和普林斯在一起。我不在乎)键入lisp命令并完成它。只需两个步骤。。我添加了Lisp程序。。这个可以做到这一点,但只是用线条。。如果我想使用添加的lisp(试试看),我必须有所有的行。。所以我必须将多行分解成多行,然后我可以使用这个lisp ant将所有行连接到一个多行。。我觉得现在更清楚了。。我对我的英语很抱歉
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 10:39:46 | 显示全部楼层
我的显示器有问题,所以我看不懂你发布的图像。如果你说的是真的,那么我想原来的lisp例程使用“fillet”命令使线在更改为pline并连接之前相交。是这样吗?
回复

使用道具 举报

4

主题

940

帖子

961

银币

初来乍到

Rank: 1

铜币
12
发表于 2022-7-6 10:41:17 | 显示全部楼层
不需要引爆任何东西。如果端点相距在0.01个单位内,则会将其连接起来
  1. (defun c:pj ()
  2. (setq pa (getvar "peditaccept"))
  3. (setvar "peditaccept" 1)
  4.    (setq ssj (ssget ))
  5.    (command "pedit" "m" ssj ""  "j" "0.01" "")
  6. (setvar "peditaccept" pa)
  7. (princ)
  8. )
回复

使用道具 举报

7

主题

32

帖子

25

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-6 10:46:24 | 显示全部楼层
此代码将连接选定的线以创建一条pline。但是,它不适用于三维多边形。
 
  1. (defun c:jn ()
  2. (setvar "cmdecho" 0)
  3. (setq lines (ssget (list (cons 0 "LINE,ARC,LWPOLYLINE,POLYLINE")))) ;POLYLINE added 300910 - will crash with 3D POLYLINES
  4. (if lines
  5. (progn
  6.   (while (> (sslength lines) 0)
  7.    (if (= (cdr (assoc 0 (entget (ssname lines 0)))) "LWPOLYLINE")
  8.     (progn
  9.      (command "pedit" (ssname lines 0) "j" lines "" "X")
  10.      (ssdel (ssname lines 0) lines)
  11.     )
  12.     (command "pedit" (ssname lines 0) "y" "j" lines "" "X")
  13.    )
  14.    (setq lines2 (ssadd))
  15.    (setq cnt 0 len (sslength lines))
  16.    (while (< cnt len)
  17.     (if (entget (ssname lines cnt))
  18.      (setq lines2 (ssadd (ssname lines cnt) lines2))
  19.     )
  20.     (setq cnt (1+ cnt))
  21.    )
  22.    (setq lines lines2)
  23.   )
  24.   (princ "\n......Tada!!")
  25. )
  26. (princ "\n....Doh!!")
  27. )
  28. (setvar "cmdecho" 1)
  29. (princ)
  30. )
回复

使用道具 举报

2

主题

11

帖子

9

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 10:47:10 | 显示全部楼层
Demesne和lpseifert,谢谢你们。。这是工作!!
回复

使用道具 举报

8

主题

1133

帖子

1164

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 10:52:04 | 显示全部楼层
在图中,只需圆角,然后直线和多段线将连接为一条多段线。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-6 21:08 , Processed in 0.931920 second(s), 75 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表