乐筑天下

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

[编程交流] AutoliSP重新搜索

[复制链接]

24

主题

135

帖子

111

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
120
发表于 2022-7-5 22:32:16 | 显示全部楼层 |阅读模式
嗨,朋友们!
 
如果有人能帮助我,我会非常感谢!!
 
我需要一个lisp可以计算面积和周长。Lisp程序并不难找到。
但我还需要一件事。将地板(0.5x0.5)插入其中。Hatch可能是一个很好的方法。
我想知道使用了多少层,舱口无法计数,对吗?
 
谁能帮帮我吗?
 
提前感谢
测试。图纸
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 22:39:44 | 显示全部楼层
有一些方法可以使用数组来制作一个图案,比如说地板砖,然后修剪到线边界。然后,你可以数一数瓷砖,尝试使用数组和Extrim。你的dwg正是我所说的,它是我不再拥有的一段代码。我一直想把它重写一遍。
 
再看一遍。UCS OB此设置用于PLINE阵列的角度,使用extrim和Cookiecutter使其大于形状。lsp,使用过滤器选择plines给出总计,Ucs W全部完成。
回复

使用道具 举报

24

主题

135

帖子

111

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
120
发表于 2022-7-5 22:46:32 | 显示全部楼层
感谢您快速重播BIGAL
 
我画了一个0.50x0.50的正方形,把它作为点的原点,使用复制/数组命令和extrim命令。
 
我所有的任务都是使用autocad命令,顺便说一句,它很好。
但我想让它更容易,也许Lisp程序可以帮我。
 
因此,我的任务(文件dwg)已附加。如果有人感兴趣,我真的很高兴!
 
提前感谢
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 22:52:28 | 显示全部楼层
我写的Lisp程序只不过是在街角附近挑了一个普林,可惜我没有。只是一件需要重做的事情。正确对待钓鱼。
回复

使用道具 举报

24

主题

135

帖子

111

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
120
发表于 2022-7-5 22:55:21 | 显示全部楼层
好的,比格尔,谢谢你!
 
如果有人对我的任务感兴趣,我会非常高兴!
 
我真的需要那个代码。
 
非常感谢你
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 23:04:38 | 显示全部楼层
我刚刚写了这段代码,在屏幕上指定的区域绘制方框,试试看,然后告诉我。
 
  1. (defun c:test (/ _poly:box w h a b c d x y p1 p2 p3 w1 h1 lft-1 lft-2 p)
  2. ;;         Tharwat Al Shoufi        ;;
  3. (if
  4.    (and (setq
  5.           *width*
  6.            (cond ((getdist (strcat "\n Specify Width of box <"
  7.                                    (rtos (cond (*width*)
  8.                                                ((setq *width* 1.0))
  9.                                          )
  10.                                          2
  11.                                          2
  12.                                    )
  13.                                    ">: "
  14.                            )
  15.                   )
  16.                  )
  17.                  (*width*)
  18.            )
  19.         )
  20.         (setq
  21.           *height* (cond
  22.                      ((getdist (strcat "\n Specify Height of box <"
  23.                                        (rtos (cond (*height*)
  24.                                                    ((setq *height* 1.0))
  25.                                              )
  26.                                              2
  27.                                              2
  28.                                        )
  29.                                        ">: "
  30.                                )
  31.                       )
  32.                      )
  33.                      (*height*)
  34.                    )
  35.         )
  36.         (setq a (getpoint "\n Specify base point :"))
  37.         (setq b (getcorner "\n Specify opposite point :" a))
  38.    )
  39.     (progn
  40.       (defun _poly:box (p wid hgt / 1p 2p 3p)
  41.         (entmakex
  42.           (list '(0 . "LWPOLYLINE")
  43.                 '(100 . "AcDbEntity")
  44.                 '(100 . "AcDbPolyline")
  45.                 '(90 . 4)
  46.                 '(70 . 1)
  47.                 (cons 10 (setq 1p (polar p 0. wid)))
  48.                 (cons 10 (setq 2p (polar 1p (* pi 1.5) hgt)))
  49.                 (cons 10 (setq 3p (polar 2p pi wid)))
  50.                 (cons 10 p)
  51.           )
  52.         )
  53.         (princ)
  54.       )
  55.       (setq c  (list (car a) (cadr b))
  56.             d  (list (car b) (cadr b))
  57.             x  (mapcar 'car (list a b c d))
  58.             y  (mapcar 'cadr (list a b c d))
  59.             p1 (list (apply 'min x) (apply 'max y))
  60.             p2 (list (apply 'max x) (apply 'max y))
  61.             p3 (list (apply 'min x) (apply 'min y))
  62.             w  *width*
  63.             h  *height*
  64.       )
  65.       (if (and (> (setq w1 (distance p1 p2)) w)
  66.                (> (setq h1 (distance p1 p3)) h)
  67.           )
  68.         (progn
  69.           (setq p p1)
  70.           (repeat (fix (/ h1 h))
  71.             (repeat (fix (/ w1 w))
  72.               (_poly:box p1 w h)
  73.               (setq p1 (polar p1 0. w))
  74.             )
  75.             (if (< 0 (setq lft-1 (rem w1 w)))
  76.               (_poly:box p1 lft-1 h)
  77.             )
  78.             (setq p  (polar p (* pi 1.5) h)
  79.                   p1 p
  80.             )
  81.           )
  82.           (if (< 0 (setq lft-2 (rem h1 h)))
  83.             (progn
  84.               (repeat (fix (/ w1 w))
  85.                 (_poly:box p1 w lft-2)
  86.                 (setq p1 (polar p1 0. w)
  87.                 )
  88.               )
  89.               (_poly:box p1 lft-1 lft-2)
  90.             )
  91.           )
  92.         )
  93.       )
  94.     )
  95. )
  96. (princ)
  97. )
回复

使用道具 举报

24

主题

135

帖子

111

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
120
发表于 2022-7-5 23:05:13 | 显示全部楼层
谢谢Tharwat!!!
 
代码运行良好。
 
我需要设置原点(框启动时)。
但当周长形状不规则时,我无法将盒子插入我的整个身体。
 
长方形或正方形效果完美!
 
非常感谢
我对这个进球很满意
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 23:11:01 | 显示全部楼层
很高兴你喜欢这些代码
 
该例程仅创建矩形形状的长方体。
 
用方框开始设置原点是什么意思?
回复

使用道具 举报

24

主题

135

帖子

111

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
120
发表于 2022-7-5 23:20:10 | 显示全部楼层
你好
对不起,我英语不好。我无法清楚地解释我的疑虑。
如果你不介意的话,我附上其他文件来更好地解释。
 
提前感谢
e、 g.dwg
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 23:23:28 | 显示全部楼层
你好
 
对于不规则形状,它不适用于它们,这就是为什么我强制用户选择两个形成矩形的相对点。
但关于起源,这件事现在会变得很复杂,让我不知所措。我以后可能会努力解决这个问题。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-11 06:01 , Processed in 0.918159 second(s), 72 queries .

© 2020-2025 乐筑天下

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