lanjl 发表于 2022-7-28 15:12:45

python问题求助。给三个点坐标,求三角形面积

0. 定义一个点(Point)类和直线(Line)类,使用 getLen 方法可以获得直线的长度。)_mr[v1a"c
L~P`oEN+H{$c:ivseWO?k^
提示:来自:bbs.fishc.com
设点 A(X1,Y1)、点 B(X2,Y2),则两点构成的直线长度 |AB| = √((x1-x2)2+(y1-y2)2)
Python 中计算开根号可使用 math 模块中的 sqrt 函数
直线需有两点构成,因此初始化时需有两个点(Point)对象作为参数


我把它变成,给三个点的坐标,求三角形的面积,在上一个代码上的基础上修改,然后就进行不下去了。

mport math

class point():
    def __init__(self,x=0,y=0):
      self.x=x
      self.y=y

    def getx(self):
      return self.x
    def gety(self):
      return self.y
class line1():
    def __init__(self,p1,p2):
      self.x=p1.getx()-p2.getx()
      self.y=p1.gety()-p2.gety()
      self.len1=math.sqrt(self.x*self.x+self.y*self.y)

    def getlen1(self):
      return self.len

class p3(point):
    def __init__(self,p3):
       self.x=(p1.getx()-p2.getx())/2
       self.y=(p1.gety()-p2.gety())/2
       return self.p3
class line2():
    def __init__(self,p4,p3):
      self.x=p3.getx()-p4.getx()
      self.y=p3.gety()-p4.gety()
      self.len2=math.sqrt(self.x*self.x+self.y*self.y)
      
    def getlen2(self):
      return self.len


class dg():
    def __init__(self,bb=0,gao=0):
      self.bb=bb
      self.gao=gao
    def getdj(self):
页: [1]
查看完整版本: python问题求助。给三个点坐标,求三角形面积