乐筑天下

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

[编程交流] 生成可见性状态

[复制链接]

15

主题

315

帖子

361

银币

初来乍到

Rank: 1

铜币
25
发表于 2022-7-5 14:59:06 | 显示全部楼层 |阅读模式
LISP有没有生成可见性状态的方法?
如果是。。。然后可以从dwg文件(1个文件=1个块)导入块定义
 
我正在按类别将许多块组合成更少的块。
 
(谷歌完全忽略了“生成”或“创建”搜索词。我发现了很多“设置动态”链接)
回复

使用道具 举报

0

主题

375

帖子

385

银币

限制会员

铜币
-7
发表于 2022-7-5 15:58:21 | 显示全部楼层
不确定它应该如何工作,也不确定要将哪些对象添加到特定的可见性中,因此请尝试使用这个例子。
首先,在图形中插入一些静态块。
然后运行lisp并选择块。lisp将创建一个具有Vis状态的新块,每个状态代表一个选定的块。
给你,又快又脏。
  1. ;Create Dynamic Block w/ visibility
  2. ;Stefan M. 10.08.2018
  3. (defun c:test ( / msg ss nb i bn lst)
  4. (if
  5.    (and
  6.      (setq ss (ssget '((0 . "INSERT"))))
  7.      (setq nb (getstring "\nSpecify new block name: "))
  8.      (setq msg "\nInvalid name")
  9.      (snvalid nb)
  10.      (setq msg "\nBlock already defined")
  11.      (not (tblsearch "block" nb))
  12.    )
  13.    (progn
  14.      (repeat (setq i (sslength ss))
  15.        (setq bn (cdr (assoc 2 (entget (ssname ss (setq i (1- i)))))))
  16.        (if (not (member bn lst))
  17.          (setq lst (cons bn lst))
  18.        )
  19.      )
  20.      (command "_bedit" nb)
  21.      (command "_bparameter" "_visibility" '(0.0 -10 0.0) "1")
  22.      (foreach x lst
  23.        (command "_bvstate" "_new" x "_hide")
  24.        (entmakex (list '(0 . "INSERT") (cons 2 x) '(10 0.0 0.0 0.0)))
  25.      )
  26.      (command "_bvstate" "_set" (car lst))
  27.      (command "_bvstate" "_delete" "VisibilityState0")
  28.      (command "_bsave")
  29.      (command "_bclose")
  30.      (command "_insert" nb "_s" 1.0 "_r" 0.0)
  31.      (while (> (getvar 'cmdactive) 0)
  32.        (command pause)
  33.      )
  34.    )
  35.    (if msg (alert msg))
  36. )
  37. (princ)
  38. )

 
 
另外,lisp正在我的电脑上运行。然而,它可能需要一些检查例程。例如,我可以想象,如果使用非英语autocad,第一个可见性状态的默认名称可能不是“VisibilityState0”,因此我的lisp可能无法删除它。
回复

使用道具 举报

15

主题

315

帖子

361

银币

初来乍到

Rank: 1

铜币
25
发表于 2022-7-5 16:11:46 | 显示全部楼层
谢谢看起来和我需要的一模一样。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-14 23:30 , Processed in 1.663272 second(s), 59 queries .

© 2020-2025 乐筑天下

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