Segnetics

Вернуться   Segnetics > Форум Segnetics > Песочница

Песочница Удалённые с форума темы

Ответ
 
Опции темы Поиск в этой теме
Старый 28.01.2020, 11:01   #1
ailcat
Senior Member
 
Аватара для ailcat
 
Регистрация: Oct 2010
Адрес: Москва
Сообщения: 403
Благодарил(а): 29 раз(а)
Поблагодарили: 2 раз(а) в 2 сообщениях
По умолчанию блок Picture - повторное использование?

Для отображения состояния оборудования используются пиктограммы, забитые в FBD-блок Picture.
На экран SMH4 одновременно выводится несколько пиктограмм (помещается 12, по факту вряд ли будет больше 8).

Стандартный подход требует вытащить на поляну 12 блоков, и в каждый из них забить все картинки (которых дофига).
Вопрос:
Есть ли решение повторно использовать "хранилище" одного блока для вывода всех элементов? Копипаста не лучший выход - она мало поможет при смене дизайна пиктограммы, когда нужно подменять часть или все картинки в каждом из элементов...
ailcat вне форума   Ответить с цитированием
Старый 28.01.2020, 11:36   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 102
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: блок Picture - повторное использование?

Цитата:
Сообщение от ailcat Посмотреть сообщение
Для отображения состояния оборудования используются пиктограммы, забитые в FBD-блок Picture.
На экран SMH4 одновременно выводится несколько пиктограмм (помещается 12, по факту вряд ли будет больше 8).

Стандартный подход требует вытащить на поляну 12 блоков, и в каждый из них забить все картинки (которых дофига).
Вопрос:
Есть ли решение повторно использовать "хранилище" одного блока для вывода всех элементов? Копипаста не лучший выход - она мало поможет при смене дизайна пиктограммы, когда нужно подменять часть или все картинки в каждом из элементов...
Мой опыт работы над пультами говорит о том, что хранилище, выполненное "в духе" FBD, т.е. без символьных ссылок, будет удобно только при выполнении задачи смены "скинов" программы. В нормальной жизни хранилище внесёт немного хаоса и если и ускорит разработку, то очень несильно.

Моему мнению можно доверять, в пульте HVAC картинок около 900 штук, многие из которых заменялись не по одному кругу. И я совсем не уверен, что хранилище упростило бы мне разработку. Да, вроде бы упрощение очевидно, но очевидно оно как раз для 5-10 блоков, а не для нескольких сотен. А 5-10 блоков, оформленных в макрос и размноженных копипастой и заменяемых заменой это ничем не сложнее, чем использование хранилища.


PS. Мы прорабатывали вопрос о хранилище пару-тройку лет назад, но решили не делать.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 28.01.2020, 12:59   #3
ailcat
Senior Member
 
Аватара для ailcat
 
Регистрация: Oct 2010
Адрес: Москва
Сообщения: 403
Благодарил(а): 29 раз(а)
Поблагодарили: 2 раз(а) в 2 сообщениях
По умолчанию Ответ: блок Picture - повторное использование?

Цитата:
Сообщение от Arsie Посмотреть сообщение
5-10 блоков, оформленных в макрос и размноженных копипастой и заменяемых заменой это ничем не сложнее, чем использование хранилища.
PS. Мы прорабатывали вопрос о хранилище пару-тройку лет назад, но решили не делать.
Гм... Я правильно понял алгоритм:
1) создать макрос из единственного блока Picture с нужным набором пиктограмм; выставить на поляну этот макрос нужное количество раз;
2) при необходимости изменить пиктограмму - изменить её в блоке Picture макроса; после этого в программе просто "обновить" макросы.
Правильно?

Последний раз редактировалось ailcat, 28.01.2020 в 13:18
ailcat вне форума   Ответить с цитированием
Старый 28.01.2020, 13:03   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 102
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: блок Picture - повторное использование?

Цитата:
Сообщение от ailcat Посмотреть сообщение
Гм... Я правильно понял алгоритм:
1) создать макрос из единственного блока Picture с нужным набором пиктограмм; выставить на поляну этот макрос нужное количество раз;
2) при необходимости изменить пиктограмму - я меняю её в блоке Picture макроса; после этого в программе просто "обновляю" вхождения макроса.
Правильно?
Именно так.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 28.01.2020, 13:44   #5
Fater
Senior Member
 
Регистрация: Feb 2016
Адрес: Москва
Сообщения: 294
Благодарил(а): 3 раз(а)
Поблагодарили: 6 раз(а) в 6 сообщениях
По умолчанию Ответ: блок Picture - повторное использование?

Мне кажется пора создавать раздел на форуме под именем HMI, например.
Здесь можно будет поделиться иконками, графикой и т.д.


Добавлено через 8 минут


Цитата:
Сообщение от ailcat Посмотреть сообщение
Для отображения состояния оборудования используются пиктограммы, забитые в FBD-блок Picture.
На экран SMH4 одновременно выводится несколько пиктограмм (помещается 12, по факту вряд ли будет больше 8).

Стандартный подход требует вытащить на поляну 12 блоков, и в каждый из них забить все картинки (которых дофига).
Вопрос:
Есть ли решение повторно использовать "хранилище" одного блока для вывода всех элементов? Копипаста не лучший выход - она мало поможет при смене дизайна пиктограммы, когда нужно подменять часть или все картинки в каждом из элементов...
Как вариант можно сделать макрос со всеми картинками, подключить его в Лоджик, а далее копипастить в проект и лишние картинки удалять или создать папку (например "картинки" по темам, рубрикам и т.д.).


__________________
Работа есть величина физическая, измеряется в Джоулях...
Fater вне форума   Ответить с цитированием
Старый 28.01.2020, 14:06   #6
ailcat
Senior Member
 
Аватара для ailcat
 
Регистрация: Oct 2010
Адрес: Москва
Сообщения: 403
Благодарил(а): 29 раз(а)
Поблагодарили: 2 раз(а) в 2 сообщениях
По умолчанию Ответ: блок Picture - повторное использование?

Цитата:
Сообщение от Arsie Посмотреть сообщение
Именно так.
Спасибо.
Костыль, конечно - но какой изящный!
ailcat вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 20:54.


Версия vBulletin: 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2024