"Определить операцию преобразования многоугольника (вращение на угол a вокруг точки (x,y)) с помощью составной функции."
" Меню включает опции: Ввод точек, Выполнение действия, Выход, Помощь. Точки вводятся с помощью мыши или генератора случайных чисел. \r\n"
"\r\n\t\t\t< < ПОРЯДОК РАБОТЫ > >\r\n1. Выберите в меню пункт \"Ввод точек\"->\"Начать ввод\". Затем с помощью мыши укажите в графическом поле вершины многоугольника, "
"нажав левую кнопку на месте создания соответствующей вершины. Многоугольник будет автоматически достраиваться при добавлении очередной вершины методом"
" Дейкстры.\r\n2. Если вы где-то ошиблись при построении многоугольника, и хотите отменить построение, то выберите пункт меню \"Ввод точек\"->\"Отмена\" (при этом все графическое окно очистится).\r\n"
"3. После того, как вы построили нужный многоугольник, выберите пункт меню \"Ввод точек\"->\"Закончить ввод\". Таким образом многоугольник будет программно сформирован и отображен "
"в графическом поле. \r\n4. Далее, для проверки попадания точки в область, ограниченную многоугольником, достаточно нажать левую кнопку мыши. В зависимости от ситуации "
"будет выведено в левом верхнем углу графического окна соответствующее сообщение.\r\n5. Если вы хотите выполнить требуемое действие, то выберите пункт меню \"Выполнение действия\". Появится окно, в котором вам необходимо "
"будет указать угол, на который вы хотите повернуть многоугольник и координаты (x,y) точки, вокруг которой будет выполняться вращение против часовой стрелки (или поставить точку в графическом окне, нажав левую кнопку мыши в соответствующем месте. После нажатия на кнопку \"Выполнить\""
" будет произведено заданное действие.\r\n6. Для выхода из программы выберите пункт меню\"Выход\".\r\n\r\nЛабораторную работу выполнил студент группы 4ВТ-1 Сочнев И.";
}
//--------------------------------------------------------------------------Текстфайла Unit3.cpp
//--------------------------------------------------------------------------#include <vcl.h>
#pragma hdrstop
#include "Unit3.h"
#include "unit1.cpp"
//--------------------------------------------------------------------------#pragma package(smart_init)
#pragma resource "*.dfm"
TForm3 *Form3;
double la1, //переменная для хранения значение угла поворота
la2, //переменная для хранения координаты Х точки, вокруг которой будет
//выполняться вращение
la3; //переменная для хранения координаты У точки, вокруг которой будет
//выполняться вращение
int rb=0; //rb=1 если пользователь выбрал ввод координат точки с помощью клавиатуры
//rb=2 если пользователь выбрал ввод координат точки с помощью мыши
bool err=false;
//--------------------------------------------------------------------------__fastcall TForm3::TForm3(TComponent* Owner)
: TForm(Owner)
{
Edit2->Enabled=false;
Edit3->Enabled=false;
}
//--------------------------------------------------------------------------void __fastcall TForm3::Edit1Change(TObject *Sender)
{
if(Edit1->Text=="") {MessageBox(NULL, "Введите значение угла в градусах", "Неправильный ввод", MB_ICONINFORMATION); err=true; return;}
int la;
err=false;
la=atoi(Edit1->Text.c_str());
la1=atof(Edit1->Text.c_str());
if(la!=la1) {MessageBox(NULL, "Значение угла поворота должно быть целым", "Неправильный угол", MB_ICONINFORMATION); Edit1->Text=""; err=true;return;}
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.