伊朗的穹顶——穆卡纳斯(Muqarnas)

张开发
2026/6/9 20:44:37 15 分钟阅读
伊朗的穹顶——穆卡纳斯(Muqarnas)
目录前言什么是穆卡纳斯Muqarnas穆卡纳斯Muqarnas有哪些数学特性如何用manim画一个简单的穆卡纳斯Muqarnas预览效果参考资料前言今天是美国、以色列与伊朗的军事冲突进入第四十天战局似乎出现转折。美伊同意停火10日开启新一轮谈判为期40天的美以-伊冲突给伊朗和中东人民带来深重的灾难除了活生生的生命被剥夺还有多处历史遗迹惨遭损毁。据伊朗文化遗产、旅游和手工业部介绍至少有56处伊朗文化遗址、博物馆和历史建筑遭到破坏。伊朗境内共有29处遗产被联合国教科文组织列为世界文化遗产后者已经确认部分遗产遭到破坏。伊朗已向联合国教科文组织提出申诉。我们知道伊朗境内有很多优秀的历史遗迹及建筑这些遗迹和建筑有着丰富的艺术和文化元素代表的伊朗历史文化遗产既有着浓厚的波斯文化又收藏着这个国家近代的历史记忆。这一期我们就要来介绍其中一种特殊元素——穆卡纳斯Muqarnas。什么是穆卡纳斯Muqarnas穆卡纳斯Muqarnas是整个伊斯兰建筑中的最具代表性元素和工艺手法它将简单的几何图形通过层层递进和尺寸的变化向某个或者某些仿射方向延展叠加这种自相似组合效果远胜过简单重复的二维几何图案装饰在天花板、拱顶和入口等处再结合光影交错营造出动态效果使建筑表面仿佛在流动变成了迷人的视觉盛宴。穆卡纳斯Muqarnas不仅是建筑装饰的一部分更是伊斯兰世界数学精确性与工艺艺术完美结合的体现。穆卡纳斯Muqarnas有哪些数学特性穆卡纳斯Muqarnas的迷人之处在于其看似复杂的形态下隐藏着一套严谨、自洽的几何逻辑和数学结构。阿尔·卡西在1427年完成的《算术之钥》第四篇中首次系统地阐述穆卡纳斯数学几何原理。底层网格系统设计的骨架穆卡纳斯的设计通常始于一个二维网格平面图Plan Projection。这个网格为三维结构的搭建提供了骨架它可以是基于正方形、等边三角形、六边形或更复杂的十二边形系统。例如对安卡拉杰纳比·艾哈迈德帕夏清真寺Cenabi Ahmet Pasha Mosque正门的分析显示其平面图中存在一个放射状网格。模块化单元重复的“几何字母”穆卡纳斯由一种或多种基本的三维单元Cell在网格上排列组合而成。这些单元主要有以下几种单元名称几何形状备注正方形 (Square)底面为正方形最常见的类型之一与其他单元组合产生丰富的三维形态。菱形 (Rhombus)底面为菱形另一主要基础单元。杏仁形 (Almond)一种特定曲面形状常见于曲面的穆卡纳斯中增加了形态的复杂性。两足形 (Biped)一个单元由两个子单元构成用于填补空隙或增加层次。大麦仁形 (Barley-Kernel)一种狭长的形状同样用于增加单元的丰富性。三角形 (Triangle)底面为三角形用于连接或过渡。三足形 (Triped)一个单元由三个子单元构成用于填补更复杂的空间。严格的角度规则空间的编织法这些三维单元并非随意摆放它们遵循严格的相交角度约束。阿尔·卡西明确指出一个单元的“面”与相邻单元的“面”必须以特定角度相交例如直角、45°角、135°角或1.5倍的直角即270°。这些预先设定的角度关系确保了整个结构在数学上的自洽性是其能够像拼图一样无缝拼接的基石。二维到三维的转化从“棋盘”到“星空”设计时工匠先在网格的每个格子上布置不同类型的单元“几何字母”得到一个二维“配方”。随后通过算法将每个二维单元沿垂直方向“挤出”或“折叠”成预定义的三维几何体从而形成层层叠叠、充满韵律感的立体形态。穆卡纳斯是一个用数学语言书写的三维奇迹。它以网格系统为逻辑基石用模块化单元和严格角度作为语法通过从二维到三维的算法转化构建出无穷无尽的形态。其背后涉及的图论、对称群、递归等数学思想即使在今天也启发着数字建筑设计的前沿探索。如何用manim画一个简单的穆卡纳斯Muqarnas我们可以利用 Manim 创建一个风格化的二维对称图案模拟穆卡纳斯分层、星形和单元重复的结构特征。下面提供一个完整的 Manim 脚本它生成一个类似穆卡纳斯壁龛或半穹顶的正面图案包含多个层次的菱形、正方形和三角形单元并带有渐变颜色要制作精美的穆卡纳斯还需要细化其中参数frommanimimport*classMuqarnasPattern(Scene):defconstruct(self):# 设置背景色为深色突显图案self.camera.background_color#1a1a2e# 创建一个包含多个层次的 VGrouplayersVGroup()# 定义颜色方案 (从外到内)colors[#e94560,#f5a623,#48dbfb,#ff9f43,#5f27cd]# 层数num_layers6# 每一层由若干小单元组成foriinrange(num_layers):# 当前层的半径比例radius_factor1-i*0.12# 当前层的单元数量num_cells8i*2# 8,10,12,14,16,18# 当前层的颜色colorcolors[i%len(colors)]# 当前层的透明度 (越外层越浅)opacity0.7-i*0.05layerVGroup()forjinrange(num_cells):anglej*TAU/num_cells# 计算单元的中心位置 (在圆弧上)xradius_factor*3*np.cos(angle)yradius_factor*2.5*np.sin(angle)# 椭圆形状更像壁龛# 根据角度决定单元类型: 交替使用菱形和正方形ifj%20:# 菱形单元 (模拟穆卡纳斯的一种基础单元)# 创建一个菱形: 旋转45度的正方形rhombusSquare(side_length0.4,colorcolor,fill_opacityopacity)rhombus.rotate(45*DEGREES)rhombus.move_to([x,y,0])# 添加边框高亮rhombus.set_stroke(width2,colorWHITE)layer.add(rhombus)else:# 正方形单元 (另一种基础单元)squareSquare(side_length0.35,colorcolor,fill_opacityopacity)square.move_to([x,y,0])square.set_stroke(width2,colorWHITE)layer.add(square)# 在某些层添加微小的三角形单元作为点缀 (模拟两足形/三足形的感觉)ifi2and(j%30):triTriangle(colorcolor,fill_opacityopacity).scale(0.2)tri.move_to([x0.2*np.cos(angle),y0.2*np.sin(angle),0])tri.rotate(angle)layer.add(tri)layers.add(layer)# 添加一个中心圆形装饰 (模拟穆卡纳斯的顶部或中心)center_circleCircle(radius0.6,color#ff9f43,fill_opacity0.8,stroke_width3)center_circle.set_stroke(WHITE,width2)# 内部添加星形多边形 (8角星)starStar(n8,outer_radius0.5,inner_radius0.2,color#feca57,fill_opacity0.9)star.set_stroke(WHITE,width1.5)center_groupVGroup(center_circle,star)# 整体图案加入场景self.play(Create(layers),run_time2)self.play(FadeIn(center_group,scale0.5),run_time1)# 添加一个平滑的旋转动画来展示图案的对称性self.play(Rotate(layers,angle2*PI,rate_funclinear,run_time8),Rotate(center_group,angle-PI,rate_funclinear,run_time8),run_time8,)# 最后缓慢淡出self.play(FadeOut(layers),FadeOut(center_group))self.wait(0.5)withtempconfig({quality:medium_quality,preview:True}):sceneMuqarnasPattern()scene.render()预览效果穆卡纳斯参考资料1美伊冲突40天地球文明“伤痕累累”https://baijiahao.baidu.com/s?id1861884131876747163wfrspiderforpc2Magic of Muqarnashttps://katalog.slub-dresden.de/en/id/126-ZnR1bml2aGVpZGVsYjpvYWk6YXJjaGl2LnViLnVuaS1oZWlkZWxiZXJnLmRlOjE3NDQ23Geometric decomposition and algorithmic model of main gate muqarnas of Ankara Cenabi Ahmet Pasha Mosque

更多文章