1.3. Преобразование пересекающихся прямых

Результатом преобразования с помощью (2х2)-матрицы пары пересекающихся прямых линий также будет пара пересекающихся линий. Проиллюстрируем это на примере двух прямых, заданных уравнениями:

 

y = m1x + b1
y = m2x + b2

В матричном представлении эти уравнения будут иметь вид:
 

       
[X][T] = [x   y]   -m1  -m2  
1       1
 = [b1   b2]
       

 

или

[X][M] = [B]

Если существует решение этой системы уравнений, то линии пересекаются, в противном случае они параллельны. Решение можно найти путем инверсии матрицы. В частности,

 

[Xi] = [xi   yi] = [B][M] -1

Матрица, обратная [М], имеет следующий вид:
 

       
    1

m2 - m1

-1

m2 - m1
    m2

m2 - m1
-m1

m2 - m1
       

 

так как [M][M] -1 = [E], где [E] - единичная матрица. Поэтому координаты точки пересечения двух линий можно найти следующим образом:

 

       
[Xi] = [xi  yi] = [b1  b2   1

m2 - m1

-1

m2 - m1
    m2

m2 - m1
-m1

m2 - m1
       

 

 

       
[Xi] = [xi  yi] =    b1 - b2

m2 - m1
    b1m2 - b2m1

m2 - m1
       

 

 

Если обе линии преобразовать с помощью (2х2)-матрицы общего преобразования вида:
 

       
[T] =   a   b 
c   d
       

 

то их уравнения будут иметь вид

y* = m1*x* + b1*
y* = m2*x* + b2*

Соответственно можно показать, что

mi* = b + dmi

a + cmi

и

bi* = bi(d - cmi*) = bi ad - bc

a + cmi
      где i = 1, 2.

Точка пересечения линий после преобразования отыскивается таким же образом, что и в случае исходных линий:

 

       
[Xi*] = [xi*   yi*] =    b1* - b2*

m2* - m1*
    b1*m2* - b2*m1*

m2* - m1*
       

 

 

Воспользовавшись тремя предыдущими выражениями, получим:
 

       
[Xi*] = [xi*   yi*] =    a(b1 - b2) + c(b1m2 - b2m1)

m2 - m1
    b(b1 - b2) + d(b1m2 - b2m1)

m2 - m1
       

 

Возврашаясь теперь к точке пересечения [xi yi] исходных линий и применяя уже полученную матрицу преобразования, имеем

 

               
[xi*   yi*] = [xi   yi][T] =    b1 - b2

m2 - m1
    b1m2 - b2m1

m2 - m1
   a   b 
c   d
 =
               

 

 

       
  a(b1 - b2) + c(b1m2 - b2m1)

m2 - m1
    b(b1 - b2) + d(b1m2 - b2m1)

m2 - m1
       

 

Сравнение уравнений точек пересечения исходных линий и преобразованных показывает, что они одинаковы. Итак, точка пересечения преобразуется точно в другую точку пересечения.

Назад
Компьютерная графика © 2014 ОСУ ИК Вход