?????????????? ?????? ? ????????? ?????????? ??????? ?????
?????????????? ?????? ? ????????? ?????????? ??????? ?????
?????????????? ?????? ? ????????? ?????????? ??????? ?????
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Подпрограмма вывода результатов на график.<br />
В подпрограмме подсоединяется модуль convert, который предназначен<br />
для ввода текста на русском языке при его отображении в различных<br />
надписях на графиках. DISLIN непосредственно не поддерживает<br />
кириллицу. Для ее отображения надо обратиться к п/программе<br />
BASALF с параметром 'RUSSIAN'. После этого текстовые строки с латинскими<br />
буквами преобразуются в соответствующие русские буквы.<br />
Например, латинская v преобразуется в русскую в и т.д. Для того, чтобы<br />
непосредственно вводить текст на русском языке, используется функция<br />
conv('русский текст'), где 'русский текст' печатается в windows-кодировке.<br />
Эта функция загружается модулем convert. Текст модуля приведен<br />
после программы вывода на график.<br />
subroutine vyvod<br />
use obmen<br />
use convert<br />
! Константа dLeg соответствует максимальной длине одной надписи легенды.<br />
integer , parameter :: dLeg=10<br />
! объявление промежуточной символьной переменную Legbuf для вывода легенды.<br />
!Длина символьной переменной должна быть равной произведению констант dLeg и<br />
! kolgr. (значение kolgr объявлено в модуле obmen)<br />
character (len=dLeg*kolgr) Legbuf<br />
! объявление массива Ys, который понадобится для автоматического определения<br />
! масштабов по осям.<br />
real Ys(2*kolgr)<br />
! позиционирование окна в центре экрана<br />
CALL SWGOPT('center','position')<br />
! установка ширины окна 63% от ширины экрана, и высоты окна 71% от ширины<br />
! окна. (Здесь эти цифры определены опытным путем)<br />
CALL SWGWTH (-63); CALL SWGDRW(0.71)<br />
! инициализация виджетов с вертикальным расположением<br />
CALL WGINI ('VERT', IP)<br />
! вывод надписи<br />
CALL WGLAB (IP, 'Результаты расчета:', ID1)<br />
! вывод выджета для рисунка<br />
CALL WGDRAW(ip,id_draw2)<br />
! установка параметров виджета рисунка. Если в качестве параметра п/программы<br />
! METAFL задана символьная переменная 'XWIN', то график выводится в окно. Если<br />
! задан параметр 'WMF', то график выводится в графический файл с расширением<br />
! wmf. Возможен вывод в форматы PDF, BMP, TIFF, GIF и др. При задании параметра<br />
! 'VIRT' график выводится в виртуальный файл, сохраняемый в памяти компьютера.<br />
CALL SETXID(id_draw2,'WIDGET'); CALL METAFL('XWIN')<br />
! инициализация DISLIN, очистка окна рисунка<br />
CALL DISINI; CALL ERASE<br />
! задание отображения кириллицы в надписях графика<br />
CALL BASALF('RUSSIAN');<br />
! call chncrv('COLOR')<br />
! ввод надписей по оси Х и У соответственно.<br />
CALL name(conv('время,с'), 'X')<br />
CALL name(conv('ток, А; напряжение, В'), 'Y')<br />
! занесение в массив Ys минимальных и максимальных значений массивов тока в<br />
155