防灾数学分享 http://blog.sciencenet.cn/u/fzmath 防灾科技学院数学教研室

博文

MATLAB中计算凸多边形面积和凸多面体体积的简便方法

已有 8958 次阅读 2017-5-19 17:25 |系统分类:教学心得

一、凸多边形

x = rand(10,1)

y = rand(10,1)

dt = delaunayTriangulation(x,y)

[k a] = convexHull(dt)

plot(dt.Points(:,1),dt.Points(:,2), '.', 'markersize',10); hold on;

plot(dt.Points(k,1),dt.Points(k,2), 'r'); hold off;

得到

k =  4

   10

    7

    9

    4

a =

   0.4075


二、凸多面体


X = rand(25,3);

dt = delaunayTriangulation(X);

[ch v] = convexHull(dt);

trisurf(ch, dt.Points(:,1),dt.Points(:,2),dt.Points(:,3), 'FaceColor', 'cyan')

>> %体积

v =

   0.4133






https://blog.sciencenet.cn/blog-292361-1055925.html

上一篇:MATLAB中绘制数据直方图的新函数histogram2
下一篇:Cleve Moler 的两本MATLAB教材
收藏 IP: 110.251.60.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-3-29 03:13

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部