# 参数化花瓶

创建参数化花瓶是开始学习 Dynamo 的最佳方法。

此工作流将指导您如何操作：

* 使用数字滑块控制设计中的变量。
* 使用节点创建和修改几何图元。
* 实时显示设计结果。

![](/files/9ZDte0upj6aOjxMZhveM)

## 定义目标

在跳转到 Dynamo 之前，让我们先从概念上设计花瓶。

假定我们要设计一个粘土花瓶，并考虑陶艺家所用的制造实践。陶艺家通常使用陶轮来制作圆柱形花瓶。然后，通过对花瓶的不同高度施加压力，他们可以改变花瓶的形状并创造出不同的设计。

我们将使用类似的方法来定义花瓶。我们将创建 4 个不同高度和半径的圆，然后通过放样这些圆来创建一个曲面。

## 快速入门

> 单击下面的链接下载示例文件。
>
> 可以在附录中找到示例文件的完整列表。

我们需要节点来表示 Dynamo 将执行的操作序列。由于我们知道要创建一个圆，因此我们先找到一个执行该操作的节点。使用 **“搜索”字段** 或浏览 **“库”**，以找到 **“Circle.ByCenterPointRadius”** 节点并将其添加到工作空间

> 1. 搜索 >“圆...”
> 2. 选择 >“ByCenterPointRadius”
> 3. 节点将显示在工作空间中

让我们进一步了解一下此节点。在左侧，有节点的输入（*“centerPoint”和“radius”*）；在右侧，有节点的输出（圆）。请注意，输出有浅蓝色线。这意味着输入有默认值。要获取有关输入的详细信息，请将光标悬停在输入名称上。*“radius”* 输入需要双精度输入，默认值为“1”。

我们将保留 *“centerPoint”* 的默认值，但会添加 **“Number Slider”** 以控制半径。正如我们使用 **“Circle.ByCenterPointRadius”** 节点所做的那样，使用库搜索 **“Number Slider”** 并将其添加到图形中。

该节点与我们之前的节点稍有不同，因为它包含一个滑块。可以使用该界面更改滑块的输出值。

!

可以使用节点左侧的下拉按钮配置滑块。我们将滑块限制为最大值“15”。

我们将它放置在 **“Circle.ByCenterPointRadius”** 节点的左侧，然后通过选择 **“Number Slider”** 输出并将其连接到“Radius”输入来连接两个节点。

我们还通过双击节点的名称将“Number Slider”名称更改为“Top Radius”。

## 后续步骤

我们继续向逻辑中添加一些节点和连接来定义花瓶。

### 创建不同半径的圆

我们将这些节点复制 4 次，以便这些圆定义曲面，更改“Number Slider”的名称，如下所示。

!

> 1. 圆由圆心和半径创建

### 沿花瓶高度移动圆

我们的花瓶缺少一个关键参数，即花瓶的高度。为了控制花瓶的高度，我们创建了另一个数字滑块。我们还添加了 **“Code Block”** 节点。代码块有助于将个性化代码段添加到我们的工作流中。我们将使用代码块将高度滑块乘以不同的因子，以便可以沿花瓶高度放置圆。

!

然后，我们使用 **“Geometry.Translate”** 节点在所需高度放置圆。由于我们要沿花瓶分布圆，因此我们使用代码块将高度参数乘以一个因子。

> 2.圆在 Z 轴上由变量平移（移动）。

### 创建曲面

为了使用 **“Surface.ByLoft”** 节点创建曲面，我们需要将所有平移的圆合并到一个列表中。我们使用 **“List.Create”** 将所有圆合并到一个列表中，最后将此列表输出到 **“Surface.ByLoft”** 节点以查看结果。

我们还要关闭其他节点中的预览，以仅显示“Surface.ByLoft”显示。

> 3.通过放样平移的圆来创建曲面。

## 结果

我们的工作流已准备就绪！现在，我们可以使用在脚本中定义的 **“数字滑块”** 创建不同的花瓶设计。

![](/files/9ZDte0upj6aOjxMZhveM)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://primer2.dynamobim.org/zh-cn/10_sample_workflow/10-1_getting-started-workflows/1-parametric-vase.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
