slug
catenarydesign
type
Post
status
Published
category
1-3D打印
date
Aug 30, 2026
summary
tags
tools
password
icon
悬链线(Catenary)是指一条柔软、均匀且不可伸长的绳索或链条,在自身重力作用下,两端固定后自然形成的曲线。它的形状看起来有些像抛物线,但实际上并不是抛物线。悬链线的数学表达式通常写成 y=acosh⁡(x/a)y=a\cosh(x/a),其中 cosh⁡\cosh 是双曲余弦函数,参数 aa 决定曲线的弯曲程度。悬链线具有良好的受力特性,曲线上的拉力能够沿切线方向自然传递,因此在建筑和工程中应用广泛,例如悬索桥的主缆、电力线、链条以及某些拱形结构。通过 Rhino 和 Grasshopper,可以利用 Catenary 电池快速建立悬链线,并进一步添加截面,通过 Sweep1 生成可用于三维展示或3D打印的实体模型。

1.设计方案:

可以。下面给你一套完整、简洁、只用 Rhino + Grasshopper 自带电池的方法,从悬链线一直做到 [Sweep1] 实体。
假设目标是:
  • 悬链线位于 XY 平面
  • 两端沿 X 方向展开
  • 中间向 Y 负方向下垂
  • 两端距离 200 mm
  • 悬链线长度 240 mm
  • 截面为 6 mm × 6 mm 正方形
  • 最后用 [Sweep1] 生成实体

1. 建立两个端点

放两个 [Construct Point]
左端点:
A=(−100,0,0)A=(-100,0,0)
所以设置:
右端点:
B=(100,0,0)B=(100,0,0)
设置:

2. 建立向 Y 负方向的向量

放一个:
设置:
得到:
(0,−1,0)(0,-1,0)
这就是悬链线下垂方向。

3. 建立悬链线

搜索:
连接:
再放一个 [Number Slider]
接到:
于是:
你就会得到一条位于 XY 平面、向 Y 负方向下垂的悬链线。
注意:
L>200L>200
因为两端距离是 200 mm。

4. 给悬链线重新参数化

右键 [Catenary] 的曲线输出端,选择:
这样曲线参数会变成:
0→10\rightarrow1
方便后面建立截面。

5. 在悬链线起点建立截面平面

放:
连接:
再放一个 [Number Slider]
连接到:
于是 [Perp Frame] 会在悬链线起点建立一个垂直于曲线的平面。

6. 做 6 mm × 6 mm 正方形

放两个:
第一个设置:
第二个也设置:
因为:
3−(−3)=63-(-3)=6
然后放:
连接:
现在就得到一个:
6 mm×6 mm6\text{ mm}\times6\text{ mm}
的正方形,而且正方形中心正好在悬链线上。

7. 使用 Sweep1

放:
连接:
其中:
  • R = Rail,轨道
  • S = Section,截面
此时你就会得到一根沿悬链线弯曲的 6 × 6 mm 方形杆

8. 如果要做成封闭实体

[Sweep1] 通常生成的 Brep 两端可能是开的。
所以后面接:
连接:
这样就得到封闭实体,可以 Bake 后导出 STL。

完整电池顺序

最核心的结构就是:

最简记忆版

你只需要记住这条链:
其中 [Catenary] 同时还要直接连接到 [Sweep1] 的 Rail 输入端。
 
 
 

2.电池组合:

 
notion image
 
 

3.效果图:

notion image
 
 
 

 
现代数学启蒙3D教程7:莫比乌斯带设计现代数学启蒙3D教程9:抛物线设计
Loading...