Страница 1 из 1

Алгоритм для V гравера

Добавлено: 09 сен 2020, 14:30
Fklw
Кто-то разрабатывал алгоритм гравировки V гравером? Подскажите, какие могут быть тонкости? Пока я представляю себе так, допустим, есть квадрат, и нужно выгравировать сторону его внутреннего контура:

- Строим линию, параллельно стороне квадрата на расстоянии радиуса фрезы R, как на концевой фрезе.
- Перебираем точки на этой линии, проверяем их на предмет касания других сторон с учетом R, получаем начало и конец линии.
- Затем постепенно уменьшаем R до минимального нужного значения и повторяем предыдущие пункты. В результате должно получиться множество параллельных линий.
- Стыкуем все эти линии, я для этого использую координату T, которая как бы является проекцией на исходную кривую, в данном случае, сторону квадрата. Получается как бы система координат T, R и для каждой конкретной T берем максимальную R.
- Переводим R в Z.

- А ещё наверно нужно несколько таких же итераций, приближая минимальный R к максимальному, чтобы выработать уголки.

Навскидку получается долго, и может даже неправильно, так как ещё не начинал делать. Если кто-то в теме, подскажите, как правильно, какие есть оптимизации, чтобы это ускорить, наверняка здесь огромное поле для оптимизаций.

Re: Алгоритм для V гравера

Добавлено: 09 сен 2020, 14:43
Enot_1
Одна линия(контур) . Программа гравировки. Инструмент - конусная фреза. Задаём глубину.

Re: Алгоритм для V гравера

Добавлено: 09 сен 2020, 14:57
Fklw
Enot_1 писал(а): 09 сен 2020, 14:43 Одна линия(контур) . Программа гравировки. Инструмент - конусная фреза. Задаём глубину.
Это я умею, вопрос о разработке.

Re: Алгоритм для V гравера

Добавлено: 09 сен 2020, 15:18
Enot_1
Fklw писал(а): 09 сен 2020, 14:57
Enot_1 писал(а): 09 сен 2020, 14:43 Одна линия(контур) . Программа гравировки. Инструмент - конусная фреза. Задаём глубину.
Это я умею, вопрос о разработке.
Если умеете, то видели, что ваш алгоритм ничего общего не имеет с этой операцией.

Re: Алгоритм для V гравера

Добавлено: 15 сен 2020, 23:44
Fklw
В принципе начинает получаться, но есть артефакты из-за того, что кривые интерполированы набором прямых. Можно все лишнее отфильтровать статистическими методами, но хочется полной детерминированности.
Screenshot from 2020-09-15 23-14-53.png <a class='original' href='./download/file.php?id=186083&sid=6e7061fc428c2a6606257a31a8f65e28&mode=view'>Загрузить оригинал (321.62 КБ)</a>
Кто-то сталкивался? Буду признателен за помошь.