реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Скрипт для обозначения микросхем по ГОСТ, Вот, написал скриптик :)
Gennaj
сообщение Nov 14 2007, 08:41
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 328
Регистрация: 15-08-06
Из: Севастополь
Пользователь №: 19 562



В продолжение темы про нумерацию многоэлементных компонентов по ГОСТ (т.е. типа D1.1, D1.2 и т.д.).
Вот, тут на досуге написал скриптик, который сперва запускает процесс Annotate (если не нужно - давите Close и переходите ко второй части скрипта), а затем - производит поиск по всем страницам схем в проекте, если находит элемент из нескольких частей, то скрывает его Designator, создает пользовательское поле Pos_GOST, делает его видимым, записывает в него информацию о позиционном обозначении (по ГОСТ) и помещает на то место, где до этого был десигнатор.
После работы скрипта доступно UNDO (правда, я с этим намучался очень долго - отказывалось работать, пока не перезагрузил машину).
Жду отзывов smile.gif

P.S. Скрипту все равно, как названы такие многоэлементные компоненты. То есть работать должно и с транзисторами, и с релюшками и с чем угодно.

P.P.S. Разработано под Альтиум 6.7. Под более ранними версиями может не работать.

Сообщение отредактировал Gennaj - Nov 14 2007, 08:43
Прикрепленные файлы
Прикрепленный файл  Annotate.rar ( 5.39 килобайт ) Кол-во скачиваний: 354
 
Go to the top of the page
 
+Quote Post
Gennaj
сообщение Nov 14 2007, 15:05
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 328
Регистрация: 15-08-06
Из: Севастополь
Пользователь №: 19 562



Молчание...
Два варианта: или никому не интересно, или не все знают, как правильно запустить скрипт из принципиальной схемы.
Подсказываю: надо создать кнопку на панели редактора схем. Например, такую, как приложена к этому посту smile.gif
Связать ее со скриптом, а затем просто нажать на нее, находясь в принципиальной схеме : smile3046.gif

Сообщение отредактировал Gennaj - Nov 14 2007, 15:06
Прикрепленные файлы
Прикрепленный файл  GOST.bmp ( 1.04 килобайт ) Кол-во скачиваний: 281
 
Go to the top of the page
 
+Quote Post
Владимир
сообщение Nov 14 2007, 18:14
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 11 653
Регистрация: 25-03-05
Из: Минск
Пользователь №: 3 671



Цитата(Gennaj @ Nov 14 2007, 17:05) *
Молчание...
Два варианта: или никому не интересно, или не все знают, как правильно запустить скрипт из принципиальной схемы.
Подсказываю: надо создать кнопку на панели редактора схем. Например, такую, как приложена к этому посту smile.gif
Связать ее со скриптом, а затем просто нажать на нее, находясь в принципиальной схеме : smile3046.gif

Цитата
Два варианта: или никому не интересно, или не все знают, как правильно запустить скрипт из принципиальной схемы.

Варианта два, но не такие, и оба спроаведливы
1. интересно. wink.gif
2. Не нужно wacko.gif
Go to the top of the page
 
+Quote Post
Shtirlich
сообщение Nov 14 2007, 21:42
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 4-11-07
Из: Питер
Пользователь №: 32 037



работает однако! спасибо. а можно для начинающих общение с альтиумом расписать процедуру забивания кнопочек. нашел только команду ран скрипт.
Go to the top of the page
 
+Quote Post
Gennaj
сообщение Nov 15 2007, 07:53
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 328
Регистрация: 15-08-06
Из: Севастополь
Пользователь №: 19 562



Цитата(Shtirlich @ Nov 15 2007, 00:42) *
работает однако! спасибо. а можно для начинающих общение с альтиумом расписать процедуру забивания кнопочек. нашел только команду ран скрипт.

Запросто smile.gif
1. Открыть скрипт-проект (файл с расширением .PrjScr).
2. Открыть какую-нибудь принципиальную схему. Это нужно из-за того, что вид панелей инструмента зависит от того, что именно Вы делаете. Поскольку нам необходима кнопка именно в редакторе принципиальных схем, значит надо открыть схему.
3. На пустом месте панели инструментов нажимаете правую клавишу мышки и выбираете пункт Customize. Откроется окно Customizing SCH Editor.
4. В этом окне, на закладке Commands, в списке слева выбираете пункт [Scripts]. Когда Вы выберете этот пункт, в окне справа у Вас появится структура скрипта, открытого в данный момент. Самым нижним будет строчка с названием процедуры, которую необходимо выполнить. В нашем случае там будет строчка с зеленым значком "Annotate_GOST".
5. Удерживая левуюкнопку мыши, перетаскиваете эту строчку в нужное место панели инструментов. как только Вы дотащите кнопку до нужного места и отпустите мышку, откроется окно "Edit Command".
6. В строке "Caption" вводите (по-русски!) подсказку, которая будет появляться при подводе мышки к кнопке ("Перенумерация по ГОСТ").
7. В строке "Bitmap File" указываете путь к файлу с изображением кнопки (можете взять из моего предыдущего поста).
8. Жмете Ok, затем Close.
Кнопка создана! smile.gif
После этого скрипт-проект можно уже закрыть, он все равно будет вызываться из того места, где он был в момент настройки кнопки.




Цитата(Владимир @ Nov 14 2007, 21:14) *
Варианта два, но не такие, и оба спроаведливы
1. интересно. wink.gif
2. Не нужно wacko.gif


smile.gif
Нам пока это тоже не требовалось. Решил, во-первых, отвлечься от основной работы, а, во-вторых, подготовится к возможному "закручиванию гаек" на предмет соответствия ГОСТам. Так что теперь, если вдруг проверяющим это взбредет в голову - сделаем на счет "раз" biggrin.gif
Go to the top of the page
 
+Quote Post
Visuvius
сообщение Nov 17 2007, 20:08
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 144
Регистрация: 15-01-06
Пользователь №: 13 198



Цитата(Gennaj @ Nov 15 2007, 10:53) *
Запросто smile.gif
[SKIP]


Вот спасибо большое. Теперь по образу и подобию попробую начать писать собственные скрипты.
Не думал, что это так просто.

На счёт скрипта - скрипт очень и очень хороший. Мне пригодится на 100%


--------------------
Мир - это забавная штуковина, которая вертится вокруг нас.
Go to the top of the page
 
+Quote Post
uriy
сообщение Jun 2 2008, 16:50
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606



Уважаемый Gennaj не могли бы вы модифицировать скрипт так, чтобы параметр Pos_GOST получил такой же стиль шрифта что и находящийся до этого там Designator. Я пытаюсь одним махом заменить шрифт через Find Similar objects, они все выделяются но почему-то шрифт меняется только у одного элемента.
Go to the top of the page
 
+Quote Post
Gennaj
сообщение Jun 11 2008, 08:28
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 328
Регистрация: 15-08-06
Из: Севастополь
Пользователь №: 19 562



Цитата(uriy @ Jun 2 2008, 19:50) *
Уважаемый Gennaj не могли бы вы модифицировать скрипт так, чтобы параметр Pos_GOST получил такой же стиль шрифта что и находящийся до этого там Designator. Я пытаюсь одним махом заменить шрифт через Find Similar objects, они все выделяются но почему-то шрифт меняется только у одного элемента.

Пока что я занят, но, как мне кажется, Find Similar должен работать нормально. Опишите, пожалуйста, последовательность Ваших действий подробнее, попробуем найти ошибку. Лучше с картинками.
Go to the top of the page
 
+Quote Post
uriy
сообщение Jun 11 2008, 13:27
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606



Исходные данные: AD summer08 (в предыдущей версии было точно так же).
DXP -> Preferences... -> Schematic -> Default Primitives -> вкладка MMs -> Designator ставлю нужный мне шрифт (в данном случае Gost type B 12) на листе тоже выбрана миллиметровая система координат. Ставлю элементы как на рисунке, затем запускаю скрипт. На переключателях шрифт поменялся на Times new roman. Делаю Find similar objects ставлю Font same. Вылазит SCH Inspector и как надо выделются оба Designator от переключателей. В SCH Inspector меняю FontID на то что мне нужно. Но шрифт меняется только у одного переключателя. Мда порядок какой-то неудачный получился. Надеюсь разберетесь.
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение

Прикрепленное изображение
 

Прикрепленные изображения
Прикрепленное изображение Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Gennaj
сообщение Jun 12 2008, 09:33
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 328
Регистрация: 15-08-06
Из: Севастополь
Пользователь №: 19 562



Цитата(uriy @ Jun 11 2008, 16:27) *
Делаю Find similar objects ставлю Font same. Вылазит SCH Inspector и как надо выделются оба Designator от переключателей. В SCH Inspector меняю FontID на то что мне нужно. Но шрифт меняется только у одного переключателя.

Ясно. Попробуйте другой порядок действий:
1. Правой клавишей на переключателе, содержащем Pos_GOST - Find Similar Objects.
2. В таблице, кроме Parts - Same, находите строчку с параметром POS_GOST, заменяете ее содержимое на "*" и ставите там Same.
3. В результате у Вас выделятся все компоненты, содержащие параметр Pos_GOST.
4. В открывшемся Sch_Inspectore щелкаете на параметре Pos_GOST, откроется таблица свойств этого параметра. При этом у Вас на схеме окажуться выделенными все надписи Pos_Gost.
5. Меняете там свойство Font на требуемое и все получается, как необходимо smile.gif

Аналогичный порядок действий при смене способа отображения любых других параметров объектов.

P.S. Кстати, только сейчас заметил. У Вас в таблице Find Similar не стоит галочка Select Matching, то есть вы не выделяете найденные Вами объекты, следовательно, Вы не сможете работать с ними со всеми сразу. Когда объект выделен, вокруг него появляются зеленые маркеры.
Да и в SCH Inspectore внизу строчка, которая говорит, что у Вас на схеме выделен ОДИН объект в одном документе. Вот он только с ним и работает smile.gif
Go to the top of the page
 
+Quote Post
uriy
сообщение Jun 12 2008, 18:51
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606



Спасибо. Со всем разобрался мне казалось что раз на этих надписях есть фокус то они уже выделены. Поставил галочку Select Matching и все стало как я хотел.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 19:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01468 секунд с 7
ELECTRONIX ©2004-2016