![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
||||
|
||||
|
Код:
function CollisionLine(LA1,LB1,LA2,LB2:Points):boolean; var v1,v2,v3,v4:double; begin v1:=(lb2.X-la2.X)*(la1.y-la2.y)-(lb2.y-la2.y)*(la1.X-la2.X); v2:=(lb2.X-la2.X)*(lb1.y-la2.y)-(lb2.y-la2.y)*(lb1.X-la2.X); v3:=(lb1.X-la1.X)*(la2.y-la1.y)-(lb1.y-la1.y)*(la2.X-la1.X); v4:=(lb1.X-la1.X)*(lb2.y-la1.y)-(lb1.y-la1.y)*(lb2.X-la1.X); CollisionLine:=(v1*v2<0) and (v3*v4<0); end; где: LA1,LB1 одна линия, соответственно LA2,LB2-вторая |
| Этот пользователь сказал Спасибо Pilot_Red за это полезное сообщение: | ||
TennisAdept (12.06.2022)
| ||