Доработка верстака TechDraw под ГОСТ 2.x и ISO
Если Вы хотите включиться в процесс разработки FreeCAD, имея знания по C++ или Python, в сообществе разработчиков FreeCAD Вам будут рады!
Если у Вас нет опыта работы с Git, рекомендую почитать Работа с Git на примере FreeCAD. Затем можно ознакомиться с правилами участия в разработке: Developer hub ➝ Modifying FreeCAD.
В верстаке TechDraw (для создания технических чертежей из 3D-моделей) во FreeCAD 0.19 появятся новые, давно ожидаемые, возможности:
- выносные и размерные линии будут соответствовать ISO 129-1 (ГОСТ 2.307-2011);
- появится инструмент обозначения швов сварных соединений;
- появятся новые инструменты для создания кастомных выносок (линий), аннотаций, баллунов и т. п;
- описание новшеств во FreeCAD 0.19: https://freecadweb.org/wiki/Release_notes_0.19.
Панель инструментов верстака TechDraw во FreeCAD 0.18
Панель инструментов верстака TechDraw во FreeCAD 0.19. Инструментов стало намного больше!
Новые функции FreeCAD 0.19 для создания чертежей (отмечены красным плюсом):
Пример выносных, размерных линий, разрез, обозначение сварки. Использован разработанный сообществом шаблон рамок по ГОСТ. Использован шрифт Arial.
Проблемы, которые выявились при создании тестового чертежа
(Важно! Я тестировал сборку FreeCAD 19093 от 2019/12/27 под Windows 10. Версия находится в активной разработке, поэтому ситуация может меняться.)
Как и в версии 0.18 самым непокладистым оказалось обозначение разреза на чертеже. Во-первых, пока нет в TechDraw такого вида линий как "разомкнутая", конечно можно было вообще не отображать её, но тогда остаются буквы, (которые кстати, не мешало бы ниже располагать), а вместо стрелок, указывающих направление взгляда какие-то треугольники.. в общем, можно вообще в параметрах вида ("вида с верху" в данном случае) отключить отображение разреза и каким-либо образом добавлять в чертеж разомкнутую линию со стрелками и буквами. Но, нужно отметить, что, по сравнению с версией 0.18, где стрелки не упирались в линию, а смотрели "от линии" по стандарту ANSI, уже легче от этого. Настроек стало больше.
Сыровато пока ещё с обозначениями сварных соединений: мало символов, расположение текста над полкой на рисунке ниже никак не возможно поменять, вводя даже координаты в соответствующие поля, даже пытался через инструмент "Перемещение" в верстаке Draft пододвинуть текст - нет, не цепляет:
В общем, вместо этого вставил ГОСТ сварки и символ катета из Unicode в объект "Форматированный текстовый блок".
Порадовало, что символ "сварка по замкнутому контуру" работает без проблем. Обозначение монтажного шва (черный треугольный флажок) тоже встало четко ан изломе линии, но флажок смотрит влево, а не вправо, не знаю, насколько это нормально, но думаю всё решаемо донесением до разработчика этой небольшой проблемы
При попытке задать размер угла внутри, не получается расположить размерное число посередине дуги (на чертеже выше угол 45° — это максимально возможное к центру дуги положение размерного числа), скачет то под дугу, то ещё куда.
Но в целом, конечно, верстак TechDraw в версии 0.19 стал в несколько раз лучше, правильнее сказать — качественно лучше, перейдя в другой класс. Не совершенен, конечно, но можно работать!
В общем, если Вы хотите улучшить FreeCAD — либо присоединяйтесь к разработке, либо корректно сообщайте разработчикам о баге!
Как и куда сообщать об ошибках во FreeCAD и сам баг-трекер FreeCAD
По поводу обозначения сварки во FreeCAD
Сейчас в России действуют 2 ГОСТа на обозначение "сварки": ГОСТ 2.312-72 — сварка обозначается полустрелкой (у стрелки одно крыло), и ГОСТ Р ИСО 2553-2017 — сварка обозначается стрелкой, но ГОСТ Р ИСО 2553-2017 вводит много знаков для обозначения типов швов сварных соединений, их обработки и т. п.
На данный момент Верстак TechDraw предлагает достаточно ограниченный набор символов для вставки обозначения сварного соединения:
Но это не большая проблема: эти символы являются всего-лишь SVG-файлами, эта библиотека располагается в каталоге
"FreeCAD-root-folder/data/Mod/TechDraw/Symbols/Welding/AWS/".
Таким образом, предлагаю желающим побыстрее развить верстак TechDraw, по мере возможности заняться отрисовкой SVG-символов сварки и иных востребованных символов ЕСКД. Символы сварки, соответственно будут добавлены в вышеуказанный каталог.
Есть ещё способ добавления симоволов на чертежи, в частности обозначений сварки — найти-установить специальный шрифт, пример свободного шрифта с обозначениями сварных соединений: WeldSymbols Font.
Иные ЕСКД-символы на чертежах во FreeCAD
Для иных символов имеет смысл сначала выяснить планы разработчиков TechDraw относительно того, в каком формате они советуют их создавать,см. Как участвовать в разработке FreeCAD.
Но в любом случае так как в TechDraw есть несколько возможностей вставки SVG-символов и иных графических объектов:
И учитывая, что в интернете на настоящее время, я, например, найти библиотек SVG-ЕСКД знаков (или символов, уж не знаю, как лучше обзывать эту сущность :) не смог, зато постоянно натыкался на вопросы где брать символы?.. Получается создание библиотеки таких SVG-символов-ЕСКД имеет БОЛЬШОЙ смысл. Эта библиотека всегда будет востребована!
Собственно, Ваш покорный слуга :) уже начал этот труд — потихоньку отрисовываю символы для обозначения сварки, см. таблицы по ссылке ниже. Процесс не быстр, буду дополнять эту библиотеку SVG-символов постепенно...
SVG-символы для свободного использования в чертежах
Других востребованных символов ещё много: ГОСТы 2.x по обозначениям от крепёжных изделий до схемотехники, СПДС ГОСТы 21.x, см. для примера Список ГОСТов, составляющих ЕСКД.
В качестве временного решения для вставки ЕСКД-ISO-символов, отсутсвующих на данный момент в верстаке TechDraw, можно порекомендовать как самый простой вариант — копипаст Unicode-символов в текстовые поля.
Сокращенная таблица специальных символов Unicode для чертежей
Reduced Unicode technical drawing characters table
Так как таблица достаточно большая, на этой странице представлена только её часть. В конце таблицы есть ссылка на полную таблицу технических символов Unicode с возможностью выбора и вставки интересующего символа в постоянно видимое текстовое поле для удобства!
‰ 8240 0x2030 | ‱ 8241 0x2031 | ′ 8242 0x2032 | ″ 8243 0x2033 | ‴ 8244 0x2034 | ‵ 8245 0x2035 | ‶ 8246 0x2036 | ‷ 8247 0x2037 | ‸ 8248 0x2038 | ‹ 8249 0x2039 | › 8250 0x203a | ※ 8251 0x203b | ⁐ 8272 0x2050 | ⁔ 8276 0x2054 | ‾ 8254 0x203e | ‿ 8255 0x203f | ⁀ 8256 0x2040 | ⁁ 8257 0x2041 | ⁄ 8260 0x2044 | ⁃ 8259 0x2043 |
⃐ 8400 0x20d0 | ⃑ 8401 0x20d1 | ⃒ 8402 0x20d2 | ⃓ 8403 0x20d3 | ⃔ 8404 0x20d4 | ⃕ 8405 0x20d5 | ⃖ 8406 0x20d6 | ⃗ 8407 0x20d7 | ⃘ 8408 0x20d8 | ⃙ 8409 0x20d9 | ⃚ 8410 0x20da | ⃛ 8411 0x20db | ⃜ 8412 0x20dc | ⃝ 8413 0x20dd | ⃞ 8414 0x20de | ⃟ 8415 0x20df | ⃠ 8416 0x20e0 | ⃡ 8417 0x20e1 | ⃢ 8418 0x20e2 | ⃣ 8419 0x20e3 |
⃤ 8420 0x20e4 | ⃥ 8421 0x20e5 | ⃦ 8422 0x20e6 | ⃧ 8423 0x20e7 | ⃨ 8424 0x20e8 | ⃩ 8425 0x20e9 | ⃪ 8426 0x20ea | ⃫ 8427 0x20eb | ⃬ 8428 0x20ec | ⃭ 8429 0x20ed | ← 8592 0x2190 | ↑ 8593 0x2191 | → 8594 0x2192 | ↓ 8595 0x2193 | ↔ 8596 0x2194 | ↕ 8597 0x2195 | ↖ 8598 0x2196 | ↗ 8599 0x2197 | ↘ 8600 0x2198 | ↙ 8601 0x2199 |
↮ 8622 0x21ae | ↯ 8623 0x21af | ↰ 8624 0x21b0 | ↱ 8625 0x21b1 | ↲ 8626 0x21b2 | ↳ 8627 0x21b3 | ↴ 8628 0x21b4 | ↵ 8629 0x21b5 | ↶ 8630 0x21b6 | ↷ 8631 0x21b7 | ↸ 8632 0x21b8 | ↹ 8633 0x21b9 | ↺ 8634 0x21ba | ↻ 8635 0x21bb | ↼ 8636 0x21bc | ↽ 8637 0x21bd | ↾ 8638 0x21be | ↿ 8639 0x21bf | ⇀ 8640 0x21c0 | ⇁ 8641 0x21c1 |
⇂ 8642 0x21c2 | ⇃ 8643 0x21c3 | ⇄ 8644 0x21c4 | ⇅ 8645 0x21c5 | ⇆ 8646 0x21c6 | ⇇ 8647 0x21c7 | ⇈ 8648 0x21c8 | ⇉ 8649 0x21c9 | ⇊ 8650 0x21ca | ⇋ 8651 0x21cb | ⇌ 8652 0x21cc | ∏ 8719 0x220f | ∐ 8720 0x2210 | ∑ 8721 0x2211 | − 8722 0x2212 | ∓ 8723 0x2213 | ∔ 8724 0x2214 | ∕ 8725 0x2215 | ∖ 8726 0x2216 | ∗ 8727 0x2217 |
∘ 8728 0x2218 | ∙ 8729 0x2219 | √ 8730 0x221a | ∛ 8731 0x221b | ∜ 8732 0x221c | ∝ 8733 0x221d | ∞ 8734 0x221e | ∟ 8735 0x221f | ∠ 8736 0x2220 | ∡ 8737 0x2221 | ∢ 8738 0x2222 | ∣ 8739 0x2223 | ∤ 8740 0x2224 | ∥ 8741 0x2225 | ∦ 8742 0x2226 | ∧ 8743 0x2227 | ∨ 8744 0x2228 | ∩ 8745 0x2229 | ∪ 8746 0x222a | ⊂ 8834 0x2282 |
⊃ 8835 0x2283 | ⊄ 8836 0x2284 | ⊅ 8837 0x2285 | ⊆ 8838 0x2286 | ⊇ 8839 0x2287 | ⊈ 8840 0x2288 | ⊉ 8841 0x2289 | ⊊ 8842 0x228a | ⊋ 8843 0x228b | ⊌ 8844 0x228c | ⊍ 8845 0x228d | ⊎ 8846 0x228e | ⊏ 8847 0x228f | ⊐ 8848 0x2290 | ⊑ 8849 0x2291 | ⊒ 8850 0x2292 | ⊓ 8851 0x2293 | ⊔ 8852 0x2294 | ⊕ 8853 0x2295 | ⊖ 8854 0x2296 |
⋻ 8955 0x22fb | ⋼ 8956 0x22fc | ⋽ 8957 0x22fd | ⋾ 8958 0x22fe | ⋿ 8959 0x22ff | ⌀ 8960 0x2300 | ⌁ 8961 0x2301 | ⌂ 8962 0x2302 | ⌃ 8963 0x2303 | ⌄ 8964 0x2304 | ⌅ 8965 0x2305 | ⌆ 8966 0x2306 | ⌇ 8967 0x2307 | ⌈ 8968 0x2308 | ⌉ 8969 0x2309 | ⌊ 8970 0x230a | ⌋ 8971 0x230b | ⌒ 8978 0x2312 | ⌓ 8979 0x2313 | ⌔ 8980 0x2314 |
⌕ 8981 0x2315 | ⌖ 8982 0x2316 | ⌗ 8983 0x2317 | ⌘ 8984 0x2318 | ⌙ 8985 0x2319 | ⌜ 8988 0x231c | ⌝ 8989 0x231d | ⌞ 8990 0x231e | ⌟ 8991 0x231f | ⌠ 8992 0x2320 | ⌡ 8993 0x2321 | ⌢ 8994 0x2322 | ⌣ 8995 0x2323 | ⌤ 8996 0x2324 | ⌥ 8997 0x2325 | ⌦ 8998 0x2326 | ⌧ 8999 0x2327 | ⌨ 9000 0x2328 | 〈 9001 0x2329 | 〉 9002 0x232a |
⌫ 9003 0x232b | ⌬ 9004 0x232c | ⌭ 9005 0x232d | ⌮ 9006 0x232e | ⌯ 9007 0x232f | ⌰ 9008 0x2330 | ⌱ 9009 0x2331 | ⌲ 9010 0x2332 | ⌳ 9011 0x2333 | ⌴ 9012 0x2334 | ⌵ 9013 0x2335 | ⌶ 9014 0x2336 | ⌷ 9015 0x2337 | ⌸ 9016 0x2338 | ⌹ 9017 0x2339 | ⌺ 9018 0x233a | ⌻ 9019 0x233b | ⌼ 9020 0x233c | ⌽ 9021 0x233d | ⌾ 9022 0x233e |
⌿ 9023 0x233f | ⍀ 9024 0x2340 | ⍁ 9025 0x2341 | ⍂ 9026 0x2342 | ⍃ 9027 0x2343 | ⍄ 9028 0x2344 | ⍅ 9029 0x2345 | ⍆ 9030 0x2346 | ⍇ 9031 0x2347 | ⍈ 9032 0x2348 | ⍉ 9033 0x2349 | ⍊ 9034 0x234a | ⍋ 9035 0x234b | ⍌ 9036 0x234c | ⍍ 9037 0x234d | ⍎ 9038 0x234e | ⍏ 9039 0x234f | ⍐ 9040 0x2350 | ⍑ 9041 0x2351 | ⍒ 9042 0x2352 |
⍓ 9043 0x2353 | ⍔ 9044 0x2354 | ⍕ 9045 0x2355 | ⍖ 9046 0x2356 | ⍗ 9047 0x2357 | ⍘ 9048 0x2358 | ⍙ 9049 0x2359 | ⍚ 9050 0x235a | ⍛ 9051 0x235b | ⍜ 9052 0x235c | ⍝ 9053 0x235d | ⍞ 9054 0x235e | ⍟ 9055 0x235f | ⍠ 9056 0x2360 | ⍡ 9057 0x2361 | ⍢ 9058 0x2362 | ⍣ 9059 0x2363 | ⍤ 9060 0x2364 | ⍥ 9061 0x2365 | ⍦ 9062 0x2366 |
⍧ 9063 0x2367 | ⍨ 9064 0x2368 | ⍩ 9065 0x2369 | ⍪ 9066 0x236a | ⍫ 9067 0x236b | ⍬ 9068 0x236c | ⍭ 9069 0x236d | ⍮ 9070 0x236e | ⍯ 9071 0x236f | ⍰ 9072 0x2370 | ⍱ 9073 0x2371 | ⍲ 9074 0x2372 | ⍳ 9075 0x2373 | ⍴ 9076 0x2374 | ⍵ 9077 0x2375 | ⍶ 9078 0x2376 | ⍷ 9079 0x2377 | ⍸ 9080 0x2378 | ⍹ 9081 0x2379 | ⍺ 9082 0x237a |
⎷ 9143 0x23b7 | ⎸ 9144 0x23b8 | ⎹ 9145 0x23b9 | ⎺ 9146 0x23ba | ⎻ 9147 0x23bb | ⎼ 9148 0x23bc | ⎽ 9149 0x23bd | ⎾ 9150 0x23be | ⎿ 9151 0x23bf | ⏀ 9152 0x23c0 | ⏁ 9153 0x23c1 | ⏂ 9154 0x23c2 | ⏃ 9155 0x23c3 | ⏄ 9156 0x23c4 | ⏅ 9157 0x23c5 | ⏆ 9158 0x23c6 | ⏇ 9159 0x23c7 | ⏈ 9160 0x23c8 | ⏉ 9161 0x23c9 | ⏊ 9162 0x23ca |
⏋ 9163 0x23cb | ⏌ 9164 0x23cc | ⏍ 9165 0x23cd | ⏎ 9166 0x23ce | ⏏ 9167 0x23cf | ⏐ 9168 0x23d0 | ⏑ 9169 0x23d1 | ⏒ 9170 0x23d2 | ⏓ 9171 0x23d3 | ⏔ 9172 0x23d4 | ⏕ 9173 0x23d5 | ⏖ 9174 0x23d6 | ⏗ 9175 0x23d7 | ⏘ 9176 0x23d8 | ⏙ 9177 0x23d9 | ⏚ 9178 0x23da | ⏛ 9179 0x23db | ⏜ 9180 0x23dc | ⏝ 9181 0x23dd | ⏞ 9182 0x23de |
▲ 9650 0x25b2 | △ 9651 0x25b3 | ▴ 9652 0x25b4 | ▵ 9653 0x25b5 | ▶ 9654 0x25b6 | ▷ 9655 0x25b7 | ▸ 9656 0x25b8 | ▹ 9657 0x25b9 | ► 9658 0x25ba | ▻ 9659 0x25bb | ▼ 9660 0x25bc | ▽ 9661 0x25bd | ▾ 9662 0x25be | ▿ 9663 0x25bf | ◀ 9664 0x25c0 | ◁ 9665 0x25c1 | ◂ 9666 0x25c2 | ◃ 9667 0x25c3 | ◄ 9668 0x25c4 | ◅ 9669 0x25c5 |
◆ 9670 0x25c6 | ◇ 9671 0x25c7 | ◈ 9672 0x25c8 | ◉ 9673 0x25c9 | ◊ 9674 0x25ca | ○ 9675 0x25cb | ◌ 9676 0x25cc | ◍ 9677 0x25cd | ◎ 9678 0x25ce | ● 9679 0x25cf | ◐ 9680 0x25d0 | ◑ 9681 0x25d1 | ◒ 9682 0x25d2 | ◓ 9683 0x25d3 | ◔ 9684 0x25d4 | ◕ 9685 0x25d5 | ◖ 9686 0x25d6 | ◗ 9687 0x25d7 | ◘ 9688 0x25d8 | ◙ 9689 0x25d9 |
◚ 9690 0x25da | ◛ 9691 0x25db | ◜ 9692 0x25dc | ◝ 9693 0x25dd | ◞ 9694 0x25de | ◟ 9695 0x25df | ◠ 9696 0x25e0 | ◡ 9697 0x25e1 | ◢ 9698 0x25e2 | ◣ 9699 0x25e3 | ◤ 9700 0x25e4 | ◥ 9701 0x25e5 | ◦ 9702 0x25e6 | ◧ 9703 0x25e7 | ◨ 9704 0x25e8 | ◩ 9705 0x25e9 | ◪ 9706 0x25ea | ◫ 9707 0x25eb | ◬ 9708 0x25ec | ◭ 9709 0x25ed |
◮ 9710 0x25ee | ◯ 9711 0x25ef | ◰ 9712 0x25f0 | ◱ 9713 0x25f1 | ◲ 9714 0x25f2 | ◳ 9715 0x25f3 | ◴ 9716 0x25f4 | ◵ 9717 0x25f5 | ◶ 9718 0x25f6 | ◷ 9719 0x25f7 | ◸ 9720 0x25f8 | ◹ 9721 0x25f9 | ◺ 9722 0x25fa | ◻ 9723 0x25fb | ◼ 9724 0x25fc | ◽ 9725 0x25fd | ◾ 9726 0x25fe | ◿ 9727 0x25ff | ⩊ 10826 0x2a4a | ⩋ 10827 0x2a4b |
Полная таблица специальных символов Unicode для чертежей (Complete Unicode technical drawing characters table) |