LINUX.ORG.RU

Использование VTK

 , ,


2

3

Использовал ли кто-нибудь VTK? Какие есть подводные камни и глюки? Интересует, в частности, возможность использования в режиме 3D моделирования (создания различных 3D-поверхностей и объектов).

И ещё вопрос: python binding для VTK эквивалентен вызовам из C++-библиотек? Т.е. если написать прототип на питоне, он легко переносится на C++?

Ну и вдогонку: кто-нибудь что-нибудь слышал не понаслышке про OpenCASCADE?

★★★★

Использовал. Из подводных камней только отсутствие связки с Си и необходимость cmake для С++. Глюков не обнаружил.

Использовал для отображения 3D.

python binding для VTK эквивалентен вызовам из C++-библиотек?

Да. Полностью.

Т.е. если написать прототип на питоне, он легко переносится на C++

В части работы с VTK — да.

monk ★★★★★ ()

что-нибудь слышал не понаслышке про OpenCASCADE

Я использовал. OpenCASCADE позволяет реализовать твёрдотельную геоментрию: вытягивание, вырезку, вращение и т.п. как в SolidWorks. Пробовал писать свою специализированную САПР для ЧПУ Heidenhain примерно в 2012-2013 году. OpenCASCADE у меня был задействован через QtOCC. Документация у них не лучшего качества, но всё довольно понятно. При недостатке информации приходится лезть в их форум. Сейчас я этот проект бросил, т.к. больше не работаю на заводе и не занимаюсь станками.

DarthVadimius ()
Ответ на: комментарий от DarthVadimius

Благодарю за информацию! Правда, похоже, проект QtOCC давно протух...

Кстати, а какие подводные камни при работе с OpenCASCADE? Насколько я понял, там все объекты «статичные» (т.е. не позволяют «на лету» менять свои параметры).

Sahas ★★★★ ()
Последнее исправление: Sahas (всего исправлений: 1)
Ответ на: комментарий от Sahas

Правда, похоже, проект QtOCC давно протух...

Да, там так и осталось Qt4, и от них нет никаких вестей.

Насколько я понял, там все объекты «статичные» (т.е. не позволяют «на лету» менять свои параметры)

Точно не помню, но вроде было можно что-то менять без перерисовки всего.

Кстати, а какие подводные камни при работе с OpenCASCADE?

Из подводных камней --- не очень хорошая документация (по сравнению, например с Qt). Но работать с openCASCADE оказалось проще, чем я думал. Получается именно твёрдотельная модель. Потом можно рассчитывать её массу, объём и т.п.

DarthVadimius ()
Ответ на: комментарий от DarthVadimius

Из подводных камней --- не очень хорошая документация (по сравнению, например с Qt). Но работать с openCASCADE оказалось проще, чем я думал. Получается именно твёрдотельная модель. Потом можно рассчитывать её массу, объём и т.п.

Спасибо, то что надо :)

Sahas ★★★★ ()
Ответ на: комментарий от Sahas

Ещё вспомнил про openCSG. Он тоже реализует трёхмерную твёрдотельную геометрию, но проще, чем openCASCADE. Там объекты просто помещаются в STL-контейнер, и потом к ним применяются операции объединения, вычитания и т.п. Недостатки: фигура может содержать только 256 объектов, интерактивное измерение расстояний реализуется через костыли и велосипеды.

DarthVadimius ()
Ответ на: комментарий от Sahas

Да, работал. Первая версия моей мини-САПР была на openCSG. От него я отказался, т.к. реализация интерактивного измерения расстояния между гранями у меня получалось довольно глюкнутое. И в случае симуляции станка можно было легко превысить 256 элементов. Почему установлено ограничение именно в 256 элементов --- не знаю. Автор openCSG Florian Kirsch по нему защитил диссертацию, и там он это как-то обосновывает.

DarthVadimius ()
Ответ на: комментарий от QrQr

Спасибо, как раз решили использовать OCC в проекте, так что помощь, думаю, потребуется... А вы, как я понимаю, автор блога quaoar.su? Очень много интересной и полезной информации я там нашёл, спасибо!

Sahas ★★★★ ()
Ответ на: комментарий от Chelobaka

А чем FreeCAD плох?

Проблема в том, что «хороший» — понятие растяжимое. В разных областях инженерной науки от CAD требуется разное, поэтому один «универсальный» будет плох всем :)

Sahas ★★★★ ()