Скругляет углы плоского контура или грани дугами заданного радиуса.
Без indexes каждый угол скругляется с radius. С indexes, считая с 1 вдоль очертания, скругляются только эти углы, каждый с radius или соответствующей записью radiusList, той же длины, что indexes. Контуры со свободными ребрами используют fillet3DWire.
Плоский контур или грань, радиус или список радиусов и необязательные индексы углов, начиная с 1
Скругленный контур или грань
const rectangle = await bitbybit.occt.shapes.wire.createRectangleWire({ width: 10, length: 5, center: [0, 0, 0], direction: [0, 1, 0] });
const rounded = await bitbybit.occt.fillets.fillet2d({ shape: rectangle, radius: 1 });
const twoCorners = await bitbybit.occt.fillets.fillet2d({ shape: rectangle, radiusList: [1, 2], indexes: [1, 3] });
Скругляет углы нескольких плоских контуров или граней, как fillet2d для одного, с одними и теми же радиусом и индексами углов для всех.
Плоские контуры или грани, радиус или список радиусов и необязательные индексы углов, начиная с 1
Скругленные контуры или грани, в том же порядке
Соединяет два ребра, лежащих в одной плоскости, дугой скругления заданного радиуса, обрезая ребра до встречи с ней, и возвращает три части как один контур.
Плоскость задается planeOrigin и planeDirection, ее нормалью. Когда подходят несколько дуг, solution выбирает одну по индексу; -1 берет ближайшую к planeOrigin.
Два ребра, плоскость, в которой они лежат, радиус и индекс решения
Контур из первого ребра, дуги и второго ребра
Снимает фаски с углов плоского контура или грани: каждый угол срезается на distance вдоль одного ребра, под angle градусов к нему.
Без indexes фаска снимается с каждого угла; с ними, считая с 1 вдоль очертания, только с этих углов.
Плоский контур или грань, расстояние, угол и необязательные индексы углов, начиная с 1
Контур или грань с фасками
Снимает фаску с ребер формы на расстояние, в единицах модели, срезая каждое острое ребро до плоской полосы.
Без indexes фаска снимается с каждого ребра на distance. С indexes, считая с 0 в порядке, в котором их перечисляет shapes.edge.getEdges, фаска снимается только с этих ребер, с каждого на distance или соответствующую запись distanceList, в порядке ребер.
Форма, расстояние или список расстояний и необязательные индексы ребер, начиная с 0
Форма с фасками на ребрах
Снимает фаску с заданных ребер формы, с каждого на свое расстояние.
Ребра должны принадлежать форме; distanceList соотносится с ними по позиции и должен быть той же длины, иначе выбрасывается ошибка.
Форма, ее ребра для снятия фаски и по одному расстоянию на ребро
Форма с фасками на ребрах
Снимает с одного ребра формы неравномерную фаску: distance1 измеряется на face, одной из двух граней, сходящихся на ребре, а distance2 на другой.
Грань решает, какая сторона получает какое расстояние; поменяйте их местами, чтобы перевернуть фаску.
Форма, ребро, грань, к которой относится первое расстояние, и два расстояния
Форма с фаской на ребре
Снимает с нескольких ребер формы одну и ту же неравномерную фаску: distance1 измеряется на парной грани каждого ребра, а distance2 на другой грани.
faces соотносится с edges по позиции и должен быть той же длины, иначе выбрасывается ошибка.
Форма, ребра, по одной парной грани на ребро и два расстояния
Форма с фасками на ребрах
Снимает с нескольких ребер формы фаски, с каждого свою неравномерную: для каждого ребра distances1 измеряется на его парной грани, а distances2 на другой грани.
faces, distances1 и distances2 соотносятся с edges по позиции и все должны быть одной длины, иначе выбрасывается ошибка.
Форма, ребра, по одной парной грани на ребро и два списка расстояний
Форма с фасками на ребрах
Снимает фаску с одного ребра формы на расстояние, измеряемое на face, и под углом в градусах от этой грани.
Фаска начинается на distance от ребра на заданной грани и отходит от нее под angle; 45 градусов дают равномерную фаску.
Форма, ребро, грань, на которой измеряется расстояние, расстояние и угол
Форма с фаской на ребре
Снимает фаску с нескольких ребер формы на одно и то же расстояние и под одним углом, расстояние измеряется на парной грани каждого ребра, а угол в градусах от нее.
faces соотносится с edges по позиции и должен быть той же длины, иначе выбрасывается ошибка.
Форма, ребра, по одной парной грани на ребро, расстояние и угол
Форма с фасками на ребрах
Снимает фаску с нескольких ребер формы, с каждого на свое расстояние и под своим углом, расстояние измеряется на парной грани ребра, а угол в градусах от нее.
faces, distances и angles соотносятся с edges по позиции и все должны быть одной длины, иначе выбрасывается ошибка.
Форма, ребра, по одной парной грани на ребро, расстояния и углы
Форма с фасками на ребрах
Скругляет ребра формы радиусом скругления, в единицах модели.
Без indexes каждое ребро скругляется с radius. С indexes, считая с 0 в порядке, в котором их перечисляет shapes.edge.getEdges, скругляются только эти ребра, каждое с radius или соответствующей записью radiusList, соотнесенной с выбранными ребрами в порядке ребер.
Форма, радиус или список радиусов и необязательные индексы ребер, начиная с 0
Форма со скругленными ребрами
const box = await bitbybit.occt.shapes.solid.createBox({ width: 10, length: 20, height: 5, center: [0, 0, 0] });
const rounded = await bitbybit.occt.fillets.filletEdges({ shape: box, radius: 1 });
const twoEdges = await bitbybit.occt.fillets.filletEdges({ shape: box, radiusList: [1, 2], indexes: [0, 3] });
Скругляет заданные ребра формы, каждое своим радиусом.
Ребра должны принадлежать форме; radiusList соотносится с ними по позиции и должен быть той же длины, иначе выбрасывается ошибка.
Форма, ее ребра для скругления и по одному радиусу на ребро
Форма со скругленными ребрами
Скругляет заданные ребра формы, все одним радиусом.
Ребра должны принадлежать форме; пустой список выбрасывает ошибку.
Форма, ее ребра для скругления и радиус
Форма со скругленными ребрами
Скругляет одно ребро формы радиусом, меняющимся вдоль него.
paramsU - позиции вдоль ребра как доли от 0 в его начале до 1 в конце, а radiusList дает радиус в каждой; ядро плавно переходит между ними. Оба списка должны быть одной длины, иначе выбрасывается ошибка.
Форма, ее ребро, радиусы и позиции вдоль ребра, в которых они применяются
Форма со скругленным ребром
Скругляет несколько ребер формы, каждое с одним и тем же профилем радиуса, меняющимся вдоль него.
paramsU - позиции вдоль каждого ребра как доли от 0 до 1, а radiusList - радиус в каждой; списки должны быть одной длины, иначе выбрасывается ошибка.
Форма, ее ребра, радиусы и позиции вдоль каждого ребра, в которых они применяются
Форма со скругленными ребрами
Скругляет несколько ребер формы, каждое со своим профилем радиуса, меняющимся вдоль него.
radiusLists и paramsULists содержат по одному списку на ребро, в порядке ребер; внутри каждой пары позиции - доли от 0 до 1 вдоль ребра, и радиусы применяются там. Все три списка должны быть одной длины, иначе выбрасывается ошибка.
Форма, ее ребра, по одному списку радиусов на ребро и по одному списку позиций на ребро
Форма со скругленными ребрами
Скругляет углы контура, не лежащего в одной плоскости.
У ядра нет прямого скругления 3D-контура, так что контур выдавливается вдоль direction в оболочку, оболочка скругляется, и скругленный контур считывается с нее; direction не должно быть параллельно контуру и должно оставлять место для скруглений.
Контур, радиус или список радиусов, необязательные индексы углов, начиная с 0, и направление выдавливания
Скругленный контур
Скругляет углы нескольких контуров, не лежащих в одной плоскости, как fillet3DWire для одного, с одними и теми же радиусом, индексами и направлением для всех.
Контуры, радиус или список радиусов, необязательные индексы углов и направление выдавливания
Скругленные контуры, в том же порядке
Скругление ребер форм OpenCascade и снятие с них фасок: скругление заменяет острое ребро скругленной поверхностью заданного радиуса, фаска - плоским срезом заданного расстояния. Ребра выбираются по индексу, начиная с 0, в порядке, в котором их перечисляет
shapes.edge.getEdges, или передаются напрямую; плоские очертания и грани скругляются в углах черезfillet2d, индексы углов которого начинаются с 1. Радиус, который не помещается, например больше соседней грани, приводит к сбою ядра, поэтому начинайте с малого. Каждый метод возвращает новую форму.