乐筑天下

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

[编程交流] 我想创建一个新的块u

[复制链接]

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 10:41:16 | 显示全部楼层 |阅读模式
我有一个lisp例程来执行此操作,但我希望可以选择块的新名称或autocad生成的随机块名称。
 
我该如何修改这个lisp例程来做到这一点?
 
我正在查看的命令是(nb)for new block。
 
谢谢
 
兰迪
BLKEDIT。lsp
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:55:05 | 显示全部楼层
您缺少了其中的一些功能。。。。
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 11:10:53 | 显示全部楼层
我已经更新了lisp文件。
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 11:18:41 | 显示全部楼层
我会以这样的方式主演:
 
  1. [b][color=BLACK]([/color][/b]defun c:copyblk [b][color=FUCHSIA]([/color][/b]/ vars ss en ed bn td fe nb[b][color=FUCHSIA])[/color][/b]
  2. [b][color=FUCHSIA]([/color][/b]setq vars '[b][color=NAVY]([/color][/b][b][color=MAROON]([/color][/b][color=#2f4f4f]"CELTYPE"[/color]   . [color=#2f4f4f]"BYLAYER"[/color][b][color=MAROON])[/color][/b]
  3.               [b][color=MAROON]([/color][/b][color=#2f4f4f]"THICKNESS"[/color] . 0.0[b][color=MAROON])[/color][/b]
  4.               [b][color=MAROON]([/color][/b][color=#2f4f4f]"CELTSCALE"[/color] . 1.0[b][color=MAROON])[/color][/b]
  5.               [b][color=MAROON]([/color][/b][color=#2f4f4f]"CECOLOR"[/color]   . [color=#2f4f4f]"BYLAYER"[/color][b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b][b][color=FUCHSIA])[/color][/b]
  6. [b][color=FUCHSIA]([/color][/b]foreach v vars
  7.    [b][color=NAVY]([/color][/b]if [b][color=MAROON]([/color][/b]getvar [b][color=GREEN]([/color][/b]car v[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  8.        [b][color=MAROON]([/color][/b]setvar [b][color=GREEN]([/color][/b]car v[b][color=GREEN])[/color][/b] [b][color=GREEN]([/color][/b]cdr v[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b][b][color=FUCHSIA])[/color][/b]
  9. [b][color=FUCHSIA]([/color][/b]if [b][color=NAVY]([/color][/b]and [b][color=MAROON]([/color][/b]princ [color=#2f4f4f]"\nSelect A Single Standard INSERT..."[/color][b][color=MAROON])[/color][/b]
  10.           [b][color=MAROON]([/color][/b]setq ss [b][color=GREEN]([/color][/b]ssget '[b][color=BLUE]([/color][/b][b][color=RED]([/color][/b]0 . [color=#2f4f4f]"INSERT"[/color][b][color=RED])[/color][/b][b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  11.           [b][color=MAROON]([/color][/b]= [b][color=GREEN]([/color][/b]sslength ss[b][color=GREEN])[/color][/b] 1[b][color=MAROON])[/color][/b]
  12.           [b][color=MAROON]([/color][/b]setq en [b][color=GREEN]([/color][/b]ssname ss 0[b][color=GREEN])[/color][/b]
  13.                 ed [b][color=GREEN]([/color][/b]entget en[b][color=GREEN])[/color][/b]
  14.                 bn [b][color=GREEN]([/color][/b]cdr [b][color=BLUE]([/color][/b]assoc 2 ed[b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b]
  15.                 td [b][color=GREEN]([/color][/b]tblsearch [color=#2f4f4f]"BLOCK"[/color] bn[b][color=GREEN])[/color][/b]
  16.                 fe [b][color=GREEN]([/color][/b]cdr [b][color=BLUE]([/color][/b]assoc -2 td[b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  17.           [b][color=MAROON]([/color][/b]not [b][color=GREEN]([/color][/b]assoc 1 td[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  18.           [b][color=MAROON]([/color][/b]princ [b][color=GREEN]([/color][/b]strcat [color=#2f4f4f]"\nRename Block "[/color] [b][color=BLUE]([/color][/b]strcase bn[b][color=BLUE])[/color][/b] [color=#2f4f4f]" as:"[/color][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  19.           [b][color=MAROON]([/color][/b]while [b][color=GREEN]([/color][/b]or [b][color=BLUE]([/color][/b]not nb[b][color=BLUE])[/color][/b]
  20.                      [b][color=BLUE]([/color][/b]not [b][color=RED]([/color][/b]snvalid nb[b][color=RED])[/color][/b][b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b]
  21.                  [b][color=GREEN]([/color][/b]setq nb [b][color=BLUE]([/color][/b]strcase [b][color=RED]([/color][/b]getstring [color=#2f4f4f]"\nNew Block Name:   "[/color][b][color=RED])[/color][/b][b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b]
  22.       [b][color=NAVY]([/color][/b]progn
  23.           [b][color=MAROON]([/color][/b]entmake [b][color=GREEN]([/color][/b]list [b][color=BLUE]([/color][/b]cons 0 [color=#2f4f4f]"BLOCK"[/color][b][color=BLUE])[/color][/b][b][color=BLUE]([/color][/b]cons 2 nb[b][color=BLUE])[/color][/b][b][color=BLUE]([/color][/b]assoc 10 td[b][color=BLUE])[/color][/b][b][color=BLUE]([/color][/b]assoc 70 td[b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  24.           [b][color=MAROON]([/color][/b]while fe
  25.               [b][color=GREEN]([/color][/b]entmake [b][color=BLUE]([/color][/b]entget fe[b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b]
  26.               [b][color=GREEN]([/color][/b]setq fe [b][color=BLUE]([/color][/b]entnext fe[b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  27.           [b][color=MAROON]([/color][/b]entmake [b][color=GREEN]([/color][/b]list [b][color=BLUE]([/color][/b]cons 0 [color=#2f4f4f]"ENDBLK"[/color][b][color=BLUE])[/color][/b][b][color=BLUE]([/color][/b]cons 8 [color=#2f4f4f]"0"[/color][b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  28.           [b][color=MAROON]([/color][/b]entmod [b][color=GREEN]([/color][/b]subst [b][color=BLUE]([/color][/b]cons 2 nb[b][color=BLUE])[/color][/b] [b][color=BLUE]([/color][/b]assoc 2 ed[b][color=BLUE])[/color][/b] ed[b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b]
  29.           [b][color=MAROON]([/color][/b]entupd en[b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b][b][color=FUCHSIA])[/color][/b]
  30. [b][color=FUCHSIA]([/color][/b]prin1[b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]

-大卫
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 11:28:37 | 显示全部楼层
大卫,
 
谢谢
 
您是否知道如何为块命名或让Autocad创建自己的块名(例如A$C7E723876)。就像复制并粘贴为块一样。
 
兰迪
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 11:36:28 | 显示全部楼层
试试附件,它应该适用于任何类型的块(属性、动态等)
复制块。lsp
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 11:48:36 | 显示全部楼层
 
我可以把它变成一个匿名街区。它们的名字以*U开头,然后是递增的数字。
 
我不知道ACAD用C美元做了什么。。。命名约定。
 
也许有人可以解释一下-大卫
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-6 17:13 , Processed in 1.020747 second(s), 66 queries .

© 2020-2025 乐筑天下

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