Показать сообщение отдельно
Старый 10.06.2011, 16:57   #10
Venom2
 
Сообщений: n/a
Ответ: Проблема пика линий

Сообщение от Leowey Посмотреть сообщение
1) Высокая цена ентити
2) CameraPick медленно очень
3) Я что зря фастлибы покупал?
4) У меня в программе масштаб стрелок относительно камеры, с геометрией такое прокатит, но будет галюнить
Усё
1) Один меш и сурфейс на все стрелки
2) Правда что-ли?
3) А причем тут эти библиотеки?
4) ну тут да, прийдется повозиться

Ну попробуй вычислять расстояние от указателя мыши до линий стрелок, вот функция
целые числа, дистанция в квадрате
Function PointLineDistanceSquared(x%, y%, x1%, y1%, x2%, y2%)
	Local dx% = x2 - x1
	Local dy% = y2 - y1
	Local t% = (((x - x1) * dx + (y - y1) * dy) Shl 8) / (dx * dx + dy * dy)	
	If t < 0 Then
		dx = x1 - x
		dy = y1 - y
	Else If t > (1 Shl 8) Then
		dx = x2 - x
		dy = y2 - y
	Else
		dx = x1 + ((dx * t) Sar 8) - x
		dy = y1 + ((dy * t) Sar 8) - y
	End If
	Return dx * dx + dy * dy
End Function
x, y - точка
x1, y1, x2, y2 - отрезок
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо за это полезное сообщение:
HolyDel (11.06.2011), Leowey (10.06.2011)