LINUX.ORG.RU

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

 , ,


10

8

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

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

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

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

Разве её нельзя установить в систему по https://store.unity.com/ru/download?ref=personal ? Будет вполне системной (не содержащейся в программном продукте).

Её можно установить отдельно и затем из-под неё запускать сабжевую программу? Или движок — это всё-таки библиотеки, которые связываются с исполняемым кодом на этапе компиляции? Я, честно говоря, не программировал под Unity3D, поэтому думаю, что второе, но может быть, я неправ.

A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.

Ну ОК, т.е. Unity3D может быть компонентом ОС, компилятором либо интерпретатором. Поскольку компонентом и компилятором она не является, остаётся интерпретатор.

Unity3D — это интерпретатор кода игры? Если так, то вопрос снимается.

Впрочем, в репозитарий дебиана этот CAD всё равно не попадёт, там критерии строже :-)

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

Для погромиста код == программа

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

но требования дебиана вовсе не есть требования свободы.

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

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

Мне видится тут насущная проблема. Сейчас есть всего два движка - Unity и Unreal. На них есть жизнь, на них есть сотни тысяч новых разработчиков. Ну может, CryEngine. И ни один из них не является свободным. Frostbite вообще недоступен вне партнеров Electronic Arts. То есть, твое желание свободы конечно хорошее, но оно невыполнимое. Лучше иметь хоть какой-то софт, чем вообще никакого, не?

stevejobs ★★★★☆ ()
Последнее исправление: stevejobs (всего исправлений: 1)

САПР разрабатывается с помощью Unity3d

О, наконец сгодился для чего-то кроме игро-прототипов.

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

У меня другой вопрос к автору: а чё, лицензия до сих пор не выбрана?

Спасибо, добавил.

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

Поскольку компонентом и компилятором она не является

Unity для программиста выглядит в точности как VisualStudio. Я имею ввиду, если исходники проекта на VisualStudio сделать открытыми, вам она будет необходима, чтобы построить проект, и без нее не получится (без дополнительной работы). При сборке проекта она туда засунет свои либы со своими багами и особенностями. Так же и Unity. Мы так же ставим, так же компилируем проект. Такие же кривые либы с особенностями (поддержка 3д графики) подкидываются в проект. Чтобы выяснить статус Unity, надо выяснить статус VisualStudio.

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

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

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

EvilSpirit ()

Ограничители понравились, просто и элегантно. Но нужно больше :)

Как сделать шар? не разобрался. Только выдавливание нашёл. Вращения пока нет?

stl - для 3д принтера достаточно, а для начала экспериментов в более серьёзной сфере не достаточно. Просить dxf или dwg глупо, но хоть step бы иметь.

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

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

Но нужно больше :)

Да это без проблем )

Как сделать шар? не разобрался. Только выдавливание нашёл. Вращения пока нет?

Вращения пока, к сожалению, нет.

stl - для 3д принтера достаточно, а для начала экспериментов в более серьёзной сфере не достаточно. Просить dxf или dwg глупо, но хоть step бы иметь.

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

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

Я тоже надеюсь. У меня одного не быстро получается. Думаю, зимой времени будет больше, дело пойдет быстрее. В октябре исполнится два года идее и год разработке.

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

Кстати, взял окружность, выдавил, и... А как указать высоту цилиндра? Попробовал между центрами расстояние указать, ан нет, не работает. Поставить точку на дуге тоже никак. Радиуса пока нет. Рудиментарненько :)

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

Хотеть хоть одну открытую CAM. Фрикад пытается, но не очень выходит.

а нельзя как-нибудь блендер допилить? кто нибудь знает, людя добрыя?

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

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

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

Народ,вы ещё из пэйнта начните кад делать... Что тебе даст ПОЛИГОНАЛЬНЫЙ трехмерный моделлер?

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

Попробовал между центрами расстояние указать, ан нет, не работает

работает, но это сложно сделать. внутри есть невидимая линия, по которой выдавливается центр окружности. можно попробовать выбрать Distance и попасть в нее (у меня сейчас такое получилось)

Поставить точку на дуге тоже никак. Радиуса пока нет.

Да, кое чего не хватает. Радиус дуги зафиксировать легко, а у окружности диаметр есть :)

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

Развернул вид на произвольный угол, кривыми выложил замкнутый контур

3д построения только для дополнительной геометрии можно использовать. issue умеете на github? Я был рад, если бы все это фиксировалось, чтобы потом можно было править и поддерживать связь. atsym любит спамить, его не приглашаю (его не приглашают, он сам приходит), а вот всех остальных рад видеть.

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

Unity - это уровень прикладного ПО. Без Unity 3D сабж не заработает. Linux без BIOS/EFI работает. 7-zip без WinAPI работает, да и есть свободная реализация WinAPI. Свободной реализации Unity нет и не будет.

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

Вам шашечки или ехать? Если это ПО работает шустрее SolveSpace, то это уже очень круто.

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

У меня, например, модель стула жёстко тормозит в SolveSpace.

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

А альтернативы до сих пор не было.

FreeCAD, Blender и т.д.

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

Вот не надо на FlatCAM гнать. Хорошая и удобная штука.

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

У меня, например, модель стула жёстко тормозит в SolveSpace.

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

У SolveSpace есть фундаментальные проблемы, которые я и пытаюсь решить в данном проекте. Не хочу грузить подробностями, в этом видео можно посмотреть про принцип, заложенный в NoteCAD, позволяющий обрабатывать достаточно сложные объекты.

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

Впрочем, в репозитарий дебиана этот CAD всё равно не попадёт, там критерии строже :-)

Естественно. В репозитарий дебиана может попасть только то, что под дебианом запустится. А здесь Unity3D как часть платформы нужна.

P.S. 7-zip (не тот, который p7zip, а который полный с интерфейсом) тоже в репозитарий дебиана не попадёт, так как требует MS Windows.

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

По вашей логике получается, что любая программа, которая собирается в MS Visual Studio является закрытой.

Которая собирается ТОЛЬКО в MS Visual Studio, вы хотите сказать? Ну тут да, проблема, с той же Мирандой, кстати. Там не только WinAPI, там, когда я её тыкал, были MSVS-специфичные языковые конструкции.

Это, кстати, одна из причин, по которым я хотел бы, чтобы взлетел РеактОС. Тогда я смогу придти к разработчикам Миранды и сказать: ваша великолепная и замечательная программа работает под свободной ОС, но к сожалению, требует несвободного компилятора.

Сейчас, правда, уже актуальна не Miranda IM, а Miranda NG, и я не знаю, чем они её собирают. Лицензия по-прежнему GPL.

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

Разве её нельзя установить в систему по https://store.unity.com/ru/download?ref=personal ?

И превратить ОС в свалку проприетарного мусора, ага. Это надо идиотом быть.

Кстати в GPL нет требования «компонент ОС»

А при чём тут GPL? Новость про проприетарный софт.

Quasar ★★★★★ ()

А вообще новость оффтопная и автора надо в бан отправить поскорее.

Сабж противоречит официальному определению OpenSource: https://opensource.org/osd

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

Лицензия там проприетарная независимо от желания автора. То есть, автор новости нарушает правило 4.2.

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

Linux без BIOS/EFI работает.

Да ну? Если я тебе дам материнку без BIOS/EFI, ты сможешь на ней загрузить Linux?

Ладно, в современном мире есть Linux на ARM и Coreboot. Был ли Linux свободным во времена версии 1.0, когда он был только на x86, а свободной реализации BIOS не существовало?

7-zip без WinAPI работает

7-Zip works in Windows 10 / 8 / 7 / Vista / XP / 2016 / 2012 / 2008 / 2003 / 2000 / NT. (с) http://www.7-zip.org

Можешь попробовать скомпилировать исходники https://www.7-zip.org/a/7z1805-src.7z без WinAPI.

To compile sources you need Visual C++ 6.0. For compiling some files you also need new Platform SDK from Microsoft' Site: http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm

To compile 7-Zip for AMD64 and IA64 you need: Windows Server 2003 SP1 Platform SDK from microsoft.com

Also you need Microsoft Macro Assembler: - ml.exe for x86 - ml64.exe for AMD64 You can use ml.exe from Windows SDK for Windows Vista or some other version.

В версию для POSIX (p7zip) перенесли не всё.

да и есть свободная реализация WinAPI

ОК.

Свободной реализации Unity нет и не будет.

В 1995 можно было предположить, что свободной реализации WinAPI нет и не будет. Ты согласен поставить свою бессмертную душу на истинность этого утверждения про Unity? Ведь вероятность того, что кто-нибудь реализует совместимую по API среду времени выполнения ненулевая.

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

Да ну? Если я тебе дам материнку без BIOS/EFI, ты сможешь на ней загрузить Linux?

У меня есть несколько таких и линукс там у меня работает.

Был ли Linux свободным во времена версии 1.0, когда он был только на x86, а свободной реализации BIOS не существовало?

Ты совсем тупой? Linux не имеет зависимости от BIOS. Это ядро не использует функции BIOS вообще.

В 1995 можно было предположить, что свободной реализации WinAPI нет и не будет.

Тебе уже выше объяснили, что WinAPI это неотъемлемый системный компонент Windows. А значит, что распространять программу можно без него. Ты устраиваешь демагогию, пытаясь кроссплатформенность притянуть к проприетарности и свободности. Или ты действительно такой тупой, или ты тупо троллишь.

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

Ты совсем тупой? Linux не имеет зависимости от BIOS. Это ядро не использует функции BIOS вообще.

Если я тебе дам x86 плату без BIOS'а, ты сможешь загрузить Linux? Это ядро использует функцию BIOS «загрузить блок с диска и передать ему управление».

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

Это ядро использует функцию BIOS «загрузить блок с диска и передать ему управление».

Ты понимаешь, что ты поехавший? Уже всё! Я уже не знаю, как тебя воспринимать.

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

Сам автор значит закон ещё решил нарушать.

Какой именно? Свой код автор имеет право распространять под любой лицензией. То, что он позволяет пользователям своего кода, описывается GPL3.

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

Какой именно? Свой код автор имеет право распространять под любой лицензией. То, что он позволяет пользователям своего кода, описывается GPL3.

Другими словами, код распространять можно, но программу использовать запрещено. Молодец автор! Сам закон нарушает, собирая код, и другим предлагает.

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

Ты понимаешь, что ты поехавший? Уже всё! Я уже не знаю, как тебя воспринимать.

А, по-твоему, если программа явно не вызывает проприетарные функции, то она свободная?

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

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

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

Где такой запрет? запрещено скомпилировать с библиотеками Unity и распространять получившийся бинарник.

На распространение исходников GPL ограничений не налагает (раздел 4). На компиляцию и выполнение — тоже (раздел 2).

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

А, по-твоему, если программа явно не вызывает проприетарные функции, то она свободная?

Не по-моему, а в соответствии с определением свободного ПО.

Если я выпущу программу под GPL, но загружаться она будет только проприетарным загрузчиком (например, в виде байткода), она по-прежнему будет считаться свободной?

Да. Но сабж-то не проприетарным загрузчиком загружается, а сам по себе проприетарное ПО, поскольку содержит в себе большую часть проприетарного кода. Тот факт, что сабж выпущен на условиях GNU GPL и линкуется с пропретарной частью, которая по сути составляет его наибольший процент, кстати, говорит о том, что распространение и использование этой программы наказуемо уже на законодательном уровне. Даже если выкрутиться, то программа останется типичной проприетарщиной, и публиковать на ЛОРе новости про её в разделе opensource запрещено.

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

Если бы ты взял за основу не Unity3D, а какой-нибудь Godot или Torque3D, то вопросов такого рода просто не было бы. Конкретно сейчас тебе лучше добавить в лицензию оговорку о том, что разрешается этот код линковать с проприетарными компонентами (как в своё время делали при использовании Qt до открытия этого тулкита), иначе могут быть большие проблемы. И раздел следует поменять на какой-нибудь более подходящий, так как в данном случае это не опенсорс по определению (логотип намекает, что определение не с потолка взято, а вполне конкретное).

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

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

То, что опубликовано на GitHub, ни одного байта проприетарного кода не содержит. Используемое API не является предметом копирайта.

что распространение и использование этой программы наказуемо уже на законодательном уровне

Какой закон или пункт GPL будет нарушен? Не надо свои фантазии выдавать за факты.

Даже если выкрутиться, то программа останется типичной проприетарщиной, и публиковать на ЛОРе новости про её в разделе opensource запрещено.

Исходники есть? Есть. Распространять исходники (в том числе модифицированные) можно? Да. Использовать исходники можно? Да (на ограничениях GPL). Куда уже опенсорснее?

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

LGPL для этого и создавался. Но ты можешь просто написать, что код распространяется на условиях GPLv3, но разрешается линковать его с проприетарным. Ссылки по теме:

https://opensource.stackexchange.com/questions/2219/can-i-use-a-proprietary-l...

https://en.wikipedia.org/wiki/GPL_linking_exception

Настоятельно рекомендую вот с этим движком ознакомиться:

https://godotengine.org

В отличие от Unity 3D распространяется на условиях лицензии MIT. Умеет и мобильные платформы, и ПК. Если тебе важно на C# написать код, то вот: http://docs.godotengine.org/en/3.0/getting_started/scripting/c_sharp/

Итого рендерер тебе писать просто не потребуется.

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

То, что опубликовано на GitHub, ни одного байта проприетарного кода не содержит. Используемое API не является предметом копирайта.

Это не собранная программа, а исходники.

Какой закон или пункт GPL будет нарушен? Не надо свои фантазии выдавать за факты.

У тебя каша в голове. Нарушение не GPL, а законодательства.

Исходники есть? Есть. Распространять исходники (в том числе модифицированные) можно? Да. Использовать исходники можно? Да (на ограничениях GPL). Куда уже опенсорснее?

Определение СПО не ограничивается исходниками. Ты сам не понимаешь, что несёшь.

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

Итого рендерер тебе писать просто не потребуется.

Там все равно писать надо будет много специфического. Посмотрел исходники godot - не пришлись по вкусу. Проще уж свой взять.

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

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

Статус VisualStudio определён как в FSF как runtime компилятора. Unity3D определённо не компилятор, а библиотека. Что-то мне кажется, что здесь исключение работать не должно.

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

Unity3D определённо не компилятор, а библиотека

А почему не компилятор? Вот в студии есть компилятор и есть библиотеки, есть там и ide. Так же и в Unity. Абсолютно никого не должно волновать, что эти библиотеки из вижуал студии пытаются соответствовать какому-то там стандарту. Завтра же можно организовать комитет по стандартизации 3d Engine и прописать там API Unity3d. Просто все собрались и решили, что вижуал студия - это компилятор и все тут. Так же можно однажды решить, что Unity - это компилятор.

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

У тебя каша в голове. Нарушение не GPL, а законодательства.

Какого именно закона?

Это не собранная программа, а исходники.

Так собранную программу никто и не распространяет.

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

Unity3D определённо не компилятор, а библиотека.

Определённо? https://docs.unity3d.com/Manual/LearningtheInterface.html

А вот сама компиляция: https://docs.unity3d.com/Manual/webgl-building.html

monk ★★★★★ ()
Последнее исправление: monk (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.