首页 > 编程知识 正文

直线方程两点的中点,两点的直线方程的斜率

时间:2023-05-04 22:49:32 阅读:275203 作者:3109

我有一个类Point,由一个x和y坐标点组成,我必须编写一个方法来计算并返回一条直线的方程,该直线连接一个Point对象和另一个Point对象,该对象作为参数(my_point.get_straight_line(my_point2))传递。我知道如何在纸上用y-y1=m(x-x1)来计算,而且我已经有了一个方法来计算my_point.slope(my_point2),但是我无法真正理解如何将方程转换成Python。全班同学:class Point:

def __init__(self,initx,inity):

self.x = initx

self.y = inity

def getx(self):

return self.x

def gety(self):

return self.y

def negx(self):

return -(self.x)

def negy(self):

return -(self.y)

def __str__(self):

return 'x=' + str(self.x) + ', y=' + str(self.y)

def halfway(self,target):

midx = (self.x + target.x) / 2

midy = (self.y + target.y) / 2

return Point(midx, midy)

def distance(self,target):

xdiff = target.x - self.x

ydiff = target.y - self.y

dist = math.sqrt(xdiff**2 + ydiff**2)

return dist

def reflect_x(self):

return Point(self.negx(),self.y)

def reflect_y(self):

return Point(self.x,self.negy())

def reflect_x_y(self):

return Point(self.negx(),self.negy())

def slope_from_origin(self):

if self.x == 0:

return None

else:

return self.y / self.x

def slope(self,target):

if target.x == self.x:

return None

else:

m = (target.y - self.y) / (target.x - self.x)

return m

如有任何帮助,我们将不胜感激。

编辑:我用一个计算c的公式计算出来,然后用字符串和self.slope(target)一起返回!结果比我想象的要简单得多。def get_line_to(self,target):

c = -(self.slope(target)*self.x - self.y)

return 'y = ' + str(self.slope(target)) + 'x + ' + str(c)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。