ВУЗ:
Составители:
Основы компьютерной графики для программистов 9
____________________________________________________________________________________________________________________
http://www.ksu.ru/persons/9134.ru.html
равный разности векторов
12
pp −
. Этому вектору соответствует параллельный ему
радиус-вектор
12
ppp* −= , как показано на рис. 4. Тогда радиус-вектор p ,
определяющий некоторую точку на прямой, можно получить сложением, например,
вектора
1
p
и вектора
*p
, умноженного на некоторое число
μ
:
(
)
*pppp
μ
μ
+
=
=
1
.
Так мы получили уравнение прямой в векторной форме, с помощью, так называемых,
базового и направляющего векторов,
1
p и *p , соответственно. Преобразуем это
уравнение к виду, в котором используются только координаты двух исходных
векторов.
(
)
(
)
1211211
pppppppp*pp
−
=
−
⇒
−
+
=+=
μ
μ
μ
(1)
Из этого векторного равенства получаем три равенства для соответствующих
координат:
(
)
()
()
⎪
⎩
⎪
⎨
⎧
−=−
−=−
−=−
121
121
121
zzzz
yyyy
xxxx
μ
μ
μ
Попарно разделив эти уравнения друг на друга, получаем следующую систему
уравнений, определяющую нашу прямую в трехмерном пространстве в форме записи
через координаты точек:
()
(
)
(
)
(
)
()( )( )()
()( )( )()
⎪
⎩
⎪
⎨
⎧
−−=−−
−−=−−
−−=−−
112121
112121
112121
xxzzxxzz
zzyyzzyy
yyxxyyxx
(2)
В практических задачах иногда бывает нужно узнать, лежит ли некоторая точка,
принадлежащая прямой, внутри отрезка, заданного координатами своих концов, на
данной прямой или снаружи. Для решения этой задачи перепишем уравнение (1) в
следующем виде:
(
)
21
1 ppp
μ
μ
+
−
=
(3)
При
[]
1,0∈
μ
получаем точки прямой, лежащие между
1
p
и
2
p
. При 0<
μ
– точки
лежащие на прямой за
1
p , при 1>
μ
– точки, лежащие на прямой за
2
p . Для проверки
этого просто подставьте в уравнение вместо
μ
значения 0 и 1.
Перейдем теперь к задаче вывода уравнения плоскости. Мы рассмотрим три способа
его получения. Для этого прежде напомним определение скалярного произведения.
Для двух радиус-векторов p и q скалярным произведением называется число
α
Cosqpqp =⋅ , где
α
– угол между векторами p и q . Для векторов запись вида pq
или
()
qp,
также считается скалярным произведением. С практической точки зрения это
определение может вызвать некоторое смущение. Действительно, вычислить угол
между векторами, которые заданы координатами в трехмерном пространстве, вряд ли
может показаться простым делом. Но, во-первых, часто бывает достаточно знать не
само значение угла, а значение его косинуса, а во-вторых, скалярное
произведение в
ортонормированной системе координат можно выразить через координаты векторов:
()
(
)
332211321321
qpqpqpqqqppp +
+
=
+
+
+
+=
⋅
kjikjiqp ,
так как при раскрытии скобок скалярные произведения перпендикулярных векторов
базиса, по определению скалярного произведения, обращаются в ноль.
Основы компьютерной графики для программистов 9
____________________________________________________________________________________________________________________
равный разности векторов p2 − p1 . Этому вектору соответствует параллельный ему
радиус-вектор p* = p2 − p1 , как показано на рис. 4. Тогда радиус-вектор p ,
определяющий некоторую точку на прямой, можно получить сложением, например,
вектора p1 и вектора p * , умноженного на некоторое число μ :
p = p(μ ) = p1 + μp * .
Так мы получили уравнение прямой в векторной форме, с помощью, так называемых,
базового и направляющего векторов, p1 и p * , соответственно. Преобразуем это
уравнение к виду, в котором используются только координаты двух исходных
векторов.
p = p1 + μp* = p1 + μ ( p2 − p1 ) ⇒ p − p1 = μ ( p2 − p1 ) (1)
Из этого векторного равенства получаем три равенства для соответствующих
координат:
⎧ x − x1 = μ ( x2 − x1 )
⎪
⎨ y − y1 = μ ( y2 − y1 )
⎪ z − z = μ (z − z )
⎩ 1 2 1
Попарно разделив эти уравнения друг на друга, получаем следующую систему
уравнений, определяющую нашу прямую в трехмерном пространстве в форме записи
через координаты точек:
⎧(x − x1 )( y2 − y1 ) = ( x2 − x1 )( y − y1 )
⎪
⎨ ( y − y1 )( z 2 − z1 ) = ( y2 − y1 )( z − z1 ) (2)
⎪ ( z − z )( x − x ) = ( z − z )( x − x )
⎩ 1 2 1 2 1 1
В практических задачах иногда бывает нужно узнать, лежит ли некоторая точка,
принадлежащая прямой, внутри отрезка, заданного координатами своих концов, на
данной прямой или снаружи. Для решения этой задачи перепишем уравнение (1) в
следующем виде:
p = (1 − μ ) p1 + μp2 (3)
При μ ∈ [0,1] получаем точки прямой, лежащие между p1 и p2 . При μ < 0 – точки
лежащие на прямой за p1 , при μ > 1 – точки, лежащие на прямой за p2 . Для проверки
этого просто подставьте в уравнение вместо μ значения 0 и 1.
Перейдем теперь к задаче вывода уравнения плоскости. Мы рассмотрим три способа
его получения. Для этого прежде напомним определение скалярного произведения.
Для двух радиус-векторов p и q скалярным произведением называется число
p ⋅ q = p q Cosα , где α – угол между векторами p и q . Для векторов запись вида pq
или ( p, q ) также считается скалярным произведением. С практической точки зрения это
определение может вызвать некоторое смущение. Действительно, вычислить угол
между векторами, которые заданы координатами в трехмерном пространстве, вряд ли
может показаться простым делом. Но, во-первых, часто бывает достаточно знать не
само значение угла, а значение его косинуса, а во-вторых, скалярное произведение в
ортонормированной системе координат можно выразить через координаты векторов:
p ⋅ q = ( p1i + p 2 j + p3 k )(q1i + q 2 j + q3 k ) = p1q1 + p2 q2 + p3 q3 ,
так как при раскрытии скобок скалярные произведения перпендикулярных векторов
базиса, по определению скалярного произведения, обращаются в ноль.
http://www.ksu.ru/persons/9134.ru.html
Страницы
- « первая
- ‹ предыдущая
- …
- 7
- 8
- 9
- 10
- 11
- …
- следующая ›
- последняя »
