librecad_intro.png

Пока LibreCAD полностью не перенес все возможности QCAD community edition будем пользоваться QCAD. И периодически тестировать LibreCAD на скорость.

История

Существует такая компания RibbonSoft она занимается тем что выпускает CAD и CAM программы. Есть у неё продукт QCAD и компания выпускает отдельно QCAD Community Edition — это предыдущая версия QCAD с кодом под GPLv2. Но так случилось что года 2 назад дистрибутивы плавно начали переходить с графического тулкита Qt3 на котором написан QCAD-CE 2 (далее QCAD2) , на Qt4 из-за этого стало все сложнее запускать QCAD на новых дистрибутивах. Также новые версии не выходили и вот группа энтузиастов создала проект по переносу кода QCAD на Qt4 и назвали они это CADuntu , потом решено было переименовать в LibreCAD. Они перенесли код, заставили его работать и даже включи отсутствующий в QCAD2 , просмотр документации. После чего получили запрет от RibbonSoft на использование при установке LibreCAD: руководства , шрифтов, с шрифтами проблема была решено а вот руководство до сих пор не переписано.

Шло время, в LibreCAD появился новый дизайн, новые инструменты, такие например как эллипсы. Апогеем была реализация множественных привязок(по умолчанию в QCAD2 работает только одна привязка) и возможности подключения плагинов. Потом активность в проекте стихла или ушла на борьбу с FSF над лицензией LibreDWG

И вот в этом году RibbonSoft выпускает третью версию QCAD-CE (далее QCAD3), с TTF и прочими плюшками. Так что теперь существуют два проекта CADD.

Немного полезной информации для тех кто совсем не в курсе:

«объектные привязки — автоматическое определение координат базовых точек построения по уже существующим в чертеже объектам:концу, или середине отрезка….»

«2D CAD основан на парадигме слоёв(layers). При таком подходе чертеж как бы складывается из стопки прозрачных листов, видимостью которых можно управлять.»

«Внутри слоя объекты можно собирать в группы(groups), ведущими себя при базовом редактировании как единый цельный объект»

«блоки(blocks) представляют отдельный чертеж загруженный в отдельную область памяти, а их вставки в основной чертеж представляют лишь ссылки»

«При выборе геометрических элементов появляются рукоятки (handlers) обеспечивающие возможность детального редактирования объекта»

(с) Введение в современные САПР. Владимир Малюх, ДМК Пресс.

Хорошая книжка, кстати, советую. Значит в QCAD и LibreCAD нет групп и рукояток. Без групп можно и блоками прожить, а handlers- я итак почти не пользуюсь, хотя в Draftsight они есть.

LibreCAD

Установка LibreCAD

В большинстве дистрибутивах существует пакет librecad , иногда ещё есть пакет qcad который устанавливает вам также librecad.

Инструкции с оффициального сайта

sudo apt-get install librecad

В Gentoo вам скорее всего понадобиться подключить overlay

Ubuntu PPA

PPA — это репозиторий разработчиков со свежими версиями программ, позволяет совмещать стабильные системы и немного свежего стороннего ПО.

sudo add-apt-repository ppa:librecad-dev/librecad-daily
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install librecad

Сборка из исходных кодов

Установим пререквизиты это Qt4-dev библиотеки, парсер и недавно появившиеся библиотеки boost.

sudo apt-get install g++ gcc make git-core libqt4-dev qt4-qmake\ libqt4-help qt4-dev-tools libboost-all-dev libmuparser-dev\ libfreetype6-dev

Теперь качаем свежую версию Librecad и компилируем её

mkdir -p source
cd source
git clone https://github.com/LibreCAD/LibreCAD
cd LibreCAD
qmake librecad.pro
make

Когда надо посмотреть плагины

cd LibreCAD
cd plugins
qmake
make
cd ..
qmake librecad.pro
make

Запуск

cd unix
./librecad

Основные возможности

librecad_intro.png

Рассмотрим назначение элементов программы:

  • 1 — Рабочее поле тут мы чертим.
  • 2 — Основные инструменты, практически мало чем отличаются от QCAD
  • 3 — Привязки, здесь мы их сами активируем, нет никакого умного подбора ближайшей привязки… и в отличие от QCAD2 можно включить одновременно сразу несколько привязок.
  • 4 — Когда на чертеже, особенно на архитектурных существует часто повторяющийся объект, его рисуют, затем создают блок, а дальше перемещают и вставляют экономя память и размер файла чертежа.
  • 5 — Ручной выбор стиля и толщины линий для выбранных объектов
  • 6 — Собственно слои, позволяют разделять объекты, создаваемые на слое объекты изначально обладают стилевыми атрибутами этого слоя. При старте нового чертежа у вас есть только нулевой слой который вы не удалите и на который придется скидывать все остальные слои , если вы хотите открывать ваш dxf в программе которая не поддерживает слои в dxf, или при удалении слоя все объекты слоя перемещаются на 0.(Слои только с латинскими названиями)
  • 7 — Библиотека шаблонов. Также бывают часто повторяющиеся шаблоны, такие как форматки чертежей , схематические изображение электроприборов и прочее для них удобно использовать данную библиотеку.
  • 8 — Командная строка, удобна когда нужно вводить точные значения, она работает параллельно поэтому вы можете переключаться в неё нажав ПРОБЕЛ

Трюки

  • Печать

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

    qcad_layer.png

    Также не забывайте нажимать кнопку ЧБ, в предварительном просмотре, т.к. в опциях печати есть только пункты Color и Grayscale , а обычно нужно сделать все слои черными.

  • Математические операции

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

  • Текстовые спец. символы

    Внимание надпись D§4^3 введет после D в верхнее поле(индекс) цифру 4 , а в нижнее 3 записывать надо конструкцию целиком даже если у вас нет одного из индексов (A§3^ B§^2)

    qcad_font_tricks.png

  • TTF vs CXF(LFF)

    Первоначально QCAD работал только со своими шрифтами созданными в формате .cxf , в LibreCAD тоже поддерживается этот формат шрифтов, но после претензий от RibbonSoft все шрифты в поставке librecad имеют расширение .lff . Под давлением общественности которая требовала нормальную работу с TTF, был создан инструмент ttf2lff его вы можете создать

    cd LibreCAD/tools/
    qmake-qt4
    make
    
  • Греческий а также размеры с ГОСТ

    Для ввода греческих символов выберете встроенный шрифт greek_ol и символы Greek and Coptic как показано ниже. Для ГОСТ шрифтов есть два способа, это уже встроенный конвертированный шрифт opengostfont — созданный под открытой лицензией Никитой Волченковым(aka fat_angel).Шрифт хорош, но все же любой конвертированный ttf в libreCAD работает медленней чем упрощенный шрифт, например написанный мной gosta.cxf

    qcad_greeks.png

    Размеры используют шрифт standard.lff , вы можете его подменить своим чтобы в размерах использовался ваш шрифт.

    sudo cp gosta.cxf cd /usr/share/librecad/fonts/standard.lff
    
  • Создание штриховок

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

    Вот пример штриховки стекла

  • Шаблоны

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

Недостатки

  • Медленная скорость работы по сравнению с QCAD2-3
  • Кривая поддержка TTF при которой обводиться контур букв а не заливается область внутри буквы
  • Мало примеров плагинов
  • Отсутствие интерфейса для скриптования(ну он мало у кого есть)
  • Мало публичной активности — это уже к пользователям, от разработчиков нужно лишь перенести мануалы с wiki в help на компьютер.

QCAD

Пара слов о QCAD2

Если вы поклонник oldstable и некрофил , возможно вы захотите украсить ваш qt3 интерфейс, для этого воспользуйтесь пакетом polymer

Установка QCAD Community Edition

QCAD3 вышел недавно поэтому пакетов и PPA я под него не видел.

Инструкция с сайта , правда Qt4 все же мы установили с помощью системной утилиты.

git clone https://github.com/qcad/qcad.git
cd qcad
qmake -r 
make
cd release
LD_LIBRARY_PATH=. ./qcad-bin

Возможности по сравнению с LibreCAD

Панель свойств объектов

qcad_intro.png

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

Интерфейс для написания сценариев

Все что я могу сказать это то что он есть и вроде даже использует Javascript ECMAScript не знаю не пользовался.

Изометрические проекции

По сравнению с LibreCAD , переключение между обычной и ортогональными сетками. А также удобный интерфейс для создания проекций из выделенного объекта.

qcad_isometric.png

Нормальная работа с ttf

Тут ничего не сказать. Кроме того что она есть.

Открытые проекты САПР

  • KiCAD экспортирует в dxf чертежи
  • FreeCAD экспортирует проекции в dxf
  • Gnuplot экспортирует в pdf, удобно когда необходимо вставить научные графики в диплом.

Дополнительные утилиты

Если вам нужно конвертировать «в» или «из» DWG вы можете поставить конвертер Teigha , ну правда тут одно но, на самом деле DWG 2 штуки, от AutoCAD и от Open Design Alliance. И DWG от AutoCAD лучше поддерживает AutoCAD у него такая функция — подмять под себя.

(со шрифтами точно будут проблемы). В общем библиотеку от ODA и используют Draftsight и прочие с поддержкой DWG.

teigha_convert.png