乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 61|回复: 4

如何获得两条平行直线之间的距离?

[复制链接]

8

主题

12

帖子

1

银币

初来乍到

Rank: 1

铜币
44
发表于 2012-2-12 17:05:00 | 显示全部楼层 |阅读模式
大家好,请问如何获得两条直线之间的距离,同时排出这两条直线重合时的情况。请大家给点思路和代码.
回复

使用道具 举报

4

主题

86

帖子

7

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
102
发表于 2012-2-13 08:47:00 | 显示全部楼层
求两条直线之间的距离,转化为一条直线L1上取一点A(可为起点),直线L2上取两点C(L2起点)、D(终点),两条直线L1、L2重合时可利用AC、AD的叉乘为0即可(AC x AD=0),不重合共线时,求两条直线之间的距离方法就比较多了,
方法1:可先求出三角形的面积SACD,可利用叉乘计算,再利用三角形底CD的长度计算
方法2:利用方法GetClosestPointTo求出A在CD上的垂足,再求出距离
。。。
当然还有很多方法,以上只是我的看法
回复

使用道具 举报

6

主题

26

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2012-2-13 14:51:00 | 显示全部楼层
直线本身有角度,可以从其中一条直线中取出第一或第二点,以此点与另一条直线的第一或第二之间线的长度和角度,它的相对角度的正玄与长度之积就是两平行线的距离,为0时,就是两条在同一直线上
回复

使用道具 举报

11

主题

23

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
67
发表于 2012-2-14 09:52:00 | 显示全部楼层
///  
        /// 直线距离
        ///  
        /// 直线1
        /// 直线2
        /// 两线间距离
        public static double Distance(Line line1, Line line2)
        {
            double d = line1.GetClosestPointTo(line2.StartPoint, true).DistanceTo(line2.StartPoint);
            return d;
        }
回复

使用道具 举报

1

主题

10

帖子

1

银币

初来乍到

Rank: 1

铜币
14
发表于 2012-7-20 16:34:00 | 显示全部楼层
可以这样 CAD提供了点到直线距离的方法,你可以使用原点(0,0)分别得到原点到这两条直线的距离,然后相减取绝对值
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-6-29 19:11 , Processed in 0.812587 second(s), 63 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表