找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 545|回复: 5

[求助]:求关于填充的LSP!

[复制链接]
发表于 2004-11-23 21:19:33 | 显示全部楼层 |阅读模式

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

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

×
也许我的要求对高手来说不难,但我确实不会LSP,无法自己编,哪位兄弟有心帮我编一下,也可以教我怎么编,我自己去编,谢谢~~~
条件:图中有多条BO线
目标:对每条BO线作填充,使每个填充独立
操作:一次性选中图中所有BO线,一次性填充后,得到的结果不是一个填充整体,而是N个填充个体(注:希望系统生成的填充在当前层,而不是原BO线层---或者能添加个选项---)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 593个

财富等级: 财运亨通

发表于 2004-11-23 23:59:55 | 显示全部楼层
[php]
;|
HPNAME 初始值:“ANSI31” 设置默认填充图案,其名称最多可包含 34 个字符,其中不能有空格。
HPSCALE 初始值: 1.0000 指定填充图案的比例因子,其值不能为零。
HPANG 初始值: 0 指定填充图案的角度
|;
(defun c:test (/ ss sl e)
  (if (setq ss (ssget '((-4 . "<or")
                        (0 . "circle")
                        (-4 . "<and")
                        (0 . "*Polyline,spline")
                        (-4 . "&=")
                        (70 . 1)
                        (-4 . "and>")
                        (-4 . "or>")
                       )
               )
      )
    (progn
      (setq sl (sslength ss))
      (while (> sl 0)
        (setq e (ssname ss (setq sl (1- sl))))
        (vl-cmdf ".hatch" "" "" "" e "")
      )
    )
  )
  (princ)
)[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-11-24 14:52:42 | 显示全部楼层
谢谢老大,经过测试,非常满意,但有一个小小的疑问
我将它改成实体的了(vl-cmdf ".hatch" "solid" e "") 好使,但是多余的""不删(vl-cmdf ".hatch" "solid" "" "" e "") 却出错?
此外,我想是否可以弹出对话框,让用户在对话框中选择呢?那样更方便些,请eachy兄弟指点!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2005-2-18 13:26:29 | 显示全部楼层
除了eachy  斑竹的方法,如何将圆(CIRCLE)包含进去?
[php]
(defun c:test ()
  (setq        htname (ustr 1 "\n图案名称 : " htname nil)
        n      -1
  )
  (if (setq
        SS (ssget
             '((0 . "CIRCLE,ELLIPSE,REGION,*POLYLINE,SPLINE,") (70 . 1))
           )
      )
    (progn
      (if (= (strcase htname) "SOLID")
        (progn
          (while (setq e (ssname ss (setq n (1+ n))))
            (vl-cmdf "hatch" "solid" e "")
          )
        )
        (progn
          (while (setq e (ssname ss (setq n (1+ n))))
            (vl-cmdf "hatch" htname "" "" e "")
          )
        )
      )
    )
  )
  (princ)
)
(defun ustr (bit msg def spflag / inp nval)
   (if (and def (/= def ""))
       (setq msg (strcat "\n" msg "<" def ">:")
             inp (getstring msg spflag)
             inp (if (= inp "") def inp)
       )
       (progn
         (setq msg (strcat "\n" msg ": "))
         (if (= bit 1)
             (while (= "" (setq inp (getstring msg spflag))))
             (setq inp (getstring msg spflag))
         )))
   (if inp inp def)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-25 03:17 , Processed in 0.263579 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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