给你三角形的三个坐标  让你求面积

海伦公式

公式中的边长 周长    用两点间距离公式求得

 

面积=相邻向量叉积的一半

设A(x1,y1) ,   B(x2,y2) ,  C(x3,y3)

设三角形的面积为S
则S=(1/2)*(行列式)
                         |x1   y1   1|
  S=(1/2)   *    |x2   y2   1|
                         |x3   y3   1|

行列式的正负代表着两个向量的顺序用右手定则判断出来的方向

我们这里  求面积的话取abs就行了

S=(1/2)  *  abs (x1*y2*1 + x2*y3*1 + x3*y1*1 - x1*y3*1 - x2*y1*1 - x3*y2*1)

 

这个公式相比海伦公式的优点是

海伦公式算出来得结果是一个浮点数  必须用double存

而用叉乘算的话  面积等于叉乘的一半  叉乘结果是个整数  可以用 long long存

最后判断一下奇偶 加上0.50 或者 0.00就好了 

也就是比海伦公式可以计算的范围更大一些