• 全部
  • 语言基础/算法/系统设计
  • 数据库相关
  • 图形处理/多媒体
  • 网络通信/分布式开发
  • VCL组件开发及应用
  • Windows SDK/API
  • 问答

如何取得不规则区域的重心?

luxiaoban 2001-11-02 09:31:50
我有一个笨办法,把不规则区域分成若干个三角形,
单个三角形的重心很好求,面积也可以求出来,
然后用一个公式求出两个三角形的重心,依次类推,
求三个三角形的重心,四个,五个。。。
不过我感觉这种方法很笨,各位高手有无好办法,
高分送上。
...全文
993 点赞 收藏 53
写回复
53 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jml_boy 2002-02-07
学习学习,多看书
回复
ranata 2001-11-12
这个帖子这两天怎么没人来讨论了?
回复
ranata 2001-11-08
为什么这里不让UP?
回复
ranata 2001-11-07
怎么没人看到我的方法吗?
如果是均匀薄片的话可以这样求:
假设已将不规则区域分成若干个(n个)三角形,单个三角形的重心Pi(Xi,Yi),面积Ai已求出:
则不规则区域的重心为:G(X,Y)
X = ΣAiXi / ΣAi (其中i从1到n)
Y = ΣAiYi / ΣAi (其中i从1到n)
我曾求过密度均匀任意形状实体的重心,也是用与这类似的方法,只是对实体时是分成三棱锥而不是分成三角形,同时用三棱锥的体积取代这里的三角形的面积.
很抱歉,我不会用Delphi,所以无法给出具体的代码.
回复
heyuanppp 2001-11-07
可用蒙特卡龙法将不规则区域放在一个矩形内,然后随机生成矩形内的点(xi,yi).将所有在不规则区域内的点(xi,yi)进行矢量相加,得矢量Z (X,Y).将Z除以标量S(就是落在不规则区域内的次数)就是重心的坐标.用S/Total(随机点的个数)就是不规则区域的面积.其精确度与随机点的个数有关.
回复
aatu 2001-11-07
教育体制有待改革,全面推行素质教育。
回复
yanleigis 2001-11-07
xc:=1/n*(x1+x2...+xn)
yc:=1/n*(y1+y2...+yn)
回复
nielinjie 2001-11-06
原来是这么变态的问题
回复
luxiaoban 2001-11-05
to lanzhengpeng2(兰征鹏)

你的方法只能对凸多边形有效,对凹多边形好象无效,

比如:有一个边长为2的正方形,在角上挖去一个边长为1的小正方形

按照你的方法求出的中心刚好在中点。
回复
lanzhengpeng2 2001-11-05
靠!所有的点的x加起来除以数目不就是重心的x吗?是不是每个点还有重量?那再乘以重量
初中生就会,要什么高数!!!
回复
xuqiang007 2001-11-05
呵呵,微积分都还给老师了。
回复
luxiaoban 2001-11-05
一般来说是多边形,

不过也不排除是曲线图形,

为了便于大家讨论,就当是多边形把
回复
请问所谓的“不规则”,是多边形还是曲线图形啊?
回复
dongys_2000 2001-11-05
高数没学好吧?
回复
fmc 2001-11-05
数学上是双重积分,你还要看一看“数值分析方法”,讲的十分清楚。
回复
weixiande 2001-11-05
用二重微分,小儿科
回复
ranata 2001-11-05
如果是均匀薄片的话可以这样求:
假设已将不规则区域分成若干个(n个)三角形,单个三角形的重心Pi(Xi,Yi),面积Ai已求出:
则不规则区域的重心为:G(X,Y)
X = ΣAiXi / ΣAi (其中i从1到n)
Y = ΣAiYi / ΣAi (其中i从1到n)
我曾求过密度均匀任意形状实体的重心,也是用与这类似的方法,只是对实体时是分成三棱锥而不是分成三角形,同时用三棱锥的体积取代这里的三角形的面积.
很抱歉,我不会用Delphi,所以无法给出具体的代码.
回复
lxp981818 2001-11-05
计算机做有一个好办法:去找一条线x=a使得线两边的面积相等,再找y=b,则(a,b)即为所求。
求面积不要用积分,a,b的寻找可在区域内用两分法搜索。
回复
luxiaoban 2001-11-05
昨天刚翻了一下高数,
好象可以用双重积分求,
不过在计算机上的不规则区域大部分是用
若干条折线组成,也就是分段函数,
我求分段函数的积分也很麻烦啊
回复
snakefire 2001-11-05
少了一个条件---密度函数;需要知道密度才好求解的
回复
发帖
Delphi
创建于2007-08-02

4874

社区成员

Delphi 开发及应用
申请成为版主
帖子事件
创建了帖子
2001-11-02 09:31
社区公告
暂无公告