999999 发表于 2022-4-1 14:54:36

(求助)大神位求教一下关于正方形填充比例的插件

本帖最后由 999999 于 2022-4-1 15:13 编辑

求助一下各位大神位,是否能够帮小弟我解决一下关于正方形填充比例大小的插件
需求如下:
1.选择需要填充正方形的框(点选或框选):
2.请输入正方形的大小(带记忆功能):

各位大神,以下是之前求助本论坛的大神帮忙解决的,看大神们是否可以在此基础上帮忙升级一下

;方形填充600
(defun c:H6 ()
      (setvar "measurement" 1) ;设置公制单位
      (setvar "cmdecho" 0)      ; 关闭命令响应
      (setq oldlay (getvar "CLAYER"));把目前的图层记忆起来
      (setq oldhpname (getvar "HPNAME"))      ;把目前的填充记忆起来            
      (command "-layer" "m" "Y3""")
      (command "bhatch" "p" "u" "" "600" "Y" qw "")
      (command "HPSEPARATE" 1)
      (if (setq ss (ssget))
                (command "bhatch" "s" ss "" "") ;如果选择集不为空,则执行对象填充
                (progn;如果选择集为空,则执行点选命令
                        (prompt "\n拾取填充点:\n")
                        (command "bhatch" pause)
                        (while (> (getvar "CMDACTIVE") 0) (command PAUSE))
                ))
      (command "Chprop" ss "" "layer" "Y1" "") ;更改对象特性为指定的layer1图层
      (setvar "HPNAME" oldhpname);把刚刚记忆起来的填充变成目前的填充
      (setvar "clayer" oldlay);把刚刚记忆起来的图层变成目前的图层
      (princ)
)


xyp1964 发表于 2022-4-1 14:54:37

;; 方形填充600
(defun c:tt ()
(or dd (setq dd 600.))
(setq dd (Udist 7 "" "正方形<输入或鼠标直接量取>" dd nil))
(setvar "measurement" 1)
(setvar "cmdecho" 0)
(setq oldlay (getvar "CLAYER"))
(setq oldhpname (getvar "HPNAME"))
(command "-layer" "m" "Y1" "")
(command "bhatch" "p" "u" "" dd "Y" "") ;qw
(command "HPSEPARATE" 1)
(if (setq ss (ssget))
    (command "bhatch" "s" ss "" "")
    (progn
      (princ "\n拾取填充点: ")
      (command "bhatch")
      (while (> (getvar "CMDACTIVE") 0) (command PAUSE))
    )
)
(setvar "HPNAME" oldhpname)
(setvar "clayer" oldlay)
(princ)
)

999999 发表于 2022-4-1 17:44:12

xyp1964 发表于 2022-4-1 14:54
;; 方形填充600
(defun c:tt ()
(or dd (setq dd 600.))


谢谢院长大人出手,不同凡响:lol:lol:lol
页: [1]
查看完整版本: (求助)大神位求教一下关于正方形填充比例的插件