用Mathematica绘制四维空间的物体

我们无法想像
四维空间是什么样子,就像
二维生物不知道三维一样!可是,听说有人用Mathematica画出了
四维立方体,所以我拿来学了一下,这里介绍一下这些代码。

操作方法

  • 01

    打开Mathematica,新建笔记本,输入如下代码: Animate[Graphics3D[ GraphicsComplex[ proj[t], {Blue, Specularity[0.75, 10], Sphere[Range[16], 0.05], Tube[e, 0.03], Opacity[0.3], Polygon@f}], Boxed -> False, Background -> Orange, ImageSize -> 390, PlotRange -> 1], {t, 0.0, Pi/2.0, 0.075}] 运行以后,就会得到一个“四维立方体”,呵呵,其实就是动态图。

  • 02

    导出动态图的代码如下: Export["C:\\Users\\Administrator\\Desktop\\超立方体0.gif", Table[Graphics3D[ GraphicsComplex[ proj[t], {Blue, Specularity[0.75, 10], Sphere[Range[16], 0.05], Tube[e, 0.03], Opacity[0.3], Polygon@f}], Boxed -> False, Background -> White, ImageSize -> {500, 500}, PlotRange -> 1], {t, 0.0, Pi/2.0, 0.075}]]

  • 03

    再来一个互动效果: Manipulate[ Graphics3D[{Darker@Red, CapForm["Round"], Specularity[White, 20], Tube[Perspective[ Trans5[RotFigure4[Tes, 0, 0, 0, a], 0, 0, 0, -3], -1], 0.04]}, PlotRange -> {{-.7, .7}, {-.7, .7}, {-.7, .7}}, Boxed -> False, Lighting -> "Neutral", ImageSize -> 1.1 {400, 400}, SphericalRegion -> True], {{a, 0, "动起来"}, 0, 2*3.1416, .0001, Appearance -> "Labeled"}, SaveDefinitions -> True 呵呵,这个动态图的自定义很多,而且我也不会导出动态图!自己慢慢理解吧!

  • 04

    这里画一个 克莱因瓶,这是个四维空间的物体,来源于 莫比乌斯带的类比。 Manipulate[ With[{bsc = Take[{{0, 0, 0}, {0, 0, 14}, {0, 0, 20}, {0, 0, 25}, {1.7, 0, 30}, {7, 0, 32}, {10, 0, 31.5}, {13, 0, 30}, {15, 0, 26}, {13, 0, 20}, {10, 0, 17.5}, {4, 0, 13.5}, {2.5, 0, 11}, {0.33, 0, 7}, {0.2, 0, 2.5}, {0, 0, 0}}, t + 2], sizes = Take[{6.5, 14, 4, 2.3, 2.2, 2.2, 2.2, 2.2, 2.2, 2.2, 2.2, 2.6, 3.3, 3.6, 4.3, 6.5}, t + 2]}, Graphics3D[{color, CapForm[None], Opacity[opacity], Tube[BSplineCurve[bsc], sizes]}, Boxed -> False, PlotRange -> {{-15, 17}, {-15, 15}, {0, 35}}, ViewPoint -> {0, -5, 0}, SphericalRegion -> True, ImageSize -> {500, 500}]], {{t, 1, "times"}, 1, 14, 1}, {{opacity, 0.7}, 0.1, 1}, {{color, Blue}, ColorSlider}

  • 05

    把克莱因瓶涂成彩色格子。 Manipulate[ KleinBottle[u, v, a, b], {{u, 2. Pi, "draw"}, 1, 2. Pi, ImageSize -> Tiny}, {{v, Pi, "cutaway"}, Pi, 2. Pi, ImageSize -> Tiny}, {{a, 1, "mesh A"}, 1, 8, 1, ImageSize -> Tiny}, {{b, 1, "mesh B"}, 1, 4, 1, ImageSize -> Tiny}, ControlPlacement -> Left, SaveDefinitions -> True

(0)

相关推荐

  • ZBrush怎么使用绘制层得到子物体?

    这里主要给大家介绍在ZBrush软件中使用绘制层得到子物体的方法. 1.在Light Box(灯光盒子)默认的3D工具中选择SuperAverageMan_low人体模型,在视图文档中拖拽出来,进入E ...

  • MATLAB如何绘制空间条形图 空间饼图

    日常作图中,我们会遇到绘制各种特殊空间图像的情况,本经验讲述如何使用MATLAB绘制空间条形图和空间饼状图.一起去看看吧! 方法1: 1.绘制空间条形图. 我们使用MATLAB自动的bar3命令绘制空 ...

  • SolidWorks如何应用3D草绘创建一个空间实体

    SolidWorks提供了两种草图绘制方式,在选项卡中分别叫做"草图绘制""3D草图",使用 3D 草图作为扫描路径,用作放样或扫描的引导线.放样的中心线或线路 ...

  • 水果拉霸压分技巧

    小编教你水果拉霸压分技巧!希望你能有个好的游戏体验! 操作方法 01 旋转,应该是三种坐标变换--缩放.旋转和平移,中最复杂的一种了.大家应该都听过,有一种旋转的表示方法叫四元数.按照我们的习惯,我们 ...

  • 《尸体派对》全剧情攻略2

    尸体的灵魂出现了(蓝色灵魂是善良的,红色是怀有怨恨的,之后的游戏请多多留心),向两人说明这个天神小学校并非客观存在,而是由怨灵的怨念所产生的多维空间,也就是说这个空间就像是一个套一个的立方体(有点近似 ...

  • 让扁平化设计也爆发视觉冲击力(5招)

    扁平化设计无疑是当前讨论最多,最火的设计形式,自ios7面世以来更是将扁平化设计的讨论推向风口浪尖. 在这里我不想分析拟物设计和扁平化设计的优劣,更不想说谁更好!在形式服从内容的今天,我只能说哪种设计 ...

  • 滴滴车主端5.0全新升级设计思考总结

    为每一位,行驶在路上的你 前言 "我每天出车8-10个小时" "一天能接十好几单呢" "帮了别人还赚了钱,这活儿很自由" - 作为滴滴的设计 ...

  • 未来互联网的发展趋势

    操作方法 01 第一篇:智能家居>>>>>>>>>>>>>>>>>>>>> ...

  • 显卡知识详解:适用类型和最大分辨率

    操作方法 01 显卡知识详解:适用类型和最大分辨率 1.适用类型 1)台式机显卡--普通显卡 普通显卡,就是普通台式机内所采用的显卡产品,也就是 DIY 市场内最为常见的显卡产品.之所以叫它普通显卡, ...