Графический пользовательский интерфейс. Создание стандартного графического окна со свойствами по умолчанию

Страницы работы

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.

Содержание работы

Графический пользовательский интерфейс может быть разработан с помощью дескрипторной графики, которая позволяет:

- избежать ошибок при нахождении дескрипторов графических элементов с помощью функции findobj;

- обеспечить сложное  взаимодействие графических элементов интерфейса между собой;

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

l  Создание стандартного графического окна со свойствами по умолчанию

hf1=figure

l  Создание двух графических окон со свойствами по умолчанию

hf1=figure

hf2=figure

l  Изменение свойств объекта

Первый способ

hf=figure( 'Position', [0,0,800,500])

Второй способ

hf=figure

set ( hf, 'Position', [0,0,800,500])

Активизация объекта

figure (hf)

Удаление объекта

delete (hf)

Получение значений свойств

                        get(h)

Некоторые свойства

Color – цвет фона

Resize – изменение размеров окна

Units – задание единиц измерения размеров

Примеры

set(h, 'Color',[1 0 0])

                        set(h, 'Resize','off')

l  Создание стандартного графика со свойствами по умолчанию

ha1=axes

l  Создание двух графиков со свойствами по умолчанию

ha1=axes

ha2=axes

l  Изменение свойств объекта

Первый способ

ha= axes( 'Position', [0,0,500,300])

Второй способ

ha=axes

set ( ha, 'Position', [0,0,500,300])

Активизация объекта

axes (ha)

Удаление объекта

delete (ha)

Получение значений свойств

                        get(ha)

l  Сразу же после создания двух объектов axes в пределах одного графического окна, активным является последний из созданных объектов

l  Пользователь может изменить активный объект щелчком мыши

l  Перед выводом графической информации объект нужно активизировать

l  Объект image предназначен для вставки растровых изображений в графическое окно

l  Растровое изображение может быть получено программно или считываться из файла

l  Графический файл должен иметь один из следующих стандартных форматов:

bmp

jpg

pcx

tif

др

l  Пример вставки изображения из файла:

axes(ha)

tx=imread('bear.jpg','jpg');

image(tx);

l  tx – матрица, хранящая растровое изображение

l  Для того, чтобы убрать разметку осей, можно воспользоваться приемом:

c=get(h,'Color')

   set(ha,'XColor',c)

   set(ha,'YColor',c)

l  Для того, чтобы размеры растрового изображения и поля графика для его вывода совпадали, можно получить информацию о размерах графического файла командой:

imfinfo('bear.jpg','jpg')

l  Элементы графического пользовательского интерфейса создаются функцией-конструктором

uicontrol

l  Общий вид

uicontrol (hf, 'S1‘ ,‘Z1‘, 'S2‘ ,‘Z2‘,…,'SN‘ ,‘ZN‘ )

l  Пример создания кнопки

hbt1=uicontrol( hf, 'Style‘ ,'pushbutton',...

'Position',[350,300,100,50],…

'String‘ , 'Расчет', 'Callback', 'C_B1')

l  Пример создания статического текста

uicontrol ( hf, 'Style', 'text',...

    'Position', [100,450,200,30], 'String',...

    'Исходные данные')

l  Пример создания редактируемого поля для ввода данных

he1=uicontrol (hf, 'Style', 'edit',...

    'Position', [200,400,100,30])

l  Пример создания слайдера

hs1=uicontrol (hf, 'Style', ‘slider',...

    'Position', [200,400,100,30],…

                        ‘Callback’, ‘sld’)

Постановка задачи

Разработать графический пользовательский интерфейс для моделирования гидравлического демпфера, выполняющий следующие функции:

l  ввод внутренних параметров

l  расчет выходных параметров (перемещения и скорости демпфера);

l  графическое отображение выходных параметров.

l  Уравнение движения демпфера имеет вид:

Исходными данными для решения задачи являются:

y0 отклонение поршня демпфера от положения равновесия;

m – масса поршня;

с – жесткость пружины;

μ – динамический коэффициент вязкости  жидкости;

l  D – диаметр цилиндра;

l  d – диаметр отверстия;

l  H – высота поршня;

l  z  –число отверстий.

Для решения дифференциального уравнения  в Matlab его нужно привести к системе из двух дифференциальных уравнений вида:

Для реализации задачи создадим три М-файла:

l  Proba2 – файл дескрипторного графического интерфейса (основная программа)

l  C_B1 – файл расчета внутренних параметров и решения ОДУ модели

l  vid2 – файл, описывающий вид системы ОДУ модели

l  Рассмотрим построение файла основной программы.

Похожие материалы

Информация о работе

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.