Использование SVG

  • В этой теме 20 ответов, 6 участников, последнее обновление 1 год назад сделано Segment.
Просмотр 15 сообщений - с 1 по 15 (из 21 всего)
  • Автор
    Сообщения
  • #26908
    Oakim
    Участник

    Подскажите пожалуйста, есть ли возможность в RapidSCADA обращаться и присваивать значения тэгам id в SVG файлах которые используются в схемах, например для смены цвета того или другого элемента картинки?

    #26911
    Mikhail
    Модератор

    Готового компонента мнемосхем, который бы поддерживал такую функцию, на данный момент нет. В обсуждениях ранее было пожелание реализовать её.

    #26915
    Oakim
    Участник

    Если это реализуете, то будет замечательно!

    #26918
    manjey73
    Участник

    А можно подробнее про теги id в svg ? а то возможно я пилил совсем не то ? 🙂

    #26920
    Oakim
    Участник

    Смысл тут вот в чем в файле SVG разным элементам можно присвоить уникальные id через которые можно изменять свойства этих элементов такие, как цвет, видимость и пр.

    Вот один из примеров использования (надеюсь Админы этот наглядный пример не забанят)
    Masterscada4d и SVG файлы. Инструция от Олега

    Есть еще SCADA/HMI от ECAVA которая использует Плагин SAGE к Inkscape который позволяет «готовить» svg файлы для SCADA, но с ним я пока до конца не разобрался.

    P.S. К сожалению на форуме нет лички, так бы через нее это бы отправил.

    #26921
    Oakim
    Участник

    Я нашел вашу тему по разработке SVG редактора для СКАДы и могу сказать, что вы все правильно понимаете и даже больше чем я.

    Но как по мне именно редактор для SVG «пилить» нет смысла, так как их сейчас безплатных предостаточно Inkscape, Figma, Pixso и пр.

    Нужно в менеджер по добавлению картинок возможность отображать id и свойства фигур под этими id, а в редакторе возможность этим id и их свойствам привязывать сигналы.

    В принципе судя по вашей переписке вы, как раз этим и занимаетесь.

    #26922
    manjey73
    Участник

    Да, я примерно то же и делал, только добавлением атрибутов в xml код SVG файла, типа разрешить редактирование fill или толщины линии и т.д.

    Про редактор у меня имелось ввиду Scheme Editor Scada, она использует библиотеку SVG.dll для отображения SVG при вставке на мнемосхему и эта самая библиотека позволяет своим функционалом как раз и менять цвет и толщину линий и еще там разное.

    Был написан код, который рекурсивно проходил по SVG файлу, отыскивая атрибуты, разрешающие изменения. Осталось только добавить в свойства картинок в редакторе схем добавить поля в свойства, чтобы можно было менять цвет, толщину и т.д. На этом пока и сломался 🙂
    Делал это вручную, вроде работало.
    А вот с привязкой сигналов это уже к Михаилу 🙂 моей тямы тут не хватит наверное 🙂

    • Этот ответ был изменен 1 год, 3 месяца назад от manjey73.
    • Этот ответ был изменен 1 год, 3 месяца назад от manjey73.
    #26923
    manjey73
    Участник

    Да, и к тому же, на мнемосхеме это все же статическая картинка, хоть и SVG
    Но если потом часть кода, который я напилил Михаил сможет использовать для динамического изменения, то почему бы и не да?

    #26926
    Oakim
    Участник

    Я тут еще немножко подумал (утро вечера мудренее и еще ролик по использованию SVG в WinCC посмотрел 😉 ), а что если сделать так, ведь SVG это XML
    — открываем картинку
    — пробегаем по ней в поисках id
    — если есть id, то ищем свойства типа «цвет заливки», «толщина обводки» и отображаем их
    — если нет id, то работаем с ней как с обычной картинкой с подменой
    — после чего передаем в Редактор и он должен сделать тоже самое, но уже создать поля согласно id svg для привязки к параметрам сигналов

    #26930
    Mikhail
    Модератор

    Видео пусть остаётся, заберём из него что-нибудь полезное.
    Если бы Вы добавили в тему ещё скриншоты, демонстрирующие идею, то было бы очень удобно.

    #26935
    Oakim
    Участник

    Хорошо сделаю скриншоты

    #26936
    manjey73
    Участник

    Вот я и пытался разобраться с PropertieGrid в редакторе Схем Scada.
    Когда открываем картинку SVG то видим вот это. И вот туда можно добавить параметры, которые мы интегрируем в SVG файл. Смена цвета, смена фона, смена толщины линии и ее цвета и т.д.

    1

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

    #26937
    manjey73
    Участник

    И если как-то хранить массивом свойства в схеме, то возможно их можно менять на лету, но не уверен.

    #26938
    manjey73
    Участник

    А, вероятно на лету не получится, насколько помню, в мнемосхему вставляется не код SVG а уже картинка в другом формате…

    #26939
    Romiros
    Участник

    Я не пойму зачем это всё? Вы хотите из редактора схем сделать ещё и svg редактор?
    Ну поменяйте цвет, толщину линии в Inscape и загрузите готовую картинку.

Просмотр 15 сообщений - с 1 по 15 (из 21 всего)
  • Вы должны авторизироваться для ответа в этой теме.