Студопедия — Объявление переменной xyпроизводного типа (структуры) xycoord. которая содержит координаты (x,y) видеопорта
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Объявление переменной xyпроизводного типа (структуры) xycoord. которая содержит координаты (x,y) видеопорта






 

type(xycoord) xy

 

Производный тип (структура) wxycoord. содержит координаты (x,y) окна и определена как:

 

TYPE wxycoord

REAL(8) wx! x window coordinate

REAL(8) wy! y window coordinate

END TYPE wxycoord

Графическая функция MOVETO перемещает текущую графическую позицию в заданную точку видеопорта с координатами (x, y). Графическая функция MOVETO_W перемещает текущую графическую позицию в заданную точку окна с координатами (wx, wy). При этом рисования не происходит. Функции MOVETO и MOVETO_W присваивает координаты предыдущей позиции переменным t и wt, соответственно.

 

CALL MOVETO (x, y, t)

CALL MOVETO_W (wx, wy, wt)

 

· x, y - (Input) INTEGER(2). Координаты новой графической позиции в системе координат видеопорта;

· t - (Output) производный тип xycoord. Координаты предыдущей графической позиции в системе координат видеопорта;

· wx, wy - (Input) REAL(8). Координаты новой графической позиции в системе координат окна;

· wt - (Output) производный тип wxycoord. Координаты предыдущей графической позиции в системе координат окна.

 

 

Графическая функция рисует линию из текущей графической позиции в заданную конечную точку включительно. Линия рисуется текущим цветом (устанавливается с помощью SETCOLORRGB), в логическом режиме вывода (устанавливается SETWRITEMODE) и стилем (устанавливается SETLINESTYLE). Если не возникает ошибок, LINETO устанавливает текущую графическую позицию в точку видеопорта (x, y), а LINETO_W устанавливает текущую графическую позицию в точку окна (wx, wy).

result = LINETO (x, y)

result = LINETO_W (wx, wy)

 

x, y - (Input) INTEGER(2). Конечная точка видеопорта;

wx, wy - (Input) REAL(8). Конечная точка окна;

result - INTEGER(2). Результат имеет ненулевое значение, если успешно завершена функция, иначе 0.

 

Графическая функция SETPIXEL устанавливает заданный пиксел в текущий цвет, который устанавливается SETCOLOR и может быть получен с помощью GETCOLOR. Не RGB цветовые функции (такие как SETCOLOR and SETPIXELS) используют индексы цвета вместо реальных значений цвета.

 

result = SETPIXEL (x, y)

result = SETPIXEL_W (wx, wy)

 

x, y - (Input) INTEGER(2). Координаты заданного пиксела в системе координат видеопорта;

wx, wy - (Input) REAL(8). Координаты заданного пиксела в системе координат окна;

result - INTEGER(2). Результатом является предыдущий цвет заданного пиксела, если функция успешна; в противном случае, -1 (например, если пиксел находится вне области рисования).

 

КАТЕГОРИЯ 2. Реализация процедуры W вывода в текстовый файл 'DZ2.out' массива С коэффициентов полинома аппроксимации степени m

 

Вариант 1

subroutine W(m,C)

integer,parameter::fpw=2! устройство вывода

integer m! степень полинома

real(8) C(0:m)! массив коэффициентов

open(unit=fpw,file='DZ2.out')! открыть файл

write(fpw,*) 'Коэффициенты полинома Pm(x):'

write(fpw,'(100f8.4)') (c(i),i=0,m)

close(fpw)! закрыть файл

end subroutine W

 

Вариант 2

subroutine W(m,C)

integer m! степень полинома

double precision C(0:m)! массив коэффициентов

open(unit=2,file="DZ2.out")! открыть файл

write(2,*) "Коэффициенты полинома Pm(x):"

write(2,"(100f8.4)") (c(i),i=0,m)

close(2)! закрыть файл

end subroutine

 

Вариант 3

subroutine W(m,C)

integer m! степень полинома

real*8 C(0:m)! массив коэффициентов

open(2,file='DZ2.out')! открыть файл

write(2,10) 'Коэффициенты полинома Pm(x):'

10 format(a)

do i=0,m

write(2,11) c(i),' '

end do

11 format(f8.4,a,$)

close(2)! закрыть файл

end

 

КАТЕГОРИЯ 3. Реализация процедуры R считывания из текстового файла 'DZ.txt' динамических массивов X, Y координат n узлов аппроксимации.

Текстовый файл DZ.txt.

 

Вариант 1

subroutine R(n,X,Y)

implicit none

integer,parameter::fi=1! устройство ввода

integer,parameter::MAX=100! максимальное количество точек

integer i! счетчик точек полинома

real(8):: X(0:MAX),Y(0:MAX)! таблица данных X(n),Y(n)

integer n! количество точек функции (i=0..n-1)

open(unit=fi,file='DZ.txt')! открытие файла данных

read(fi,*) n! чтение количества узлов аппроксимации

do i=0,n-1! проход по узлам аппроксимации

read(fi,*) X(i),Y(i)! чтение координат узлов

enddo

close(fi)! закрытие файла

end subroutine R

 

Вариант 2

subroutine R1(n,X,Y)

implicit none

integer,parameter::MAX=100! максимальное количество точек

integer i! счетчик точек полинома

double precision X(0:MAX),Y(0:MAX)! таблица данных X(n),Y(n)

integer n! количество точек функции (i=0..n-1)

open(unit=1,file='DZ.txt')! открытие файла данных

read(1,*) n! чтение количества узлов

do 2 i=0,n-1! проход по узлам аппроксимации

read(1,*) X(i),Y(i)! чтение координат узлов

2 continue

close(1)! закрытие файла

end subroutine

 

Вариант 3

subroutine R2(n,X,Y)

real*8 X(0:100),Y(0:100)! таблица данных X(n),Y(n)

open(1,file='DZ.txt')! открытие файла данных

read(1,*) n! чтение количества узлов аппроксимации

do 2 i=0,n-1! проход по узлам аппроксимации

2 read(1,*) X(i),Y(i)! чтение координат узлов

close(1)! закрытие файла

end

 







Дата добавления: 2015-03-11; просмотров: 430. Нарушение авторских прав; Мы поможем в написании вашей работы!



Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Подкожное введение сывороток по методу Безредки. С целью предупреждения развития анафилактического шока и других аллергических реак­ций при введении иммунных сывороток используют метод Безредки для определения реакции больного на введение сыворотки...

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

ПРОФЕССИОНАЛЬНОЕ САМОВОСПИТАНИЕ И САМООБРАЗОВАНИЕ ПЕДАГОГА Воспитывать сегодня подрастающее поколение на со­временном уровне требований общества нельзя без по­стоянного обновления и обогащения своего профессио­нального педагогического потенциала...

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

Машины и механизмы для нарезки овощей В зависимости от назначения овощерезательные машины подразделяются на две группы: машины для нарезки сырых и вареных овощей...

Классификация и основные элементы конструкций теплового оборудования Многообразие способов тепловой обработки продуктов предопределяет широкую номенклатуру тепловых аппаратов...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия