Согнуть вектора, подскажите софт.

Обсуждение аспектов работы с CAD программами, моделирование, расчеты, симуляция.
Enot_1
Мастер
Сообщения: 1353
Зарегистрирован: 28 апр 2015, 00:12
Репутация: 240
Настоящее имя: Arkadiy
Откуда: Краснодар
Контактная информация:

Согнуть вектора, подскажите софт.

Сообщение Enot_1 »

Здравствуйте.
Что-то стопорнул(затупил)с одной, на первый взгляд, простой задачей, но что-то никак не могу сообразить как с помощью знакомых программ сделать следующее:
Цель проста - перенести определенные вектора на кривую поверхность с сохранением их длинны.
Обычные операции, такие как проецирование "по плану"(те вдоль каких либо осей координат), "по нормали к плоскости" не подходят, вертел так и так. Изменяется длинна векторов. Поверхность имеет сложное строение.
Необходима операция, напоминающая приклеивание наклейки от жвачки(в моем случае -вектора) на доску для стирки(поверхности),первое что пришло на ум, что бы описать требуемое.
С одной стороны простая операция(на мой взгляд) но не могу найти решение.
Мастеркам, автокад перешерстил вдоль и поперёк - не нашел решения, куда копать???
Спасибо.
Аватара пользователя
niksooon
Мастер
Сообщения: 2135
Зарегистрирован: 23 июн 2014, 23:18
Репутация: 1201
Откуда: Кашира
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение niksooon »

а еслт поступить от обратного- разместить вектора на плоскости,и только затем эту плоскость(поверхность) изогнуть(деформировать) в нужную форму.........?
Сделанное правильно — красиво. Если сделанное тебе не нравится — то и работать оно будет хреново. Перевари, пересверли, выпили заново — ну, или хотя бы покрась.
MIX
Кандидат
Сообщения: 89
Зарегистрирован: 23 авг 2015, 09:48
Репутация: 34
Настоящее имя: Михаил
Откуда: С. Петербург
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение MIX »

Это не простая операция.
Больше всего в данной операции поднаторели программы моделируюшие выкладку композитов. Операция требует определения дополнительных граничных условий. Как минимум точки начала выкладки и главного направления выкладки.
В любом случае с вектором этого проделать принципиально нельзя т.к. вектор всегда прямой и его нельзя согнуть. Он так же не имеет длины, которую можно сохранять.
Речь скорее всего идет о прямой, которую нужно спроецировать на поверхность свободной формы с сохранением длины.
В простом варианте (с сохранением длины спроецированой кривой в пределах заданной точности) это можно найти в кадах скорее всего как опцию команды проецирования. В Siemens NX это например так.
Enot_1
Мастер
Сообщения: 1353
Зарегистрирован: 28 апр 2015, 00:12
Репутация: 240
Настоящее имя: Arkadiy
Откуда: Краснодар
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение Enot_1 »

niksooon писал(а):а еслт поступить от обратного- разместить вектора на плоскости,и только затем эту плоскость(поверхность) изогнуть
Из того софта, что знаком, этот финт не прокатит.
MIX писал(а):Речь скорее всего идет о прямой, которую нужно спроецировать на поверхность свободной формы с сохранением длины.
Да, возможно - линии, но да, основная задача именно в этом.
________________
Всё же нашёл решение в автокаде, немного не простое, но переносит линии на плоскость с сохранением пропорций, с более чем с достаточной для моей задачи- погрешностью.
линии.jpg (6521 просмотр) <a class='original' href='./download/file.php?id=148089&sid=ac7ddd1f2901f14a8a4ca8a8f348b942&mode=view' target=_blank>Загрузить оригинал (57.72 КБ)</a>
Если есть какие ещё мысли - подскажите.
MIX писал(а):В Siemens NX это например так.
С ней не знаком, есть смысл пробовать - этот софт на это способен?
maxx2000orel
Мастер
Сообщения: 365
Зарегистрирован: 24 апр 2016, 18:53
Репутация: 94
Настоящее имя: Максим Кузнецов
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение maxx2000orel »

Вы же понимаете что невозможно из короткого сделать длинное, разве что только растянуть. Кратчайшое расстояние между двумя точками - прямая линия. Если эти 2 точки спроецировать на изогнутую поверхность и потом соединить их уже кривой линией то эта линия будет длиннее исходной. Проецирование кривой на поверхность может делать практически любая CAD система работающая с поверхностями.
Если стоит задача на изогнутом фасаде резать орнамент, то это уже забота CAM. В томже Арткаме реализовано через обработку элементов
Enot_1
Мастер
Сообщения: 1353
Зарегистрирован: 28 апр 2015, 00:12
Репутация: 240
Настоящее имя: Arkadiy
Откуда: Краснодар
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение Enot_1 »

maxx2000orel писал(а):Проецирование кривой на поверхность может делать практически любая CAD
Проецирование в моем случае не подходит. Нужна намотка на поверхность, без изменения длины линий.
maxx2000orel писал(а):Если стоит задача на изогнутом фасаде резать орнамент, то это уже забота CAM.
Конечной целью стоит именно это, но без правильного размещения векторов на поверхности не получается добиться необходимого результата. Проекция выходит криво.
maxx2000orel
Мастер
Сообщения: 365
Зарегистрирован: 24 апр 2016, 18:53
Репутация: 94
Настоящее имя: Максим Кузнецов
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение maxx2000orel »

Enot_1 писал(а):Проецирование в моем случае не подходит. Нужна намотка на поверхность, без изменения длины линий.
Хорошо. Давайте на спичках.
1.Возьмите обычную банку, измеряйте её диаметр, отрежьте нитку равную по длине диаметру банки.Теперь попробуйте обернуть нитку вокруг банкичтобы концы нитки совпали. Посмотрите сколько не хватает нитки чтобы концы дошли до диаметрально противоположных точек.
2.Возьмите достаточную нитку чтобы обернуть банку, растяните её и померяйте на сколько она длиннее чем диаметр банки.
Не пытайтесь обмануть геометрию.
https://www.youtube.com/watch?v=-XOKRLVTPMU
Enot_1
Мастер
Сообщения: 1353
Зарегистрирован: 28 апр 2015, 00:12
Репутация: 240
Настоящее имя: Arkadiy
Откуда: Краснодар
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение Enot_1 »

maxx2000orel писал(а):Давайте на спичках
Спрос не в этом. Как и что работает - плавали, знаем.
Прямоугольник(в данном случае лист А4) с размером по х297 в плоскости нужно наложить на гнутую поверхность(намотать), чтобы размер как был 297, так и остался. Никакого обмана геометрии.
Вложения
IMG_20181011_122701.jpg (6475 просмотров) <a class='original' href='./download/file.php?id=148090&sid=ac7ddd1f2901f14a8a4ca8a8f348b942&mode=view' target=_blank>Загрузить оригинал (2.51 МБ)</a>
IMG_20181011_122123.jpg (6475 просмотров) <a class='original' href='./download/file.php?id=148091&sid=ac7ddd1f2901f14a8a4ca8a8f348b942&mode=view' target=_blank>Загрузить оригинал (2.81 МБ)</a>
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11624
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4634
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение michael-yurov »

Enot_1 писал(а):Цель проста - перенести определенные вектора на кривую поверхность с сохранением их длинны.
Поверхность имеет сложное строение.

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

А ты хочешь двумерный рисунок (полагаю, речь совсем не про векторы, а про двумерный чертеж) спроецировать на ПРОИЗВОЛЬНУЮ поверхность!.. Тут вообще не может быть однозначного решения.

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

Получится решение для той задачи, что ты описал. Но, кончно же, ты ответишь, что нужно совсем не это, и сама по себе длина контура роли не играет, и задача в другом... Но, какой вопрос - такой ответ.
maxx2000orel
Мастер
Сообщения: 365
Зарегистрирован: 24 апр 2016, 18:53
Репутация: 94
Настоящее имя: Максим Кузнецов
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение maxx2000orel »

Enot_1 писал(а):чтобы размер как был 297, так и остался. Никакого обмана геометрии.
так он и останется между конечными точками 297, изменится длина линии их соединяющий. Проекция ведь прямоугольная? Я видео специальн оприкрепил, там чётко показано что если смотреть в направлении проекции контур остаётся неизменным но если .
https://youtu.be/WKIci2KRQd4
Последний раз редактировалось maxx2000orel 11 окт 2018, 12:40, всего редактировалось 1 раз.
Enot_1
Мастер
Сообщения: 1353
Зарегистрирован: 28 апр 2015, 00:12
Репутация: 240
Настоящее имя: Arkadiy
Откуда: Краснодар
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение Enot_1 »

michael-yurov писал(а):Люди сотни лет пытаются придумать, как лучше спроецировать сферическую поверхность на плоскость, чтобы карту на бумаге нарисовать
Это совершенно не-то, мне хватило 3 секунды перенести лист А4 на кривую поверхность без малейшего сомнения это не так и трудно в "реале" про шар - это не то. .
Как это и чем сделать в виртуале?
Последний раз редактировалось Enot_1 11 окт 2018, 12:38, всего редактировалось 1 раз.
Enot_1
Мастер
Сообщения: 1353
Зарегистрирован: 28 апр 2015, 00:12
Репутация: 240
Настоящее имя: Arkadiy
Откуда: Краснодар
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение Enot_1 »

maxx2000orel писал(а): он и останется между конечными точками 297,
На кривой поверхности при проекции по "плану" - никогда.
Точнее так, длинна полученного сплайна на гнутой поверхности будет другая. А нужна та же.
maxx2000orel
Мастер
Сообщения: 365
Зарегистрирован: 24 апр 2016, 18:53
Репутация: 94
Настоящее имя: Максим Кузнецов
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение maxx2000orel »

Enot_1 писал(а):На кривой поверхности при проекции по "плану" - никогда.
Ну так и строй тогда кривую по плану, а не проецируй, что ты моск имеешь и себе и людям. Проецируй кривую на плоскость и вуаля.
Куда наглядней с банками то я объяснил. Какой самый простой способ померять длину кривой? Шнурок вдоль неё приложить, а потом померять длину шнурка.
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11624
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4634
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение michael-yurov »

Enot_1 писал(а):Это совершенно не-то, мне хватило 3 секунды перенести лист А4 на кривую поверхность без малейшего сомнения это не так и трудно в "реале" про шар - это не то. .
и как же за 3 секунды "в реале" перенести лист с картой на сферический глобус (читай - криволинейная поверхность).
Или сейчас окажется, что поверхность цилиндрическая (какой-нибудь кухонный гнутый фасад)? Так может быть не стоило это скрывать?
Enot_1
Мастер
Сообщения: 1353
Зарегистрирован: 28 апр 2015, 00:12
Репутация: 240
Настоящее имя: Arkadiy
Откуда: Краснодар
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение Enot_1 »

michael-yurov писал(а):Если задача в том как ты описал - сохранить длину контура, то решение есть методом приближений. Проецируешь свой контур на произвольную поверхность. Смотришь, на сколько удлинился контур. Пропорционально масштабируешь его и пробуешь спроецировать снова. Снова измеряешь длину и снова пропорционально его масштабируешь.
Это как раз, то, от чего хочется уйти.
При простых рисунках такая методика прокатывает
IMG_20171129_153648.jpg (6442 просмотра) <a class='original' href='./download/file.php?id=148093&sid=ac7ddd1f2901f14a8a4ca8a8f348b942&mode=view' target=_blank>Загрузить оригинал (3.87 МБ)</a>
, и-то, если достаточно свободного времени, но на более сложных рисунках и более разнорадиусных поверхностях - нафиг...
michael-yurov писал(а):на сферический глобус
Сори, перечитал основной вопрос - поправка:
Плоскость имеет кривизну в одном направлении-эта операция в принципе должно делаться какими-либо средствами.
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11624
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4634
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение michael-yurov »

Теперь задача понятна.
Правда, однозначного простого решения не знаю.
В том и смысл гнутых фасадов - сделать что-то сложное, что другие не могут. Только в этом их ценность.

Я в Компасе работаю. Первое что приходит на ум - использовать инструменты работы с листовыми моделями.
Там можно легко работать как с разверткой, так и с согнутой деталью.
Вложения
44715443.jpg (6393 просмотра) <a class='original' href='./download/file.php?id=148097&sid=ac7ddd1f2901f14a8a4ca8a8f348b942&mode=view' target=_blank>Загрузить оригинал (188.83 КБ)</a>
Enot_1
Мастер
Сообщения: 1353
Зарегистрирован: 28 апр 2015, 00:12
Репутация: 240
Настоящее имя: Arkadiy
Откуда: Краснодар
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение Enot_1 »

michael-yurov писал(а):Там можно легко работать как с разверткой, так и с согнутой деталью.
Очень близко.
Пару вопросов, тк компас мне не знаком :
1.Форма листовых моделей может быть любой, те можно ли её задать вдоль сплайна - например S-образной?
2. Можно ли привязать вектора к этой модели и по "теории"
niksooon писал(а):поступить от обратного- разместить вектора на плоскости,и только затем эту плоскость(поверхность) изогнуть(деформировать)
? Или с изогнутой моделью работать как с разверткой, затем из гнутой извлечь линии?
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11624
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4634
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение michael-yurov »

Enot_1 писал(а):1.Форма листовых моделей может быть любой, те можно ли её задать вдоль сплайна - например S-образной?
то что можно по любым радиусам гнуть сложные формы - это точно. По кривым - не уверен. Может быть проблема с несовпадением длины этой кривой и детали после изгиба.

В конце концов S-образную кривую можно и из радиусов собрать.
Enot_1 писал(а):2. Можно ли привязать вектора к этой модели и по "теории"
Я так понимаю, вопрос совсем не про векторы?
Может быть можно и с двумерным эскизом работать на гнутой поверхности. Но я плохо себе это представляю, как это может происходить в реальности.
Работать с двумерным эскизом на плоскости, конечно, можно. Согнуть его потом как листовую деталь - наверное, тоже можно. Но я таког о не делал.
Все же этот инструмент для работы с листовыми моделями и их развертками, как с 3d объектами, имеющими некоторую толщину.
Работать можно переключаясь между согнутой моделью и ее плоской разверткой

П.С. на счет "легко работать" я, наверное, погорячился. Не очень легко.
bawero
Опытный
Сообщения: 153
Зарегистрирован: 20 дек 2015, 22:02
Репутация: 23
Откуда: BY
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение bawero »

Enot_1 писал(а):
michael-yurov писал(а):Если задача в том как ты описал - сохранить длину контура, то решение есть методом приближений. Проецируешь свой контур на произвольную поверхность. Смотришь, на сколько удлинился контур. Пропорционально масштабируешь его и пробуешь спроецировать снова. Снова измеряешь длину и снова пропорционально его масштабируешь.
Это как раз, то, от чего хочется уйти.
При простых рисунках такая методика прокатывает
Вложение IMG_20171129_153648.jpg больше недоступно
, и-то, если достаточно свободного времени, но на более сложных рисунках и более разнорадиусных поверхностях - нафиг...
michael-yurov писал(а):на сферический глобус
Сори, перечитал основной вопрос - поправка:
Плоскость имеет кривизну в одном направлении-эта операция в принципе должно делаться какими-либо средствами.
В Rhino вообще без проблем.
1А.jpg (6371 просмотр) <a class='original' href='./download/file.php?id=148101&sid=ac7ddd1f2901f14a8a4ca8a8f348b942&mode=view' target=_blank>Загрузить оригинал (160.38 КБ)</a>
После изгиба масштаб (размер) векторов не изменяется.
Enot_1
Мастер
Сообщения: 1353
Зарегистрирован: 28 апр 2015, 00:12
Репутация: 240
Настоящее имя: Arkadiy
Откуда: Краснодар
Контактная информация:

Re: Согнуть вектора, подскажите софт.

Сообщение Enot_1 »

bawero писал(а):В Rhino вообще без проблем.
Если так, то это в точку. То что надо!
Ответить

Вернуться в «CAD пакеты»