明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 769|回复: 2

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

[复制链接]
发表于 2022-4-1 14:54:36 | 显示全部楼层 |阅读模式
6明经币
本帖最后由 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)
)


最佳答案

查看完整内容

;; 方形填充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 "" "") ...
发表于 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)
)
回复

使用道具 举报

 楼主| 发表于 2022-4-1 17:44:12 | 显示全部楼层
xyp1964 发表于 2022-4-1 14:54
;; 方形填充600
(defun c:tt ()
  (or dd (setq dd 600.))

谢谢院长大人出手,不同凡响
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-14 14:45 , Processed in 0.385905 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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