明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4640|回复: 72

[讨论] 布满填充

[复制链接]
发表于 2021-9-18 09:38 | 显示全部楼层 |阅读模式
20明经币
本帖最后由 sunny_8848 于 2021-9-22 15:45 编辑

论坛求助得到一个布满填充的程序,适用于矩形框,现在想改成适合单根直线,单个圆弧请有心人帮忙,看能解决不










附件: 您需要 登录 才可以下载或查看,没有账号?注册

最佳答案

查看完整内容

改好了 ,請測試試看 修正版 tt6.lsp 執行指令: tt 最新修正版 tt8.lsp 在 37 樓
发表于 2021-9-18 09:38 | 显示全部楼层
本帖最后由 lee50310 于 2021-9-26 22:44 编辑

改好了 ,請測試試看  
修正版 tt6.lsp
執行指令: tt


最新修正版 tt8.lsp  在 37 樓


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复

使用道具 举报

 楼主| 发表于 2021-9-18 14:13 | 显示全部楼层
自己顶一下
回复

使用道具 举报

 楼主| 发表于 2021-9-19 08:56 | 显示全部楼层
自己再顶一次,希望能有人帮忙解决
回复

使用道具 举报

发表于 2021-9-19 20:39 | 显示全部楼层
看不懂。。。。。
回复

使用道具 举报

 楼主| 发表于 2021-9-21 09:55 | 显示全部楼层
修改下要求,改成能适合一根直线、半圆弧能布满就行
回复

使用道具 举报

 楼主| 发表于 2021-9-22 08:20 | 显示全部楼层
继续求助,改成能适合(矩形框改成)一根直线、半圆弧能分别布满就行
回复

使用道具 举报

发表于 2021-9-22 11:09 | 显示全部楼层
(defun c:tt ( /  plst  p1 p2  pt1 pt2 pt3 pt4 pt5 rec ss dd ang dst nm kd jz s)             (command ".undo" "be")
   (setq kd (getreal (strcat "\n小矩形宽度:")))
   (setq jz (getreal (strcat "\n阵列距离近似值:")))
  (if (and (setq p1 (getpoint "\n基点<退出>: "))
           (setq p2 (getcorner p1 "\n对角点<退出>: "))
      (setvar "osmode" 0)
      )
    (progn
      (command "rectang" p1 p2 )
      (setq s (entlast)
            ss(entget s))
      (foreach x ss (if (=(car x)10)(setq plst(cons (cdr x)plst))))
      (setq plst(reverse plst))
      (setq pt1 (nth 0 plst)
            pt2 (nth 1 plst)
            pt3 (nth 2 plst)
            pt4 (nth 3 plst))  ))
  (setq  dd (- (distance pt1 pt2) kd)
         nm (/ dd (+ kd jz) 1.)
         nm (atoi (rtos nm 2 0))
         dst (/ dd nm 1.)
         ang (angle pt1 pt2)
                )
  (setq pt5 (polar pt4 ang kd))
   (command ".rectang"  "_non" pt1 "_non" pt5)
   (setq rec (entlast))
(command ".chprop" rec ""  "c" "1" "")
(command "_.COPY" rec "" "M" pt1)
(repeat nm
  (command (setq pt1 (polar pt1 ang dst)))
)
(command "")
  (princ "\n**小矩形布完成***")
(entdel s)
      (setvar "osmode" 4271)
     (command ".undo" "e")
  (princ)
  )


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复

使用道具 举报

发表于 2021-9-22 11:35 | 显示全部楼层
说再多也比不上一个示意图,都不知道你想干嘛
回复

使用道具 举报

发表于 2021-9-22 14:47 | 显示全部楼层
本帖最后由 alexmai 于 2021-9-22 14:49 编辑

把需要等分的物体组为 块(基点为中下)

;;;me 路径跟随-选线-选块-定义距离
(DEFUN C:Mm()
(Command "measure" pause "B" (cdr (assoc 2 (entget (car (entsel))))) "Y")
)

;;;dv 等分-选线-选块
(DEFUN C:dv()
(Command "DIVIDE" pause "B" (cdr (assoc 2 (entget (car (entsel))))) "Y")
)
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-19 16:40 , Processed in 2.523990 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表