All pages
Powered by GitBook
1 of 8

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

计算设计的几何图形

作为可视化编程环境,Dynamo 使您可以构思数据的处理方式。数据是数字或文本,但几何体也是数据。根据计算机的理解方式,几何体(有时也称为计算几何体)是我们可以用来创建精美、复杂或性能驱动的模型的数据。为此,我们需要了解我们可以使用的各种几何图形的详细内容。

曲面

Dynamo 中的曲面

什么是曲面

我们在模型中使用“曲面”来表示在三维世界中所看到的对象。虽然曲线并非始终是平面的(即它们是三维的),但它们定义的空间始终绑定到一个维度。曲面为我们提供了另一个维度和一组附加特性,我们可以在其他建模操作中使用它们。

参数处的曲面

在 Dynamo 中输入和评估“参数处的曲面”,以查看我们可以提取的信息类型。

  1. “Surface.PointAtParameter” 返回给定 UV 坐标处的点

  2. “Surface.NormalAtParameter” 返回给定 UV 坐标处的法线向量

  3. “Surface.GetIsoline” 返回 U 或 V 坐标处的等参曲线 - 请注意“isoDirection”输入。

单击下面的链接下载示例文件。

可以在附录中找到示例文件的完整列表。

3KB
Surfaces.zip
archive
Open

深入探讨...

曲面

曲面是由函数和两个参数定义的数学形状,我们使用 U 和 V(而不是曲线的 t)来描述相应的参数空间。这意味着,在处理此类型的几何体时,我们需要从中绘制更多的几何数据。例如,曲线具有切线向量和法线平面(可以沿曲线的长度旋转或扭曲),而曲面具有在其方向上保持一致的法线向量和切线平面。

曲面
  1. 曲面

  2. U 向等参曲线

  3. V 向等参曲线

  4. UV 坐标

  5. 垂直平面

  6. 法线向量

曲面域:曲面域定义为“(U,V)”参数的范围,这些参数评估为该曲面上的三维点。每个维度中的域(U 或 V)通常描述为两个数字(U 最小值到 U 最大值)和(V 最小值到 V 最大值)。

曲面

尽管曲面的形状看起来不是“矩形”,但是局部可能有更紧或更松的等参曲线集,由其域定义的“空间”始终是二维的。在 Dynamo 中,始终可以将曲面理解为使域在 U 和 V 方向上最小为 0.0 且最大为 1.0。平面曲面或修剪曲面可能具有不同的域。

Isocurve(等参曲线):由曲面上的恒定 U 或 V 值定义的曲线,以及相应其他 U 或 V 方向的值域。

UV 坐标:UV 参数空间中的点由 U、V(有时为 W)定义。

曲面坐标

垂直平面:在给定 UV 坐标处与 U 向和 V 向等位曲线垂直的平面。

法线向量:定义相对于垂直平面的“向上”方向向量。

NURBS 曲面

NURBS 曲面与 NURBS 曲线非常相似。可以将 NURBS 曲面视为位于两个方向上的 NURBS 曲线的栅格。NURBS 曲面的形状由多个控制点以及该曲面在 U 和 V 方向的阶数定义。相同的算法用于通过控制点、权重和阶数来计算形状、法线、切线、曲率和其他特性。

NURBS 曲面

对于 NURBS 曲面,几何图形会隐含两个方向,因为无论我们看到的是什么形状,NURBS 曲面都是矩形控制点栅格。尽管这些方向通常与世界坐标系任意相关,但我们将经常使用它们来分析模型或基于曲面生成其他几何图形。

NURBS 曲面
  1. 阶数 (U,V) = (3,3)

  2. 阶数 (U,V) = (3,1)

  3. 阶数 (U,V) = (1,2)

  4. 阶数 (U,V) = (1,1)

多边形曲面

多边形曲面由跨边连接的曲面组成。多边形曲面提供了超过二维的 UV 定义,现在我们可以通过其拓扑在连接的形状中移动。

“拓扑”通常描述了有关零件连接方式的概念和/或 Dynamo 中的相关拓扑也是一种几何体类型。特别是,它是“曲面”、“多边形曲面”和“实体”的父类别。

多边形曲面

有时称为“面片”,以这种方式连接曲面可以创建更加复杂的形状,并定义跨接缝的细节。我们可以方便地将圆角或倒角操作应用到多边形曲面的边。

点

Dynamo 中的点

什么是点?

点仅由一个或多个称为坐标的值定义。定义点所需的坐标值数量取决于该点所在的坐标系或环境。

二维/三维点

Dynamo 中最常用的点类型存在于三维世界坐标系中,具有三个坐标 [X,Y,Z](Dynamo 中的三维点)。

Dynamo 中的二维点有两个坐标 [X,Y]。

曲线和曲面上的点

曲线和曲面的参数是连续的,并且延伸到给定几何图元的边缘之外。由于定义“参数空间”的形状存在于三维世界坐标系中,因此我们始终可以将“参数化坐标”转换为“世界”坐标。例如,曲面上的点 [0.2, 0.5] 与世界坐标中的点 [1.8, 2.0, 4.1] 相同。

  1. 假定的世界 XYZ 坐标中的点

  2. 相对于给定坐标系(圆柱)的点

  3. 曲面上 UV 坐标形式的点

单击下面的链接下载示例文件。

可以在附录中找到示例文件的完整列表。

7KB
Geometry for Computational Design - Points.dyn
Open

深入探讨...

如果“几何图形”是模型的语言,则“点”是字母。点是创建所有其他几何图形的基础 - 我们需要至少两个点来创建曲线、我们需要至少三个点来生成一个多边形或网格面,依此类推。通过定义点之间的位置、顺序和关系(尝试使用正弦函数),我们可以定义更高阶的几何图形,例如我们识别为“圆”或“曲线”的图形。

点到曲线
  1. 使用函数 x=r*cos(t) 和 y=r*sin(t) 的圆

  2. 使用函数 x=(t) 和 y=r*sin(t) 的正弦曲线

点作为坐标

点也可以存在于二维坐标系中。根据我们所使用的空间类型,约定的字母表示法有所不同 - 我们可能在平面上使用 [X,Y] 或在曲面上使用 [U,V]。

点作为坐标
  1. 欧几里得坐标系中的点:[X,Y,Z]

  2. 曲线参数坐标系中的点:[t]

  3. 曲面参数坐标系中的点:[U,V]

几何图形概述

Dynamo 沙箱中的几何图形

“几何图形” 是设计语言。当编程语言或环境的核心有几何图形内核时,我们可以针对以下目标开启各种可能性:设计精确而稳健的模型、自动执行设计例程以及使用算法生成设计迭代。

了解几何图形类型及其之间的关系,将使我们能够浏览库中可用的 “几何图形节点” 的集合。几何图形节点按字母顺序组织,而不是按层次组织 - 它们在此处的显示类似于其在 Dynamo 界面中的布局。

此外,随着时间的流逝,在 Dynamo 中制作模型并将在“背景预览”中所看到内容的预览连接到图形中的数据流应会变得更加直观。

  1. 请注意,假定坐标系由栅格和彩色轴渲染

  2. “选定节点”将在背景中以亮显颜色渲染相应的几何图形(如果节点创建几何图形)

单击下面的链接下载示例文件。

可以在附录中找到示例文件的完整列表。

4KB
Geometry for Computational Design - Geometry Overview.dyn
Open

几何图形的概念

传统上定义的几何图形是对形状、大小、图形的相对位置和空间特性的研究。这一领域悠久历史,可以追溯到数千年前。随着计算机的出现和普及,我们在定义、浏览和生成几何图形方面获得了强大的工具。现在,可以非常轻松地计算复杂几何交互的结果;实际上,我们所做的几乎是透明的。

斯坦福兔

如果您想知道如何利用计算机的强大功能来获得多样化和复杂的几何图形,请通过 Web 快速搜索“斯坦福兔”(即,一种用于测试算法的规范模型)。

在算法、计算和复杂性的环境中了解几何图形可能会令人望而生畏;但有一些关键和相对简单的原则,我们可以将这些原则确立为基础来开始构建更高级的应用程序:

  1. 几何图形是 “数据” - 对计算机和 Dynamo 而言,兔子与数字没有什么不同之处。

  2. 几何图形依赖 “抽象” - 从根本上来说,几何图元由给定空间坐标系中的数字、关系和公式进行描述。

  3. 几何图形具有 “层次” - 点汇聚生成线、线汇聚生成面,以此类推。

  4. 几何图形同时描述 “零件和整体” - 如果有曲线,则它既包括形状,也包括沿其的所有可能点。

实际上,这些原则意味着我们需要知道我们正在处理的内容(几何图形的类型、如何创建等);因此,我们在开发更复杂的模型时,可以顺畅地构建、分解和重新构建不同的几何图形。

在层次中步进

让我们花点时间了解一下几何图形的“抽象”说明和“层次”说明之间的关系。由于这两个概念是相关的,但起初并不总是很明显,因此一旦我们开始开发更深的工作流或模型,我们可能会快速遇到概念上的障碍。首先,我们使用维数作为所建模“素材”的简单描述符。描述形状所需的维数为我们提供了一个窗口,让我们可以了解几何图形是如何按层次组织的。

计算几何图形
  1. “点”(由坐标定义)没有任何维数 - 它只是描述每个坐标的数字

  2. “线”(由两个点定义)现在有 一 个维数 - 我们可以向前(正方向)或向后(负方向)“漫游”直线

  3. “平面”(由两条直线定义)有 两 个维数 - 现在可以向左或向右更多漫游

  4. “方框”(由两个平面定义)有 三 个维数 - 我们可以定义相对于上或下的位置

维数是一种开始对几何图形进行分类的便捷方法,但它不一定是最佳方法。毕竟,我们不仅使用“点”、“线”、“平面”和“方框”建模 - 如果我想要弯曲,该怎么办?此外,还有另一类完全抽象的几何类型,即它们定义诸如方向、体积或各部件之间关系之类的特性。我们无法真正抓住向量,那么如何相对于空间中的显示内容定义向量?几何层次的更详细分类应适应“抽象类型”或“辅助对象”之间的差异,我们可以根据它们的帮助内容和有助于描述模型图元形状的类型对它们进行分组。

几何图形层次

进一步探索几何图形

在 Dynamo 中创建模型并不局限于我们可以通过节点所生成的内容。以下是进一步处理几何图形的一些关键方法:

  1. Dynamo 允许您输入文件 - 尝试将 CSV 用于点云,或将 SAT 用于引入曲面

  2. 使用 Revit 时,我们可以参照要在 Dynamo 中使用的 Revit 图元

  3. Dynamo Package Manager 为扩展几何图形类型和操作提供了附加功能 - 查看 Mesh Toolkit 软件包

网格

Dynamo 中的网格

什么是网格?

在计算建模领域,网格是表示三维几何图形的最普遍形式之一。网格几何图形通常由一组四边形或三角形组成,它可以是使用 NURBS 的轻量级和灵活的替代方案,并且网格用于从渲染和可视化到数字制造和三维打印的所有领域。

网格元素

Dynamo 使用“面-顶点”数据结构定义网格。在最基本的层次上,此结构只是分组为多边形的点集。网格的点称为“顶点”,而类似曲面的多边形称为“面”。

要创建网格,我们需要一列顶点和将这些顶点分组为面的系统(称为“索引组”)。

  1. 顶点列表

  2. 用于定义面的索引组列表

Mesh Toolkit

Dynamo 的网格功能可通过安装“Mesh Toolkit”软件包进行扩展。Dynamo Mesh Toolkit 包提供了多种工具,可从外部文件格式输入网格、从 Dynamo 几何图形对象创建网格,以及按顶点和索引手动构建网格。

该库还提供了一些工具,可用于修改网格、修复网格或提取水平切片以在制造中使用。

例如,有关使用此软件包的信息,请访问 Mesh Toolkit 案例研究。

Mesh Toolkit

深入探讨...

网格

网格是表示曲面或实体几何图形的四边形和三角形的集合。像实体一样,网格对象的结构包括顶点、边和面。还有一些使网络独一无二的特性,例如法线。

网格图元
  1. 网格顶点

  2. 网格边

    1. 仅具有一个邻接面的边称为“裸边”。所有其他边均为“装饰边”。

  3. 网格面

顶点 + 顶点法线

网格的顶点只是一列点。在构建网格或获取网格结构的相关信息时,顶点的索引非常重要。对于每个顶点,还有一个相应的顶点法线(向量),它描述了附加面的平均方向,并帮助我们了解网格的“入”和“出”方向。

顶点 + 法线
  1. 顶点

  2. 顶点法线

面

面是由三个或四个顶点组成的有序列表。因此,根据要建立索引的顶点位置,网格面的“曲面”表示处于隐含状态。我们已经拥有构成网格的顶点列表,因此无需提供单独的点来定义面,只需使用顶点的索引即可。这样,我们还可以在多个面中使用同一顶点。

  1. 使用索引 0、1、2 和 3 创建的四边形面

  2. 使用索引 1、4 和 2 创建的三角形面 请注意,索引组可以按其顺序移动 - 只要该顺序按逆时针顺序排序,相应面将正确定义

网格与 NURBS 曲面

网格几何图形与 NURBS 几何图形有何不同?何时可能要使用其中一个而不是另一个?

参数化

在前一章中,我们看到 NURBS 曲面由一系列沿两个方向的 NURBS 曲线进行定义。这些方向标有 U 和 V,并允许根据二维曲面域对 NURBS 曲面进行参数化。曲线本身作为方程存储在计算机中,从而允许将生成的曲面计算为任意小的精度。但是,将多个 NURBS 曲面组合在一起可能会非常困难。连接两个 NURBS 曲面将生成多重曲面,其中几何图形的不同部分将具有不同的 UV 参数和曲线定义。

控制点
  1. 曲面

  2. 等参(等参线)曲线

  3. 曲面控制点

  4. 曲面控制多边形

  5. 等参点

  6. 曲面框架

  7. 网格

  8. 裸边

  9. 网格网络

  10. 网格边

  11. 顶点法线

  12. 网格面/网格面法线

另一方面,网格由许多离散的精确定义的顶点和面组成。顶点网络通常无法通过简单的 UV 坐标进行定义;由于面是离散的,因此精度量内置到网格中,并只能通过优化网格和添加更多面来进行更改。由于缺少数学描述,因此网格可以更灵活地处理单个网格内的复杂几何图形。

局部影响与全局影响

另一个重要区别是网格或 NURBS 几何图形中的局部更改影响整个形状的程度。移动网格的一个顶点只会影响与该顶点相邻的面。在 NURBS 曲面中,影响范围更加复杂,具体取决于曲面的阶数以及控制点的权重和结。但通常,在 NURBS 曲面中移动单个控制点会在几何图形中产生更平滑、更广泛的更改。

编辑
  1. NURBS 曲面 - 移动控制点具有延伸到形状上的影响

  2. 网格几何图形 - 移动顶点仅对相邻图元有影响

一个可能有用的类比是将向量图像(由直线和曲线组成)与光栅图像(由各个像素组成)进行比较。如果放大向量图像,曲线将保持清晰明了,而放大光栅图像的结果是看到各个像素变大。在此类比中,可以将 NURBS 曲面与向量图像进行比较,因为存在平滑的数学关系,而网格的行为与具有设定分辨率的光栅图像类似。

曲线

Dynamo 中的曲线

什么是曲线?

曲线是我们介绍的第一个几何数据类型,有一组更熟悉的形状描述特性 - 弯曲度或笔直度如何?多长或多短?请记住,点仍然是我们的构建块,用于定义从直线到样条曲线以及它们之间的所有曲线类型。

曲线类型
  1. 线

  2. 多段线

  3. 圆弧

  4. 圆

  5. 椭圆

  6. NURBS 曲线

  7. 复合线

直线

直线由一组点组成,每条直线至少有 2 个点。在 Dynamo 中创建直线的最常见方法之一是使用 Line.ByStartPointEndPoint 在 Dynamo 中创建直线。

NURBS 曲线

NURBS 是一个用于精确表示曲线和曲面的模型。在 Dynamo 中使用两种不同方法制作正弦曲线,以创建 NURBS 曲线来比较结果。

  1. “NurbsCurve.ByControlPoints” 使用一列点作为控制点

  2. “NurbsCurve.ByPoints” 通过一列点绘制曲线

单击下面的链接下载示例文件。

可以在附录中找到示例文件的完整列表。

5KB
Geometry for Computational Design - Curves.dyn
Open

深入探讨...

曲线

术语 “曲线” 通常是所有不同类型弯曲(即使是笔直)形状的全部捕捉。大写字母“C”(即“Curve”)是所有这些形状类型(直线、圆、样条曲线等)的父分类。从技术上讲,“曲线”描述了通过将“t”输入到函数集合中可以找到的所有可能点,范围可能从简单形式 (x = -1.26*t, y = t) 到涉及微积分的函数。不论我们使用何种类型的曲线,这一名为“t”的 “参数” 都是我们可以计算的特性。此外,不论形状的外观如何,所有曲线也都具有起点和终点,它们与用于创建曲线的最小和最大 t 值一致符合。这也有助于我们了解其方向性。

曲线参数

请务必注意,Dynamo 假定曲线的“t”值域可理解为 0.0 到 1.0。

所有曲线还拥有许多可用于描述或分析它们的特性或特征。如果起点和终点之间的距离为零,则曲线为“闭合”。此外,每条曲线都有多个控制点,如果所有这些点都位于同一平面中,则该曲线为“平面”的。某些特性整体上适用于曲线,而其他特性仅适用于沿曲线的特定点。例如,平面性是全局特性,而给定 t 值处的切线向量是局部特性。

线

“线” 是最简单的曲线形式。它们看起来可能不弯曲,但它们实际上是曲线 - 只是没有任何曲率。创建直线的方法有几种,最直观的形式是从点 A 到点 B。在这两个点之间绘制“直线 AB”的形状,但在数学上它在两个方向上无限延伸。

直线

将两条直线连接在一起时,我们得到了 “多段线”。在此处,我们可以直接了解什么是“控制点”。编辑其中任何点位置都将更改多段线的形状。如果多段线是闭合的,则会得到一个多边形。如果多边形的边长全部相等,则将其描述为常规边。

多段线 + 多边形

圆弧、圆、椭圆圆弧和椭圆

随着我们为定义形状的参数化函数增加了更多复杂性,我们可以从直线进一步创建 “圆弧” 、“圆” 、“椭圆圆弧” 或 “椭圆”,方法是描述一个或两个半径。“圆弧”版本与“圆”或“椭圆”之间的差异仅在于形状是否是闭合的。

圆弧 + 圆

NURBS + 复合线

NURBS(非均匀有理基本样条曲线)是数学表示形式,可以对任何形状进行精确建模(从简单的二维直线、圆、圆弧或矩形到最复杂的三维自由形式有机曲线)。由于其灵活性(相对较少的控制点,但基于“阶数”设置的平滑插值)和精度(受强大的数学约束),NURBS 模型可用于从插图、动画到制造的任何过程。

NURBS 曲线

阶数:曲线的阶数确定了控制点对曲线的影响范围;阶数越高,范围越大。“阶数”为正整数。此数字通常为 1、2、3 或 5,但可以是任意正整数。NURBS 直线和多段线通常为 1 阶,并且大多数自由形式曲线为 3 阶或 5 阶。

控制点:控制点是一列至少包含 Degree+1 的点。更改 NURBS 曲线形状的最简单方法之一是移动其控制点。

权重:控制点具有一个称为“权重”的关联数字。权重通常为正数。当曲线的控制点全都具有相同的权重(通常为 1)时,曲线称为“非有理性曲线”,否则曲线称为“有理曲线”。大多数 NURBS 曲线是非有理性曲线。

结:结是一列 (Degree+N-1) 数字,其中 N 是控制点的数量。结与权重一起使用,以控制控制点对生成的曲线的影响。结的一个用途是在曲线中的某些点处创建扭折。

NURBS 曲线阶数
  1. 阶数 = 1

  2. 阶数 = 2

  3. 阶数 = 3

请注意,阶数值越高,则用于对生成的曲线进行插值的控制点越多。

实体

Dynamo 中的实体

什么是实体?

如果我们要构建无法基于单个曲面创建的更复杂模型,或者要定义明确的体积,我们现在必须进入到实体(和多边形曲面)领域。即使简单的立方体也足够复杂,需要六个曲面,每个面一个。实体可用于访问曲面所没有的两个关键概念 - 更加优化的拓扑描述(面、边、顶点)和布尔操作。

用于创建尖球实体的布尔运算

可以使用布尔运算修改实体。让我们使用几个布尔操作来创建一个尖球。

  1. Sphere.ByCenterPointRadius:创建基本体。

  2. Topology.Faces、Face.SurfaceGeometry:查询实体的面并转换为曲面几何图形(在本例中,球体仅有一个面)。

  3. Cone.ByPointsRadii:使用曲面上的点构造圆锥体。

  4. Solid.UnionAll:使圆锥体和球体合并。

  5. Topology.Edges:查询新实体的边

  6. Solid.Fillet:对尖球的边进行圆角处理

单击下面的链接下载示例文件。

可以在附录中找到示例文件的完整列表。

8KB
Geometry for Computational Design - Solids.dyn
Open

冻结

布尔运算很复杂,计算速度可能很慢。使用“冻结”功能可暂停选定节点和受影响的下游节点的执行。

  1. 使用快捷上下文菜单可冻结“实体并集”操作。

  2. 选定节点和所有下游节点将以浅灰色重影模式预览,并且受影响的线将显示为虚线。受影响的几何体预览也将生成重影。现在,可以在上游修改值,而无需计算布尔并集。

  3. 要解冻节点,请单击鼠标右键,然后取消选中“冻结”。

  4. 所有受影响的节点和关联的几何图形预览将更新并还原为标准预览模式。

您可以在 节点和导线 部分阅读有关冻结节点的详细信息。

深入探讨...

实体

实体由一个或多个曲面组成,这些曲面包含通过定义“内”或“外”的闭合边界进行定义的体积。无论这些曲面有多少,它们都必须形成“无间隙”体积才能视为实体。可以通过将曲面或多边形曲面连接在一起,或者使用放样、扫掠和旋转等操作来创建实体。球体、立方体、圆锥体和圆柱体基本体也是实体。至少删除了一个面的立方体视为多边形曲面,它具有一些类似的属性,但它不是实体。

实体
  1. 平面由单个曲面组成,而且不是实体。

  2. 球体由一个曲面组成,但_是_实体。

  3. 圆锥体由两个连接在一起以形成实体的曲面组成。

  4. 圆柱体由三个连接在一起以形成实体的曲面组成。

  5. 立方体由六个连接在一起以形成实体的曲面组成。

拓扑

实体由三种类型的元素组成:顶点、边和面。面是组成实体的曲面。边是定义相邻面之间的连接的曲线,顶点是这些曲线的起点和终点。可以使用拓扑节点查询这些图元。

拓扑
  1. 面

  2. 边

  3. 顶点

操作

可以通过对实体的边进行圆角或倒角操作来修改实体,以消除锐角和角度。倒角操作可在两个面之间创建规则曲面,而圆角可在面之间过渡以保持相切。

  1. 实体立方体

  2. 倒角立方体

  3. 圆角立方体

布尔运算

实体布尔运算是用于合并两个或两个以上实体的方法。单个布尔操作实际上意味着执行四项操作:

  1. 与两个或多个对象相交。

  2. 在交点处分割它们。

  3. 删除几何图形中不需要的部分。

  4. 重新连接所有内容。

这使实体布尔成为一个强大的省时过程。有三种实体布尔运算,它们可区分保留几何图形的哪些部分。

  1. 并集:删除实体的重叠部分,并将它们合并为单个实体。

  2. 差集:从一个实体中减去另一个实体。要减去的实体称为工具。请注意,可以切换哪个实体是保留反向体积的工具。

  3. 交集:仅保留两个实体的相交体积。

除了这三项操作,Dynamo 还具有 “Solid.DifferenceAll” 和 “Solid.UnionAll” 节点,用于对多个实体执行差集和并集操作。

  1. UnionAll:使用球体和朝外的圆锥体进行并集操作

  2. DifferenceAll:使用球体和朝内圆锥体时的差集运算

向量、平面和坐标系

Dynamo 中的向量、平面和坐标系

向量

由大小和方向表示,可以将其视为以给定速度朝特定方向加速的箭头。在 Dynamo 中,它是模型的关键组件。请注意,由于它们属于“辅助对象”的“抽象”类别,因此当我们创建向量时,不希望在背景预览中看到任何内容。

  1. 我们可以使用一条线作为向量预览的替代对象。

单击下面的链接下载示例文件。

可以在附录中找到示例文件的完整列表。

平面

是一个二维曲面,可以将其视为无限延伸的平面。每个平面都有一个原点、X 方向、Y 方向和 Z(向上)方向。

  1. 尽管它们是抽象的,但平面确实具有原点位置,以便我们可以在空间中定位它们。

  2. 在 Dynamo 中,平面在背景预览中渲染。

单击下面的链接下载示例文件。

可以在附录中找到示例文件的完整列表。

坐标系

是一个用于确定点或其他几何图元位置的系统。下图介绍了它在 Dynamo 中的外观以及每种颜色所表示的含义。

  1. 尽管它们是抽象的,但坐标系也具有原点位置,以便我们可以在空间中定位它们。

  2. 在 Dynamo 中,坐标系在背景预览中渲染为一个点(原点)和定义轴(X 为红色、Y 为绿色以及 Z 为蓝色,遵循约定)的线。

单击下面的链接下载示例文件。

可以在附录中找到示例文件的完整列表。

深入探讨...

向量、平面和坐标系构成了抽象几何图形类型的主组。它们帮助我们为描述形状的其他几何图形定义位置、方向和空间环境。如果我说我在纽约市第 42 街的百老汇(坐标系)、站在街道上(平面)、面朝北(向量),我刚刚使用这些“辅助对象”来定义我所在的位置。这同样适用于手机壳产品或摩天大楼 - 我们需要此环境来开发模型。

向量

向量是描述方向和幅值的几何量。向量是抽象的;即它们表示量,而不表示几何图元。向量可能容易与“点”混淆,因为它们都是由一列值组成。不过,有一个关键区别:“点”描述给定坐标系中的位置,而“向量”描述位置中的相对差异(这就是所谓的“方向”)。

如果相对差异的概念令人困惑,请将“向量 AB”想象为“我站在点 A,面朝点 B”。从这里 (A) 到那里 (B) 的方向就是我们所谓的向量。

使用相同 AB 符号将向量详解为其各组成部分:

  1. 向量的 “起点” 称为 “基底”。

  2. 向量的 “终点” 称为 “尖端” 或 “指向”。

  3. “向量 AB”与“向量 BA”不同 - 它们指向相反的方向。

如果您需要关于向量(及其抽象定义)的喜剧效果,请观看经典喜剧《飞机》,聆听时常引用的半开玩笑台词:

Roger, Roger.What's our vector, Victor?

平面

平面是二维抽象“辅助对象”。更具体地说,平面在概念上是“平”的,在两个方向上无限延伸。通常,它们在其原点附近被渲染为较小的矩形。

您可能会想:“等等!原点?这听起来像是一个坐标系...就像我在 CAD 软件中建模所使用的坐标系!”

您是对的!大多数建模软件都利用构造平面或“标高”来定义要在其中绘制的本地二维环境。XY、XZ、YZ 或北、东南、平面图听起来可能更加熟悉。这些都是“平面”,用于定义无限的“平”环境。平面没有深度,但也有助于我们描述方向 -

坐标系

如果我们对平面感到满意,那么我们只需一小步就能理解坐标系。平面与坐标系一样具有相同的各部分,前提是它是标准的“欧几里德”或“XYZ”坐标系。

但是,还有其他可选坐标系,如圆柱坐标系或球形坐标系。如我们在后续各部分中所见,坐标系也可应用于其他几何图形类型,以定义该几何图形上的位置。

添加可选坐标系 - 圆柱坐标系、球形坐标系

Solid Boolean
向量
6KB
Geometry for Computational Design - Vectors.dyn
Open
平面
7KB
Geometry for Computational Design - Plane.dyn
Open
坐标系
3KB
Geometry for Computational Design - Coordinate System.dyn
Open
Dynamo 中的向量
Dynamo 中的平面
Dynamo 中的坐标系
向量、平面和坐标
向量详细信息
向量
平面
坐标系