Перейти к содержанию
    

Где применить свое умения Скриптописателя под Алтиум?

Где применить свое умения Скриптописателя под Алтиум?

Вот научился, написал себе парочку... А как с этого профит поиметь? Есть, чудаки, которые за это деньги платят?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, Trashy_2 said:

Где применить свое умения Скриптописателя под Алтиум?

Вот научился, написал себе парочку... А как с этого профит поиметь? Есть, чудаки, которые за это деньги платят?

Ахаха. а нука посчитай скриптом длину Signal Length!

Задача №2 нарисовать линию, скопировать в буфер и вставить.

(пока это ближайшие задачи над которыми я бьюсь)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Замени SCH на что тебе надо.

function NumberSchematicsOfAProject(Project : IProject, CurDoc : IDocument) : Integer;      {получить количество листов в схеме}
Var
    I, SchCount : Integer;
    Children    : integer;
    Doc         : IDocument;
    CurrentSch  : ISch_Sheet;
    S           : string;
    SchDocument : IServerDocument;
Begin
            SchCount := 0;
   if (CurDoc = nil) then  begin
        Doc := Project.DM_TopLevelLogicalDocument;
        If Doc.DM_DocumentKind = 'SCH' Then  Begin
            NumberSchematicsOfAProject(Project, Doc);
        end;
    end
    else begin
        Doc := CurDoc;
        If Doc.DM_DocumentKind = 'SCH' Then begin
            SchDocument := Client.OpenDocument('SCH',Doc.DM_FullPath);
            CurrentSch := SchServer.GetSchDocumentByPath(Doc.DM_FullPath);
            SchCount := SchCount + 1;
            //   FindAndChangeParam('SheetNumber', IntToStr(SchCount), CurrentSch, true);
            CurrentSch.GraphicallyInvalidate;
            SchDocument.Modified := True;
        end;
        if (Doc.DM_ChildDocumentCount > 0) then Begin
            Children := Doc.DM_ChildDocumentCount;
            //recurse into the children
            For i:= 0 to (children - 1) do
                NumberSchematicsOfAProject(Project, Doc.DM_ChildDocuments);
        End;
    end;
    Result := SchCount;
End;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

21 hours ago, peshkoff said:

Ахаха. а нука посчитай скриптом длину Signal Length!

Задача №2 нарисовать линию, скопировать в буфер и вставить.

(пока это ближайшие задачи над которыми я бьюсь)

Почту проверь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, Trashy_2 said:

Почту проверь

Я ващщще ниче не понял.

Мне нужно вот что (обведено красным прямоугольником):

01.thumb.png.f773da6f2cb7c2d5956418438e740382.png

ЗЫ: А к чему все эти "$D784928E", REG_STATE_MV78200.... "IntToHex(REG_STATE,8)"...

Это чтобы обычных юзеров перепугать?? :))

 

ЗЗЫ: Там при каждом выезде комбобокса у меня думает минуты три!

лучше эту задачу решать через GetObjectAtCursor

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

16 hours ago, peshkoff said:

Я ващщще ниче не понял.

Мне нужно вот что (обведено красным прямоугольником):

01.thumb.png.f773da6f2cb7c2d5956418438e740382.png

ЗЫ: А к чему все эти "$D784928E", REG_STATE_MV78200.... "IntToHex(REG_STATE,8)"...

Это чтобы обычных юзеров перепугать?? :))

 

ЗЗЫ: Там при каждом выезде комбобокса у меня думает минуты три!

лучше эту задачу решать через GetObjectAtCursor

Прога накидана за один час, поверх старой программы, считавшей состояния регисторов для проца Marwell, как показуха. Считает только длину трэков. Если у тебя там пады, via и arc, то они в зачёт не идут. Алтиум так же в длину включает высоту VIAs.  Выдели только трэки и сравни результат.

Оптимизация по скорости тоже не делалась. ПРога шмонает ВСЕ треки и все неты. На средненьких платках работает быстро.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посчитать длину меди по плате никаких проблем Net.RoutedLength

Сюда включатся и треки и арки. Получим значение в предпоследнем столбце из моей картинки.

51 minutes ago, Trashy_2 said:

Алтиум так же в длину включает высоту VIAs.

Про то и речь. Альтиум то считает, а вот можно ли посчитать скриптом?

Казалось бы, добавь Net.SignalLength и задача решается за 20 минут!

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

----

Так вот, к чему это я. Как ты собираешься монетизировать сей скилл?

Ты настолько уверен, что альтиум тебе даст вот так "накидывать скрипты за один час"

Если во всех билдерах можно быть уверенным в работе функций-процедур.

То тут не все так просто. Оценишь задачу на два часа, а провозишься две недели.

----

Да и вообще, кому сейчас нужны скрипты кроме меня и тебя, ну да еще разве что petar perisin...

Да и тот уже забросил проект почти. Я попробовал на altium.com на форуме по скриптам поинтересоваться. в каждой моей теме 0 ответов.

Вот лучше бы мне помог! А мои скрипты забирай бесплатно.

Некоторые так вообще бомба! Ни у кого таких нет.

А мне лучше скажи, как к буферу обмена подобраться. Нужно линию туда скопировать. Речь само собой о PcbDoc

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

21 minutes ago, peshkoff said:

Вот лучше бы мне помог! А мои скрипты забирай бесплатно.

Некоторые так вообще бомба! Ни у кого таких нет.

А мне лучше скажи, как к буферу обмена подобраться. Нужно линию туда скопировать. Речь само собой о PcbDoc

 

https://github.com/Altium-Designer-addons/scripts-libraries/commit/a86ea283395e2104f11617a7d3db63c15c708f20

 

Или это не тот клипбоард?

Изменено пользователем Trashy_2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

20 minutes ago, Trashy_2 said:

Автор этого как раз таки Petar Perisin. Так сказать пособие для начинающих скриптописателей.

Очень помогает на начальном этапе.

Но сейчас проект не развивается

Мой вот здесь:

https://sourceforge.net/p/altiumscripts/svncode/HEAD/tree/

Одна проблема, инструкций нет, но могу рассказать по самым боевым, которые я использую.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Очень интересная тема, как раз посматриваю в сторону скриптов.  Может уже кто  реализовывал следующую задачу:

1 часто в УГО встречаются пины с одинаковыми именами, которые в схеме нужно соединять (пример тому микроконтроллер или ПЛИС у которпых десяток, другой ножек GND). скрипт прочерчивает электрическиее линии, соединяющие  пины с одинаковыми именами. как показано на рисунке.

image.thumb.png.eb1be57784231f9ca6dfdab1f1aacc19.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

18 minutes ago, chapt said:

Может уже кто  реализовывал следующую задачу

Не думаю, чтобы ктото реализовывал такое. 

Но вы можете попытаться. Если будут вопросы, можно их здесь задать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

21 hours ago, chapt said:

Очень интересная тема, как раз посматриваю в сторону скриптов.  Может уже кто  реализовывал следующую задачу:

1 часто в УГО встречаются пины с одинаковыми именами, которые в схеме нужно соединять (пример тому микроконтроллер или ПЛИС у которпых десяток, другой ножек GND). скрипт прочерчивает электрическиее линии, соединяющие  пины с одинаковыми именами. как показано на рисунке. 

image.thumb.png.eb1be57784231f9ca6dfdab1f1aacc19.png

Даже, если меня попросят прорисовать все одинаковые пины во всех моих проектах за всю жизнь - это займёт меньше времени, чем написание подобного скрипта.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А вот такой вопрос:

ШИНА в схеме. По альтиумовским нормам, она должна иметь название типа: Name[1..20], только тогда она является подключенной шиной. По российским традициям в шину запихивают всё, что плохо лежит, даже цепи питания...

Так вот, можно ли, какой командой/функцией выяснить: какие неты к этой шине прицепили физически, а не прописаны в NetLable ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Шина по ГОСТ  с разнородными связями это в Altium Designer будет Harness

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...