Стартовая страница › Форумы › Понять, как работает ПО › Использование SVG
- В этой теме 20 ответов, 6 участников, последнее обновление 1 год назад сделано Segment.
-
АвторСообщения
-
28.12.2022 в 12:50 #26908OakimУчастник
Подскажите пожалуйста, есть ли возможность в RapidSCADA обращаться и присваивать значения тэгам id в SVG файлах которые используются в схемах, например для смены цвета того или другого элемента картинки?
28.12.2022 в 13:23 #26911MikhailМодераторГотового компонента мнемосхем, который бы поддерживал такую функцию, на данный момент нет. В обсуждениях ранее было пожелание реализовать её.
28.12.2022 в 13:52 #26915OakimУчастникЕсли это реализуете, то будет замечательно!
28.12.2022 в 15:46 #26918manjey73УчастникА можно подробнее про теги id в svg ? а то возможно я пилил совсем не то ? 🙂
28.12.2022 в 21:39 #26920OakimУчастникСмысл тут вот в чем в файле SVG разным элементам можно присвоить уникальные id через которые можно изменять свойства этих элементов такие, как цвет, видимость и пр.
Вот один из примеров использования (надеюсь Админы этот наглядный пример не забанят)
Masterscada4d и SVG файлы. Инструция от ОлегаЕсть еще SCADA/HMI от ECAVA которая использует Плагин SAGE к Inkscape который позволяет «готовить» svg файлы для SCADA, но с ним я пока до конца не разобрался.
P.S. К сожалению на форуме нет лички, так бы через нее это бы отправил.
28.12.2022 в 22:32 #26921OakimУчастникЯ нашел вашу тему по разработке SVG редактора для СКАДы и могу сказать, что вы все правильно понимаете и даже больше чем я.
Но как по мне именно редактор для SVG «пилить» нет смысла, так как их сейчас безплатных предостаточно Inkscape, Figma, Pixso и пр.
Нужно в менеджер по добавлению картинок возможность отображать id и свойства фигур под этими id, а в редакторе возможность этим id и их свойствам привязывать сигналы.
В принципе судя по вашей переписке вы, как раз этим и занимаетесь.
28.12.2022 в 22:54 #26922manjey73УчастникДа, я примерно то же и делал, только добавлением атрибутов в xml код SVG файла, типа разрешить редактирование fill или толщины линии и т.д.
Про редактор у меня имелось ввиду Scheme Editor Scada, она использует библиотеку SVG.dll для отображения SVG при вставке на мнемосхему и эта самая библиотека позволяет своим функционалом как раз и менять цвет и толщину линий и еще там разное.
Был написан код, который рекурсивно проходил по SVG файлу, отыскивая атрибуты, разрешающие изменения. Осталось только добавить в свойства картинок в редакторе схем добавить поля в свойства, чтобы можно было менять цвет, толщину и т.д. На этом пока и сломался 🙂
Делал это вручную, вроде работало.
А вот с привязкой сигналов это уже к Михаилу 🙂 моей тямы тут не хватит наверное 🙂28.12.2022 в 22:55 #26923manjey73УчастникДа, и к тому же, на мнемосхеме это все же статическая картинка, хоть и SVG
Но если потом часть кода, который я напилил Михаил сможет использовать для динамического изменения, то почему бы и не да?29.12.2022 в 07:50 #26926OakimУчастникЯ тут еще немножко подумал (утро вечера мудренее и еще ролик по использованию SVG в WinCC посмотрел 😉 ), а что если сделать так, ведь SVG это XML
— открываем картинку
— пробегаем по ней в поисках id
— если есть id, то ищем свойства типа «цвет заливки», «толщина обводки» и отображаем их
— если нет id, то работаем с ней как с обычной картинкой с подменой
— после чего передаем в Редактор и он должен сделать тоже самое, но уже создать поля согласно id svg для привязки к параметрам сигналов29.12.2022 в 12:54 #26930MikhailМодераторВидео пусть остаётся, заберём из него что-нибудь полезное.
Если бы Вы добавили в тему ещё скриншоты, демонстрирующие идею, то было бы очень удобно.29.12.2022 в 13:56 #26935OakimУчастникХорошо сделаю скриншоты
29.12.2022 в 15:52 #26936manjey73УчастникВот я и пытался разобраться с PropertieGrid в редакторе Схем Scada.
Когда открываем картинку SVG то видим вот это. И вот туда можно добавить параметры, которые мы интегрируем в SVG файл. Смена цвета, смена фона, смена толщины линии и ее цвета и т.д.Все уже протестировано и работает при вставке 🙂 осталось за малым, до ума довести код, разобравшись с этим чертовым проперти списком 🙂
29.12.2022 в 15:53 #26937manjey73УчастникИ если как-то хранить массивом свойства в схеме, то возможно их можно менять на лету, но не уверен.
29.12.2022 в 15:57 #26938manjey73УчастникА, вероятно на лету не получится, насколько помню, в мнемосхему вставляется не код SVG а уже картинка в другом формате…
29.12.2022 в 16:07 #26939RomirosУчастникЯ не пойму зачем это всё? Вы хотите из редактора схем сделать ещё и svg редактор?
Ну поменяйте цвет, толщину линии в Inscape и загрузите готовую картинку. -
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.