找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 907|回复: 9

[求助] [求助]:求教天正的 getlyr / mkstr1 两个函数用法

[复制链接]
发表于 2002-4-23 06:18:41 | 显示全部楼层 |阅读模式

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

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

×
在学习天正的填充制作程序(mkpat)过程中
发现有两个函数:getlyr / mkstr1
哪位能给解释一下用法。
先谢了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-4-23 06:22:24 | 显示全部楼层

Re: [求助]:求教天正的 getlyr / mkstr1 两个函数用法

最初由 darksun1480 发布
[B]在学习天正的填充制作程序(mkpat)过程中
发现有两个函数:getlyr / mkstr1
哪位能给解释一下用法。
先谢了! [/B]


天正的每个版本的函数名字都是不同的,你把包括这两个函数的前后几行代码贴到论坛吧。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2002-4-23 06:38:16 | 显示全部楼层

晓东,代码如下:

((wcmatch na "LINE,POINT")
(setq x1 (car p1)
      y1 (cadr p1)
      x1 (/ (- x1 (car p0)) x0)
      y1 (/ (- y1 (cadr p0)) y0)
      p2 (gcolor 11)
    )
(if p2
    (setq x2 (car p2)
          y2 (cadr p2)
          x2 (/ (- x2 (car p0)) x0)
          y2 (/ (- y2 (cadr p0)) y0)
        )
    (setq x2 x1  y2 y1 )
   )
(setq ll ((if tf12 getlyr mkstr1 )  rat  x1 y1  x2 y2 ) )
(write-line (strcat (rtosn0 (car ll)) "," (rtosn0 (cadr ll)) ","
                    (rtosn0 (caddr ll)) "," (rtosn0 (cadddr ll)) ","
                    (rtosn0 (nth 4 ll)) "," (rtosn0 (nth 5 ll) ) ","
                    (rtosn0 (last ll))
               ) fn
    )
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-4-23 06:50:48 | 显示全部楼层

Re: 晓东,代码如下:

最初由 darksun1480 发布
[B]((wcmatch na "LINE,POINT")
(setq x1 (car p1)
      y1 (cadr p1)
      x1 (/ (- x1 (car p0)) x0)
      y1 (/ (- y1 (cadr p0)) y0)
      p2 (gcolor 11)
    )
(if p2
    (setq x2 (car p2)
      ... [/B]


(setq ll ((if tf12 getlyr mkstr1 ) rat x1 y1 x2 y2 ) )

从代码看,这两个函数就是这个程序的核心部分,计算“直排图案”和“斜排图案”的函数。直排算法很好做,我以前也做过,斜排图案以前没有做出,后来不研究它了,也就搁下了。
自己画画图,对于斜排,找找 第一条线和下次重复(在一条直线上)出现的线的几何关系,分析下。

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

使用道具 举报

 楼主| 发表于 2002-4-23 10:52:58 | 显示全部楼层

谢谢晓东!

我找了很久的规律,始终不得其解。

天正的“直排图案”只可以作出简单填充。
“斜排图案”命令也并不能作出所有的填充图案。
而只能作出一种特例格式的填充,
----它的上一排图案,同下一排图案只能对中错开。

还有其他包含类似功能的程序吗?
哪位还有好的制作填充程序吗?
或者解题的思路?

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

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-4-23 11:23:52 | 显示全部楼层

Re: 谢谢晓东!

最初由 darksun1480 发布
[B]我找了很久的规律,始终不得其解。

天正的“直排图案”只可以作出简单填充。
“斜排图案”命令也并不能作出所有的填充图案。
而只能作出一种特例格式的填充,
----它的上一排图案,同下一排图案只能对中错... [/B]


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

使用道具 举报

 楼主| 发表于 2002-4-23 23:21:36 | 显示全部楼层

可是这种方式只能是“对中”交错。无法作出更复杂的填充图图案。

test:

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

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-4-24 15:50:03 | 显示全部楼层

Re: 可是这种方式只能是“对中”交错。无法作出更复杂的填充图图案。

最初由 darksun1480 发布
[B]test:

                               
登录/注册后可看大图
[/B]


天正的排图案,是把选择的图元作为一个整体,来“重复排”这个整体单元。排的方式包括“直排”、“斜排”,“斜排”是把上面的“整体单元”上下两层交错。


任何一个制作HATCH的程序都是这样做,你把你复杂的图案,找到一个重复出现的最小的单元,让天正或者其他制作HATCH的程序制作图案,只要你正确给出X,Y偏移等参数,是可以制作出来的。

不要把目光盯到很小的一部分上,放大些看,找到重复的规律部分。然后测量出这个单元的X,Y长度作为“重复”的参数,让这个“单元”重复出现,就制作出你要的HATCH了。

所有制作HATCH的程序,都是要用户去找“单元”,然后根据你输入的上下“单元”见的间距,然后程序计算这个单元的重复需要的X,Y,OFFSET等参数写到PAT文件里面。如果你不希望有间距,那么间距值就输入你“单元”的宽和高就可以。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2002-4-25 10:38:34 | 显示全部楼层

我开了个新贴,能帮我看一下吗?

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

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-4-25 10:46:05 | 显示全部楼层

Re: 我开了个新贴,能帮我看一下吗?

最初由 darksun1480 发布
[B]只有开新贴我才会贴图。
请教:回复时怎样贴图? [/B]


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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-5 10:09 , Processed in 0.463167 second(s), 49 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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