Translated using Weblate (Russian)
Currently translated at 99.9% (8009 of 8011 strings) Translation: KiCad EDA/master source Translate-URL: https://hosted.weblate.org/projects/kicad/master-source/ru/
This commit is contained in:
parent
9d3f4bef6a
commit
97f6bb7e99
|
@ -22,8 +22,8 @@ msgstr ""
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
||||||
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||||
"X-Generator: Weblate 4.16-dev\n"
|
"X-Generator: Weblate 4.16-dev\n"
|
||||||
"X-Poedit-KeywordsList: _;_HKI\n"
|
"X-Poedit-KeywordsList: _;_HKI\n"
|
||||||
"X-Poedit-Basepath: ../../kicad\n"
|
"X-Poedit-Basepath: ../../kicad\n"
|
||||||
|
@ -7990,12 +7990,12 @@ msgid ""
|
||||||
"python <script file name> <input filename> <output filename>\n"
|
"python <script file name> <input filename> <output filename>\n"
|
||||||
"```\n"
|
"```\n"
|
||||||
"\n"
|
"\n"
|
||||||
"On Windows, if the desired generator script for a CSV BOM is `C:"
|
"On Windows, if the desired generator script for a CSV BOM is `C:\\Users"
|
||||||
"\\Users\\username\\kicad\\my_python_script.py`, the command line would be:\n"
|
"\\username\\kicad\\my_python_script.py`, the command line would be:\n"
|
||||||
"\n"
|
"\n"
|
||||||
"```\n"
|
"```\n"
|
||||||
"python.exe C:\\Users\\username\\kicad\\my_python_script.py \"%I\" \"%O."
|
"python.exe C:\\Users\\username\\kicad\\my_python_script.py \"%I\" \"%O.csv"
|
||||||
"csv\"\n"
|
"\"\n"
|
||||||
"```\n"
|
"```\n"
|
||||||
"\n"
|
"\n"
|
||||||
"On Linux, if the desired generator script for a CSV BOM is `/home/username/"
|
"On Linux, if the desired generator script for a CSV BOM is `/home/username/"
|
||||||
|
@ -8070,13 +8070,12 @@ msgstr ""
|
||||||
"python <имя файла скрипта> <имя входного файла> <имя выходного файла>\n"
|
"python <имя файла скрипта> <имя входного файла> <имя выходного файла>\n"
|
||||||
"```\n"
|
"```\n"
|
||||||
"\n"
|
"\n"
|
||||||
"В Windows, если желаемый скрипт генератора для CSV BOM - `C:"
|
"В Windows, если желаемый скрипт генератора для CSV BOM - `C:\\Users\\username"
|
||||||
"\\Users\\username\\kicad\\my_python_script.py`, командная строка будет "
|
"\\kicad\\my_python_script.py`, командная строка будет такой:\n"
|
||||||
"такой:\n"
|
|
||||||
"\n"
|
"\n"
|
||||||
"```\n"
|
"```\n"
|
||||||
"python.exe C:\\Users\\username\\kicad\\my_python_script.py \"%I\" \"%O."
|
"python.exe C:\\Users\\username\\kicad\\my_python_script.py \"%I\" \"%O.csv"
|
||||||
"csv\"\n"
|
"\"\n"
|
||||||
"```\n"
|
"```\n"
|
||||||
"\n"
|
"\n"
|
||||||
"В Linux, если желаемый скрипт генератора для CSV BOM - `/home/username/kicad/"
|
"В Linux, если желаемый скрипт генератора для CSV BOM - `/home/username/kicad/"
|
||||||
|
@ -11551,9 +11550,9 @@ msgstr ""
|
||||||
"библиотек. KiCad попытается переназначить существующим символам библиотеки "
|
"библиотек. KiCad попытается переназначить существующим символам библиотеки "
|
||||||
"из новой таблицы библиотек. Внесённые изменения коснуться файлов проекта и "
|
"из новой таблицы библиотек. Внесённые изменения коснуться файлов проекта и "
|
||||||
"схема станет не совместимой с предыдущими версиями KiCad. Для всех файлов, "
|
"схема станет не совместимой с предыдущими версиями KiCad. Для всех файлов, "
|
||||||
"подлежащих изменению, будут созданы резервные копии в каталоге "
|
"подлежащих изменению, будут созданы резервные копии в каталоге \"remap_backup"
|
||||||
"\"remap_backup\", что позволит отменить внесённые изменения. Если пропустить "
|
"\", что позволит отменить внесённые изменения. Если пропустить этот шаг, "
|
||||||
"этот шаг, придётся переопределять символы вручную."
|
"придётся переопределять символы вручную."
|
||||||
|
|
||||||
#: eeschema/dialogs/dialog_symbol_remap.cpp:208
|
#: eeschema/dialogs/dialog_symbol_remap.cpp:208
|
||||||
#, c-format
|
#, c-format
|
||||||
|
@ -16301,8 +16300,8 @@ msgstr ""
|
||||||
#: eeschema/symbol_checker.cpp:146
|
#: eeschema/symbol_checker.cpp:146
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"<b>Duplicate pin %s</b> %s at location <b>(%s, %s)</b> conflicts with pin "
|
"<b>Duplicate pin %s</b> %s at location <b>(%s, %s)</b> conflicts with pin %s"
|
||||||
"%s%s at location <b>(%s, %s)</b>."
|
"%s at location <b>(%s, %s)</b>."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"<b>Вывод-дубликат %s</b> %s с координатами <b>(%s, %s)</b>, конфликтует с "
|
"<b>Вывод-дубликат %s</b> %s с координатами <b>(%s, %s)</b>, конфликтует с "
|
||||||
"выводом %s%s, координаты <b>(%s, %s)</b>."
|
"выводом %s%s, координаты <b>(%s, %s)</b>."
|
||||||
|
@ -16310,8 +16309,8 @@ msgstr ""
|
||||||
#: eeschema/symbol_checker.cpp:159
|
#: eeschema/symbol_checker.cpp:159
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"<b>Duplicate pin %s</b> %s at location <b>(%s, %s)</b> conflicts with pin "
|
"<b>Duplicate pin %s</b> %s at location <b>(%s, %s)</b> conflicts with pin %s"
|
||||||
"%s%s at location <b>(%s, %s)</b> in units %s and %s."
|
"%s at location <b>(%s, %s)</b> in units %s and %s."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"<b>Вывод-дубликат %s</b> %s с координатами <b>(%s, %s)</b>, конфликтует с "
|
"<b>Вывод-дубликат %s</b> %s с координатами <b>(%s, %s)</b>, конфликтует с "
|
||||||
"выводом %s%s, координаты <b>(%s, %s)</b> в частях %s и %s."
|
"выводом %s%s, координаты <b>(%s, %s)</b> в частях %s и %s."
|
||||||
|
@ -19825,8 +19824,8 @@ msgstr "Сформировать файл позиций"
|
||||||
#: kicad/cli/command_export_pcb_pos.cpp:49
|
#: kicad/cli/command_export_pcb_pos.cpp:49
|
||||||
msgid "Valid options: front,back,both. Gerber format only supports \"both\"."
|
msgid "Valid options: front,back,both. Gerber format only supports \"both\"."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Возможные варианты: front,back,both. Формат Gerber поддерживает только "
|
"Возможные варианты: front,back,both. Формат Gerber поддерживает только \"both"
|
||||||
"\"both\"."
|
"\"."
|
||||||
|
|
||||||
#: kicad/cli/command_export_pcb_pos.cpp:53
|
#: kicad/cli/command_export_pcb_pos.cpp:53
|
||||||
msgid "Valid options: ascii,csv,gerber"
|
msgid "Valid options: ascii,csv,gerber"
|
||||||
|
@ -19948,9 +19947,8 @@ msgid "Schematic file does not exist or is not accessible\n"
|
||||||
msgstr "Файл схемы не существует или недоступен\n"
|
msgstr "Файл схемы не существует или недоступен\n"
|
||||||
|
|
||||||
#: kicad/cli/command_export_sch_pdf.cpp:38
|
#: kicad/cli/command_export_sch_pdf.cpp:38
|
||||||
#, fuzzy
|
|
||||||
msgid "Color theme to use (will default to schematic settings)"
|
msgid "Color theme to use (will default to schematic settings)"
|
||||||
msgstr "Цветовая тема (по умолчанию берется из редактора плат)"
|
msgstr "Цветовая тема (по умолчанию берется из редактора схем)"
|
||||||
|
|
||||||
#: kicad/cli/command_export_sch_pdf.cpp:51
|
#: kicad/cli/command_export_sch_pdf.cpp:51
|
||||||
#: kicad/cli/command_export_sch_svg.cpp:51
|
#: kicad/cli/command_export_sch_svg.cpp:51
|
||||||
|
@ -31720,13 +31718,13 @@ msgid ""
|
||||||
"\n"
|
"\n"
|
||||||
" (rule \"Distance between Vias of Different Nets\"\n"
|
" (rule \"Distance between Vias of Different Nets\"\n"
|
||||||
" (constraint hole_to_hole (min 0.254mm))\n"
|
" (constraint hole_to_hole (min 0.254mm))\n"
|
||||||
" (condition \"A.Type == 'Via' && B.Type == 'Via' && A.Net != B."
|
" (condition \"A.Type == 'Via' && B.Type == 'Via' && A.Net != B.Net"
|
||||||
"Net\"))\n"
|
"\"))\n"
|
||||||
"\n"
|
"\n"
|
||||||
" (rule \"Clearance between Pads of Different Nets\"\n"
|
" (rule \"Clearance between Pads of Different Nets\"\n"
|
||||||
" (constraint clearance (min 3.0mm))\n"
|
" (constraint clearance (min 3.0mm))\n"
|
||||||
" (condition \"A.Type == 'Pad' && B.Type == 'Pad' && A.Net != B."
|
" (condition \"A.Type == 'Pad' && B.Type == 'Pad' && A.Net != B.Net"
|
||||||
"Net\"))\n"
|
"\"))\n"
|
||||||
"\n"
|
"\n"
|
||||||
"\n"
|
"\n"
|
||||||
" (rule \"Via Hole to Track Clearance\"\n"
|
" (rule \"Via Hole to Track Clearance\"\n"
|
||||||
|
@ -32048,13 +32046,13 @@ msgstr ""
|
||||||
"\n"
|
"\n"
|
||||||
" (rule \"Distance between Vias of Different Nets\"\n"
|
" (rule \"Distance between Vias of Different Nets\"\n"
|
||||||
" (constraint hole_to_hole (min 0.254mm))\n"
|
" (constraint hole_to_hole (min 0.254mm))\n"
|
||||||
" (condition \"A.Type == 'Via' && B.Type == 'Via' && A.Net != B."
|
" (condition \"A.Type == 'Via' && B.Type == 'Via' && A.Net != B.Net"
|
||||||
"Net\"))\n"
|
"\"))\n"
|
||||||
"\n"
|
"\n"
|
||||||
" (rule \"Clearance between Pads of Different Nets\"\n"
|
" (rule \"Clearance between Pads of Different Nets\"\n"
|
||||||
" (constraint clearance (min 3.0mm))\n"
|
" (constraint clearance (min 3.0mm))\n"
|
||||||
" (condition \"A.Type == 'Pad' && B.Type == 'Pad' && A.Net != B."
|
" (condition \"A.Type == 'Pad' && B.Type == 'Pad' && A.Net != B.Net"
|
||||||
"Net\"))\n"
|
"\"))\n"
|
||||||
"\n"
|
"\n"
|
||||||
"\n"
|
"\n"
|
||||||
" (rule \"Via Hole to Track Clearance\"\n"
|
" (rule \"Via Hole to Track Clearance\"\n"
|
||||||
|
@ -32091,8 +32089,8 @@ msgstr ""
|
||||||
" (condition \"A.inDiffPair('*') && !AB.isCoupledDiffPair()\"))\n"
|
" (condition \"A.inDiffPair('*') && !AB.isCoupledDiffPair()\"))\n"
|
||||||
"\n"
|
"\n"
|
||||||
"\n"
|
"\n"
|
||||||
" # Исключить терморазгрузку на конт.пл. с параметром \"для отвода "
|
" # Исключить терморазгрузку на конт.пл. с параметром \"для отвода тепла"
|
||||||
"тепла\"\n"
|
"\"\n"
|
||||||
" (rule heat_sink_pad\n"
|
" (rule heat_sink_pad\n"
|
||||||
" (constraint zone_connection solid)\n"
|
" (constraint zone_connection solid)\n"
|
||||||
" (condition \"A.Fabrication_Property == 'Heatsink pad'\"))\n"
|
" (condition \"A.Fabrication_Property == 'Heatsink pad'\"))\n"
|
||||||
|
@ -33472,8 +33470,8 @@ msgid ""
|
||||||
"This may result in different fills from previous KiCad versions which used "
|
"This may result in different fills from previous KiCad versions which used "
|
||||||
"the line thicknesses of the board boundary on the Edge Cuts layer."
|
"the line thicknesses of the board boundary on the Edge Cuts layer."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Если перезалить зоны меди, то будет использован параметр \"Зазор у края "
|
"Если перезалить зоны меди, то будет использован параметр \"Зазор у края платы"
|
||||||
"платы\" (см. Параметры платы > Правила проектирования > Ограничения).\n"
|
"\" (см. Параметры платы > Правила проектирования > Ограничения).\n"
|
||||||
"При этом новая форма зоны может отличаться от той, что была сделана в "
|
"При этом новая форма зоны может отличаться от той, что была сделана в "
|
||||||
"предыдущих версиях KiCad, где в качестве зазора использовалась толщина "
|
"предыдущих версиях KiCad, где в качестве зазора использовалась толщина "
|
||||||
"контура платы."
|
"контура платы."
|
||||||
|
@ -41142,6 +41140,672 @@ msgstr "Схема KiCad"
|
||||||
msgid "KiCad Printed Circuit Board"
|
msgid "KiCad Printed Circuit Board"
|
||||||
msgstr "Печатная плата KiCad"
|
msgstr "Печатная плата KiCad"
|
||||||
|
|
||||||
|
#: eeschema/sim/kibis/ibis_parser.cpp:613
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Checking Header... "
|
||||||
|
msgstr "Проверка заголовка..."
|
||||||
|
|
||||||
|
#: pcbnew/dialogs/panel_setup_rules_help_md.h:2
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
"### Top-level Clauses\n"
|
||||||
|
"\n"
|
||||||
|
" (version <number>)\n"
|
||||||
|
"\n"
|
||||||
|
" (rule <rule_name> <rule_clause> ...)\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Rule Clauses\n"
|
||||||
|
"\n"
|
||||||
|
" (constraint <constraint_type> ...)\n"
|
||||||
|
"\n"
|
||||||
|
" (condition \"<expression>\")\n"
|
||||||
|
"\n"
|
||||||
|
" (layer \"<layer_name>\")\n"
|
||||||
|
"\n"
|
||||||
|
" (severity <severity_name>)\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Constraint Types\n"
|
||||||
|
"\n"
|
||||||
|
" * annular\\_width\n"
|
||||||
|
" * assertion\n"
|
||||||
|
" * clearance\n"
|
||||||
|
" * connection\\_width\n"
|
||||||
|
" * courtyard_clearance\n"
|
||||||
|
" * diff\\_pair\\_gap\n"
|
||||||
|
" * diff\\_pair\\_uncoupled\n"
|
||||||
|
" * disallow\n"
|
||||||
|
" * edge\\_clearance\n"
|
||||||
|
" * length\n"
|
||||||
|
" * hole\\_clearance\n"
|
||||||
|
" * hole\\_size\n"
|
||||||
|
" * min\\_resolved\\_spokes\n"
|
||||||
|
" * physical\\_clearance\n"
|
||||||
|
" * physical\\_hole\\_clearance\n"
|
||||||
|
" * silk\\_clearance\n"
|
||||||
|
" * skew\n"
|
||||||
|
" * text\\_height\n"
|
||||||
|
" * text\\_thickness\n"
|
||||||
|
" * thermal\\_relief\\_gap\n"
|
||||||
|
" * thermal\\_spoke\\_width\n"
|
||||||
|
" * track\\_width\n"
|
||||||
|
" * via\\_count\n"
|
||||||
|
" * via\\_diameter\n"
|
||||||
|
" * zone\\_connection\n"
|
||||||
|
"\n"
|
||||||
|
"Note: `clearance` and `hole_clearance` rules are not run against items of "
|
||||||
|
"the same net; `physical_clearance` and `physical_hole_clearance` rules are.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Items\n"
|
||||||
|
"\n"
|
||||||
|
" * `A` _the first (or only) item under test_\n"
|
||||||
|
" * `B` _the second item under test (for binary tests)_\n"
|
||||||
|
" * `L` _the layer currently under test_\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Item Types\n"
|
||||||
|
"\n"
|
||||||
|
" * buried\\_via\n"
|
||||||
|
" * graphic\n"
|
||||||
|
" * hole\n"
|
||||||
|
" * micro\\_via\n"
|
||||||
|
" * pad\n"
|
||||||
|
" * text\n"
|
||||||
|
" * track\n"
|
||||||
|
" * via\n"
|
||||||
|
" * zone\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Zone Connections\n"
|
||||||
|
"\n"
|
||||||
|
" * solid\n"
|
||||||
|
" * thermal\\_reliefs\n"
|
||||||
|
" * none\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Severity Names\n"
|
||||||
|
"\n"
|
||||||
|
" * warning\n"
|
||||||
|
" * error\n"
|
||||||
|
" * exclusion\n"
|
||||||
|
" * ignore\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Examples\n"
|
||||||
|
"\n"
|
||||||
|
" (version 1)\n"
|
||||||
|
"\n"
|
||||||
|
" (rule HV\n"
|
||||||
|
" (constraint clearance (min 1.5mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule HV\n"
|
||||||
|
" (layer outer)\n"
|
||||||
|
" (constraint clearance (min 1.5mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule HV_HV\n"
|
||||||
|
" # wider clearance between HV tracks\n"
|
||||||
|
" (constraint clearance (min \"1.5mm + 2.0mm\"))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV' && B.NetClass == 'HV'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule HV_unshielded\n"
|
||||||
|
" (constraint clearance (min 2mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV' && !A.enclosedByArea('Shield*')\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule heavy_thermals\n"
|
||||||
|
" (constraint thermal_spoke_width (min 0.5mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV'\"))\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Notes\n"
|
||||||
|
"\n"
|
||||||
|
"Version clause must be the first clause. It indicates the syntax version of "
|
||||||
|
"the file so that \n"
|
||||||
|
"future rules parsers can perform automatic updates. It should be\n"
|
||||||
|
"set to \"1\".\n"
|
||||||
|
"\n"
|
||||||
|
"Rules should be ordered by specificity. Later rules take\n"
|
||||||
|
"precedence over earlier rules; once a matching rule is found\n"
|
||||||
|
"no further rules will be checked.\n"
|
||||||
|
"\n"
|
||||||
|
"Use Ctrl+/ to comment or uncomment line(s).\n"
|
||||||
|
"<br><br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Expression functions\n"
|
||||||
|
"\n"
|
||||||
|
"All function parameters support simple wildcards (`*` and `?`).\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.intersectsCourtyard('<footprint_refdes>')\n"
|
||||||
|
"True if any part of `A` lies within the given footprint's principal "
|
||||||
|
"courtyard.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.intersectsFrontCourtyard('<footprint_refdes>')\n"
|
||||||
|
"True if any part of `A` lies within the given footprint's front courtyard.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.intersectsBackCourtyard('<footprint_refdes>')\n"
|
||||||
|
"True if any part of `A` lies within the given footprint's back courtyard.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.intersectsArea('<zone_name>')\n"
|
||||||
|
"True if any part of `A` lies within the given zone's outline.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.enclosedByArea('<zone_name>')\n"
|
||||||
|
"True if all of `A` lies within the given zone's outline. \n"
|
||||||
|
"\n"
|
||||||
|
"NB: this is potentially a more expensive call than `intersectsArea()`. Use "
|
||||||
|
"`intersectsArea()` \n"
|
||||||
|
"where possible.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.isPlated()\n"
|
||||||
|
"True if `A` has a hole which is plated.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.inDiffPair('<net_name>')\n"
|
||||||
|
"True if `A` has a net that is part of the specified differential pair.\n"
|
||||||
|
"`<net_name>` is the base name of the differential pair. For example, "
|
||||||
|
"`inDiffPair('/CLK')`\n"
|
||||||
|
"matches items in the `/CLK_P` and `/CLK_N` nets.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" AB.isCoupledDiffPair()\n"
|
||||||
|
"True if `A` and `B` are members of the same diff pair.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.memberOf('<group_name>')\n"
|
||||||
|
"True if `A` is a member of the given group. Includes nested membership.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.existsOnLayer('<layer_name>')\n"
|
||||||
|
"True if `A` exists on the given layer. The layer name can be\n"
|
||||||
|
"either the name assigned in Board Setup > Board Editor Layers or\n"
|
||||||
|
"the canonical name (ie: `F.Cu`).\n"
|
||||||
|
"\n"
|
||||||
|
"NB: this returns true if `A` is on the given layer, independently\n"
|
||||||
|
"of whether or not the rule is being evaluated for that layer.\n"
|
||||||
|
"For the latter use a `(layer \"layer_name\")` clause in the rule.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" !!! A.insideCourtyard('<footprint_refdes>') !!!\n"
|
||||||
|
"Deprecated; use `intersectsCourtyard()` instead.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" !!! A.insideFrontCourtyard('<footprint_refdes>') !!!\n"
|
||||||
|
"Deprecated; use `intersectsFrontCourtyard()` instead.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" !!! A.insideBackCourtyard('<footprint_refdes>') !!!\n"
|
||||||
|
"Deprecated; use `intersectsBackCourtyard()` instead.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" !!! A.insideArea('<zone_name>') !!!\n"
|
||||||
|
"Deprecated; use `intersectsArea()` instead.\n"
|
||||||
|
"<br><br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### More Examples\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"copper keepout\"\n"
|
||||||
|
" (constraint disallow track via zone)\n"
|
||||||
|
" (condition \"A.intersectsArea('zone3')\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"BGA neckdown\"\n"
|
||||||
|
" (constraint track_width (min 0.2mm) (opt 0.25mm))\n"
|
||||||
|
" (constraint clearance (min 0.05mm) (opt 0.08mm))\n"
|
||||||
|
" (condition \"A.intersectsCourtyard('U3')\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # prevent silk over tented vias\n"
|
||||||
|
" (rule silk_over_via\n"
|
||||||
|
" (constraint silk_clearance (min 0.2mm))\n"
|
||||||
|
" (condition \"A.Type == '*Text' && B.Type == 'Via'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Distance between Vias of Different Nets\"\n"
|
||||||
|
" (constraint hole_to_hole (min 0.254mm))\n"
|
||||||
|
" (condition \"A.Type == 'Via' && B.Type == 'Via' && A.Net != B.Net"
|
||||||
|
"\"))\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Clearance between Pads of Different Nets\"\n"
|
||||||
|
" (constraint clearance (min 3.0mm))\n"
|
||||||
|
" (condition \"A.Type == 'Pad' && B.Type == 'Pad' && A.Net != B.Net"
|
||||||
|
"\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Via Hole to Track Clearance\"\n"
|
||||||
|
" (constraint hole_clearance (min 0.254mm))\n"
|
||||||
|
" (condition \"A.Type == 'Via' && B.Type == 'Track'\"))\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Pad to Track Clearance\"\n"
|
||||||
|
" (constraint clearance (min 0.2mm))\n"
|
||||||
|
" (condition \"A.Type == 'Pad' && B.Type == 'Track'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"clearance-to-1mm-cutout\"\n"
|
||||||
|
" (constraint clearance (min 0.8mm))\n"
|
||||||
|
" (condition \"A.Layer == 'Edge.Cuts' && A.Thickness == 1.0mm\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Max Drill Hole Size Mechanical\"\n"
|
||||||
|
" (constraint hole_size (max 6.3mm))\n"
|
||||||
|
" (condition \"A.Pad_Type == 'NPTH, mechanical'\"))\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Max Drill Hole Size PTH\"\n"
|
||||||
|
" (constraint hole_size (max 6.35mm))\n"
|
||||||
|
" (condition \"A.Pad_Type == 'Through-hole'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Specify an optimal gap for a particular diff-pair\n"
|
||||||
|
" (rule \"dp clock gap\"\n"
|
||||||
|
" (constraint diff_pair_gap (opt \"0.8mm\"))\n"
|
||||||
|
" (condition \"A.inDiffPair('/CLK')\"))\n"
|
||||||
|
"\n"
|
||||||
|
" # Specify a larger clearance around any diff-pair\n"
|
||||||
|
" (rule \"dp clearance\"\n"
|
||||||
|
" (constraint clearance (min \"1.5mm\"))\n"
|
||||||
|
" (condition \"A.inDiffPair('*') && !AB.isCoupledDiffPair()\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Don't use thermal reliefs on heatsink pads\n"
|
||||||
|
" (rule heat_sink_pad\n"
|
||||||
|
" (constraint zone_connection solid)\n"
|
||||||
|
" (condition \"A.Fabrication_Property == 'Heatsink pad'\"))\n"
|
||||||
|
"\n"
|
||||||
|
" # Require all four thermal relief spokes to connect to parent zone\n"
|
||||||
|
" (rule fully_spoked_pads\n"
|
||||||
|
" (constraint min_resolved_spokes 4))\n"
|
||||||
|
"\n"
|
||||||
|
" # Set thermal relief gap & spoke width for all zones\n"
|
||||||
|
" (rule defined_relief\n"
|
||||||
|
" (constraint thermal_relief_gap (min 10mil))\n"
|
||||||
|
" (constraint thermal_spoke_width (min 12mil)))\n"
|
||||||
|
"\n"
|
||||||
|
" # Override thermal relief gap & spoke width for GND and PWR zones\n"
|
||||||
|
" (rule defined_relief_pwr\n"
|
||||||
|
" (constraint thermal_relief_gap (min 10mil))\n"
|
||||||
|
" (constraint thermal_spoke_width (min 12mil))\n"
|
||||||
|
" (condition \"A.Name == 'zone_GND' || A.Name == 'zone_PWR'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Prevent solder wicking from SMD pads\n"
|
||||||
|
" (rule holes_in_pads\n"
|
||||||
|
" (constraint physical_hole_clearance (min 0.2mm))\n"
|
||||||
|
" (condition \"B.Pad_Type == 'SMD'\"))\n"
|
||||||
|
"\n"
|
||||||
|
" # Disallow solder mask margin overrides\n"
|
||||||
|
" (rule \"disallow solder mask margin overrides\"\n"
|
||||||
|
" (constraint assertion \"A.Soldermask_Margin_Override == 0mm\")\n"
|
||||||
|
" (condition \"A.Type == 'Pad'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Enforce a mechanical clearance between components and board edge\n"
|
||||||
|
" (rule front_mechanical_board_edge_clearance\n"
|
||||||
|
" (layer \"F.Courtyard\")\n"
|
||||||
|
" (constraint physical_clearance (min 3mm))\n"
|
||||||
|
" (condition \"B.Layer == 'Edge.Cuts'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Check current-carrying capacity\n"
|
||||||
|
" (rule high-current\n"
|
||||||
|
" (constraint track_width (min 1.0mm))\n"
|
||||||
|
" (constraint connection_width (min 0.8mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'Power'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"### Documentation\n"
|
||||||
|
"\n"
|
||||||
|
"For the full documentation see [https://docs.kicad.org](https://docs.kicad."
|
||||||
|
"org/GetMajorMinorVersion/pcbnew/#custom_design_rules)."
|
||||||
|
msgstr ""
|
||||||
|
"### Определения верхнего уровня\n"
|
||||||
|
"\n"
|
||||||
|
" (version <number>)\n"
|
||||||
|
"\n"
|
||||||
|
" (rule <rule_name> <rule_clause> ...)\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Определения правил\n"
|
||||||
|
"\n"
|
||||||
|
" (constraint <constraint_type> ...)\n"
|
||||||
|
"\n"
|
||||||
|
" (condition \"<expression>\")\n"
|
||||||
|
"\n"
|
||||||
|
" (layer \"<layer_name>\")\n"
|
||||||
|
"\n"
|
||||||
|
" (severity <severity_name>)\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Типы ограничений\n"
|
||||||
|
"\n"
|
||||||
|
" * annular\\_width\n"
|
||||||
|
" * assertion\n"
|
||||||
|
" * clearance\n"
|
||||||
|
" * connection\\_width\n"
|
||||||
|
" * courtyard_clearance\n"
|
||||||
|
" * diff\\_pair\\_gap\n"
|
||||||
|
" * diff\\_pair\\_uncoupled\n"
|
||||||
|
" * disallow\n"
|
||||||
|
" * edge\\_clearance\n"
|
||||||
|
" * length\n"
|
||||||
|
" * hole\\_clearance\n"
|
||||||
|
" * hole\\_size\n"
|
||||||
|
" * min\\_resolved\\_spokes\n"
|
||||||
|
" * physical\\_clearance\n"
|
||||||
|
" * physical\\_hole\\_clearance\n"
|
||||||
|
" * silk\\_clearance\n"
|
||||||
|
" * skew\n"
|
||||||
|
" * text\\_height\n"
|
||||||
|
" * text\\_thickness\n"
|
||||||
|
" * thermal\\_relief\\_gap\n"
|
||||||
|
" * thermal\\_spoke\\_width\n"
|
||||||
|
" * track\\_width\n"
|
||||||
|
" * via\\_count\n"
|
||||||
|
" * via\\_diameter\n"
|
||||||
|
" * zone\\_connection\n"
|
||||||
|
"\n"
|
||||||
|
"Примечание: правила `clearance` и `hole_clearance` не применяются к "
|
||||||
|
"элементам одной цепи; `physical_clearance` и `physical_hole_clearance` "
|
||||||
|
"применяются.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Элементы\n"
|
||||||
|
"\n"
|
||||||
|
" * `A` _первый (или единственный) тестируемый элемент_\n"
|
||||||
|
" * `B` _второй тестируемый элемент (для бинарных тестов)_\n"
|
||||||
|
" * `L` _текущий тестируемый слой_.\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Типы элементов\n"
|
||||||
|
"\n"
|
||||||
|
" * buried\\_via\n"
|
||||||
|
" * graphic\n"
|
||||||
|
" * hole\n"
|
||||||
|
" * micro\\_via\n"
|
||||||
|
" * pad\n"
|
||||||
|
" * text\n"
|
||||||
|
" * track\n"
|
||||||
|
" * via\n"
|
||||||
|
" * zone\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Соединения с зонами\n"
|
||||||
|
"\n"
|
||||||
|
" * solid\n"
|
||||||
|
" * thermal\\_reliefs\n"
|
||||||
|
" * none\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Виды серьезности\n"
|
||||||
|
"\n"
|
||||||
|
" * warning\n"
|
||||||
|
" * error\n"
|
||||||
|
" * exclusion\n"
|
||||||
|
" * ignore\n"
|
||||||
|
"\n"
|
||||||
|
"<br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Примеры\n"
|
||||||
|
"\n"
|
||||||
|
" (version 1)\n"
|
||||||
|
"\n"
|
||||||
|
" (rule HV\n"
|
||||||
|
" (constraint clearance (min 1.5mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule HV\n"
|
||||||
|
" (layer outer)\n"
|
||||||
|
" (constraint clearance (min 1.5mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule HV_HV\n"
|
||||||
|
" # больший зазор между высоковольтными дорожками\n"
|
||||||
|
" (constraint clearance (min \"1.5mm + 2.0mm\"))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV' && B.NetClass == 'HV'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule HV_unshielded\n"
|
||||||
|
" (constraint clearance (min 2mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV' && !A.enclosedByArea('Shield*')\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule heavy_thermals\n"
|
||||||
|
" (constraint thermal_spoke_width (min 0.5mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'HV'\"))\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Примечания\n"
|
||||||
|
"\n"
|
||||||
|
"Определение версии должно быть первым. Этим обозначается версия синтаксиса "
|
||||||
|
"файла, так что\n"
|
||||||
|
"будущие подпрограммы разбора правил смогут применять автоматическое "
|
||||||
|
"обновление. Её следует\n"
|
||||||
|
"устанавливать равной \"1\".\n"
|
||||||
|
"\n"
|
||||||
|
"Правила должны следовать в определённом порядке. Более поздние правила\n"
|
||||||
|
"имеют преимущество над более ранними.\n"
|
||||||
|
"Как только подходящее правило найдено, остальные правила не проверяются.\n"
|
||||||
|
"\n"
|
||||||
|
"Используйте Ctrl+/ для комментирования строк.\n"
|
||||||
|
"<br><br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Функции\n"
|
||||||
|
"\n"
|
||||||
|
"Параметры всех функций поддерживают простые шаблоны (`*` и `?`).\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.intersectsCourtyard('<обозначения_посад.мест>')\n"
|
||||||
|
"Истина если любая часть `A` лежит в главной области установки указанных "
|
||||||
|
"посад.мест.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.intersectsFrontCourtyard('<обозначения_посад.мест>')\n"
|
||||||
|
"Истина если любая часть `A` лежит в области установки указанных посад.мест. "
|
||||||
|
"сверху.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.intersectsBackCourtyard('<обозначения_посад.мест>')\n"
|
||||||
|
"Истина если любая часть `A` лежит в области установки указанных посад.мест. "
|
||||||
|
"снизу.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.intersectsArea('<имя_зоны>')\n"
|
||||||
|
"Истина если любая часть `A` лежит внутри контура указанной зоны.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.enclosedByArea('<zone_name>')\n"
|
||||||
|
"Истина если вся `A` лежит внутри контура указанной зоны.\n"
|
||||||
|
"\n"
|
||||||
|
"Обратите внимание: это потенциально более дорогой вызов, чем "
|
||||||
|
"`intersectsArea()`. \n"
|
||||||
|
"Используйте `intersectsArea()` там, где это возможно.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.isPlated()\n"
|
||||||
|
"Истина если `A` имеет металлизированные отверстия.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.inDiffPair('<имя_цепи>')\n"
|
||||||
|
"Истина если `A` имеет цепь, которая является частью указанной диф.пары.\n"
|
||||||
|
"`<имя_цепи>` - это база имени диф.пары. Например, `inDiffPair('/CLK')`\n"
|
||||||
|
"соответствует цепям `/CLK_P` и `/CLK_N`.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" AB.isCoupledDiffPair()\n"
|
||||||
|
"Истина если `A` и `B` являются членами одной диф.пары.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.memberOf('<имя_группы>')\n"
|
||||||
|
"Истина если `A` является членом указанной группы (включая вложенные "
|
||||||
|
"группы).\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" A.existsOnLayer('<имя_слоя>')\n"
|
||||||
|
"Истина если `A` существует на указанном слое. Имя слоя может быть как\n"
|
||||||
|
"наименованием, указанным в Параметры платы > Слои редактора, так и\n"
|
||||||
|
"стандартным именем (например, `F.Cu`).\n"
|
||||||
|
"\n"
|
||||||
|
"Обратите внимание: эта функция вернёт истину если `A` лежит на указанном "
|
||||||
|
"слое,\n"
|
||||||
|
"независимо от того может ли правило быть применено к этому слою.\n"
|
||||||
|
"В таком случае лучше использовать определение `(layer \"имя_слоя\")` для "
|
||||||
|
"правила.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" !!! A.insideCourtyard('<footprint_refdes>') !!!\n"
|
||||||
|
"Устарело; используйте `intersectsCourtyard()`.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" !!! A.insideFrontCourtyard('<footprint_refdes>') !!!\n"
|
||||||
|
"Устарело; используйте `intersectsFrontCourtyard()`.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" !!! A.insideBackCourtyard('<footprint_refdes>') !!!\n"
|
||||||
|
"Устарело; используйте `intersectsBackCourtyard()`.\n"
|
||||||
|
"<br><br>\n"
|
||||||
|
"\n"
|
||||||
|
" !!! A.insideArea('<zone_name>') !!!\n"
|
||||||
|
"Устарело; используйте `intersectsArea()`.\n"
|
||||||
|
"<br><br><br>\n"
|
||||||
|
"\n"
|
||||||
|
"### Ещё примеры\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"copper keepout\"\n"
|
||||||
|
" (constraint disallow track via zone)\n"
|
||||||
|
" (condition \"A.intersectsArea('zone3')\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"BGA neckdown\"\n"
|
||||||
|
" (constraint track_width (min 0.2mm) (opt 0.25mm))\n"
|
||||||
|
" (constraint clearance (min 0.05mm) (opt 0.08mm))\n"
|
||||||
|
" (condition \"A.intersectsCourtyard('U3')\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Исключить шёлкографию из перех.отв. покрытых паяльной маской\n"
|
||||||
|
" (rule silk_over_via\n"
|
||||||
|
" (constraint silk_clearance (min 0.2mm))\n"
|
||||||
|
" (condition \"A.Type == '*Text' && B.Type == 'Via'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Distance between Vias of Different Nets\"\n"
|
||||||
|
" (constraint hole_to_hole (min 0.254mm))\n"
|
||||||
|
" (condition \"A.Type == 'Via' && B.Type == 'Via' && A.Net != B.Net"
|
||||||
|
"\"))\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Clearance between Pads of Different Nets\"\n"
|
||||||
|
" (constraint clearance (min 3.0mm))\n"
|
||||||
|
" (condition \"A.Type == 'Pad' && B.Type == 'Pad' && A.Net != B.Net"
|
||||||
|
"\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Via Hole to Track Clearance\"\n"
|
||||||
|
" (constraint hole_clearance (min 0.254mm))\n"
|
||||||
|
" (condition \"A.Type == 'Via' && B.Type == 'Track'\"))\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Pad to Track Clearance\"\n"
|
||||||
|
" (constraint clearance (min 0.2mm))\n"
|
||||||
|
" (condition \"A.Type == 'Pad' && B.Type == 'Track'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"clearance-to-1mm-cutout\"\n"
|
||||||
|
" (constraint clearance (min 0.8mm))\n"
|
||||||
|
" (condition \"A.Layer == 'Edge.Cuts' && A.Thickness == 1.0mm\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Max Drill Hole Size Mechanical\"\n"
|
||||||
|
" (constraint hole_size (max 6.3mm))\n"
|
||||||
|
" (condition \"A.Pad_Type == 'NPTH, mechanical'\"))\n"
|
||||||
|
"\n"
|
||||||
|
" (rule \"Max Drill Hole Size PTH\"\n"
|
||||||
|
" (constraint hole_size (max 6.35mm))\n"
|
||||||
|
" (condition \"A.Pad_Type == 'Through-hole'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Задать особый зазор для отдельной диф.пары\n"
|
||||||
|
" (rule \"dp clock gap\"\n"
|
||||||
|
" (constraint diff_pair_gap (opt \"0.8mm\"))\n"
|
||||||
|
" (condition \"A.inDiffPair('/CLK')\"))\n"
|
||||||
|
"\n"
|
||||||
|
" # Задать больший зазор между слоями меди и всеми диф.парами\n"
|
||||||
|
" (rule \"dp clearance\"\n"
|
||||||
|
" (constraint clearance (min \"1.5mm\"))\n"
|
||||||
|
" (condition \"A.inDiffPair('*') && !AB.isCoupledDiffPair()\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Исключить терморазгрузку на конт.пл. с параметром \"для отвода тепла"
|
||||||
|
"\"\n"
|
||||||
|
" (rule heat_sink_pad\n"
|
||||||
|
" (constraint zone_connection solid)\n"
|
||||||
|
" (condition \"A.Fabrication_Property == 'Heatsink pad'\"))\n"
|
||||||
|
"\n"
|
||||||
|
" # Требовать подключения всех четырех мостиков терморазгрузки к "
|
||||||
|
"родительской зоне\n"
|
||||||
|
" (rule fully_spoked_pads\n"
|
||||||
|
" (constraint min_resolved_spokes 4))\n"
|
||||||
|
"\n"
|
||||||
|
" # Установить зазор и ширину мостиков терморазгрузки для всех зон\n"
|
||||||
|
" (rule defined_relief\n"
|
||||||
|
" (constraint thermal_relief_gap (min 10mil))\n"
|
||||||
|
" (constraint thermal_spoke_width (min 12mil)))\n"
|
||||||
|
"\n"
|
||||||
|
" # Переопределить зазор и ширину мостиков терморазгрузки для зон "
|
||||||
|
"'zone_GND' и 'zone_PWR'\n"
|
||||||
|
" (rule defined_relief_pwr\n"
|
||||||
|
" (constraint thermal_relief_gap (min 10mil))\n"
|
||||||
|
" (constraint thermal_spoke_width (min 12mil))\n"
|
||||||
|
" (condition \"A.Name == 'zone_GND' || A.Name == 'zone_PWR'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Предотвращать стекание припоя из SMD конт.пл. в отверстия\n"
|
||||||
|
" (rule holes_in_pads\n"
|
||||||
|
" (constraint physical_hole_clearance (min 0.2mm))\n"
|
||||||
|
" (condition \"B.Pad_Type == 'SMD'\"))\n"
|
||||||
|
"\n"
|
||||||
|
" # Запретить переопределение отступа паяльной маски у конт.пл.\n"
|
||||||
|
" (rule \"disallow solder mask margin overrides\"\n"
|
||||||
|
" (constraint assertion \"A.Soldermask_Margin_Override == 0mm\")\n"
|
||||||
|
" (condition \"A.Type == 'Pad'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Обеспечить механический зазор между компонентами и контуром платы\n"
|
||||||
|
" (rule front_mechanical_board_edge_clearance\n"
|
||||||
|
" (layer \"F.Courtyard\")\n"
|
||||||
|
" (constraint physical_clearance (min 3mm))\n"
|
||||||
|
" (condition \"B.Layer == 'Edge.Cuts'\"))\n"
|
||||||
|
"\n"
|
||||||
|
"\n"
|
||||||
|
" # Проверка на токовую нагрузку\n"
|
||||||
|
" (rule high-current\n"
|
||||||
|
" (constraint track_width (min 1.0mm))\n"
|
||||||
|
" (constraint connection_width (min 0.8mm))\n"
|
||||||
|
" (condition \"A.NetClass == 'Power'\"))"
|
||||||
|
|
||||||
#~ msgid "Reading file "
|
#~ msgid "Reading file "
|
||||||
#~ msgstr "Чтение файла "
|
#~ msgstr "Чтение файла "
|
||||||
|
|
||||||
|
@ -41524,8 +42188,8 @@ msgstr "Печатная плата KiCad"
|
||||||
#~ "\n"
|
#~ "\n"
|
||||||
#~ "On Linux:\n"
|
#~ "On Linux:\n"
|
||||||
#~ "```\n"
|
#~ "```\n"
|
||||||
#~ "python /usr/local/kicad/bin/plugins/bom-in-python/my_python_script.py "
|
#~ "python /usr/local/kicad/bin/plugins/bom-in-python/my_python_script.py \"%I"
|
||||||
#~ "\"%I\" \"%O.csv\"\n"
|
#~ "\" \"%O.csv\"\n"
|
||||||
#~ "```\n"
|
#~ "```\n"
|
||||||
#~ msgstr ""
|
#~ msgstr ""
|
||||||
#~ "# 1 - Полное руководство\n"
|
#~ "# 1 - Полное руководство\n"
|
||||||
|
@ -41713,8 +42377,8 @@ msgstr "Печатная плата KiCad"
|
||||||
#~ "\n"
|
#~ "\n"
|
||||||
#~ "Для Linux:\n"
|
#~ "Для Linux:\n"
|
||||||
#~ "```\n"
|
#~ "```\n"
|
||||||
#~ "python /usr/local/kicad/bin/plugins/bom-in-python/my_python_script.py "
|
#~ "python /usr/local/kicad/bin/plugins/bom-in-python/my_python_script.py \"%I"
|
||||||
#~ "\"%I\" \"%O.csv\"\n"
|
#~ "\" \"%O.csv\"\n"
|
||||||
#~ "```\n"
|
#~ "```\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
|
@ -47524,8 +48188,8 @@ msgstr "Печатная плата KiCad"
|
||||||
#~ msgstr "Использовать сенсорную панель для панорамирования"
|
#~ msgstr "Использовать сенсорную панель для панорамирования"
|
||||||
|
|
||||||
#~ msgid ""
|
#~ msgid ""
|
||||||
#~ "Enable touchpad-friendly controls (pan with scroll action, zoom with "
|
#~ "Enable touchpad-friendly controls (pan with scroll action, zoom with Ctrl"
|
||||||
#~ "Ctrl+scroll)."
|
#~ "+scroll)."
|
||||||
#~ msgstr ""
|
#~ msgstr ""
|
||||||
#~ "Сделать управление с помощью сенсорной панели более удобным "
|
#~ "Сделать управление с помощью сенсорной панели более удобным "
|
||||||
#~ "(панорамирование прокруткой, масштабирование Ctrl+прокрутка)."
|
#~ "(панорамирование прокруткой, масштабирование Ctrl+прокрутка)."
|
||||||
|
|
Loading…
Reference in New Issue