找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1182|回复: 7

[LISP函数]:如何实现在用户指定的空间(二维)插入间隔相等的线?

[复制链接]
发表于 2002-1-31 11:44:52 | 显示全部楼层 |阅读模式

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

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

×
如何实现在用户指定的空间(二维)插入多条间隔相等的斜率由用户指定的线?
  要求:用鼠标输入空间距离。键盘输入斜率或用鼠标指定与某一条斜线相同。
  
   用键盘或鼠标输入线条间隔距离。插入多条间隔相等的斜线:6
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2002-1-31 11:57:46 | 显示全部楼层

什么是“指定的空间”?您要打剖面线?

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

使用道具 举报

发表于 2002-1-31 18:44:46 | 显示全部楼层

Re: [LISP函数]:如何实现在用户指定的空间(二维)插入间隔相等的线?

最初由 saintdog 发布
[B]如何实现在用户指定的空间(二维)插入多条间隔相等的斜率由用户指定的线?
  要求:用鼠标输入空间距离。键盘输入斜率或用鼠标指定与某一条斜线相同。
  
   用键盘或鼠标输入线条间隔距离。插入多条间隔相等的?.. [/B]



你说的指定的空间是否是一个指定的“范围”,如是“范围”,我有一个很笨的方法(反正我用的就是这种笨办法,很可靠的),当然了,编程你就自己去实现吧:

1  根据Y=AX+B的平面直线原则,输入项就是A
2  关键的是,你得按一条规则来得到B,否则,从那里开始画?。
3  计算该范围,得一矩形范围box。
4  在该BOX内画线,每一条线的端点就在BOX上。
5  把端点改成与范围边界相交的交点。

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

使用道具 举报

发表于 2002-2-1 15:45:26 | 显示全部楼层

saintdog先生注意:

我收到了您的E-Mail,但无法回复,系统提示:


您好:

    抱歉的通知您,您的邮件无法投递到目的地址,可能的原因是:收信人地址不正确、不存在、收信人邮箱空间已满、收
信人对您的电子邮件地址设置了拒收...
    请确认后再次尝试发送,如果仍然不能解决问题,请与我们的管理员联系:postmaster@163.com,并请一定附上退信。
    谢谢!

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

使用道具 举报

发表于 2002-2-2 01:20:10 | 显示全部楼层
我有个想法,将等距离线(两条)做成填充图形(bhatch),填充一定区域时设定填充比例,可解决对不同间距的要求,且不受填充区域外形的影响。需要时,可以炸开。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-2-2 01:22:11 | 显示全部楼层
我有个想法,将等距离线(两条)做成填充图形(bhatch),填充一定区域时设定填充比例,可解决对不同间距的
要求。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-2-2 09:10:56 | 显示全部楼层

saintdog先生请试用...

(Defun C:LL (/ LPt)
       (SetIErr)
       (Defun LPt () (GetVar "lastpoint"))
       (SetQ lp1 (GetPoint "\n左下角点: ")
             lp2 (GetCorner lp1 "\n右上角点: ")
             llb (GetDist "\n双线间距: ")
             lln (GetInt "\n双线数量: ")
             lan (GetAngle "\n双线角度: ")
             lpi (* 0.5 Pi)
       )
       (SetQ lpx (Car lp1)
             lpy (Cadr lp1)
       )
       (SetQ lla (- (Car lp2) lpx)
             llc (/ (- lla (* llb (1+ lln))) lln) ;c=(a-b*(n+1))/n
             lly (- (Cadr lp2)(Cadr lp1))
             lts 1
       )
       (Repeat lln
               (Command "line" (List lpx lpy) (Polar (LPt) lan lly) ""
                        "line" (List (+ lpx llb) lpy) (Polar (LPt) lan lly) ""
               )
               (Command "text" "j" "m"
                               (List (+ lpx llb (* 0.5 llc)) (+ 2 lpy))
                               6 "" (IToA lts)
               )
               (SetQ lpx (+ lpx llb llc)
                     lts (1+ lts)
               )
       )
       (EntDel (EntLast))
       (ReErr) (PrinC)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-2-3 14:46:20 | 显示全部楼层
最初由 梦断江南 发布
[B]我有个想法,将等距离线(两条)做成填充图形(bhatch),填充一定区域时设定填充比例,可解决对不同间距的要求,且不受填充区域外形的影响。需要时,可以炸开。 [/B]


将以下两行加入acad.pat中,填充时选择line-1
比例,角度任你调节:-)
默认比例为1时,炸开后间距为1.000。慢慢享用吧。

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-5 03:13 , Processed in 0.602974 second(s), 46 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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