49501

Сдвинуть треугольник ABC по оси Ox на расстояние l

Лабораторная работа

Информатика, кибернетика и программирование

В данной задаче поставлено условие данных. Поэтому входные данные координаты исходных точек треугольника ABC и расстояние l берём из текстового файла input.txt. Соответственно по условию задачи и выходные данные координаты нового треугольника, матрица преобразования записываем в результирующий файл output.txt.

Русский

2017-10-17

2.33 MB

3 чел.

Пояснительная записка к лабораторной работе

«Компьютерная графика»

Задание лабораторной работы.

Сдвинуть треугольник ABC по оси Ox на расстояние l.

Входные данные: координаты точек A,B,C и расстояние l.

Выходные данные: координаты нового треугольника, матрица преобразования.

Теоретическая часть.

Описание реализованного алгоритма.

В данной задаче поставлено условие данных. Поэтому входные данные координаты исходных точек треугольника ABC и расстояние l берём из текстового файла input.txt. Соответственно по условию задачи и выходные данные координаты нового треугольника, матрица преобразования записываем в результирующий файл output.txt.

Алгоритм реализуем в среде TURBO PASCAL 7.0

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

Следующий этап непосредственно сама формула преобразования сдвига. Согласно формуле, перебирая циклом массив координат, изменяем величину абсцис x на разницу l. И сохраняем значение новых координат в массиве B зарезервированных для новой фигуры а также в результирующий файл output.txt.

После вывода на экран полученных данных отображаем графический результат на экран полученного сдвига нашего треугольника ABC.

Скомпелированный файл EXE совместим с версиями операционной системы до Windows XP.

Программа на алгоритмическом языке TURBO PASCAL 7.0

program lab1treugsdvig;

uses graph;

const

n=2;{Размерность}

m=3;{Количество точек фигуры}

var

gd,gm,error: integer;

a,b: array[1..3,1..n] of integer;

i,j: byte;

f,g: text;

l:integer;

begin

gd:=VGA;

gm:=VGAHi;

{Чтение координат из файла}

assign(f,'C:\Files\input.txt');

reset(f);

for i:=1 to m do

begin

writeln('Координаты ',i,'-й точки (x,y): ');

for j:=1 to n do

begin

write(j,'-я координата: ');

read(f,a[i,j]);

b[i,j]:=a[i,j];

write(a[i,j],', ');

end;

writeln;

readln(f);

end;

read(f,l);

writeln('Расстояние = ',l);

close(f);

{Запись полученных результатов в файл}

assign(g,'C:\Files\output.txt');

rewrite(g);

for i:=1 to m do

b[i,1]:=a[i,1]+l;{Формула движения фигуры по оси OX}

writeln('Сдвинутый треугольник ABC');

writeln(g,'Сдвинутый треугольник ABC');

for i:=1 to m do

begin

writeln('Координаты ',i,'-й точки (x,y): ');

writeln(g,'Координаты ',i,'-й точки (x,y): ');

for j:=1 to n do

begin

write(j,'-я координата: ');

write(b[i,j]:4,', ');

write(g,b[i,j]:4,', ');

end;

writeln;

writeln(g);

end;

writeln;

writeln('Матрица координат треугольника ABC');

writeln(g,'Матрица координат треугольника ABC');

for i:=1 to m do

begin

for j:=1 to n do

begin

write(b[i,j]:4);

write(g,b[i,j]:4);

end;

writeln(g);

writeln;

end;

close(g);

writeln('Нажмите ENTER для отображения результата в графике...');

readln;

InitGraph(gd,gm,'');{Перход в графический режим}

error:=GraphResult;

if error <> grOK then begin

write ('error');

readln;

halt;

end;

line(0,200,500,200);{ось Х}

line(3,0,3,400);{ось Y}

{Изначальный треугольник}

moveto(a[1,1],a[1,2]);

lineto(a[2,1],a[2,2]);

lineto(a[3,1],a[3,2]);

lineto(a[1,1],a[1,2]);

{Для отображенния передвинутой фигуры меняем стиль линий}

SetLineStyle(DottedLn, 0, NormWidth);

{Перемещённый треугольник}

moveto(b[1,1],b[1,2]);

lineto(b[2,1],b[2,2]);

lineto(b[3,1],b[3,2]);

lineto(b[1,1],b[1,2]);

readln;

end.

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

Отображение на экран входной и выходной информации:


 

А также другие работы, которые могут Вас заинтересовать

41916. Изучить устройство, принцип действия, применение приборов измерения и регулирования температуры 660.36 KB
  Задачи: изучить устройство принцип действия применение приборов измерения температуры основанных на измерении физических размеров изучить устройство принцип действия применение приборов измерения температуры основанных на изменении электрических характеристик сопротивления изучить устройство принцип действия применение приборов измерения температуры основанных на дистанционном измерении температуры изучить устройство принцип действия применение приборов измерения температуры основанных на изменении и регулировании...
41917. Ручне встановлення драйверу монітору на ОС типу Windows® 98; Windows® 2000 809.75 KB
  Місце виконання роботи ПЕК НАУ ВЦ кабінет №145 Хід роботи: Для того щоб встановити драйвер на монітор ми повинні: Зайти на вкладку Монітори→Стандартний монітор та натиснути кнопку Оновити рис.2; У вікні що з'явилося Встановлення обладнання натиснути кнопку далі; В наступному вікні для просто встановлення драйверу вибираємо Провести пошук найбільш свіжого драйверу для пристрою для більш детального пошуку необхідно вибрати Відобразити список всіх драйверів щоб ви могли вибрати найбільш підходящий драйвер в даному випадку...
41918. Робота з Partition Magic 3.05 MB
  Необхідно завантажити програму “ Partition Magic ” з диску. Розбивка диску за допомогою програми “ Partition Magic ” Навчитися робити розбивка диску за допомогою програми “ Partition Magic ”
41919. Ручне встановлення драйвері на ОС типу Windows® 98 267.71 KB
  Місце виконання роботи ПЕК НАУ ВЦ кабінет №145 Хід роботи: Для того щоб вручну встановити драйвер необхідно зробити наступне: Заходимо в диспетчер пристроїв та вибираємо драйвер. Переходимо на вкладку драйверрис.2 та натискаємо на клавішу Обновити драйверрис.
41920. Ручне встановлення драйвері на ОС типу Windows® 2000 438.36 KB
  Місце виконання роботи ПЕК НАУ ВЦ кабінет №145 Процес установлення драйверу: Переходимо на вкладку драйвер та натискаємо на клавішу Обновити драйверрис.1 рис.1 Потім ставимо галочку Провести пошук підходящого драйверу для пристрою рис.
41921. Робота з програмою «Fdisk» 1.37 MB
  Для початку необхідно вивчити меню програми fdisk рис. Після цього необхідно назначити основний розділ активним. Після цього необхідно від форматувати створені диски та перевірити чи можливо записати на диск інформацію. (рис.5).
41922. Дослідження арифметичної та логічної обробки інформації 78.05 KB
  Співставити кількість розрядів у отриманих числах. Зіставити кількість двійкових розрядів у вихідних даних при арифметичній обробці та в отриманих числах результату. Дослідження кількості розрядів Кількість розрядів до вх. дані 4після переведення в двійкову СЧ 13 розрядів.
41923. Дослідження напівпровідникових діодів 62.81 KB
  Результати занесемо в «Результати експериментів». Вимірювання статичного опору діода Виміряємо опір діода при прямому і зворотньому підключенні. Для цього замість вольтметра схемі на рис. поставимо мультиметр і виставимо його на вимірювання опору. Результати занесемо в «Результати вимірювань».
41924. ДОСЛІДЖЕННЯ ОДНОНАПІВПЕРІОДНОГО І ДВОНАПІВПЕРІОДНОГО ВИПРЯМЛЯЧІВ ІЗ ЗАСТОСУВАННЯМ СИСТЕМИ МОДЕЛЮВАННЯ СХЕМОТЕХНІКИ «ELECTRONICS WORKBENCH» 225.54 KB
  Експеримент 1 Дослідження вхідної і вихідної напруги однонапівперіодного випрямляча.1 б Зміряйте період Т вихідної напруги по осцилограмі. г Обчислите коефіцієнт трансформації як відношення амплітуд напруги на первинній і вторинній обмотці трансформатора. Для вимірювання амплітуди напруги на первинній обмотці трансформатора підключите канал А осцилографа до вузла Pri .