Ах + Ву + С < 0, (1.4)
Якщо прийняти, яка з цих півплощин розміщена зліва, а яка справа від прямої, то цим самим можна орієнтувати пряму (1.2). Для зміни напряму прямої (1.2) на протилежний треба обидві частини рівняння (1.2) помножити на -1. При цьому півплощини (1.3) і (1.4) поміняються місцями.
Сукупністю нерівностей, кожна з яких задає півплощину, задають область, обмежену опуклим багатокутником на площині, якщо кількість нерівностей менша від трьох. При цьому можна використовувати нерівності лише одного знака.
Наприклад, внутрішність квадрата, зображеного на рис. 1.4 моделюється системою нерівностей
-у + 2 > 0, -х + 2 > 0, у + 2 > 0, х + 2 > О, (1.5)
а зовнішність квадрата, зображеного на рис. 1.5, — системою нерівностей.
у - 1 > 0, х - 1 > 0, -у - 1 > 0, -х - 1 > О, (1.6)
"Кільцева" область (рис. 1.6), яка обмежена двома попередніми квадратами моделюється системою з восьми нерівностей (1.5) і (1.6).
Обчислення координат точки перетину двох прямих. Якщо прямі задані формою (1.2)
А1х+В1у+С1 =0, (1.7)
А2х+ В2у+ С2=0,
то координати точки перетину їх обчислюють за формулами
(1.8)
Якщо D = 0, а Dx ¹О або D y¹0, то прямі паралельні.
Якщо D=0, Dx= О, Dy= 0, то прямі збігаються.
Рівняння прямої, що проходить через дві точки, має вигляд
(1.9)
Це рівняння доцільно застосовувати тоді, коли впорядкована послідовність точок сполучається ламаною. Ця послідовність задається масивами координат хi, уi
(і =1,2, ..., n). Рівняння ланок ламаної дістанемо у вигляді
(1.10)
Рівняння (1.9) можна звести до вигляду (1.1), якщо обчислити k і b за формулами
(1.11)
та до вигляду (1.2), якщо обчислити А, В і С за формулами
(1.12)
Розглянемо ще параметричну форму за-дання прямої. Запишемо рівняння (1.9) у
вигляді
(1.13)
Звідси
, (1.14)
де s є параметром. Якщо s = 0, то x = x1| , у = y1. Якщо s = 1, то x2 = х, у = у2. Якщо
О <д< 1, то точка лежить усередині відрізка (x1 , y1), (y2, x2). Якщо s<0 або s >1, то точка лежить зовні відрізка.
Параметричне рівняння (1.14) застосовують у багатьох алгоритмах комп'ютерної графіки: в алгоритмі покриття області штриховкою, в алгоритмах визначення видності — рухомого та нерухомого екранів тощо.
Нехай область, яку треба покрити штриховкою (рис. 1.7), задана масивами координат (x1,y2), (x2,y2) (і = 1, 2, 3, 4). Рівняння ланок, що обмежують область, дістанемо у вигляді (1.10) при i = 1, 2, 3, 4. Визначивши iнтервал, який пробігає параметр b у рівнянні (1.1) сім'ї ліній штриховки, задамо крок зміни b. На кожному кроці треба розв'язати систему чотирьох рівнянь (1.10) і (1.1). У результаті дістанемо координати точок I…IV. Підставимо у формули (1.14) замість х та у знайдені координати хnj та ynj. Матимемо
. (1.15)
Якщо хі+1-хі= 0, то слід скористатися другою формулою з (1.15), а якщо уі+1-уі= 0, то - першою.
У результаті для точок ІІ і ІІІ дістанемо значення s2 та s3 за межами інтервалу
0<s<1, тобто їх не враховують при визначенні того відрізка лінії штриховки що належить області.
Полярні параметри прямої. Відстань р початку координат від прямої (1.2) та кут між віссю Ох і відрізком перпендикуляра ОК (рис. 1.8) називають полярними параметрами прямої.
Відстань р визначають за формулою
. (1.16)
Кут t визначають не безпосередньо, а за допомогою функцій синуса та косинуса:
(22.17)
Умова паралельності прямих (1.7) випливає з формул (1.8) при D= 0:
A1B2-B1A2 (1.18)
Умова перпендикулярності прямих (1.7):
A1A2+B1B2 =0 (1.19)
Рівняння прямої, яка проходить через точку М(х1, у1) і перпендикулярна до прямої (1.2):
А(у –у1)- В(х-х1)=0. (1.20)
Відстань точки М (х1,у1) до прямої (1.2):
(1.21)
Якщо в цю формулу підставити координати початку 0(0.0), то відстань d матиме знак С, чим і пояснюється знак абсолютної величини. Точки, розміщені по той самий бік від прямої що й початок координат, дають той самий знак для d. Точки. розміщені по різні боки від прямої, дають протилежні знаки для d. Тому відстань d називають орієнтованою.
Коло
Рівняння кола, центр якого збігається з початком координат, має вигляд
х2+у2=R2. (1.22)
У параметричній формі
x=Rcost, y=Rsint, (1.23)
де t — кут між Ох та радіусом-вектором точки.
Якщо центр кола має координати (а, b) то рівнянням кола є (рис. 1.6):
(х - а)2 + (у - b)2 = R2 (1.24)
та
х = а + Rсоst, у = b + Rsint . (1.25)
Орієнтація кола. Перейдемо від форми задання (1.22) чи (1.24) до неявної форми задання:
x2 +y2-R2=0, (1.26)
(x-a)2+(y-b)2-R2=0. (1.27)
Якщо координати точок, які лежать усередині кола, підставити в рівняння (1.26) або (1.27), то матимемо зміну знака ''=" на "<".
Можна вважати, що коло (1.26) або (1.27) має такий напрям, що точки, координати яких змінюють знак "=" на знак "<" у рівнянні (1.26) чи (1.27), розміщені, наприклад, зліва від напряму кола, тим самим визначити його орієнтацію. Щоб змінити напрям кола на протилежний, треба помножити рівняння на -1. Тоді матимемо
-x2-y2+R2=0, або –(x-a)2-(y-b)2+R2 = 0.
Поділ кола на рівні частини. Щоб поділити коло на n рівних частин, треба ввести параметр s:
(1.28)
Кутониіі параметр точок поділу
ti=2psi (1.29)
Змінюючи i від 1 до n + 1 обчислюємо спочатку si за формулою (1.28), а потім ti, за формулою (1.29). Підставивши ti, у рівняння (1.23) або (1.25), знайдемо координати xi, yi точок поділу.
Перша точка поділу (і = 1, si = 0, ti = 0) збігається з останньою (i=n+ 1, si = 1, ti = 2p). Цей збіг, як і кінцеве значення i=n+ 1 зроблено навмисно: при кресленні кола чи багатокутника графопобудовником креслярський пристрій міститься у початковій точці двічі — на початку та наприкінці креслення.
Наведений алгоритм застосовують у програмах креслення правильних багатокутників і кіл. У другому випадку n вибирають значно більшим, щоб візуально багатокутник не відрізнявся від кола.
Дуга (відрізок) кола. Параметрами, що визначають будь-яку дугу кола є: хс, ус- координати центра; R—радіус; tп —кутовий параметр початкової точки дуги; tд —