找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2907|回复: 30

[教学]:斜排图案的制作。

[复制链接]
发表于 2002-5-14 08:28:50 | 显示全部楼层 |阅读模式

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

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

×
制作直排图案的软件很多,所以制作哪类直排图案可以makepat.arx等来完成。但是有一些图案是用这些软件是制作不出来的,如果要制作斜排图案,只有深入了解hatch的编制方法,再配合本人编制的一个小程序,制作起来就得心顺手。
每一个图案定义的第一行是标题行,标题行由名称和描述组成,以后的每一行描述图案
中的一个线族。
*图案名[,说明文字]
图案名是使用H AT C H或B H AT C H命令时提示的名称,说明文字是可选的,用于在* . PAT
文件中区别不同的图案。说明文字在使用H AT C H或B H AT C H命令时不会显示出来。图案名称
前的“*”是开始图案定义的标记。
描述线族的格式如下:
线斜角,原点X值,原点Y值,X偏移值,Y偏移值[,划线长,空移长.. ]
方括号“ [ ] ”表示指定的可选的短划线/空移长度,用于构造虚线的线族。注意,位于
“;”之后的内容只是说明文字。在所有的定义中,线斜角、原点坐标和偏移值是必不可少的
(即使值为0 )。

以下这个附件就是编制pat文件的详细说明,请认真阅读。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
 楼主| 发表于 2002-5-14 08:29:48 | 显示全部楼层
制作程序下载,感谢eachy的热心调试。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2002-5-14 08:31:22 | 显示全部楼层
可以参照下图:其实X轴的偏移量就是线与线之间的错开值,y轴的偏移量就是平行线族之间的间距,理解这点就好办。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2002-5-14 08:32:19 | 显示全部楼层
从下面的分析可以看出(有颜色的为线族构造线),图案制作的条件是有限制的,可以有很多线族,但是一个线族一定是在平行的构造线上。(线族不分顺序)
第三线族:
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-5-14 09:40:14 | 显示全部楼层
最初由 alim 发布
[B]好!现在的关键就是找出填充图案的规律来。 [/B]


精华文章,谢谢!

大家看到图中好看的HATCH,可以用“晓东工具箱”的HATCH提取程序,可以提出到一个PAT文件中,大家可以对照图来分析PAT,这样会对理解HATCH的制作有帮助的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-16 13:40:27 | 显示全部楼层

;;

szkevin  :
真是高手,小程序解决大问题!
没想到几行代码就将一直困扰我的问题解决了!
万分感谢!

用了程序,有一些想法,不知可否:

是否可以使程序运行的自动化程度高一些,
因为一般设计填充,都会设计一个dwg的图样,
所以可以用在图上用选取的方式:选择线段,
然后,得到线段包含的数据,如:

1.
(setq pt1 (getpoint "\n输入线族起点:"))
(setq ang (getangle "\n线族输入角度:" pt1))
(setq pt2 (getpoint "\n输入线族长度:" pt1))

这三句是不是可以改为从一根线段的数据上直接读出,
起点可以选线段的第一个端点;
角度,长度直接从属性中读取.

2.
此时将第二个端点输入,等待用户输入空移长度

(setq pt3 (getpoint "\n输入线族空移长度:" pt2))


3.
选择线族相邻的另一根线,由程序自动计算出偏移量和间距,
复杂了一点,但算起来可能并不难,一个不太复杂的解析几何问题.
这样程序虽麻烦一点,但使用起来可能要方便一些.

(setq distx (getdist "\n输入线族x轴偏移量:"))
(setq disty (getdist "\n输入线族y轴间距:"))

4.
另外,图案名称和说明是否可以用对话框输入,
因为命令行输入,名称和说明内不能输入空格.

5.
(setq num (getint "\n输入线族数量:"))
是否可以用一个选择集来代替,
程序开始时就将一个 "单元" 内的所有线段读入,
然后,逐个操作,为了便于标识,
每处理完一个可以将其换为其他颜色.

另外:
程序还可以让用户选择
是否将数据直接写到acad.pat文件中
最后可以象天正一样,帮助用户生成一个预览图.

是否可以这样:

先将acad.pat备份,如copy为acad.bak

把生成的pat数据先写入一个表,

将生成数据生成一个单独的pat文件,
同时再将生成数据写到acad.pat,

画个矩形,填充,如果比例合适,slide做幻灯;
否则重新填充,到满意为之.
(这里有个技巧,必须先得到相对准确的填充比例,
我在程序pat2sld.lsp中已基本解决了这个问题,
如果需要我可以提供给你)

如果选择将生成pat数据要加入acad.pat文件,
用slidelib.exe将幻灯也一并加入acad.sld;
将单独生成的pat文件删除,即可.

如果选择单独生成pat文件,
将备份的acad.bak恢复为acad.pat,即可.


希望这个程序能越来越完善,
大家可以从中多多受益.
以上想法并不成熟,
于你的程序有用与否不得而知,
请勿见笑.

再次感谢你提供了这么好的一个程序.

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

使用道具 举报

 楼主| 发表于 2002-5-18 23:14:47 | 显示全部楼层

Re: ;;

最初由 darksun1480 发布
szkevin  :
真是高手,小程序解决大问题!
没想到几行代码就将一直困扰我的问题解决了!
万分感谢!

用了程序,有一些想法,不知可否:

是否可以使程序运行的自动化程度高一些,
因为一般设计填充,都会设计一个dwg...


你的想法不错,可是有一点线的起点和终点无法判别。能解决这个问题,按你的构想做出来就不难,以你的水平就可以轻松地做出来,论坛本来就是需要大家的共同参与。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-19 00:51:51 | 显示全部楼层
我只提一点,生成图案时也要注意各个图案间的内在比例。
还有如何做 圆弧?圆?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-22 12:37:10 | 显示全部楼层
szkevin :你好!
    我想,"线的起点和终点判别"可否这样:
    假定   (X1,Y1) ; (X2,Y2) ;  居下 居左的 为起点.
               如果: Y1>Y2      起点(X1,Y1) ,终点(X2,Y2)
                         Y1=Y2      如果  X1<X2   起点(X1,Y1) ,终点(X2,Y2)
                                                    X2<X1   起点(X2,Y2) ,终点(X1,Y1)

其实我的lisp水平很差,只会一些关于文件和字符操作的函数,
象画线等还只会用command函数,不会直接用数据来画,
选择集,表处理懂得也很少,
我会试着调一下程序,但不知是否有结果.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-24 03:38 , Processed in 0.479769 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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