3D кривая смещения > По грани

Предыдущая страницаВ началоСледующая страница

Тип смещения Path3dEquidistant_ByFace По грани, доступный в команде CreateEquidistant3DPath 3D кривая смещения, предполагает перемещение исходной кривой по заданным пользователем опорным поверхностям.

 

Для задания параметров смещения данного типа выполните следующие действия после выбора типа:

1.Выберите метод смещения (необязательное действие).

2.Укажите опорные поверхности (если выбрано ребро тела, данное действие является необязательным).

3.Задайте величину смещения (необязательное действие).

4.Задайте направление смещения (необязательное действие).

5.Для метода Path3dEquidistant_ByFaceByFace По граням задайте способ обработки изломов (необязательное действие).

6.Для метода Path3dEquidistant_ByFaceBySurf По поверхностям задайте способ обрезки результата по рёбрам опорной поверхности (необязательное действие).

7.Укажите параметры расширения результата до рёбер грани (необязательное действие).

8.Если в результате смещения образовалось несколько не связанных друг с другом участков кривой, выберите создаваемые участки или задайте параметры объединения участков (необязательное действие).

После задания параметров смещения можно завершить ввод с помощью кнопки Header_OK или <Ctrl>+<Enter>, либо выполнить дополнительные действия в соответствии с общим алгоритмом создания кривой смещения.

Все параметры смещения задаются в разделах Основные параметры и Дополнительные параметры окна параметров команды.

Метод смещения, Опорные поверхности

Для данного типа смещения доступны следующие методы:

Path3dEquidistant_ByFaceByFace По граням
В качестве опорных поверхностей используются грани. Результирующая кривая не может выходить за пределы заданного набора граней.
Если исходная кривая задана частью твердого или поверхностного тела (ребрами, границами грани, циклом), то смещение может быть осуществлено только по граням этого тела. В таком случае по умолчанию используются все грани тела, а поле выбора граней остаётся пустым. При необходимости можно выбрать желаемые грани вручную.
Если исходная кривая задана прочими элементами, то в качестве опорных поверхностей можно использовать грани любого тела, независимо от того, лежит ли на них кривая. При этом все грани должны принадлежать одному и тому же телу. В этом случае вместо выбора граней также можно выбрать операцию. При выборе операции опорными поверхностями будут все грани тела, сформированного этой операцией. Если исходная кривая не лежит на опорных поверхностях, то она автоматически проецируется по нормали к опорным поверхностям и кривая смещения строится путём перемещения этой проекции. Если в результате проецирования получается несколько не связанных друг с другом участков, то команды выдаст ошибку. Выбор граней имеет приоритет над выбором операции.

Path3dEquidistant_ByFaceBySurf По поверхностям
В качестве опорных поверхностей используются аналитические поверхности, формирующие выбранную грань. Результирующая кривая может выходить за пределы самих граней. Можно выбирать только те грани, на которых лежит исходная кривая. Для данного метода выбор граней является обязательным, а выбор операции недоступен.

Выбор метода смещения осуществляется в выпадающем списке Метод в верхней части раздела Основные параметры окна параметров команды. Выбор граней для обоих методов осуществляется с помощью поля Грани, расположенного ниже. Выбор операций для метода Path3dEquidistant_ByFaceByFace По граням осуществляется с помощью поля Операция, которое отображается там же, только когда выбрана исходная кривая подходящего типа.

13S_OffsetCurveBySurface1

13S_OffsetCurveBySurface2

13S_OffsetCurveBySurface3

Смещение ребра отверстия:

по всем граням
родительского тела;

по двум граням,
выбранным вручную;

по поверхности,
заданной одной из граней.

Величина смещения

Величина смещения задаётся в группе параметров Смещение в нижней части раздела Основные параметры окна параметров команды. Содержимое группы зависит от способа задания смещения. В выпадающем списке, расположенном в верхней части группы, доступны следующие способы:

Path3dEquidistant_Constant Константа
Величина смещения остаётся постоянной по всей длине исходной кривой и задаётся либо численным значением, либо точкой, через которую должна проходить результирующая кривая. Для ввода численного значения используется поле Значение в окне параметров или манипулятор-стрелка в 3D окне. Ввод отрицательных значений не допускается. Справа от поля доступна кнопка, позволяющая ReverseDirection Изменить направление смещения на противоположное (см. ниже). Для выбора точки используется поле Точка. Точка должна лежать на опорной поверхности, иначе команда выдаст ошибку.

13_OffsetCurveBySurfacePoint

13S_OffsetCurveBySurfacePoint

Смещение нижнего ребра грани до середины бокового

Path3dEquidistant_Function Функция
Данный способ доступен только для смещения Path3dEquidistant_ByFaceBySurf По поверхностям. Смещение определяется графиком изменения значений вдоль длины кривой. По умолчанию график задаётся с помощью таблицы значений, в которой указывается Значение смещения в двух точках - в начале и в конце кривой (Положение 0% и Положение 100%), между которыми значение изменяется равномерно. При необходимости можно задать произвольный график с помощью редактора графиков, нажав кнопку GraphSmall Добавить график, расположенную справа от таблицы значений (см. Использование графиков в 3D операциях). Там же доступна кнопка, позволяющая ReverseDirection Изменить направление смещения на противоположное (см. ниже).

При задании графика следует учитывать следующие факторы:

функция должна быть определена на всей длине кривой, иначе команда выдаст ошибку;

участки графика, выходящие за пределы длины кривой, игнорируются;

график может пересекать ось абсцисс только один раз, иначе команда выдаст ошибку;

участки графика, на которых функция имеет отрицательные значения игнорируются - кривая смещения будет заканчиваться в точке пересечения оси абсцисс графиком.

13_OffsetCurveBySurfaceTable

13S_OffsetCurveBySurfaceTable

Смещение нижнего ребра грани с помощью таблицы значений

13_OffsetCurveBySurfaceGraph

 

 

Смещение нижнего ребра грани с помощью произвольного графика

13S_OffsetCurveBySurfaceGraph

13S_OffsetCurveBySurfaceGraph2

Для смещения Path3dEquidistant_ByFaceByFace По граням твёрдого тела, если грани не указаны вручную, максимальная величина не ограничена: при выходе за пределы текущей грани результирующая кривая перемещается на соседнюю грань в соответствующем направлении.

Для смещения Path3dEquidistant_ByFaceByFace По граням поверхностного тела, если грани не указаны вручную, максимальная величина смещения ограничена пределами текущей стороны тела: при выходе за пределы текущей грани, так же как и для твёрдого тела, результирующая кривая перемещается на соседнюю грань, однако перемещение на обратную сторону той же грани невозможно (при попытке такого перемещения команды выдаст ошибку).

Для смещения Path3dEquidistant_ByFaceByFace По граням, указанным вручную, максимальная величина ограничена пределами этой грани. При попытке смещения за пределы грани команда выдаст ошибку.

Для смещения Path3dEquidistant_ByFaceBySurf По поверхностям максимальная величина ограничена размерами поверхности, формирующей выбранную грань. При попытке смещения за пределы поверхности команда выдаст ошибку. Если поверхность бесконечная в направлении смещения, то и величина смещения не ограничена.

Направление смещения

Смещение осуществляется по нормали к исходной кривой вдоль исходной поверхности. Возможны два варианта смещения - по одну или по другую сторону от исходной кривой. В общем случае вариант по умолчанию выбирается системой произвольным образом. Для обоих методов смещения можно сменить направление на противоположное с помощью кнопки ReverseDirection Изменить направление, расположенной справа от поля ввода величины смещения.

При смещении ребра (или совпадающей с ним кривой) по методу Path3dEquidistant_ByFaceByFace По граням по грани, ограниченной этим ребром, направление по умолчанию - внутрь грани. При этом, если грани не указаны вручную, смена направления ведет к смене грани, по которой выполняется смещение. Если грани указаны вручную, то смена направления не имеет эффекта.

13S_OffsetCurveBySurfaceDir1

13S_OffsetCurveBySurfaceDir2

Смещение по граням, определяемым автоматически:

в направлении по умолчанию

в альтернативном направлении

13_OffsetCurveBySurfaceDir3

13S_OffsetCurveBySurfaceDir3

Дальнейшее смещение в направлении по умолчанию приводит к ошибке из-за вырождения кривой.

Дальнейшее смещение в альтернативном направлении приводит к разделению результата на не связанные друг с другом участки из-за разницы направлений смещения на разных гранях.

При смещении ребра (или совпадающей с ним кривой) по методу Path3dEquidistant_ByFaceBySurf По поверхностям по поверхности, которая задана гранью, ограниченной этим ребром, направление по умолчанию может быть разным. При этом, если направление (автоматически определённое по умолчанию или изменённое вручную с помощью кнопки ReverseDirection Изменить направление) - наружу грани, то команда выдаст ошибку. В этом случае следует установить флаг По текущей поверхности, расположенный в разделе Дополнительные параметры окна параметров команды. Данный флаг является альтернативным средством смены направления, доступным только для смещения Path3dEquidistant_ByFaceBySurf По поверхностям.

13_OffsetCurveBySurfaceDir6

13S_OffsetCurveBySurfaceDir4

13S_OffsetCurveBySurfaceDir5

Смещение по поверхности:

в направлении по умолчанию

в альтернативном направлении
с использованием опции По текущей поверхности

13S_OffsetCurveBySurfaceDir6

Дальнейшее смещение
в направлении по умолчанию
с выходом за пределы исходной грани

Обработка изломов

Данная опция доступна только для смещения Path3dEquidistant_ByFaceByFace По граням.

При смещении кривой, имеющей изломы, в изломах образуются разрывы. В выпадающем списке Изломы, расположенном в верхней части раздела Дополнительные параметры окна параметров команды, можно выбрать способ устранения таких разрывов:

Естественное расширение
Участки продолжаются в соответствии с их геометрией (прямой участок продолжается по прямой, окружность - по окружностью).

По касательной
Участки продолжаются прямыми линиями, касательными к результатам смещения в точках разрыва.

Скруглить
Строится скругление между конечными точками соседних участков.

3DPathOffset3

3DPathOffset5

3DPathOffset4

Естественное расширение

По касательной

Скруглить

Обрезка по рёбрам

Данная опция доступна только для смещения Path3dEquidistant_ByFaceBySurf По поверхностям.

При смещении Path3dEquidistant_ByFaceByFace По граням твёрдого тела, если грани не указаны вручную, части результирующей кривой, выступающие за пределы исходной грани, всегда переносятся на соседние грани.

Для смещения Path3dEquidistant_ByFaceByFace По граням поверхностного тела, если грани не указаны вручную, части результирующей кривой, выступающие за пределы исходной грани, переносятся на соседние грани той же стороны тела, но обрезаются по рёбрам, отделяющим одну сторону тела от другой.

При смещении Path3dEquidistant_ByFaceByFace По граням, если грани указаны вручную, части результирующей кривой, выступающие за пределы выбранных граней, всегда обрезаются по рёбрам этих граней.

При смещении Path3dEquidistant_ByFaceBySurf По поверхностям в выпадающем списке Обрезка по рёбрам можно выбрать один из следующих способов обрезки результирующей кривой по рёбрам граней, задающих опорную поверхность:

13S_OffsetCurveBySurfaceTrimNo

13S_OffsetCurveBySurfaceTrimIn

Нет

По внутренним

13S_OffsetCurveBySurfaceTrimOut

13S_OffsetCurveBySurfaceTrimAll

По внешним

По всем

Расширение результата до рёбер грани

Результирующую кривую можно автоматически продлить по касательной до рёбер грани, задающей опорную поверхность. Для этого необходимо установить флаг Расширить до рёбер грани, расположенный в верхней части раздела Дополнительные параметры окна параметров команды.

По умолчанию участки кривой, добавляемые при расширении, представляют собой отдельные рёбра. При необходимости их можно объединить с соседними участками результата смещения, установив флаг Объединить смежные ребра, расположенный ниже. Если расширение до рёбер грани не производится, данная опция недоступна.

13S_OffsetCurveBySurfaceExtendNo

13S_OffsetCurveBySurfaceExtendYes

13S_OffsetCurveBySurfaceExtendJoin

Смещение без расширения

Результат смещения с расширением без объединения (разные рёбра показаны разными цветами)

Результат смещения с расширением и объединением

(единое ребро)

Выбор участков

13_3DLineProj_Sol

В результате смещения может образоваться несколько не связанных друг с другом участков кривой. Список участков отображается в нижней части раздела Основные параметры окна параметров команды. Для каждого участка в списке доступен флаг. Какие из участков будут созданы в итоге, зависит от параметра Оставить, расположенного выше:

OnlySelected Выбранные
Будут созданы только те участки, флаги которых установлены в списке.

AllExceptSelected Все, кроме выбранных
Будут созданы только те участки, флаги которых сняты в списке.

ResultSelectAll Все
Будут созданы все участки. Данный вариант применяется по умолчанию.

По умолчанию выбран вариант Все. При этом флаги всех участков принудительно установлены и не могут быть сняты вручную. При переключении на другие варианты флаги всех участков снимаются и могут быть установлены или сняты вручную нажатием mouse left на флаге или на манипуляторе участка. Манипуляторы участков в 3D окне выполнены в виде толстых линий, повторяющих форму участков. Чтобы понять расположение того или иного участка в 3D окне, выберите его строку в списке - манипулятор подсветится красным. Цвета манипуляторов остальных участков зависят от того, будут ли они созданы в итоге: жёлтый - участок не создаётся, зелёный - участок создаётся.

Объединение участков

13_OffsetCurveBySurfaceJoin

Вместо выбора создаваемых участков можно объединить все участки в единую кривую, заполнив разрывы между соседними участками там, где исходная кривая представляла собой единое целое. Для этого необходимо установить флаг Объединить участки, расположенный под списком участков.

При объединении участков также можно дополнительно соединить начало первого участка с концом последнего, создав таким образом замкнутую кривую. Для этого необходимо установить флаг Замкнуть участки, расположенный ниже.

13S_OffsetCurveSupportedNoJoin

13S_OffsetCurveSupportedJoin

13S_OffsetCurveSupportedCloseG0

Без объединения

Объединение без замыкания

Объединение с замыканием

Форма частей кривой, добавляемых при объединении и замыкании участков, определяется параметром Гладкость, который может принимать следующие значения:

G0
Участки соединяются по прямой.

G1
Участки соединяются кривыми, c соблюдением непрерывности по касательной.

G2
Участки соединяются кривыми, c соблюдением непрерывности по кривизне.

13S_OffsetCurveSupportedCloseG0

13S_OffsetCurveSupportedCloseG1

13S_OffsetCurveSupportedCloseG2

G0

G1

G2

См. также:

3D кривая смещения