100+高分急求 用三维坐标求多边行面积!!

csuftliang 2009-01-15 08:20:15
用三维坐标求多边行面积。即空间多边形的面积,谢谢啊 提供思路,有源码最好啊~~谢谢~~在线等!!!1
...全文
210 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
csuftliang 2009-01-21
  • 打赏
  • 举报
回复
呵呵,热情啊。。高兴结了
zhyinty 2009-01-19
  • 打赏
  • 举报
回复
电脑上的曲面都是由平面构成的,平面又是由三角形构成的
fjwyshan 2009-01-19
  • 打赏
  • 举报
回复
up
noenoughmemory 2009-01-19
  • 打赏
  • 举报
回复
up
glacier3d 2009-01-18
  • 打赏
  • 举报
回复
3维-->2维
2维坐标下的多变形求面积:
法一:顺时针(逆时针也行)扫描所有边,求边和其在x轴上的投影围成的梯形的面积,将所有梯形面积加起来(面积有正有负,正好用来抵消).
法二:找一点,把梯形换成三角形.
yubinbrokenheart 2009-01-18
  • 打赏
  • 举报
回复
曲面积分,先求法向量,在用|法向量|*dxdy/|z|,在x,y区域内求曲面积分
wwwxxb40000 2009-01-17
  • 打赏
  • 举报
回复

MARK
fjwyshan 2009-01-17
  • 打赏
  • 举报
回复
mark
noenoughmemory 2009-01-17
  • 打赏
  • 举报
回复
mark
野男孩 2009-01-17
  • 打赏
  • 举报
回复
曲面积分。。。
asmcer 2009-01-17
  • 打赏
  • 举报
回复
如果多变形的顶点在同一平面上,那么最简单了:
任意闭合 N 边形面积计算公式(无论凹凸):
S = (1/2)*∑( abs(X[i]-X[i-1])*abs(Y[i]+Y[i-1]) )
其中,(X[i], Y[i]) 为 N 边形顶点坐标。

如果多变形的顶点不在一个平面上但有三角形扇组合而成,那么分别求每个三角形的面积相加就可以了。

如果多变形绘制的过程不是三角形扇组合生成,那么需要将多变形分割为三角形扇,然后求解。
xiongyouyi 2009-01-16
  • 打赏
  • 举报
回复
用行列式求,
这是在XOY平面上求,如果是空间平面需要映射,

float get_polygon_area( vector<Point3d> & vpt )
{
//去掉相同点和共线点
//...

if( vpt.size() < 3 )
return 0.0f;

// 用行列式求值
float area;
Point3d p1, p2, p3, p4;

p1 = vpt[ 0 ];
p2 = vpt[ 1 ];
p3 = vpt[ vpt.size() - 1 ];
p4 = vpt[ vpt.size() - 2 ];
area = p1.y * (p3.x - p2.x) + p3.y * (p4.x - p1.x);
p3 = p1;

for ( unsigned int i = 1; i < vpt.size() - 1; ++i )
{
p1 = vpt[ i ];
p2 = vpt[ i + 1 ];
area = area + p1.y * ( p3.x - p2.x );
p3 = p1;
}

// area的正负可以用来判断时针顺序

return fabs( area / 2.0f );
}
jinyt 2009-01-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 hemdacker 的回复:]
曲面积分。套公式去
[/Quote]
或者分割成一个一个的三角形,套公式去
hemdacker 2009-01-16
  • 打赏
  • 举报
回复
曲面积分。套公式去
Q_Jizi 2009-01-16
  • 打赏
  • 举报
回复
将三维坐标系转化到该平面所在的二维坐标系上不就可以了吗。。
xiongyouyi 2009-01-16
  • 打赏
  • 举报
回复
合在一块即可
xiongyouyi 2009-01-16
  • 打赏
  • 举报
回复
你参照下这两个地方,
http://topic.csdn.net/t/20001003/15/32846.html
http://www.cppblog.com/63956372/archive/2008/11/04/65924.aspx
xiongyouyi 2009-01-16
  • 打赏
  • 举报
回复
哦,不需要映射,
把那个算平面三角形面积的表达式,
改成计算空间三角形面积,
我没试过,你可以试试
csuftliang 2009-01-16
  • 打赏
  • 举报
回复
怎末做映射 讲讲撒
csuftliang 2009-01-16
  • 打赏
  • 举报
回复
恩 平面转换怎末弄。呵呵
加载更多回复(2)

19,464

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧