на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Розробка засобами Delphi дидактичного ілюстративного матеріалу для розв’язання задачі з аналітичної геометрії. Обчислення проекцій вектора на координатні осі в простор
p align="left">Замість того, щоб проектувати вектор m на осі OX, ОУ, OZ, можна проектувати його на осі М1А, М1В, М1С (рис. 1.3), проведені через початок М1 вектора m і дорівнює направленню з осями координат.

Координати вектора не змінюються при паралельному перенесенні системи координат. Навпаки, координати точки при паралельному перенесенні системи координат змінюються. [1]

Якщо початкова точка вектора ОМ співпадає з початком координат, то координати вектора ОМ відповідно рівні координатами кінцевої його точки М.

Рисунок 1.3 Координати вектора

1.2.3 Кут між віссю координат та вектором

Кути
б, в, г (рис. 1.4), утворених позитивними напрямками OX, OY, OZ з вектором a{X;Y;Z}, можна знайти за формулами

, (1)

, (2)

, (3)

Приклад

Рисунок 1.4 Кут між віссю координат так вектором

Якщо вектор a має довжину, що дорівнює одиниці масштабу, тобто якщо |a| = 1, то , , .

З формул (1), (2), (3) випливає:

(4)

Приклад: Знайти кути, утворених осями координат з вектором {2;-2;-1}.

Розв'язання. ,, , звідки

1.2.4 Аналітичне розв'язання

По заданому модулю вектора і заданими кутах між вектором і осями OX, OY, OZ, обчислити проекції вектора на координатні осі
.

Дано:


Розв'язання:

1. За формулою обчислюємо відповідно x, y, z

2. Отримані значення перетворимо в екранні координати

cpX, cpY - центр системи координат dp - масштаб

3. Виводимо вектор за отриманими координатами

Рисунок 1.5 Отриманий вектор

1.2.5 Математичний приклад

Дано:

Рішення:

1. За формулою обчислюємо відповідно x, y, z

1. Виходить вектор з координатами

2. Отримані значення перетворимо в екранні координати

3. Будуємо вектор у системі координат

2. Сценарій розв'язання задачі в Delphi

2.1 Програмування в консольному режимі

2.1.1 Блок-схема алгоритму

2.1.2 Програмний код консольної програми

program Console;

{$APPTYPE CONSOLE}

uses

SysUtils,

Windows,

Forms,

Math;

var

a,b,v: real; //углы между векторами и осями

m: integer; //модуль вектора

x,y,z: integer; //координаты вектора

xe,ye: integer; //экранные координаты вектора

const

dp = 14;

cpX = 250;

cpY = 200;

//Вывод текста кириллицей на экран

procedure printf(const S: AnsiString);

var

Result: AnsiString;

begin

SetLength(Result, Length(S));

AnsiToOemBuff(@S[1], @Result[1], Length(S));

writeln(result);

end;

//Задержка

procedure Delay(ms : cardinal);

var

t1: cardinal;

begin

t1:=GetTickCount;

while (GetTickCount - t1) < ms do Application.ProcessMessages;

end;

begin

//Ввод данных

printf('Введите угол альфа');

readln(a);

printf('Введите угол бета');

readln(b);

printf('Введите угол гамма');

readln(v);

printf('Введите модуль вектора');

readln(m);

//Расчет данных

printf('Идет расчет данных...');

x:=round(cos(a*(Pi/180))*m);

y:=round(cos(b*(Pi/180))*m);

z:=round(cos(v*(Pi/180))*m);

delay(4000);

//Расчет экранных координат

xe:=cpX + (y * dp) - (x * dp div 2);

ye:=cpY + (x * dp div 2) - (z * dp);

//Вывод информации

printf(Format('Вектор с координатами: a={%d,%d,%d}',[x,y,z]));

printf(Format('Экранные координаты: Xe=%d, Ye=%d',[xe,ye]));

readln;

end.

Рисунок 2.2 Консольна програма

2.2 Компоненти та їх властивості

Створюючи цю програму я використовував багато графічних компонентів, наприклад Edit, Button, CheckBox, MainMenu, ColorBox, PageControl и TrackBar.

2.2.1 Компонент Edit

Компонент для відображення, введення та редагування однорядкових текстів. Є можливість оформлення об'ємного бордюру. Основна властивість -- Text.
У компоненті Edit текст, що вводиться або виводиться, міститься у властивості Text. Цю властивість можна встановлювати в процесі проектування або вказувати програмно. Вирівнювання тексту, як це має місце в позначках і панелях, неможливо. Неможливе також і перенесення рядків. Текст, який не вміщується по довжині у вікно, просто зрушується, і користувач може переміщуватися по ньому за допомогою курсору.

Таблиця 2.1 - Властивості компоненту Edit

Властивості

Опис

AutoSize

Автоматично налаштування під розмір тексту

Color

Колір тексту

Font: TFont

Вибраний шрифт тексту

Left: integer

Положення компонента по горизонталі

ReadOnly: Boolean

Тільки для читання

Text

Введений текст

Top: integer

Положення компонента по вертикалі

Visible: Boolean

Показує чи видимий компонент в даний час

Width: integer

Ширина форми в пікселях

2.2.2 Компонент Button

Кнопки TButton широко використовуються для управління програмами. Пов'язаний з кнопкою алгоритм управління реалізується в обробнику події OnClick. На відміну від більшості інших видимих компонентів кнопка TButton є компонентом самої Windows і тому не може змінювати свій колір довільним чином - вона його змінює разом зі зміною палітри Windows. Кнопка завжди має системний колір clBtnFace і не має властивості Color. Шрифт напису на кнопці може змінювати свій стиль і розмір, але компонент ігнорує зміну його кольору.

Таблиця 2.2 Властивості компоненту Button

Властивості

Опис

Caption: string

Заголовок компоненту

Cursor: TCursor

Тип курсору, коли він знаходиться на компоненті

Enabled: Boolean

Вмикання/вимикання кнопки

Font: TFont

Параметри шрифту

Height: integer

Висота компонента в пікселях

Left: integer

Положення компонента по горизонталі

ModalResult: TModalResult

Результат модального вікна

Name

Ім'я компонента

Style: TButtonStyle

Стиль кнопки

bsCommandLink - кнопка-посилання

bsPushButton - звичайний стиль кнопки

bsSplitButton - кнопка з випадаючого меню

Top: integer

Положення компонента по вертикалі

Visible: Boolean

Показує чи видимий компонент в даний час

Width: integer

Ширина компонента в пікселях

2.2.3 Компонент PageControl

Дозволяє створювати сторінки, керовані закладками чи іншими органами управління, для економії місця в програмі. Багатосторінкові панелі дозволяють заощаджувати простір вікна додатку, розміщуючи на одному і тому ж місці сторінки різного змісту..

Таблиця 2.3 Властивості компоненту PageControl

Властивості

Опис

Align: TAlignPosition

Вирівнювання компонента, по якомусь краю або по всій формі

Caption: string

Заголовок компоненту

Cursor: TCursor

Тип курсору, коли він знаходиться на компоненті

Height: integer

Висота компонента в пікселях

Left: integer

Положення компонента по горизонталі

Name

Ім'я компонента

Style: TButtonStyle

Стиль компонента

tsTabs - Закладки

tsButtons - Кнопки

tsFlatButtons - Пласкі кнопки

TabIndex: integer

Поточна закладка

TabPosition: TTabPosition

Положення компонента

tsTop - зверху

tsRight - справа

tsBottom - знизу

tsLeft - зліва

Top: integer

Положення компонента по вертикалі

Visible: Boolean

Показує чи видимий компонент в даний час

Width: integer

Ширина компонента в пікселях

2.2.4 Компонент MainMenu

Дозволяє конструювати та створювати смугу головного меню форми та випадаючі меню. MainMenu -- це не візуальний компонент, тобто місце його розміщення на формі в процесі проектування не має ніякого значення для користувача -- він все одно побачить не сам компонент, а тільки меню, генероване ним.

Таблиця 2.4 Властивості компоненту MainMenu

Властивості

Опис

AutoHotkeys

maAutomatic

maManual

AutoLineReduction

maAutomatic

maManual

Images: TImageList

Підключаемий компонент ImageList

Items: TMenuItem

Елементи меню

2.2.5 Компонент CheckBox

Дозволяє користувачеві вмикати та вимикати опції програми.
Індикатори з прапорцем CheckBox використовуються в додатках в основному для того, щоб користувач міг вмикати та вимикати якісь параметри, або для індикації стану. При кожному натисканні користувача на індикатор його стан змінюється, проходячи в загальному випадку послідовно через три значення: виділення (поява чорної галочки), проміжне (сіре вікно індикатора та сіра пташка) і не виділене (порожнє вікно індикатора). Цим трьом станам відповідають три значення властивості компоненту State: cbChecked, cbGrayed, cbUnchecked

Таблиця 2.5 Властивості компоненту CheckBox

Страницы: 1, 2, 3, 4



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.