This shows you the differences between two versions of the page.
Last revision Both sides next revision | |||
pcb:roadmap.ru [2013/01/28 14:41] vzh pcb:roadmap translation into Russian |
pcb:roadmap.ru [2014/04/17 05:21] vzh Update, formatting (using po4a), fix links |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | //Эта страница доступна также на следующих языках:// [[roadmap|English]] | ||
+ | |||
====== Стратегия развития PCB ====== | ====== Стратегия развития PCB ====== | ||
- | Настоящее руководство посвящено будущим направлениям развития | + | Настоящее руководство посвящено будущим направлениям развития редактора |
- | редактора топологии печатных плат **pcb**. | + | топологии печатных плат **pcb**. |
- | * Несколько вопросов по **pcb** есть в [[geda>geda:design_flow_and_hierarchy_roadmap | gEDA roadmap]]. | + | * Несколько вопросов по **pcb** есть в [[geda>geda:design_flow_and_hierarchy_roadmap | Стратегии развития gEDA]]. |
- | * Несколько вопросов по **pcb** есть также в [[geda>geda:todos | gEDA To-Dos]]. | + | * Несколько вопросов по **pcb** есть также в [[geda:todos.ru| списке того, что нужно сделать в gEDA]]. |
* Несколько пожеланий перечислено в [[:pcb-projects.ru | проектах по pcb ]]. | * Несколько пожеланий перечислено в [[:pcb-projects.ru | проектах по pcb ]]. | ||
+ | |||
===== Общие указания по выпускам новых версий ===== | ===== Общие указания по выпускам новых версий ===== | ||
- | В целом, в **pcb** может быть три вида изменений --- | + | В целом, в **pcb** может быть три вида изменений --- исправления ошибок, |
- | исправления ошибок, новые возможности и несовместимые изменения. | + | новые возможности и несовместимые изменения. //Исправление ошибок// (//bug |
- | //Исправление ошибок// (//bug fix//) нужно, когда программа не | + | fix//) нужно, когда программа не делает того, что должна делать; сюда входят |
- | делает того, что должна делать; сюда входят как ошибки в | + | как ошибки в документации, так и проблемы с самим кодом программы. //Новая |
- | документации, так и проблемы с самим кодом программы. | + | возможность// (//new feature//) --- это нечто, добавляющее функциональность |
- | //Новая возможность// (//new feature//) --- это нечто, | + | в **pcb**, но никоим образом не изменяющее уже имеющейся |
- | добавляющее функциональность в **pcb**, но никоим образом не изменяющее уже | + | функциональности. //Несовместимое изменение// (//incompatible change//) --- |
- | имеющейся функциональности. //Несовместимое изменение// | + | это любое (преднамеренное) изменение, вызывающее проблемы несовместимости с |
- | (//incompatible change//) --- это любое (преднамеренное) изменение, | + | прежними версиями **pcb** и обычно означающее большие изменения в построении |
- | вызывающее проблемы несовместимости с прежними версиями **pcb** и | + | программы. Заметьте, что новые возможности, добавляющие обратно-совместимые |
- | обычно означающее большие изменения в построении программы. | + | изменения в формат файла //при его использовании//, в эту категорию не |
- | Заметьте, что новые возможности, добавляющие обратно-совместимые | + | входят. |
- | изменения в формат файла //при его использовании//, в | + | |
- | эту категорию не входят. | + | |
Текущие планы таковы: | Текущие планы таковы: | ||
Line 30: | Line 31: | ||
* начать работу над выпуском версии 4.0 с несколькими большими изменениями в проекте, которые мы обсуждаем годами. | * начать работу над выпуском версии 4.0 с несколькими большими изменениями в проекте, которые мы обсуждаем годами. | ||
- | В настоящий момент выпуски с исправлениями ошибок будут иметь | + | В настоящий момент выпуски с исправлениями ошибок будут иметь названия вида |
- | названия вида ''pcb-YYYYMMDD''. После выпуска версии 4.0, числа | + | ''pcb-ГГГГММДД''. После выпуска версии 4.0, числа ''major.minor.bugfix'' |
- | ''major.minor.bugfix'' будут соответствовать трём категориям, | + | будут соответствовать трём категориям, указанным выше: номер выпуска с |
- | указанным выше: номер выпуска с исправлениями ошибок будет *.*.N, выпуск | + | исправлениями ошибок будет *.*.N, выпуск с новыми возможностями --- *.N, |
- | с новыми возможностями --- *.N, выпуск с большими изменениями --- | + | выпуск с большими изменениями --- N.0. Числа ''ГГГГММДД'' будут тогда |
- | N.0. Числа ''YYYYMMDD'' будут тогда использоваться для | + | использоваться для регулярных срезов разработки, не выпускаемых в качестве |
- | регулярных срезов разработки, не выпускаемых в качестве официальных | + | официальных версий. |
- | версий. | + | |
- | Дальше на этой странице будут перечислены различные планируемые | + | Дальше на этой странице будут перечислены различные планируемые изменения |
- | изменения (или те, на которые мы по крайней мере надеемся) для | + | (или те, на которые мы по крайней мере надеемся) для ближайших и последующих |
- | ближайших и последующих выпусков. | + | выпусков. |
Ошибки, заплаты и запросы новых возможностей должны добавляться в | Ошибки, заплаты и запросы новых возможностей должны добавляться в | ||
[[https://bugs.launchpad.net/pcb |систему отслеживания ошибок | [[https://bugs.launchpad.net/pcb |систему отслеживания ошибок | ||
- | Launchpad]]. Их статус по умолчанию --- "нерешённый" (**undecided**). | + | Launchpad]]. Их статус по умолчанию --- «нерешённый» (**undecided**). |
Запросы с таким приоритетом считаются непроверенными. | Запросы с таким приоритетом считаются непроверенными. | ||
- | |||
===== Следующий выпуск с исправлениями ошибок ===== | ===== Следующий выпуск с исправлениями ошибок ===== | ||
- | Это перечень исправлений, которые //должны быть// осуществлены | + | Это перечень исправлений, которые //должны быть// осуществлены прежде, чем |
- | прежде, чем выпускать новую версию с исправлениями ошибок, в | + | выпускать новую версию с исправлениями ошибок, в дополнение к любым |
- | дополнение к любым артефактам "следующего выпуска с исправлениями" | + | артефактам «следующего выпуска с исправлениями» в системе отслеживания |
- | в системе отслеживания ошибок. | + | ошибок. |
===== Будущие выпуски с исправлениями ошибок ===== | ===== Будущие выпуски с исправлениями ошибок ===== | ||
Line 63: | Line 62: | ||
===== Следующий выпуск с новыми возможностями ===== | ===== Следующий выпуск с новыми возможностями ===== | ||
- | Это список новых возможностей, которые хочется иметь к выпуску | + | Это список новых возможностей, которые хочется иметь к выпуску следующей версии с новыми возможностями (или, может быть, к следующему выпуску с исправлениями, если позволит время). |
- | следующей версии с новыми возможностями (или, может быть, к | + | |
- | следующему выпуску с исправлениями, если позволит время). | + | |
* Сделать код //C++//-совместимым. | * Сделать код //C++//-совместимым. | ||
* Разрешить перекрытие поясков переходов. | * Разрешить перекрытие поясков переходов. | ||
* Больше стилей трассировки. | * Больше стилей трассировки. | ||
- | * Разрешающая способность в нанометрах --- это переход на "метрические единицы", который многократно обсуждался. | + | * Разрешающая способность в нанометрах --- это переход на «метрические единицы», который многократно обсуждался. |
* Настоящие типы слоёв. По меньшей мере шелкография (silk), барьеры трассировки (keepouts), маска (mask) и слой документации (docs). Может быть черчение в негативе (anti-draw) или вставка (paste). | * Настоящие типы слоёв. По меньшей мере шелкография (silk), барьеры трассировки (keepouts), маска (mask) и слой документации (docs). Может быть черчение в негативе (anti-draw) или вставка (paste). | ||
Line 79: | Line 75: | ||
===== Следующий выпуск с несовместимыми изменениями ===== | ===== Следующий выпуск с несовместимыми изменениями ===== | ||
- | Это список больших изменений, которые, по нашему мнению, | + | Это список больших изменений, которые, по нашему мнению, желательно включить |
- | желательно включить в **pcb**, и к которым мы собираемся | + | в **pcb**, и к которым мы собираемся приложить свои усилия. |
- | приложить свои усилия. | + | |
===== Будущие выпуски с несовместимыми изменениями ===== | ===== Будущие выпуски с несовместимыми изменениями ===== | ||
- | Это перечень других больших изменений, которые, по нашему мнению, | + | Это перечень других больших изменений, которые, по нашему мнению, желательно |
- | желательно включить в **pcb**, но к которым до сих пор не | + | включить в **pcb**, но к которым до сих пор не прикладывалось никаких |
- | прикладывалось никаких усилий. | + | усилий. |
===== Список пожеланий ===== | ===== Список пожеланий ===== | ||
- | В этом разделе перечислены возможные проекты для будущих выпусков, | ||
- | насчёт которых либо не было согласия, либо не было запланировано время | ||
- | на них. Если вам хочется взяться за один из них, вперёд :-) | ||
- | |||
- | Здесь есть предложение по [[geda>geda:pcb_layers | новым слоям]]. | ||
- | |||
- | Остальные подчистки графического интерфейса. Модернизация Gtk в | ||
- | соответствии с "установившейся практикой". Настройка импорта | ||
- | файлов. | ||
- | |||
- | Плагин "мастер настройки импорта" (и то же самое для экспорта). | ||
- | |||
- | Чистка/переработка DRC. | ||
- | |||
- | Движок CAM? (т. е. возможность сказать "чертить внешний контур на | ||
- | слое маски верхней стороны" через скрипт/настройки) | ||
- | |||
- | Новый формат файла, который мы обсуждали. | ||
- | |||
- | Дуги переменных углов. 90 градусов --- это чрезмерное ограничение. | ||
- | |||
- | Заполненные окружности без "костылей". В настоящее время для | ||
- | получения заполненной окружности нужно создавать дорожку нулевой | ||
- | длины подходящей ширины. | ||
- | |||
- | Унификация сочетаний клавиш в **gschem** и **pcb** или, по крайней мере, | ||
- | лёгкая возможность подстройки **pcb** под сочетания программы | ||
- | **gschem**. | ||
- | |||
- | Лучшая поддержка свободного вращения компонентов: стремиться, | ||
- | чтобы контактные площадки с прикольными углами отрисовывались | ||
- | правильно, исправить автотрассировщик для компонентов с чудными | ||
- | углами (последняя версия из git имеет тенденцию в зависимости | ||
- | от обстоятельств или игнорировать команду трассировки, или выдавать | ||
- | ошибки сегментации), добавить информацию о вращении в сообщения, | ||
- | выводимые по <key>ctrl-R</key>, и т. д. | ||
- | |||
- | Возможность копировать имя посадочного места из диалогового окна | ||
- | библиотеки (чтобы его можно было вставить в список атрибутов в | ||
- | **gschem**). | ||
- | |||
- | Возможность редактировать список соединений "на месте" (может быть | ||
- | с помощью вычерчивания линий связи (rat lines) на их слое), то есть, | ||
- | когда нужно добавить радиатор, припаянный к земле, он будет всегда | ||
- | показываться как закороченный, пока список соединений не будет изменён | ||
- | так, чтобы он был включён туда. | ||
- | |||
- | Калькулятор импеданса дорожек с возможностью автоподстройки | ||
- | (ширина заполнения, конструктивная (паразитная) ёмкость и желаемый | ||
- | импеданс и подстройка ширины для удовлетворения этим условиям). | ||
- | |||
- | Интеграция просмотра и получения посадочных мест с gedasymbols.org. | ||
- | |||
- | Иерархическая модель платы --- подъячейки, посадочные места как | ||
- | топология и т. д. | ||
- | |||
- | Форма, которую я давно хотел бы иметь для контактной площадки, это | ||
- | круг с обрезанными краями. Это немного отличается от овала. Было | ||
- | бы здорово иметь что-то вроде логических операций над | ||
- | изображениями, как в Inkscape. | ||
- | |||
- | Как насчёт текста под углами, не кратными 90 градусов? Или | ||
- | поддержка поворота квадратных площадок? (Я знаю, обе возможности | ||
- | не поддерживаются в формате файла.) | ||
- | |||
- | Редактирование с помощью сетки должно быть убрано! Подсчёт точек | ||
- | сетки --- это наихудший способ вводить позиционную информацию в | ||
- | компьютер из всех возможных. | ||
- | |||
- | Сделать редактируемыми все поля в отчётах по объектам. | ||
- | |||
- | Разрешить прямой ввод смещений и абсолютных положений при | ||
- | редактировании. | ||
- | |||
- | Добавить возможности "offset" ("смещение") и "trim" ("подрезка") | ||
- | как в программах 2D CAD. | ||
- | Добавить возможностей черчения линий вида "точка к касательной" и | + | В этом разделе перечислены возможные проекты для будущих выпусков, насчёт |
- | "касательная к касательной" как в программах двумерных CAD. | + | которых либо не было согласия, либо не было запланировано время на них. Если |
+ | вам хочется взяться за один из них, вперёд :-) | ||
- | Автоматическое сохранение файла в формате наименьшей требуемой | + | * Здесь есть предложение по [[geda>geda:pcb_layers | новым слоям]]. |
- | версии. Установка версии формата файла в зависимости от используемых | + | * Остальные подчистки графического интерфейса. Модернизация Gtk в соответствии с «установившейся практикой». Настройка импорта файлов. |
- | возможностей, а не от версии самой программы. Это будет ценно, | + | * Плагин «мастер настройки импорта» (и то же самое для экспорта). |
- | когда мы добавим такие вещи, как глухие переходы, нестандартные | + | * Чистка/переработка DRC. |
- | стеки контактных площадок и т. д. ... | + | * Движок CAM? (т. е. возможность сказать «чертить внешний контур на слое маски верхней стороны» через скрипт/настройки) |
+ | * Новый формат файла, который мы обсуждали. | ||
+ | * Дуги переменных углов. 90 градусов --- это чрезмерное ограничение. | ||
+ | * Заполненные окружности без «костылей». В настоящее время для получения заполненной окружности нужно создавать дорожку нулевой длины подходящей ширины. | ||
+ | * Унификация сочетаний клавиш в **gschem** и **pcb** или, по крайней мере, лёгкая возможность подстройки **pcb** под сочетания программы **gschem**. | ||
+ | * Лучшая поддержка свободного вращения компонентов: стремиться, чтобы контактные площадки с прикольными углами отрисовывались правильно, исправить автотрассировщик для компонентов с чудными углами (последняя версия из git имеет тенденцию в зависимости от обстоятельств или игнорировать команду трассировки, или выдавать ошибки сегментации), добавить информацию о вращении в сообщения, выводимые по <key>ctrl-R</key>, и т. д. | ||
+ | * Возможность копировать имя посадочного места из диалогового окна библиотеки (чтобы его можно было вставить в список атрибутов в **gschem**). | ||
+ | * Возможность редактировать список соединений «на месте» (может быть с помощью вычерчивания линий связи (rat lines) на их слое), то есть, когда нужно добавить радиатор, припаянный к земле, он будет всегда показываться как закороченный, пока список соединений не будет изменён так, чтобы он был включён туда. | ||
+ | * Калькулятор импеданса дорожек с возможностью автоподстройки (ширина заполнения, конструктивная (паразитная) ёмкость и желаемый импеданс и подстройка ширины для удовлетворения этим условиям). | ||
+ | * Интеграция просмотра и получения посадочных мест с gedasymbols.org. | ||
+ | * Иерархическая модель платы --- подъячейки, посадочные места как топология и т. д. | ||
+ | * Форма, которую я давно хотел бы иметь для контактной площадки, это круг с обрезанными краями. Это немного отличается от овала. Было бы здорово иметь что-то вроде логических операций над изображениями, как в Inkscape. | ||
+ | * Как насчёт текста под углами, не кратными 90 градусов? Или поддержка поворота квадратных площадок? (Я знаю, обе возможности не поддерживаются в формате файла.) | ||
+ | * Редактирование с помощью сетки должно быть убрано! Подсчёт точек сетки --- это наихудший способ вводить позиционную информацию в компьютер из всех возможных. | ||
+ | * Сделать редактируемыми все поля в отчётах по объектам. | ||
+ | * Разрешить прямой ввод смещений и абсолютных положений при редактировании. | ||
+ | * Добавить возможности «offset» («смещение») и «trim» («подрезка») как в программах 2D CAD. | ||
+ | * Добавить возможность черчения линий вида «точка к касательной» и «касательная к касательной» как в программах двумерных CAD. | ||
+ | * Автоматическое сохранение файла в формате наименьшей требуемой версии. Установка версии формата файла в зависимости от используемых возможностей, а не от версии самой программы. Это будет ценно, когда мы добавим такие вещи, как глухие переходы, нестандартные стеки контактных площадок и т. д. ... | ||