Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3309220
  • 博文数量: 754
  • 博客积分: 10132
  • 博客等级: 上将
  • 技术积分: 7780
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-14 23:36
文章分类

全部博文(754)

文章存档

2012年(3)

2011年(39)

2010年(66)

2009年(167)

2008年(479)

我的朋友

分类: C/C++

2011-05-18 16:37:59

由于多边形可以分解为多个三角形来计算,因此首先讨论三角形面积问题。

     假设三角形三个顶点坐标为 (x1, y1), (x2, y2), (x3, y3)

     则三角形的面积可以由以下的行列式计算

    | x1, y1, 1 |
    | x2, y2, 1 |        该行列式的值取绝对值再除2就是三角形的面积
    | x3, y3, 1 |

     这个行列式也可以排成它的转置形式,即x排成一行,y排成一行,1 排成一行(行列式与它的转置行列式相等)

     行列式性质一:任意调换行列式的两行(列),行列式的值变换符号

     这是个很重要的性质,我们就是利用这一点来计算有向三角形的面积。假设三角形的三个顶点按逆时针方向,按上面的行列式计算出的值为正,若为顺时针方向计算 出的面积为负。三角形方向变换时,实际上是调换了上面这个行列式的两行。利用这个性质还可以判断指定点在有向线段的哪一侧或是否在线段确定的直线上。

对于四面体有类似的求解:

    | x1, y1, z1, 1 |
 T= | x2, y2, z2, 1 |        
    | x3, y3, z3, 1 |

    | x4, y4, z4, 1 |

 构造4维矩阵,T的值可能为负,

最后四面体的面积 :

  S = |T|/6

线性代数的几何意义还有很多

 

点到直线的距离

点P 直线AB

求AB的法线,单位化 n

点乘就是结果

阅读(4958) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~