找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1976|回复: 16

[LISP函数]:请问如何调用渐变色填充图案。

[复制链接]
发表于 2007-6-24 21:10:53 | 显示全部楼层 |阅读模式

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

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

×
请问如何调用渐变色进行填充。选项如何设定,如单色,双色,图案方式等等,有关图案填充容易lisp实现,但是渐变色怎么样lisp,请教。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2007-6-27 10:15:22 | 显示全部楼层
这个问题一直没找到用lisp实现的方案
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-6-27 11:48:46 | 显示全部楼层
给个思路吧!可以先用实体填充,
然后,再修改其图元群码
使其成为渐变的图元群码!
450 表示实体图案填充或渐变色;如果是实体图案填充,则剩余代码的值将被忽略,但必须存在。可选;如果代码 450 在文件中,则下列代码必须在文件中:451、452、453、460、461、462 和 470。如果代码 450 不在文件中,则下列代码必须不在文件中:451、452、453、460、461、462 和 470
0 = 实体图案填充
1 = 渐变色
  
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-6-27 20:56:26 | 显示全部楼层
有这么高级?楼兄试验过吗,可否抓个图上来瞧瞧
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-6-28 09:48:16 | 显示全部楼层
请版主测试这段程序,我自己写的,一运行,第二步按"ENTER"后CAD就致命错误![/COLOR]
[php]
;;;把填充改成渐变色
(defun c:tt ()
  (setq ss (ssget))
  (command "HATCH" "s" ss "")
  (princ "\nPress ENTER to continue:")
  (while (/= (car (grread)) 2))
  (setq data (entget (entlast)))
  (setq data (subst (cons 450 1) (assoc 450 data) data))
  (entmod data)
)
[/php]
补上直接选中填充后,将填充改成渐变
[php]
(defun repl_value (ss code val / slen i na data)
  (setq slen (- (sslength ss) 1))
  (setq i 0)
  (while (<= i slen)
    (setq na (ssname ss i))
    (setq data (entget na))
    (setq value (cdr (assoc code data)))
    (setq data (subst (cons code val) (assoc code data) data))
    (entmod data)
    (setq i (+ i 1))
  )
)
(defun c:tt()
(setq ss (ssget))
(repl_value ss 450 1)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-6-28 19:41:22 | 显示全部楼层
经测试,第一段程序没出现致命错误.
两段程序都能正确运行,但是都没有渐变的效果.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-6-29 08:18:40 | 显示全部楼层
经测试,第一段程序出现致命错误.CAD异常退出
第二段程序正确,能将实体填充改为渐变色,且为蓝白色
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-6-29 08:33:49 | 显示全部楼层
最初由 hhc_1 发布
[B]经测试,第一段程序出现致命错误.CAD异常退出
第二段程序正确,能将实体填充改为渐变色,且为蓝白色 [/B]

对啊!
我测试的结果就跟楼上的一样!其实代码这样子写好像没错!呵呵
不懂哪里出错了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2007-7-3 08:45:04 | 显示全部楼层
谢谢各位楼主的热心回复,本人在2007中试了一下,没有反应,可能是版本问题,渐变色填充有9种供选择的方式,不知能否在lisp里选择。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-7-3 12:52:33 | 显示全部楼层
楼主,教你一个方法!
[php]
(defun c:tt()
(entget (car (entsel)))
)
[/php]
你可以把9种方式每种都取得图元群码,然后去对比.
这时你就可以发现,其实,
组码470 "字符串(默认值 = 线性) 跟9种方式都有对应的值!
应该没有别的问题了吧!.给你这个方法,以后其它的你可以举一反三!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-7-3 13:31:04 | 显示全部楼层
X-Gradient = 填充转为渐变填充---by lxx.2007.6.30
格式: (X-Gradient 实体名 颜色1 颜色2 填充类型 填充角度)
参数:     实体名=填充实体
       1. 颜色1,颜色2 支持格式:
    1.1  aci索引色,组码62 (0~255)
    1.2. rgb格式如'(0 0 255),
    1.3 amc 色彩,如 -1023475712
        1.4  cad真彩格式,组码420. 如:16711680
      2. 填充类型,字符串格式,包括:
        LINEAR, CYLINDER, INVCYLINDER, SPHERICAL HEMISPHERICAL, CURVED, INVSPHERICAL,
        INVHEMISPHERICAL, INVCURVED.
      3. 填充角度,实数.(0~PI 弧度格式)

可到这里下载:
http://dreamskylxx.ys168.com/
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2007-7-10 15:41:29 | 显示全部楼层
谢谢搂主提供的各类方法,我将一一试试,13楼主提供的附件本人现金有限,不知能否发到我的信箱yz_hyg@sohu.com,谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-26 15:29 , Processed in 0.429035 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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