Анимация трубы

Обсуждение, связанное с разработкой ПО верхнего уровня
Ответить
Аватара пользователя
mxdamage

Activity
assistant
assistant
Сообщения: 113
Зарегистрирован: 11 авг 2011, 15:45
Награды: 1
Версия LabVIEW: 2011
Откуда: Москва
Контактная информация:

Анимация трубы

Сообщение mxdamage »

Здравствуйте. Прошу у форума совета
Поставлена задача, и в ней - подзадача, которой не могу найти решение средствами LV

Нужно сделать анимированную трубу с различными движущимися по нему продуктами,
По сути, нужно нарисовать прямоугольник, в котором пиксели имеют каждый свой цвет. Ну или хотя бы длинный прямоугольник, разбитый на сегменты, где каждый сегмент имеет цвет. Цвета рассчитываются программно, идут в массиве. Создавать кучу boolean и задавать цвет каждого - не хочется, уж очень некрасиво и громоздко.

Как это можно реализовать?
Аватара пользователя
Aleksey Feoktistov

Activity Gold Silver Black
leader
leader
Сообщения: 898
Зарегистрирован: 20 янв 2009, 00:15
Награды: 6
Версия LabVIEW: 2015
Откуда: Tyumen
Поблагодарили: 2 раза
Контактная информация:

Re: Анимация трубы

Сообщение Aleksey Feoktistov »

рисуете трубу.
рисуете продукты.
изображение продуктов вставляете в какой-нибудь контрол или что-то другое.
указываете на блок диаграмме свойство этого объекта "position".
зацикливаете и все должно работать.

Если этот вариант Вас не устраивает, тогда выложите рисунок того, что должно получиться.
Рисовать проще в пэинте.
Аватара пользователя
mxdamage

Activity
assistant
assistant
Сообщения: 113
Зарегистрирован: 11 авг 2011, 15:45
Награды: 1
Версия LabVIEW: 2011
Откуда: Москва
Контактная информация:

Re: Анимация трубы

Сообщение mxdamage »

Изображение - что-то типа того, труба заполненная разными цветами. Границы цветов, количество сегментов и прочее - задается программно. То есть все может быть заполнено одним цветом, а может быть и сотня различных "кусочков" поэтому двигать один контрол - не выйдет. Сейчас присматриваюсь к объекту Picture и Draw rectangle, Более-менее готового решения не нашел.

Кто-нибудь знает, можно ли в объекте 2D picture задать прозрачный цвет?
Аватара пользователя
Jakob Brontfeyn

Activity Gold Silver Black
expert
expert
Сообщения: 1729
Зарегистрирован: 28 фев 2008, 11:01
Награды: 6
Благодарил (а): 1 раз
Контактная информация:

Re: Анимация трубы

Сообщение Jakob Brontfeyn »

Загляни сюда, может принцип анимации трубы
на базе интенсивграфа подойдет

http://labviewportal.org/viewtopic.php? ... %8F#p23044
Stkn
assistant
assistant
Сообщения: 128
Зарегистрирован: 25 янв 2009, 11:08
Версия LabVIEW: 2014

Re: Анимация трубы

Сообщение Stkn »

mxdamage писал(а):Изображение - что-то типа того, труба заполненная разными цветами. Границы цветов, количество сегментов и прочее - задается программно. То есть все может быть заполнено одним цветом, а может быть и сотня различных "кусочков" поэтому двигать один контрол - не выйдет. Сейчас присматриваюсь к объекту Picture и Draw rectangle, Более-менее готового решения не нашел.

Кто-нибудь знает, можно ли в объекте 2D picture задать прозрачный цвет?
Можно использовать Slider с 3 шкалами разных цветов.
Shpik
assistant
assistant
Сообщения: 119
Зарегистрирован: 10 янв 2011, 11:01
Версия LabVIEW: 8.6, 2009, 2010
Откуда: Таганрог
Контактная информация:

Re: Анимация трубы

Сообщение Shpik »

Может стоит использовать анимацию совместно с Pict Ring. Тут набросал кое-что, анимация, возможно, не самая подходящая, но сам подход вполне понятен.
water movement.vi
lv8.6
(57.68 КБ) 380 скачиваний
Аватара пользователя
mxdamage

Activity
assistant
assistant
Сообщения: 113
Зарегистрирован: 11 авг 2011, 15:45
Награды: 1
Версия LabVIEW: 2011
Откуда: Москва
Контактная информация:

Re: Анимация трубы

Сообщение mxdamage »

Shpik писал(а):Может стоит использовать анимацию совместно с Pict Ring. Тут набросал кое-что, анимация, возможно, не самая подходящая, но сам подход вполне понятен.
water movement.vi
Классный пример, спасибо вам большое, возьму на вооружение :)

Скажите, кто знает, возможно ли программно менять цвет элементов "decorations" (стрелки, полосы) на лицевой панели?
Shpik
assistant
assistant
Сообщения: 119
Зарегистрирован: 10 янв 2011, 11:01
Версия LabVIEW: 8.6, 2009, 2010
Откуда: Таганрог
Контактная информация:

Re: Анимация трубы

Сообщение Shpik »

Ну, так сказать, "в лоб" думаю нельзя. Есть способ(см. ниже), правда, несколько неудобный с точки зрения управляемости, т.к. у декораций нет лэйблов и даже нет возможности их упорядочить как в элементы в кластере (последнее не считать достоверным, т.к. может просто я не нашел). Внимание! Заметил такую особенность (если уж нет действительно способа задать порядок следования), то они (декорации) почему-то устанавливаются в обратном порядке. Поясню: последняя установленная декорация будет в списке первой, предпоследняя - второй и т.д.
ColorOfDecoration.PNG
ColorOfDecoration.PNG (9.96 КБ) 8640 просмотров
ColorOfDecoration.vi
lv8.6
(9.22 КБ) 205 скачиваний
Shpik
assistant
assistant
Сообщения: 119
Зарегистрирован: 10 янв 2011, 11:01
Версия LabVIEW: 8.6, 2009, 2010
Откуда: Таганрог
Контактная информация:

Re: Анимация трубы

Сообщение Shpik »

Можно, кстати, как вариант, использовать кластер с декорациями, тогда и получится труба с движущимися разными цветами. Например, вот так:
ColorOfDecorationInCluster.PNG
ColorOfDecorationInCluster.vi
lv8.6
(10.21 КБ) 301 скачивание
Аватара пользователя
mxdamage

Activity
assistant
assistant
Сообщения: 113
Зарегистрирован: 11 авг 2011, 15:45
Награды: 1
Версия LabVIEW: 2011
Откуда: Москва
Контактная информация:

Re: Анимация трубы

Сообщение mxdamage »

Shpik писал(а):Можно, кстати, как вариант, использовать кластер с декорациями, тогда и получится труба с движущимися разными цветами. Например, вот так:
ColorOfDecorationInCluster.PNG
ColorOfDecorationInCluster.vi
Во, вообще шикарно, оно мне и надо было. Спасибо!
Аватара пользователя
mxdamage

Activity
assistant
assistant
Сообщения: 113
Зарегистрирован: 11 авг 2011, 15:45
Награды: 1
Версия LabVIEW: 2011
Откуда: Москва
Контактная информация:

Re: Анимация трубы

Сообщение mxdamage »

Shpik писал(а):Можно, кстати, как вариант, использовать кластер с декорациями, тогда и получится труба с движущимися разными цветами. Например, вот так:
ColorOfDecorationInCluster.PNG
ColorOfDecorationInCluster.vi
Никак не пойму, как сделать такой же прозрачный кластер? У меня все кластеры на ЛП имеют противную рамку, и фиг ее уберешь...
Аватара пользователя
Konstantin Sumenko

Activity Bronze
expert
expert
Сообщения: 1439
Зарегистрирован: 17 июл 2008, 12:20
Награды: 2
Версия LabVIEW: 2010
Откуда: Moscow
Поблагодарили: 1 раз
Контактная информация:

Re: Анимация трубы

Сообщение Konstantin Sumenko »

Вызываешь правым кликом на границе кластера палитру, выбираешь нужный цвет (в данном случае T) и нажимаешь пробел (переключение между передним и задним планами).
Аватара пользователя
FireFly

Activity Black
expert
expert
Сообщения: 1321
Зарегистрирован: 25 апр 2009, 08:58
Награды: 2
Версия LabVIEW: 2014
Откуда: Санкт-Петербург
Поблагодарили: 1 раз

Re: Анимация трубы

Сообщение FireFly »

Иногда лучше молчать и слыть идиотом, чем заговорить и развеять все сомнения.
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Анимация трубы

Сообщение mzu2006 »

делал автоматизацию хроматографии. Прикреплен работоспособный кусок с 2D picture
Вложения
PipewProducts.vi
(16.91 КБ) 333 скачивания
Ответить

Вернуться в «Лицевая панель»