Студопедия Главная Случайная страница Обратная связь

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

Объявление переменной 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; просмотров: 460. Нарушение авторских прав; Мы поможем в написании вашей работы!




Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Задержки и неисправности пистолета Макарова 1.Что может произойти при стрельбе из пистолета, если загрязнятся пазы на рамке...

Вопрос. Отличие деятельности человека от поведения животных главные отличия деятельности человека от активности животных сводятся к следующему: 1...

Расчет концентрации титрованных растворов с помощью поправочного коэффициента При выполнении серийных анализов ГОСТ или ведомственная инструкция обычно предусматривают применение раствора заданной концентрации или заданного титра...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Различие эмпиризма и рационализма Родоначальником эмпиризма стал английский философ Ф. Бэкон. Основной тезис эмпиризма гласит: в разуме нет ничего такого...

Индекс гингивита (PMA) (Schour, Massler, 1948) Для оценки тяжести гингивита (а в последующем и ре­гистрации динамики процесса) используют папиллярно-маргинально-альвеолярный индекс (РМА)...

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