找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1266|回复: 33

[求助] 求教,lisp有没有简单的方式表述我这个想法

[复制链接]

已领礼包: 28个

财富等级: 恭喜发财

发表于 2018-3-26 04:20:01 来自手机 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 1121443108qaz 于 2018-3-26 15:02 编辑

就是说已知一起点坐标,我想让它笔直(正交)向上画一条线,直到碰到第一个物体为止,交点就是线的终点。有什么思路吗?没有的话我感觉就要花大力气先求得那条直线的两点坐标,再算交点坐标,再连线。有没有这种函数呢? 最终要实现的效果如下
捕获.PNG
捕获.PNG

Drawing1.rar

5.23 KB, 下载次数: 1, 下载积分: D豆 -1 , 活跃度 1

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

已领礼包: 20个

财富等级: 恭喜发财

发表于 2018-3-26 12:26:13 | 显示全部楼层
1121443108qaz 发表于 2018-3-26 12:21
大神你这函数不错,但是跟我的需求不匹配啊,你看看楼下我想做的程序?

我只是给你的,你求出的交点找出最近的那个点,你用其他地方肯定不行。
贴图,拿图形说话,不要让你的思路去影响别人,你思路不一定最有效的。

点评

不好意思,我重新编辑了帖子,在一楼,总之就是要将包含与被包含的图形做成一个整体的多段线  详情 回复 发表于 2018-3-26 13:05
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 1 反对 0

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

发表于 2018-3-26 06:19:46 | 显示全部楼层
ssget f ssnamex求出交点..

点评

直接画一条无限长的的话会有无数个与线相交的,我只要第一个交点的,感觉这个复杂了  详情 回复 发表于 2018-3-26 07:06
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 28个

财富等级: 恭喜发财

 楼主| 发表于 2018-3-26 07:06:19 来自手机 | 显示全部楼层
q3_2006 发表于 2018-3-26 06:19
ssget f ssnamex求出交点..

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

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

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

使用道具 举报

已领礼包: 96个

财富等级: 招财进宝

发表于 2018-3-26 09:01:29 | 显示全部楼层
直接画一条无限长的的话会有无数个与线相交的。然后求算所有交点中与已知点距离最近点,然后修改直线的终点坐标即可。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2018-3-26 10:22:00 | 显示全部楼层
下面函数就求出点表PTS里面距离点START最近的点

  1. (defun _sort (start pts)
  2.   (setq pts   (mapcar '(lambda (x) (list (distance start x) x)) pts)
  3.         pts   (vl-sort pts '(lambda (x y) (< (car x)(car y))))
  4.         pts   (mapcar 'cadr pts)
  5.         first (car pts)
  6.   )
  7. )


点评

大神你这函数不错,但是跟我的需求不匹配啊,你看看楼下我想做的程序?  详情 回复 发表于 2018-3-26 12:21
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 28个

财富等级: 恭喜发财

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

使用道具 举报

已领礼包: 1857个

财富等级: 堆金积玉

发表于 2018-3-26 10:45:22 | 显示全部楼层
不知道这个功能具体用在什么地方,感觉手画还快些。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 28个

财富等级: 恭喜发财

 楼主| 发表于 2018-3-26 11:26:09 来自手机 | 显示全部楼层
我的程序要执行这样的功能,比如一个大矩形内有三个小矩形,这三个小矩形之间互相没有包含关系,我要做的其实就是一笔画,我想让这三个任意的小矩形向上画线。画完后,我再用bo命令生成边界。如果包住关系不复杂手动是可以的,如果里面包含很多东西,不止是矩形,就复杂了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 28个

财富等级: 恭喜发财

 楼主| 发表于 2018-3-26 11:37:22 来自手机 | 显示全部楼层
我现在设想是这样1.得到一个选择集(选择集内全是闭合多段线,且存在包含关系),2遍历选择集,每获得一多段线,取其最高点为起点3第三步的功能应该是通过这个起点坐标找到会与通过该坐标竖直线相交的线,再计算该点形成竖直线与这些线的交点坐标,取交点坐标中y值最小点做为终点连线。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 28个

财富等级: 恭喜发财

 楼主| 发表于 2018-3-26 11:47:13 来自手机 | 显示全部楼层
问题是怎么找到会与通过起点形成的竖直线相交的直线呢?目前我知道该直线须同时有如下特征,x最小值小于起点x值,x最大值大于起点x值,y最大值大于起点y值。不知道还有哪些特征我没注意到呢?但是光这样想想就觉得麻烦了,菜鸟操纵点线又不太熟,谁给个思路呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2018-3-26 12:02:05 | 显示全部楼层
1121443108qaz 发表于 2018-3-26 11:26
我的程序要执行这样的功能,比如一个大矩形内有三个小矩形,这三个小矩形之间互相没有包含关系,我要做的其 ...

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

使用道具 举报

已领礼包: 28个

财富等级: 恭喜发财

 楼主| 发表于 2018-3-26 12:02:07 来自手机 | 显示全部楼层
这个功能类似extend命令,只不过不知道目标线段
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 28个

财富等级: 恭喜发财

 楼主| 发表于 2018-3-26 12:16:33 来自手机 | 显示全部楼层
看起来我想让extend只往y轴正方向延伸,怎么做呢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 28个

财富等级: 恭喜发财

 楼主| 发表于 2018-3-26 12:21:32 来自手机 | 显示全部楼层
marting 发表于 2018-3-26 10:22
下面函数就求出点表PTS里面距离点START最近的点

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 23:15 , Processed in 0.399746 second(s), 63 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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