PDA

Просмотр полной версии : Вопрос по визуальным компонентам



Hemann
26.11.2015, 21:20
Коллеги, приветствую!

Появился вот такой вопрос. Нужно отображать график, подобный изображённому на рисунке. Имеется туннельная печь керамического производства. По оси абсцисс стоят номера позиций внутри печи. По оси ординат - температура в этих позициях. Синий график-огибающая показывает заданное течение технологического процесса, т.е. уставки температур в данных позициях. Зелёный график-огибающая показывает текущие значения температур в данных позициях. Вопрос вот в чем: как можно реализовать такие графики?
Рисунок прилагается (это не из нашей СКАДы, просто образец).

SCADAMaster
26.11.2015, 22:05
Либо в редакторе отчетов, либо использовать ФБ "Кусочно-линейная функция" (но он может отображать только один график, поэтому придется отображать их на разных контролах).

Hemann
27.11.2015, 18:02
Спасибо! А чтобы их совместить на одном контроле это нужно свой написать? Или где-то в дополнительных библиотеках такая штука уже есть?

SCADAMaster
27.11.2015, 18:50
Нет, только свой.
Инструкция по разработке прилагается к MasterSCADA

Hemann
28.11.2015, 08:54
Спасибо! Будем читать

Hemann
29.11.2015, 20:20
Тут в процессе работы вот еще какой вопрос появился. Как можно динамизировать линию и трубопровод из палитры, так чтобы можно было в режиме исполнения управлять их контрольными точками (менять их положение)?

SCADAMaster
29.11.2015, 21:58
Теоретически возможно. Входом динамизации "Контрольные точки" можно управлять - подавая массив из чисел вида:
{0, 0}, {50, 50}, {100, 0}

Hemann
30.11.2015, 11:05
Спасибо! Но мы уже так делали не один раз, но практически ничего не получается. В режиме отладки вписывали значения в соответствующие параметры (брали 6 точек). Изначально брали для компонента "трубопровод" такие значения: {0,0},{100,0},{200,0},{300,0},{400,0},{500,0}. Затем вводим новые значения, например вместо {100,0} ставим {100,70}. В результате бывает так, что реакции нет совсем, а бывает что на изменяемом отрезке появляется пустота, и только в районе точки {100,0} начинается перерисовка, но зависает не окончившись. Если меняем несколько точек сразу, то исчезает большой кусок этого "трубопровода". Для того чтобы все отработало, приходится пошевелить границу между зоной деревьев и рабочей областью, или переключиться на другу закладку и вернуться назад. После этого происходит правильная отрисовка. Такое впечатление, что без таких манипуляций компонент зависает. В режиме исполнения управление этим компонентом "трубопровод" ведется с основного экрана (вручную вводятся координаты контрольных точек) и оно вообще не работает. Может есть какая-то тонкость? И почему Вы пишете что "теоретически возможно"? Практически не получается или просто не пробовали?

SCADAMaster
30.11.2015, 11:20
Пробовали - просто таким способ не удается сделать хорошую отрисовку.
Зачем вообще вам это требуется?

Hemann
30.11.2015, 12:36
Да просто раньше не пробовали писать свои компоненты, думали что с помощью этого выкрутимся