III. CÁC THUẬT TOÁN KIỂM TRA SỰ TƯƠNG QUAN GIỮA CÁC ĐỐI TƯỢNG HÌNH HỌC
6 -Kiểm tra quan hệ Đườngthẳn g Đườngthẳng
Cơ sở toán học và thuật giải:
Begin
- Nhập tọa độ 2 điểm A(xa, ya, za) và B(xb, yb , zb) mà đường thẳng d đi qua.
- Nhập tọa độ 2 điểm C(xc , yc, zc) và D(xd, yd, zd) mà đường thẳng d’ đi qua.
- Tính véc tơ chỉ phương AB của đường thẳng d: AB =( xb- xa , yb- ya , zb- za)
( hay có thể viết gọn hơn AB = ( a1, a2 , a3) ) - Tính véc tơ chỉ phương CD của đường thẳng d’
CD = ( xd- xc , yd- yc , zd- zc)
(hay có thể viết gọn hơn CD = ( b1, b2, b3) ) - Viết phương trình của đường thẳng d:
Phương trình chính tắc:
( x - xa)/ a1 = ( y - ya)/ a2= ( z - za)/ a3
Luận văn tốt nghiệp
Thiết kế hệ thống kiểm tra cácc quan hệ hình họctrang 57 trang 57
a2x - a1y + 0 + a1ya- a2xa = 0 a3x + 0 - a1z + a1za - a3xa = 0 - Viết phương trình của đường thẳng d’:
Phương trình chính tắc:
( x - xc)/ b1 = ( y - yc)/ b2 = ( z - zc)/ b3
Hệ phương trình tổng quát của đường thẳng d’: b2x - b1y + 0 + b1yc- b2xc = 0
b3x + 0 - b1z + b1zc - b3xc = 0
- Xét sự tương quan của đường thẳng d qua A, B và d’qua C, D: Ta có 3 vector AB, CD, AC:
Vector AB = ( xb- xa , yb- ya , zb- za) Vector CD = ( xd- xc , yd- yc , zd- zc) Vector AC = ( xc- xa , yc- ya , zc- za) Lập định thức cấp 3 của 3 vector AB, CD, AC
Dt = (Ab x CD).AC
= ( xc- xa )(( yb- ya)*( zd - zc) - ( yd- yc)*( zb-za)) + ( yc- ya )(( zd- zc)*( xc- xa) - ( zc- za)*( xb- xa)) + ( zc- za)(( xb- xa)*( yd- yc) - ( xd- xc)*( yb- ya)) - Nếu (Dt<>0), xuất ra kết quả “Hai đường thẳng d và d’ chéo nhau“.
- Nếu ((Dt = 0) AND (a1 / b1 = a2 / b2 = a3 / b3)), xuất ra kết quả “ Hai đường thẳng d và d’ song song“.
- Nếu ((Dt = 0) AND (a1 / b1 = a2/ b2 = a3 / b3) AND (d, d’có 2 điểm chung)), xuất ra kết quả “ Hai đường thẳng d và d’ trùng nhau“.
- Nếu ((Dt = 0) AND (a1/ b1<> a2/ b2 <> a3/ b3)), xuất ra kết quả “Hai đừơng thẳng d và d’cắt nhau“.
- Tìm tọa độ của điểm cắt nhau giữa hai đường thẳng d và d’: Hệ phương trình tổng quát của đường thẳng d:
a2x - a1y + 0 + a1ya - a2xa = 0
xb - xa yb - ya
zb - za
xd - xc yd - yc
Luận văn tốt nghiệp
Thiết kế hệ thống kiểm tra cácc quan hệ hình họctrang 58 trang 58
a3x + 0 - a1z + a1za - a3xa = 0 Hệ phương trình tổng quát của đường thẳng d’:
b2x - b1y + 0 + b1yc- b2xc = 0 b3x + 0 - b1z + b1zc - b3xc = 0
Giải các hệ phương trình tổng quát của đường thẳng d, d’: a2x - a1y + 0 + a1ya- a2xa = 0 a3x + 0 - a1z + a1za - a3xa = 0 (*) b2x - b1y + 0 + b1yc- b2xc = 0 Đặt: d1= a1ya- a2xa d2= a1za- a3xa d3= b1yc- b2xc
Hệ phương trình (*) viết lại như sau: a2x - a1y + 0 + d1 = 0 a3x + 0 - a1z + d2 = 0 b2x - b1y + 0 + d3 = 0
Lập định thức cấp 3 cho hệ ba phương trình trên để tìm tọa độ giao điểm của đường thẳng d và d’:
a2 -a1 0 a3 0 -a1 b2 -b1 0 -d1 -a1 0 Dtgd Dtxgd = Dtygd Dtzgd a2 -a1 -d1 a3 0
Luận văn tốt nghiệp
Thiết kế hệ thống kiểm tra cácc quan hệ hình họctrang 59 trang 59
Tọa độ giao điểm của đường thẳng d, d’ là E(xgd, ygd , zgd): xgd = Dtxgd/ Dtgd
ygd = Dtygd/ Dtgd zgd = Dtzgd/ Dtgd
- Xuất ra kết quả tọa độ giao điểm E(xgd, ygd , zgd). - Nếu (Dt <> 0) thì hai đường thẳng d và d’ chéo nhau
Tính khoảng cách giữa đường thẳng d và d’(đoạn vuông góc chung). End.