乐筑天下

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

[编程交流] 如果线不是selec,则获取点

[复制链接]

4

主题

6

帖子

3

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 11:48:45 | 显示全部楼层 |阅读模式
我正在创建一个例程,它将选择一条线,插入一个符号,然后断开,然后断开这条线(我所有的工作都完成了)。但是,我想添加一个功能,即在两次尝试后,没有选择任何线,将使用上次尝试的点。关于如何在不添加额外用户getpoint提示的情况下轻松获取这一点,有什么建议吗?
 
这是我用来选线的程序的一部分
 
  1. (while (and (not linent) (< countr 2))
  2.    (setq linent (entsel "\nPick Line for Block Insertion Point:  "))
  3.    (if    linent
  4.      (progn
  5.    (setq ed (entget (car linent)))
  6.    (setq edd (dxf 0 ed))
  7.    (if (and (/= edd "LINE") (/= edd "POLYLINE"))
  8.      (setq linent nill)
  9.    )
  10.      )                    ;progn
  11.    )                    ;if   
  12.    (setq countr (1+ countr))
  13.    (if    (not linent)
  14.      (prompt "\nYou must select a LINE as Insertion Point !  ")
  15.    )
  16. )    ;while
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 12:15:22 | 显示全部楼层
点/对象检索的另一种方法:
 
  1. (while
  2. (progn
  3.    (setq pt (getpoint "\nSelect Point for Block: "))
  4.    (cond (  (not pt) nil)
  5.          (  (not (setq ent (car (nentselp pt))))
  6.             (princ "\n ** No Object Found at Point **"))
  7.          (  (not (eq "LINE" (cdr (assoc 0 (entget ent)))))
  8.             (princ "\n  ** Object Must be a Line **")))))
回复

使用道具 举报

2

主题

47

帖子

45

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 12:44:04 | 显示全部楼层
对于那些喜欢短代码行的人,可以使用类似以下内容:
 
相同的
  1. (eq (cdadr (entget ename)) "LINE")

 

  1. (/= (cdadr (entget ename)) "LINE")

 
作为功能
  1. (defun enameTarget (name) (eq (cdadr (entget ename)) name))

 
也许,等等,等等。。。
回复

使用道具 举报

2

主题

47

帖子

45

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 12:54:50 | 显示全部楼层
有机会和lisp玩一点。。。如果我理解的话,可能是这样的:
 
[code](defun C:测试(/tryouts data pt take)(setq tryouts 0)(而(
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-3 10:17 , Processed in 1.025821 second(s), 60 queries .

© 2020-2025 乐筑天下

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