roboforum.ru

Технический форум по робототехнике.

3Д модели. Кто в чем рисует?

3Д модели. Кто в чем рисует?

EASY_ » 24 фев 2013, 22:16

Я видел тему раньше, но никак не могу найти. Что посоветуете? Я знаю Автокад, но как я понял народ использует другие пакеты.
В чем проще и лучше рисовать 3Д модели, особенно тем кто по-настоящему рисовать не умеет?
Спасибо.

Re: 3Д модели. Кто в чем рисует?

noonv » 24 фев 2013, 22:32


Re: 3Д модели. Кто в чем рисует?

karabas2011 » 24 фев 2013, 22:38

forum107/topic11656.html
EASY_ писал(а):Я видел тему раньше, но никак не могу найти. Что посоветуете? Я знаю Автокад, но как я понял народ использует другие пакеты.
В чем проще и лучше рисовать 3Д модели, особенно тем кто по-настоящему рисовать не умеет?
Спасибо.

Re: 3Д модели. Кто в чем рисует?

TedBeer » 25 фев 2013, 00:49

OpenScad / OpenJSCad - только тут не рисование, а скорее программирование.

Re: 3Д модели. Кто в чем рисует?

AKlion » 25 фев 2013, 02:40

В Solidworks работаю и очень давно.

Re: 3Д модели. Кто в чем рисует?

Myp » 25 фев 2013, 10:08

если рисовать не умеешь но очень хочется, особенно модели которые потом будут печататься то tinkercad.com =)

Re: 3Д модели. Кто в чем рисует?

karabas2011 » 25 фев 2013, 12:52

TedBeer писал(а):OpenScad / OpenJSCad - только тут не рисование, а скорее программирование.

в openjscad и в coffeescad нет Hull,
поэтому сначала юзал openscadpy а сейчас Solidpython.
Пробовал Salome который умеет весь проект сохранять как питон файл.Но у него не такая концепция как у опенскада и многие вещи делать весьма муторно.
Основная возможность которая мне нужна это экструдирование вдоль кривой с управлением диаметром экструдиции. И всё должно быть параметрическим.

Re: 3Д модели. Кто в чем рисует?

TedBeer » 25 фев 2013, 13:04

karabas2011 писал(а):
TedBeer писал(а):OpenScad / OpenJSCad - только тут не рисование, а скорее программирование.

в openjscad и в coffeescad нет Hull,
поэтому сначала юзал openscadpy а сейчас Solidpython.
Пробовал Salome который умеет весь проект сохранять как питон файл.Но у него не такая концепция как у опенскада и многие вещи делать весьма муторно.
Основная возможность которая мне нужна это экструдирование вдоль кривой с управлением диаметром экструдиции. И всё должно быть параметрическим.

Не совсем в курсе что такое Hull. Сейчас погуглю.
На прошлой неделе я сделал для OpenJSCad то, что тебе надо ( я так думаю)
Посмотри демку у меня на сайте: http://tedbeer.net/demo3d
Суть - генерация объекта из срезов. Эти срезы могут следовать произвольной кривой. В примерах берется полигон и из него генерятся срезы разными преобразованиями. Если нужны более подробные объяснения, спрашивай.

Re: 3Д модели. Кто в чем рисует?

karabas2011 » 25 фев 2013, 16:55

TedBeer писал(а):
karabas2011 писал(а):
TedBeer писал(а):OpenScad / OpenJSCad - только тут не рисование, а скорее программирование.

в openjscad и в coffeescad нет Hull,
поэтому сначала юзал openscadpy а сейчас Solidpython.
Пробовал Salome который умеет весь проект сохранять как питон файл.Но у него не такая концепция как у опенскада и многие вещи делать весьма муторно.
Основная возможность которая мне нужна это экструдирование вдоль кривой с управлением диаметром экструдиции. И всё должно быть параметрическим.

Не совсем в курсе что такое Hull. Сейчас погуглю.
На прошлой неделе я сделал для OpenJSCad то, что тебе надо ( я так думаю)
Посмотри демку у меня на сайте: http://tedbeer.net/demo3d
Суть - генерация объекта из срезов. Эти срезы могут следовать произвольной кривой. В примерах берется полигон и из него генерятся срезы разными преобразованиями. Если нужны более подробные объяснения, спрашивай.
Всё правильно. Ты как раз и реализовал hull или что-то подобное.
Осталось пустить это по кривой. Это вторая задача. Поскольку нужна формула кривой позволяющая по ней отмерять длину, находить нормаль и тд. Соответственно сначала придётся выбрать способ аппроксимации. Я поглядел на безье и сплайны, там оказалось весьма нетривиально разбить кривую на кусочки равной длины. Поэтому пока всё сделал на спряженных дугах. Но вручную подбирать дуги тоже не особоприятная задача. Пытаюсь разобраться с биарк интерполяцией http://hakantiftikci.wordpress.com/2009 ... e-fitting/

там у тебя есть шляпа.
Задача 3 как её сделать определённой толщины?
задача 4 как на расстоянии l от нижнего торца шляпы расположить на ней эмблему

Re: 3Д модели. Кто в чем рисует?

TedBeer » 25 фев 2013, 17:39

karabas2011 писал(а):Всё правильно. Ты как раз и реализовал hull или что-то подобное.
Осталось пустить это по кривой. Это вторая задача. Поскольку нужна формула кривой позволяющая по ней отмерять длину, находить нормаль и тд. Соответственно сначала придётся выбрать способ аппроксимации. Я поглядел на безье и сплайны, там оказалось весьма нетривиально разбить кривую на кусочки равной длины. Поэтому пока всё сделал на спряженных дугах. Но вручную подбирать дуги тоже не особоприятная задача. Пытаюсь разобраться с биарк интерполяцией http://hakantiftikci.wordpress.com/2009 ... e-fitting/

Не совсем так. Hull - это генерация минимального плоского выпуклого полигона, охватывающего заданный набор точек. Этого я не делал.
Объясняю что сделал. Как работает экструзия - берем плоский полигон - это будет дно, сдвигаем по оси Z на величину экструзии - это будет крыша. Добавляем стенки между дном и крышей - получился 3х мерная модель.
Экструзия с поворотом - между дном и крышей генерим промежуточные/виртуальные "крыши" с поворотом, полученные в процессе стенки войдут в состав конечной 3D модели.
Это то, что было в OpenScad, OpenJSCad. Существующие ограничения - крыша и дно, это один и тот же полигон и они параллельны друг другу. Т.е. по произвольной 3х мерной кривой такой набор не пустишь.
Я добавил к этому процессу использование произвольных (пока только выпуклых) полигонов в качестве промежуточных "крыш" при этом можно использовать 3D трансформации. Т.е. полигоны уже не лежат в одной плоскости, как это было в начальной реализации, а могут следовать произвольной кривой в 3х мерном пространстве. Вот в демке первый пример - параметрическая кривая Роза. Посмотри код - там вычисляется из параметра очередная координата и нормаль в этой точке, чтобы задать положение полигона. Т.е. полигоны(срезы) вычисляешь по формуле, а я только создаю по этим срезам стенки 3х мерной модели. Полигоны могут отличаться. Там есть пример, когда треугольник на одном конце экструзии, переходит в квадрат на другом.

Re: 3Д модели. Кто в чем рисует?

karabas2011 » 25 фев 2013, 18:15

Так в твоём случае все срезы строго параллельны или нет?
Hull как раз и можно испопользовать хитро а именно. берёшь два непараллельных среза и получешь солид.потом следующий солид между 2 и третьим срезом и тд пока всё не построится.
Если же hull не реализован то остается прямая генерация как в случае ракушек http://www.thingiverse.com/thing:13829

Re: 3Д модели. Кто в чем рисует?

TedBeer » 25 фев 2013, 18:25

karabas2011 писал(а):ну понятно, в твоём случае все срезы строго параллельны.
Hull как раз и можно испопользовать хитро а именно. берёшь два непараллельных среза и получешь солид.потом следующий солид между 2 и третьим срезом и тд пока всё не построится.
Если же hull не реализован то остается прямая генерация как в случае ракушек http://www.thingiverse.com/thing:13829

Ты ничего не понял :)
В моем случае, как раз срезы не параллельны. Такую ракушку сделать легко и просто. Посмотри в моей демо Screw или Twisted screw.

Re: 3Д модели. Кто в чем рисует?

karabas2011 » 25 фев 2013, 18:32

TedBeer писал(а):
karabas2011 писал(а):ну понятно, в твоём случае все срезы строго параллельны.
Hull как раз и можно испопользовать хитро а именно. берёшь два непараллельных среза и получешь солид.потом следующий солид между 2 и третьим срезом и тд пока всё не построится.
Если же hull не реализован то остается прямая генерация как в случае ракушек http://www.thingiverse.com/thing:13829

Ты ничего не понял :)
В моем случае, как раз срезы не параллельны. Такую ракушку сделать легко и просто. Посмотри в моей демо Screw или Twisted screw.

Всё. Разобрался - удобнее всего тор оказался дря разборки.
да всё работает. Результат полностью аналогичен тому что я получаю хулом.
Остается прикрутить всё остальное. Никогда не писал на жаваскрипте

Re: 3Д модели. Кто в чем рисует?

TedBeer » 25 фев 2013, 18:48

karabas2011 писал(а):
TedBeer писал(а):
karabas2011 писал(а):ну понятно, в твоём случае все срезы строго параллельны.
Hull как раз и можно испопользовать хитро а именно. берёшь два непараллельных среза и получешь солид.потом следующий солид между 2 и третьим срезом и тд пока всё не построится.
Если же hull не реализован то остается прямая генерация как в случае ракушек http://www.thingiverse.com/thing:13829

Ты ничего не понял :)
В моем случае, как раз срезы не параллельны. Такую ракушку сделать легко и просто. Посмотри в моей демо Screw или Twisted screw.

Всё. Разобрался - удобнее всего тор оказался дря разборки.
да всё работает. Результат полностью аналогичен тому что я получаю хулом.
Остается прикрутить всё остальное. Никогда не писал на жаваскрипте

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

Re: 3Д модели. Кто в чем рисует?

karabas2011 » 25 фев 2013, 19:13

у меня нет нужной кривой. На текущий момент я беру дуги окружности сопрягаю их и подгоняю так чтоб они более менее были похожи на то что мне надо. получается массив дуг[радиус,угол, фаза].
А что у тебя с окружностями? я смотрю ты только простые полигоны используешь. И то уже долго генерится.


Rambler\'s Top100 Mail.ru counter