欢迎光临
我们一直在努力

两点距离:在直角坐标系,计算任意两点之间的距离

import math

class Point:
    """
    表示一个二维平面上的点。

    Attributes:
        x: 点的x坐标。
        y: 点的y坐标。
    """
    def __init__(self, x, y):
        self.x = x
        self.y = y

class Line:
    """
    表示连接两个点的线段。

    Attributes:
        x: 线段在x轴上的长度。
        y: 线段在y轴上的长度。
    """
    def __init__(self, p1, p2):
        """
        初始化线段,计算两点之间的横纵坐标差值。

        Args:
            p1: 第一个点,类型为Point。
            p2: 第二个点,类型为Point。
        """
        self.x = p1.x - p2.x
        self.y = p1.y - p2.y

    def get_len(self):
        """
        计算并返回线段的长度。

        Returns:
            线段的长度,类型为float。
        """
        return math.sqrt(self.x * self.x + self.y * self.y)

def get_len(p1, p2):
    """
    计算两个点之间的距离。

    Args:
        p1: 第一个点的坐标,类型为列表,包含x和y坐标。
        p2: 第二个点的坐标,类型为列表,包含x和y坐标。

    Returns:
        两点之间的距离,类型为float。
    """
    # 创建Point对象来表示传入的坐标点
    p1 = Point(p1[0], p1[1])
    p2 = Point(p2[0], p2[1])
    # 创建Line对象并调用其方法计算两点间距离
    return Line(p1, p2).get_len()

if __name__ == '__main__':
    # 定义两个点的坐标
    p1 = [-1, -1]
    p2 = [2, 3]
    # 输出两点间的距离
    print(f'点{p1}和点{p2}之间的距离是:{get_len(p1,p2)}')
赞(0) 打赏
未经允许不得转载:创想未来 » 两点距离:在直角坐标系,计算任意两点之间的距离

评论 抢沙发

评论前必须登录!

 

更好的Python学习

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

联系我们联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册