把布基球带回来

巴克球提供了一个优雅的图形例子,巴克敏斯特富勒测地线圆顶的连通性。
我们还演示了用Live Editor发布这个博客。在文章的结尾有一个按钮,可以下载实时脚本,这样你就可以在自己的电脑上运行动画。
您可能会在文章的结尾看到第二个按钮,它允许MATLAB Online执行实时脚本,并将结果显示在浏览器中。该功能仍在开发中,在一些浏览器中无法工作。

巴基

声明
B=巴基;
创建稀疏的60×60矩阵,即测地圆顶、足球、碳-60分子或截断的二十面体的连接图的邻接矩阵。这些对象都有32个面;其中12个是五边形,20个是六边形。

间谍

该矩阵的一个视图是它的 间谍 图,显示节点和边的逻辑结构。
特务(B)

图表

要获取其他视图,请使用MATLAB图形对象。声明
G=图(B);
绘制图形 . 图形本身没有任何几何结构。为了画出它,你指定a 布局 ,或节点的坐标。提出好的布局是一门艺术,也是一门科学。目前有六种可用布局:“圆形”、“力”、“分层”、“子空间”、“力3”和“子空间3”。让我们使用“force3”。这将在三维中定位图的节点和边。由此产生的图像在地球上任何地方都可以被识别为标准足球或足球。
顺便说一下,我正在为名称-值对使用新的赋值运算符语法。
情节(G,布局=“force3”,线宽= 1.5)
广场了

历史

这个 帮助 条目 巴基 ,
Buckminster-Fuller测地穹顶的BUCKY连通图。
B=BUCKY是该模型的60×60稀疏邻接矩阵
球丘连通图,足球,
还有碳60分子。
[B,V] = BUCKY也返回顶点的xyz坐标。
看看代码 巴基 .
巴基型
我在30年前写过这个函数,当我们第一次发展稀疏矩阵的时候。差不多有一百行。现在来看,很难看出它是如何工作的。大部分的工作都花在放置顶点上。我们不再需要坐标了。与三维 force3 布局 图表 函数完成了这项工作。

像贝克汉姆一样弯曲它

在足球上旋转一圈会使它看起来更有趣。在两个五边形上放置透明贴片。
k1=1:5;
k2=56:60;
颜色=获取(0,“DefaultAxeColorder”);
P = plot(G, layout=“force3”,markersize=3,nodefontsize=8,线宽=1.5);
补丁(P.XData (k1) P.YData (k1) P.ZData (k1),颜色(2:),facealpha = 0.5);
斑块(P.XData(k2),P.YData(k2),P.ZData(k2),颜色(5,:),facealpha=0.5);
vis3d的紧密方形
关闭节点编号。
P.NodeLabel = {};
让她走了。在我的笔记本电脑上,完成这个循环大约需要20秒。动画正在被录制,最终会出现一个回放小部件。
抽搐
n帧=120;
d=360/n帧;
a=0;
e=0;
对于帧= 1:nframes
意见(a、e);
A = A - d;
e=e+d;
刷新屏幕
终止
视图(a、e)
toc
运行时间为16.221153秒。

谢谢

感谢Cheng Chen, Bill York和Christine Tobler对这篇文章的帮助。

待续

我还没完呢。通过试验这些代码,我学到了很多。我会带着我学到的东西回来。
同时,试试看
  • 定期的加薪A.E一个人。
  • 去除vis3d.
一些值得思考的事情,
  • 你能用两个相对的六边形来代替两个五边形吗?
  • 为什么节点标签和颜色有时会交换半球?
  • 半球交换是错误还是特征?
  • 你是否觉得在动画循环结束后,球仍然在轻微地移动?
|

评论

要留下评论,请点击在这里登录到您的MathWorks帐户或创建一个新帐户。