找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1416|回复: 4

[LISP函数]:修改Hatch比例

[复制链接]

已领礼包: 593个

财富等级: 财运亨通

发表于 2003-6-21 18:56:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×

  1. ;;
  2. ;;今天在一张规划图(别人绘制的)上画图,图中的填充非常密实,搞的PIII933+256M+TNT2(36M)跑起来都吃力,
  3. ;;系统资源被占用绝大部分,临时写了个程序修改填充比例,For 2000+
  4. ;;非solid填充在非常密的情况下,尽量用单选的方式
  5. ;;
  6. (defun c:hatscl        (/ kw tf en scl ss e oldscl)
  7.   ;;(ea:begin '("osmode"))
  8.   (initget "1 2")
  9.   (setq kw (getkword "\n[1 - 匹配 / 2 - 变比]<2>: "))
  10.   (if (or (not kw) (= kw ""))
  11.     (setq kw "2")
  12.   )
  13.   (if (= kw "1")
  14.     (progn
  15.       (setq tf t)
  16.       (while tf
  17.         (setq en (entsel "\n选择填充: "))
  18.         (if en
  19.           (cond
  20.             ((=        (vla-get-objectname (vlax-ename->vla-object (car en)))
  21.                 "AcDbHatch"
  22.              )
  23.              (setq tf nil)
  24.             )
  25.             (t (princ "\n选择为非填充实体! 重新选择..."))
  26.           )
  27.         )
  28.       )
  29.       (setq scl        (vla-get-patternscale
  30.                   (vlax-ename->vla-object (car en))
  31.                 )
  32.       )
  33.     )
  34.     (setq scl (getreal "\n缩放比例: "))
  35.   )
  36.   (princ "\n选择范围....")
  37.   (setq ss (ssget '((0 . "hatch"))))
  38.   (if ss
  39.     (progn
  40.       (setq n 0)
  41.       (repeat (sslength ss)
  42.         (setq e (vlax-ename->vla-object (ssname ss n)))
  43.         (setq oldscl (vla-get-patternscale e))
  44.         (vla-put-patternscale
  45.           e
  46.           (if (= kw "1")
  47.             scl
  48.             (* scl oldscl)
  49.           )
  50.         )
  51.         (setq n (1+ n))
  52.       )
  53.     )
  54.   )
  55. ;(ea:end)
  56.   (princ)
  57. )

评分

参与人数 1D豆 +2 收起 理由
ScmTools + 2 很给力!经验

查看全部评分

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-6-11 21:17:03 | 显示全部楼层
恩,单选确实是好办法,如果不能单选,需要区域选择或者多选的时候如何处理呢?请略为详尽说明!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-10-13 10:53:32 | 显示全部楼层
郁闷,我自己改不来
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

 楼主| 发表于 2005-10-13 18:35:48 | 显示全部楼层
改完了刷一下
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1632个

财富等级: 堆金积玉

发表于 2013-5-1 14:47:25 | 显示全部楼层
很好的程序
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-17 21:35 , Processed in 0.203930 second(s), 43 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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