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)}')
两点距离:在直角坐标系,计算任意两点之间的距离
未经允许不得转载:创想未来 » 两点距离:在直角坐标系,计算任意两点之间的距离

创想未来
评论前必须登录!
注册