LINUX.ORG.RU

NoteCAD становится открытым

 , ,


10

8

Открыты исходные коды NoteCAD — системы автоматизированного проектирования и редактирования механических деталей для последующей 3d-печати.

Программа поддерживает экспорт и импорт моделей в формате STL. Моделирование основано на параметрическом подходе с использованием решателя геометрических ограничений. Проект находится на стадии альфа-версии, но уже возможно практическое применение для проектирования и редактирования некоторых деталей. САПР разрабатывается с помощью Unity3d на языке программирования C# и может работать под управлением ОС Windows, Linux и других систем, доступных для сборки в Unity3d. Основной версией является онлайн-версия, собранная с использованием технологии WebAssembly. Планируется возможность нарезки (slicing) моделей для 3d-печати в онлайн-режиме.

>>> Подробности

Ответ на: комментарий от Aceler

Ой. Боюсь, с таким подходом эти погромисты быстро познакомятся с юристами каких-нибудь крупных компаний и таких непуганых погроммистов в мире больше не станет :D

При чем тут юристы? Программисты пишут и распространяют свой код. В этих рамках лни полностью в своем праве. Лицензии бесплатной версии unity 3d позволяет без проблем и ограничений распостранять бесплатную программу. В чем проблема?

Эм. Существуют три свода критериев свободы — критерии FSF, критерии DFSG (сабж.) и критерии OSI. Они отличаются по «уровню» свободы, но называть один из них не критерием свободы — некорректно.

Ну так если этих сводов свободы три, то тем более некорректно называть все остальные своды свободы несвободными.

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

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

Они узурпировали рынок. Движки по факту не без недостатков. Надо делать OpenSource клон Unity3d, тема хорошая.

Плюсую! Жалко что я пока С++ не очень хорошо знаю, а так бы начал попиливать

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

Я же говорю, для меня, как для программиста, Unity выглядит как компилятор. То есть прям так же используется, как и IDE Visual Studio. Я могу делать сборку проекта, куда подкладываются какие-то *.dll. Visual studio может делать так же - подкладывать свои библиотеки к скомпилированному исходнику. Закрытые библиотеки, исходный код которых недоступен. Объясните принципиальную разницу.

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

Тебе осталось только вызвать всех на дуэль.

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

Шашечки - это сабж. Ехать - это свободное ПО.

Логика у тебя просто 80 level

Может это потому, что у тебя руки из жопы?

Ты бы сперва в проблеме разобрался, а то может оказаться, что это у тебя руки, да и не только.

FreeCAD, Blender и т.д.

Сразу видно плоскоземельного. Ты для начала разберись, что такое параметрическое моделирования, а потом раздавай свои тухлые советы.

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

В религиозных спорах нет места компромиссам. ;)

AVL2 ★★★★★ ()

потыкал палочкой. Солидворкс теперь можно смело закапывать. (нет)

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

FreeCAD, Blender и т.д.

Ты хотя бы примерно понимаешь разницу между твердотельным и полигональным моделированием?

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

Может это потому, что у тебя руки из жопы?
FreeCAD, Blender и т.д.

Агрессивный чмошник раздаёт советы в том, в чём даже минимально не разбирается. Скажи, тебе обязательно быть таким шутом?

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

САПР
на Unity3d

ОРУ В ГОЛОСИНУ ПРОСТО!!!

Тоже обалдел с этого подхода. О какой «САПР» может идти речь если мы работаем с полигональным представлением, остаётся ведь только кубики моделировать.

Вообще стоит признать, что «сообщество» до сих пор не может потянуть проекты такого типа, слишком специфическая область. Как например провалился форк OpenCascad'a можно прочитать здесь http://quaoar.su/blog/category/occt/next/57 Но даже не форкая, на уже существующем, пусть и старом, медленно развивающемя ядре, лучшее, что есть это FreeCAD.

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

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

Про муки выбора читайте здесь

Прочитал, не понял. Можно поподробнее про выбор движка? Вот годот: и «одна кнопка» для всех платформ (вкл. моб. и вэб), и отсутствие JS, и наличие C#. Можете привести примеры своих мелких под-задачек, требующих знания трудных для понимания нюансов иерархического наследования (где «компонентная система сущностей» сильно помогает)? Или требующих тонких правок кода движка (не больших, а именно тонких - где важно знать трудные нюансы C++)? Иными словами, примеры, что именно в Юнити оказалось решить гораздо проще?

Никогда не использовал никаких 3д-движков, не спорю, просто интересуюсь. Просто у меня есть некая идея, не про САПР, а просто нужна 3д-графика, как для 3д-игры, отсюда интерес.

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

Тоже обалдел с этого подхода. О какой «САПР» может идти речь если мы работаем с полигональным представлением, остаётся ведь только кубики моделировать.

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

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

Вот годот: и «одна кнопка» для всех платформ (вкл. моб. и вэб), и отсутствие JS

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

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

Иными словами, примеры, что именно в Юнити оказалось решить гораздо проще?

Просто я его знаю. И это самое простое и логичное, что я знаю. Есть еще Unigine, который лучший, но они дропнули поддержку веб и мобилок во имя космоса.

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

Просто у меня есть некая идея, не про САПР, а просто нужна 3д-графика, как для 3д-игры, отсюда интерес

Если нет заморочек про OpenSource, Unity не плох для быстрого старта и качественного развития. Не без проблем движок, но, сами понимаете, популярность движка позволяет решать любую проблему через гугл за две секунды.

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

Это даже не смешно уже становится. То есть все те люди которые положили десятилетия (!) на разработку ACIS'a, Parasolid'a, СGM'a, того же OCCТ наконец, просрали время зря, да? Надо было просто взять полигональное представление и работать с ним, да? Как вы будете считать, ну скажем моменты энерции, работая с полигональной сеткой? Сколько вам потребуется полигонов чтобы описать шар с точностью до 1e-6? Ну еще можно продолжать вопросы задавать очень долго, вот только стоит ли.

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

Просто я его знаю.

Спасибо.

Однако тогда вся аргументация на хабре про «простоту» Юнити - это немножко лукавство получается - если выбор был сделан по совсем другой причине... :)

Unity не плох для быстрого старта и качественного развития

Немного заморочен, и не хочу использовать (и покупать) нужный мне ассет (да, нужный функционал за отдельные деньги есть - юнити мог бы быть вариантом)

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

То есть все те люди которые положили десятилетия (!) на разработку ACIS'a, Parasolid'a, СGM'a, того же OCCТ наконец, просрали время зря, да?

У них были свои на то причины. Они выбрали свой путь разработки ПО. Я волен делать свои выводы и выбирать свой. Я не хочу ничего плохого сказать про них, просто математически не получается посчитать пересечения - и это фундаментальное ограничение. И приходится все равно скатываться до костылей.

Как вы будете считать, ну скажем моменты энерции, работая с полигональной сеткой?

Прекрасно все получается считать. Тут про центр масс - но это легко изменить для расчета тензора инерции.

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

Однако тогда вся аргументация на хабре про «простоту» Юнити - это немножко лукавство получается - если выбор был сделан по совсем другой причине... :)

Выбор был между использованием Unity и запиливанием/допиливанием своего движка. Тут про простоту становится актуальнее.

Немного заморочен, и не хочу использовать (и покупать) нужный мне ассет

Ну тут никто не заставляет. В наборе к юнити идут необходимые компоненты, все остальное можно сделать самому.

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

Конечно, вы в своём болоте вольны делать, то что захотите. Но меня удивляет, как может хватать навыков написать что-то работающее, но не понимать отличий между полигональным представлением и аналитическим. Не понимать для чего-то предпочтительней использовать первое, а для чего-то второе. Если вы пишите софт для того чтобы позволить пользователю легко делать скетчи в 3d, то не называйте своё поделие САПР. Так и всё таки как полигональной сеткой описать шар? Сколько на это полигонов потребуется, чтобы сделать это с приемлемой точностью? Многовато наверное.

Короче спорить смысла нет с вами, развлекайтесь как хотите.

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

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

Как прекрасно, что на ЛОРе всегда найдётся аноним, который всё прекрасно знает и понимает. Вот только ничего не делает. И весь выхлоп от которого — ядовитые комментарии в сторону человека, который делает что-то полезное сообществу.

Я бы на месте автора не стал в принципе яшкаться с местным комьюнити. Тут всегда готовы выразить своё презрительное «фэ» в сторону несвободного движка, но при этом ни в жизнь не отправят не то что пулл-реквеста, но и банального багрепорта.

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

Дело в том что аноним себе этим на пожрать зарабатывает, отсюда и такой интерес и отчасти недоумение.

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

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

У вас-то есть это представление? В любом случае, я вам расскажу. Аналитическое представление в математически точном виде - это Constructive Solid Geometry. Когда вы в NoteCAD нажимаете кнопку save, вы получаете xml по которому потом можно с любой заданной точностью построить модель, снова открыв этот файл. А как вы ее будете строить - через полигональный mesh или через костыльное BRep - NURBS представление - это вообще без разницы. Да хоть через signed distance field. Исходник что у NoteCAD, что у SolidWorks - это 2д и 3д математические точные контуры / кривые с набором операций над ними. Но не существует возможности получить математически точную аналитическую модель того, что получается после применения этих операций. То ли законы вселенной так устроены, то ли текущий уровень развития математики. Никто не знает, будет ли это когда-то возможно.

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

Ничем, оно хуже.

Ну вернее, оно в самом начале пути, когда и сравнивать то с чем то уже живущим глупо.

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

Как вы будете считать, ну скажем моменты энерции, работая с полигональной сеткой?

Кстати, а я забыл спросить, как вы будете считать это с помощью NURBS B-rep модели?

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

Да буленовские операции могут ухудшать модель, или отваливаться совсем это происзодит. Но b-rep представление, особенно если речь не идёт о трансляции файла из одного движка в другой позволяет работать с достаточной наперед заданной точностью.

Короче я спорить с вами не буду, смысла в этом для меня нет. Успехов вашему проекту.

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

позволяет работать с достаточной наперед заданной точностью

Ну вот это уже другой разговор. А не всякие громкие, но пустые слова про аналитическое представление. Не бывает его. Оно бывает только «c достаточной наперед заданной точностью». Такие же пироги можно и с помощью mesh готовить. Можно совсем до подробностей опуститься, тут, конечно можно рассказать про ряд преимуществ Brep NURBS, но это бесконечно далеко от тех громких фраз, которые продолжают кричать на каждом углу про аналитическое представление. Честное слово, когда я сам об этом узнал - не поверил. Но обстоятельства таковы, что современное проектирование держится на костылях.

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

Опять же, нет желания начинать конкурировать с монстрами - хочется занять вменяемую нишу для DIY проектирования.

Да что там с монстрами, пока-что NoteCAD проигрывает даже тому же SolveSpace :-/

  • Создание тел вращения:
    • NoteCAD: нет
    • SolveSpace: ЕСТЬ
  • Импорт/Экспорт DXF/DWG:
    • NoteCAD: нет
    • SolveSpace: ЕСТЬ (с некоторыми ограничениями)
  • Экспорт STEP:
    • NoteCAD: нет
    • SolveSpace: ЕСТЬ
    И т.д.
atsym ★★★★★ ()
Ответ на: комментарий от EvilSpirit

Ну, с одной стороны пока лезть с советами неохота, у тебя не реализованы многие базовые вещи, настолько очевидные, которые ты сам видишь и понимаешь и, очевидно, над ними работаешь. Если лезть под руку, то я в atsyma превращусь :)

Вот если бы ты составил какой-то бизниспланпрожект, какие фичи запланированы, какие реализованы, какие в работе, то было бы гораздо проще посоветовать что-то.

А с другой стороны, я грохнул свой аккаунт на гитхабе. Назлофашыстам. Сильно меня фрикадовцы разозлили, а тут и Микрософт гитхаб купил, ну я и психанул (все аккаунты удалил вообще). И, честно говоря, неохота пока влезать обратно. я редко бываю вменяем, не надо таких помощников.

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

Если он сделает маленький параметрический кад, который будет иметь определённые достоинства, и не будет иметь стотыщ разных недоделанных направлений, то его уже стоит использовать. Базар творящийся во фрикадовском девелоперском сообществе достал. И в солвеспейсовском тоже.

Deleted ()

А где новость про новый блоб нвидиа[1]? Уже давно жду. Там ещё не выбросили максвелы? Скоро владельцам старых карт останется только нува[2] без реклокинга. И куда вон вышла[3].

На похорониксе новости не очень. Можно написать интересней, если потратить больше 2 минут на написание.

[1]https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-410.57-Beta-Re...
[2]https://www.phoronix.com/scan.php?page=news_item&px=Nouveau-Starts-Envy-T...
[3]https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-CUDA-10-Released

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

Потрать, напиши и прочитай, а потом прокоментируй какнить оригинально, скажи, что ты бы лучше новость оформил.

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

Сложно сказать что хуже. Но я не думаю, что electron хороший выбор для 3d.

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

Базар творящийся во фрикадовском девелоперском сообществе достал. И в солвеспейсовском тоже.

В SolveSpace cooбщстве? Это даже не смешно... Сообщества разработчиков SolveSpace на даный момент НЕТ. Есть один разработчик ( whitequark) и несколько контрибьюторов ( EvilSpirit и ещё пару человек) коммиты и пуллреквесты которых часто не мержатся месяцами в основную ветку или вовсе отклоняются разработчиком...
>>> http://github.com/solvespace/solvespace/pulls

Да и вообще будущее SolveSpace под руководством whitequark выглядит очень туманно... Хотя я признаю что whitequark талантливый разработчик, но нет ни какого-нибудь чёткого плана развития, ни стабильности в ходе разработки.

Спасибо хоть Alexander собирает периодически ночнушки SolveSpace для Ubuntu и Debian
>>> https://github.com/solvespace/solvespace/issues/336#issuecomment-408840435

Крайняя сборка SolveSpace меня радует, но хотелось бы чтобы уже наконец-то замержили ограничения вида «ranged constraints» в основную ветку, ведь прототип EvilSpirit сделал уже давненько
>>> http://solvespace.com/forum?action=viewthread&parent=2228

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

Значит базар? Разброд и шатание. Конечно, люди тратят своё время так как им заблагорассудится, но мне-то что делать?

Нурбсы, кстати, так и не завезли? Помнится мне в стародавние времена в репах дистров валялась какая-то libnurbs. Вот одни пилют никому не нужную libnurbs, а другие кад, который остро нуждается в нурбсах, но желательно без внешних зависимостей. Вся мощь опенсорца.

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

Надоел этот ад мерженья, ребэйзания и пуллпушения. То хвост отвалится, то уши. Вникать в чужой код... Не, я пас.

Вообще, мне без кама даже и кад не особо нужен, я не проектировщик, мне, в основном, для воплощения деталей. Ежели представить весь этот ад мержения, патчения и пр., то я на ходу программы для станка напишу быстрее безвсех этих «высоких» технологий. И даже нестинг в башке работает быстрее.

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

Вот только странно, что именно в ассембли. Тоесть, у меня всё также не будет возможности взять скетч и выдавив его просто поставить ограничитель на высоту и угол. И второй куб я не смогу привязать на таком-то расстоянии от вершины/ребра/плоскости первого и развернуть на определённый угол относительно ещё чегонить. Вот чего не хватает.

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

учить С/C++

надо просто разработчиков в кучу собрать в одном месте, вдохновить их. ну и потом продолжать вдохновлять. устраивать общение. взаимодействие. поддерживать интерес. ну и кучу всего. или финансирование найти. второе проще, но не столь романтично.

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

1) надо просто разработчиков в кучу собрать в одном месте, вдохновить их. ну и потом продолжать вдохновлять. устраивать общение. взаимодействие. поддерживать интерес. ну и кучу всего.

2) или финансирование найти.

второе проще, но не столь романтично.

В данном случае, первое не возможно без второго.

Но я же не Элон Маск :-(

Так что, изучить C/C++ было бы проще чем выполнить эти два пункта.

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

у меня всё также не будет возможности взять скетч и выдавив его просто поставить ограничитель на высоту и угол. И второй куб я не смогу привязать на таком-то расстоянии от вершины/ребра/плоскости первого и развернуть на определённый угол относительно ещё чегонить. Вот чего не хватает.

Так это всё есть в SolveSpace. Что у тебя не получается-то из описаного?

atsym ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.