- PVSM.RU - https://www.pvsm.ru -
Построение геометрии любой детали в SolveSpace начинается с проектирования эскиза (sketch). Эскиз представляет собой набор замкнутых контуров (циклов, loop), каждый из которых не должен иметь самопересечений и пересечений с другими контурами. Контуры состоят из примитивов (entity). Примитивы объединяются в контуры с помощью ограничения "точка-к-точке" (points coincident).
Часть 1 [1]
Создание примитивов в SolveSpace имеет одну особенность: пользователь создает их наборами (запросы, requests). Например, при запросе на создание отрезка создаются три сущности для его представления: две точки и линия, соединяющая их. Для пользователя не существует разделения запроса на отдельные сущности: если пользователь удаляет одну из сущностей запроса, удаляется и весь запрос. Сущности можно разделить на два класса: те, которые не имеют параметров (parameters) и сущности, имеющие параметры: точки, нормали и расстояния.
Точки в SolveSpace являются основой параметризации и имеют параметры, соответствующие координатам в Декартовой системе. Точки бывают двумерные и трехмерные и содержат два или три параметра соответственно. Для простоты, будем рассматривать такие характеристики, как число параметров, степеней свободы (degrees of freedom, DOF) [2] и уравнений только для двумерного случая.
Нормаль имеет ссылку на точку, определяющую начало системы координат (origin). Нормали используются для задания системы координат в сборках деталей (assembly) и для некоторых примитивов. Пользователь не может создавать нормали. Нормаль вводит 4 параметра и одно уравнение (equation), что соответствует 3 вращательным степеням свободы. Этот поворот выражается кватернионом, а уравнение служит для приведения его к единичной длине.
Расстояния служат для задания радиусов окружностей. Эта сущность не имеет визуализации, и ее невозможно создать отдельно, поэтому ее можно рассматривать как часть окружности. Сущность расстояния определяет единственный параметр — радиус окружности.
Отрезок состоит из двух точек и линии, которая их соединяет. Отрезок вводит 4 степени свободы и 4 параметра.
Запрос на создание окружности создает точку, нормаль, расстояние и линию окружности. Нормаль нужна для ориентации окружности в трехмерном пространстве.
Запрос на создание дуги окружности состоит из трех точек, нормали и отрезка окружности. Дуга добавляет шесть параметров и одно уравнение. Результирующее число степеней свободы — пять. Их можно представить как координаты центра, радиус, одномерные координаты (углы) начала и конца дуги.
В SolveSpace существует возможность создания кубических сплайнов Безье. Сплайны могут быть замкнутые и незамкнутые. Если сплайн содержит более, чем 4 точки, создается несколько отрезков кубических сплайнов, с гладкой стыковкой первых и вторых производных. Например, такие сплайны идеально подходят для проектирования аэродинамического профиля крыла самолета и других обтекаемых форм. Для незамкнутого сплайна имеется возможность изменять производные в начале и конце сплайна с помощью изменения координат соответствующих точек.
SolveSpace поддерживает создание контуров на основе текста с использованием шрифтов формата TrueType, которые тоже основаны на кубических сплайнах. Это позволяет создавать надписи на объемных моделях деталей.
Существует возможность вставки произвольного изображения из файла формата png. Это изображение можно свободно вращать, изменять его размеры, благодаря чему оно может служить основой для ручного конвертирования отсканированных чертежей в формат SolveSpace. Угловые точки изображений могут быть задействованы в ограничениях, что позволяет выравнивать изображение и настраивать его масштаб [3].
Здесь я кратко познакомил вас с основными типами сущностей двумерного эскиза SolveSpace. Эти знания будут активно использоваться в следующей статье, где будут рассмотрены уравнения ограничений.
Часть 1 [1]
Автор: FadeToBlack
Источник [4]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/matematika/250349
Ссылки в тексте:
[1] Часть 1: https://habrahabr.ru/post/324160/
[2] степеней свободы (degrees of freedom, DOF): https://ru.wikipedia.org/wiki/%D0%A1%D1%82%D0%B5%D0%BF%D0%B5%D0%BD%D0%B8_%D1%81%D0%B2%D0%BE%D0%B1%D0%BE%D0%B4%D1%8B_(%D0%BC%D0%B5%D1%85%D0%B0%D0%BD%D0%B8%D0%BA%D0%B0)
[3] выравнивать изображение и настраивать его масштаб: https://youtu.be/1TX8saIFE-Q?list=PLqmaFsEpxcUVTH-uWJiaISNfe5vAYoeNf
[4] Источник: https://habrahabr.ru/post/324514/
Нажмите здесь для печати.