明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1610|回复: 9

求两点的距离?(不是直线)

[复制链接]
发表于 2005-3-4 20:44 | 显示全部楼层 |阅读模式
线为多义线,有分叉,



求:点A沿图上的线的路由到B之间的距离?


难点是:如何知道路由,





本帖子中包含更多资源

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

x
 楼主| 发表于 2005-3-5 12:25 | 显示全部楼层
你们没有遇到这种问题吗?还有一种情况是,两点之间的路由有多种,把各种路由的距离都求出来。我感觉这种情况在做工程设计会经常用到求两点之间的距离的。
发表于 2005-3-5 12:33 | 显示全部楼层
楼主的文件我打开看过了,这种问题我是碰不到的,对我来说很难,大家提点思路也好啊。。。。
 楼主| 发表于 2005-3-5 15:12 | 显示全部楼层
我的思路是


找到这2个点所在的线,再找到有2个交点的线,放在一个集合,进行多次筛选,就可以得到路由的线了,再找出这些线的坐标,确定这2个点的线的点的坐标,算出这2点的距离,有多种路由的,算了各个路由的距离,选择最近的或者最合理的路由。不知道这个思路是不是最好的。
发表于 2005-3-5 16:58 | 显示全部楼层
Map 3D 2005 中有此功能(拓扑分析),可以指定不同的约束条件。
 楼主| 发表于 2005-3-5 21:47 | 显示全部楼层
楼上的 我不理解你的意思.
发表于 2005-4-6 22:51 | 显示全部楼层
Ea发表于2005-3-5 16:58:00Map 3D 2005 中有此功能(拓扑分析),可以指定不同的约束条件。

Ea请问:如何将Map 3D 2005 中的"连续距离"等功能提出来加载到低版本中应用,如MAP 5.
发表于 2005-4-7 19:06 | 显示全部楼层
找到过点A的线,求另一个端点,


循环重复下去,(难弄)。


直到另一个端点为点B为止。


如果走入岐路,则会直到连线的尽头为止。


(ssget PT1 '((0 . "LINE"))) 通过点PT1的直线


 
 楼主| 发表于 2005-4-8 06:51 | 显示全部楼层
如果是多段线,而且交点不在顶点上,找出所有的点是方便的,要找出2个点之间有每有线这个我感觉比较麻烦,如果能找出来后面的循环还稍微好解决点,


我原来有个思路就是通过交点和顶点,打断所有的线,这样点和线的关系就有了,


还有就是把交点都改为多段线的顶点.这样点和线的关系就有了,
发表于 2005-4-9 18:56 | 显示全部楼层
如果只是单纯求路由的话,很简单只要求的所有顶点的最外形BOX


让BOX再扩大一个数值..让A连接靠BOX的最近点.(垂直).B连接靠BOX


的最近点(垂直),随便在靠BOX的边比较近的内部一点(应该不难求吧)


然后做BPOLY形成一个封闭的复线....其中A到B的一段就是路由(


不难把他取出来),,但是这样就求出了一段路由..取得路由的边数并记录下这个路由


然后炸开他.循环删除每一条并做BPOLY如果成功将又是一条路由


..再循环只到删除最后生成的路由不能在构成BPOLY为止..说明已经没有路由了


然后..把记录下来的路有进行比较长短.......
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-2 22:22 , Processed in 4.500196 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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