Несмотря на то что в Dynamo можно создавать разнообразные сложные геометрические формы, основу машинного проектирования составляют простые геометрические примитивы. Они либо задают итоговую форму спроектированной конструкции, либо играют роль каркаса, на котором достраивается более сложная геометрия.
Объект CoordinateSystem не является геометрическим объектом в строгом смысле, однако он играет важную роль при построении геометрии. Объект CoordinateSystem позволяет отслеживать как положение, так и геометрические преобразования, такие как поворот, сдвиг и масштабирование.
Для создания объекта CoordinateSystem, центрованного по точке с координатами x = 0, y = 0, z = 0 без поворота, масштабирования или сдвига, достаточно вызвать конструктор Identity:
Объекты CoordinateSystem, к которым были применены геометрические преобразования, в этой главе не рассматриваются, однако стоит упомянуть один конструктор, который позволяет создать систему координат в определенной точке, — CoordinateSystem.ByOriginVectors:
Простейшим геометрическим примитивом является Point (точка), обозначающий расположение, у которого отсутствуют измерения, в трехмерном пространстве. Как уже упоминалось ранее, создать точку в определенной системе координат можно несколькими способами: с помощью Point.ByCoordinates по заданным координатам X, Y и Z; с помощью Point.ByCartesianCoordinates по заданным координатам X, Y и Z в определенной системе координат; с помощью Point.ByCylindricalCoordinates на цилиндре, заданном по радиусу, углу поворота и высоте; и, наконец, с помощью Point.BySphericalCoordinates на сфере, заданной по радиусу и двум углам поворота.
В этом примере показаны точки, созданные в разных системах координат:
Следующим по сложности примитивом Dynamo является отрезок, который представляет собой бесконечное количество точек, лежащее между двумя конечными точками. Чтобы создать отрезок, можно либо явным образом задать две граничные точки с помощью конструктора Line.ByStartPointEndPoint, либо задать начальную точку, направление и длину с помощью конструктора Line.ByStartPointDirectionLength.
В Dynamo доступны объекты, представляющие базовые типы геометрических трехмерных примитивов: кубоиды, для создания которых используется Cuboid.ByLength; конусы, создаваемые с помощью Cone.ByPointsRadius и Cone.ByPointsRadii; цилиндры, получаемые при помощи Cylinder.ByRadiusHeight; и сферы, создаваемые с помощью Sphere.ByCenterPointRadius.