Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Altium перестал воспринимать выражения типа"!+2000"
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Разрабатываем ПП в САПР - PCB development > Altium Designer, DXP, Protel
Trashy_2
Altium перестал воспринимать выражения типа"!+2000"
Всегда при редактировании схем и плат, пользовал PCB inspector. Выделяешь группу элементов и например если все нужно сместить на 2000 мм в право, то нажимаешь F11 и пишешь в поле X1: !+2000. И всё смещалось. Теперь схематик всем присваивает 0, а писиби редактор выдаёт ошибку, ругаясь на выражение.

Вчера писал и компилил скрипт по масштабированию принципиальных схем. Может это повредило Альтиуму мозг?

Кароче, этот идиёт походу не воспринимает точку в дробных числах. Работает только с целыми.
Чё за?..

Фигня. С дробными работает. Но не во всех случаях... Кароче ужас.
Что бы умножить число на 2, нужно писать так: !*20
peshkoff
чтобы сместить на дельту, надо использовать Move By X, Y в меню Move
А чтобы дроби работали поменяйте системный разделитель с запятой на точку
Trashy_2
Цитата(peshkoff @ Oct 8 2014, 12:52) *
чтобы сместить на дельту, надо использовать Move By X, Y в меню Move


А как быть с другими параметрами? Например длина линий, радиусы...

Цитата(peshkoff @ Oct 8 2014, 12:52) *
А чтобы дроби работали поменяйте системный разделитель с запятой на точку


Да работает он с запятой, только не всегда.
Логика такая: жму f11. Там число 13005.561. Я пытаюсь прописать ему !+100, он присваивает 0.
Затем я вручную вписываю 13005. И опять прописываю !+100 - срабатывает.
Затем !+100.5 --- срабатывает. Получается 13105.5.
Затем снова начинаю различные числа вводить и на определённом этапе он опять всему 0 присваивает.
Что с умножением и делением - ваще не въезжаю. Скрипты нормально числа воспринимают, а в самой оболочке хрень полная. Надо было между пинами расстояние в два раза увеличить, выделил, ввёл !*2, он все пины растянул хрен знает на какую дистанцию, даже за экран вылез. Методом пропорции вычислил, что надо умножать на 0.501 и затем выравнивать по сетке. В схематике вместо двух нужно умножать на 20...
peshkoff
Цитата(Trashy_2 @ Oct 9 2014, 10:36) *
А как быть с другими параметрами? Например длина линий, радиусы...



Да работает он с запятой, только не всегда.
Логика такая: жму f11. Там число 13005.561. Я пытаюсь прописать ему !+100, он присваивает 0.
Затем я вручную вписываю 13005. И опять прописываю !+100 - срабатывает.
Затем !+100.5 --- срабатывает. Получается 13105.5.
Затем снова начинаю различные числа вводить и на определённом этапе он опять всему 0 присваивает.
Что с умножением и делением - ваще не въезжаю. Скрипты нормально числа воспринимают, а в самой оболочке хрень полная. Надо было между пинами расстояние в два раза увеличить, выделил, ввёл !*2, он все пины растянул хрен знает на какую дистанцию, даже за экран вылез. Методом пропорции вычислил, что надо умножать на 0.501 и затем выравнивать по сетке. В схематике вместо двух нужно умножать на 20...



А какая версия? Именно в последней версии ошибка появилась? (я то потому и не перехожу)

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

С умножением-делением я не совсем понял. Вы умножаете координаты? Может он сейчас стал считать от абсолютного нуля, безотносительно ручного Origin...
nord85
Цитата(Trashy_2 @ Oct 8 2014, 11:30) *
Altium перестал воспринимать выражения типа"!+2000"

День добрый.
Офигенная штука. Набор проводников укорачивать, удлинять удобно. Не знал.
У меня версия 14.2.4 в PCB работет, пока без проблем.
peshkoff
Обновился до самой последней версии 14.3.15 все вроде работает...
truppik
Попробовал сейчас в 14.3.15 версии альтия выражения !+10 или !*2 - Не работает, если изначально в поле есть дробная часть. Если число целое - все работает. Зашел в настройки языка, поменял разделитель дробной части с "," на "." - попробовал опять. Все заработало, теперь не зависимо от наличия дробной части выражения работают.
Alechek
Мда.... И все-таки жесткая "." в качестве системного разделителя - это косяк Altium.
Который мигрирует между версиями уже более 10 лет, а поправить его никак не могут.
А ларчик то просто открывается - принудительно установить глобальную переменную DecimalSeparator в vcl среде в нужное значение.
peshkoff
Там программисты в китае да австралии сидят, им пофиг.
Но все-таки, программ полно, особенно всякие CAMы страдают этим.
Так что, перво-наперво после установки винды ставим системный разделитель точкой, никакой кириллицы в системных папках,
именах пользователей и названиях компьютеров.
Constantin
Попробовал на 14.3.15 работу выражения !+n.m (!*n.m)

Пока вывод такой - из окна Inspector работает нормально, вот из Properties - всегда в результате ноль.

P.S. Точку в качестве системного разделителя дробной части уже автоматически ставлю сразу в процессе инсталляции Windows.
Старая привычка :-)
peshkoff
Properties насколько знаю эти выражения не воспринимает вообще.
Именно окно инспектора SmartEdit понимает. Логика: SmartEdit предназначен для обработки нескольких объектов, не только координат, но и, например, NetLabel в схематике. И вообще текста. А пропертиез редактирует только один объект.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.