乐筑天下

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

[编程交流] 请帮助开始

[复制链接]

2

主题

4

帖子

2

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 14:59:06 | 显示全部楼层 |阅读模式
大家好
 
编写lisp代码非常新。
请帮我走。
我试着编写代码,一次将小块复制/粘贴到垂直线的末端。(不同层上的小方块)节省时间,无需每次粘贴。有很多线,它们之间的尺寸和长度都不一样!
图片中,一排栅栏柱子点缀在任何地方,想把盒子固定在柱子的顶部。
最好有一个偏移量,并且能够选择要复制/粘贴的行。
有人能帮上忙吗?有人看过能做到这一点的代码吗?
 
干杯
做记号
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 15:24:01 | 显示全部楼层
这不考虑任何层次的东西。它只使用当前层并假设WCS插入。此外,它只查找线条。没有普林斯-大卫
  1. (defun c:lend2ins (/ bn ss i en ed p10 p11)
  2. ;;;FORCE BLOCK TABLE
  3. (defun SetBlkTF (n)
  4. (cond ((not (snvalid n))
  5.        (princ "\nInvalid Block Name - " n)
  6.        (setq n nil))
  7.       ((tblsearch "BLOCK" n))
  8.       ((findfile (strcat n ".DWG"))
  9.        (command "_.INSERT" n)
  10.        (command))
  11.       (T
  12.        (entmake (list (cons 0 "BLOCK")(cons 2 n)(cons 10 (list 0 0 0))(cons 70 0)))
  13.        (entmake (list (cons 0 "TEXT")
  14.                       (cons 1 (strcat "BLOCK PLACECARD - " n))
  15.                       (cons 7 (cdr (assoc 2 (tblnext "STYLE" T))))
  16.                       (cons 8 "0")
  17.                       (cons 10 (list 0 0 0))
  18.                       (cons 11 (list 0 0 0))
  19.                       (cons 40 (max 1 (getvar "TEXTSIZE")))
  20.                       (cons 72 4)))
  21.        (entmake (list (cons 0 "ENDBLK")(cons 8 "0")))))
  22. n)
  23. (while (or (not bn)
  24.             (not (SetBlkTF bn)))
  25.          (setq bn (getstring "\nBLOCK To INSERT:   ")))
  26. (while (not ss)
  27.         (princ "\nSelect Lines To INSERT BLOCK To:   ")
  28.         (setq ss (ssget (list (cons 0 "LINE")
  29.                               (if (getvar "CTAB")
  30.                                   (cons 410 (getvar "CTAB"))
  31.                                   (cons 67 (- 1 (getvar "TILEMODE"))))))))
  32. (setq i (sslength ss))
  33. (while (not (minusp (setq i (1- i))))
  34.         (setq en (ssname ss i)
  35.               ed (entget en )
  36.              p10 (cdr (assoc 10 ed))
  37.              p11 (cdr (assoc 11 ed)))
  38.         (entmake (list (cons 0 "INSERT")(cons 2 bn)(cons 10 p10)
  39.                        '(39 . 0)'(6 . "BYLAYER")'(62 . 256)))
  40.         (entmake (list (cons 0 "INSERT")(cons 2 bn)(cons 10 p11)
  41.                        '(39 . 0)'(6 . "BYLAYER")'(62 . 256))))
  42. (prin1))
回复

使用道具 举报

2

主题

4

帖子

2

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 15:45:07 | 显示全部楼层
非常感谢大卫,这非常适合我想要做的事情。
 
干杯,马克
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 16:00:39 | 显示全部楼层
不客气。这是对我已经设置了摄像机视图的程序的一个轻微修改-大卫。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-4 22:11 , Processed in 0.640988 second(s), 60 queries .

© 2020-2025 乐筑天下

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