乐筑天下

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

[编程交流] 如何:从

[复制链接]

42

主题

173

帖子

132

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-5 16:21:59 | 显示全部楼层 |阅读模式
大家好
 
我有一个叫做“pList”的点列表
我需要一个lisp,可以从这些点绘制多段线
然后检查该多段线是否与图形中的任何绿色多段线相交
 
如果它相交,则某些变量(如“Check”)在另一种情况下将为1或0
 
 
我们将感谢您的任何帮助。。。提前感谢
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 16:33:20 | 显示全部楼层
  1. (defun Polyline_ (lst)
  2. (entmakex (append (list '(0 . "LWPOLYLINE") '(100 . "AcDbEntity") '(100 . "AcDbPolyline") (cons 90 (length lst)))
  3.                    (mapcar (function (lambda (p) (cons 10 p))) lst)))
  4. )
  5. (if (setq pl (Polyline_ pList))
  6. (if (and (setq ss (ssget "_F" pList '((0 . "LWPOLYLINE"))))
  7.           (< 0 (setq no (1- (sslength ss))))
  8.           )
  9.    (alert (strcat "The newly created polyline is intersecting with <" (itoa no) "> Polyline(s) "))
  10.    (alert "Couldn't find any polyline intersecting the newly created polyline !")
  11.    )
  12. )
回复

使用道具 举报

42

主题

173

帖子

132

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-5 16:46:50 | 显示全部楼层
谢谢Tharwat先生。。。你又救了我一天。。。。非常感谢
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 16:49:01 | 显示全部楼层
 
随时欢迎你。
回复

使用道具 举报

42

主题

173

帖子

132

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-5 17:03:23 | 显示全部楼层
如何检查多段线(由点列表“plist”绘制)是否仅与绿色多段线(颜色3)相交
 
我试过了
  1. (setq ss (ssget "_F" plist '((0 . "LWPOLYLINE") (62 . 3) )))

 
但它检测到一些绿色多段线,而忽略了其他多段线
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 17:05:31 | 显示全部楼层
 
它们可能逐层为绿色,并且不会从颜色弹出列表中手动更改。
因此,如果是这种情况,则需要深入研究每个多段线的对象层。
回复

使用道具 举报

42

主题

173

帖子

132

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-5 17:19:57 | 显示全部楼层
所有多段线均为绿色(3)
当我将未选择的绿线移动到另一个位置时,代码会选择它们。。。
我认为这是关于代码中的部分:
  1. (setq ss (ssget "_F" [color="red"]plist[/color] '((0 . "LWPOLYLINE") (62 . 3) )))
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 17:24:59 | 显示全部楼层
当你通过不使用(62.3)的ss时,你会发现“按层”的“Assoc 62”为零,没有返回(62.x),因此你需要像Tharwat所说的那样检查层颜色,并将其设置为颜色3。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-7 09:38 , Processed in 0.874147 second(s), 69 queries .

© 2020-2025 乐筑天下

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