from the star... это оригинальное решение!Нет. Чем ближе точка приварпа к солнцу (и не только приварпа, а что угодно) - тем точнее позиционирование. Но точности дабл-флоата, в общем-то, хватает для того, чтобы покрыть все с точностью до метра на много тысяч ау, так что врядли это связано именно с этим.
|
Донат На хостинг |
ISK за переводы до 75kk за 1000зн. |
Хроники EVE Сборник |
Новичкам Полезная информация |
Погрешность приварпа
Автор AveN Revenge, Mar 28 2012 13:21
#81
Отправлено 30 March 2012 - 10:15
«История учит тому, что она ничему не учит, но жестоко наказывает тех, кто ее не знает».
#82
Отправлено 30 March 2012 - 11:57
Как-то так
Ну, а теперь мое решение. (Зарание извиняюсь за красоту рисунка, художник из меня еще тот (: )

1.(рис. 1). Вокруг координат объекта находится рандомальная точка, лежащая на рандомальной сфере с рандомальным радиусом 0 < rаnd < 2500. (формула все та же
x1 = x0 + rаnd × sin(α) × cos(β)
y1 = y0 + rаnd × sin(α) × sin(β)
z1 = z0 + rаnd × cos(α)
2. к этой точке строится вектор от места отварпа(рис. 2). Жирными линиями на рисунке показан конус с радиусом основания rand, в котором будут лежать все возможные векторы.
3. Ищется точка пересечения построенного вектора со сферой диаметром R = R1+R2+rand (R1 - радиус сферы объекта, R2 - радиус шипа ). Это и есть "абсолютная" точка приварпа(синим цветом на рис. 3). Красным показаны все возможные точки пересечения с этой сферой.
Как легко заметить, к большому объекту всегда приварп будет с одной и той же стороны (чем меньше объект, тем больше разброс, в силу геометрических причин), а вот к точечному - с разных, т.к. точки пересечения со сферой радиусом 0 нет, то приварп будет в точку из пункта 1.
Вот как-то так. Абсолютно универсально, и включает в себя объект и шип любого размера.
П.С. да, действительно, во второй строчке должен быть синус. Исправил.
Сообщение отредактировал СтарыйПепелац: 30 March 2012 - 12:10
1 посетителей читают тему
0 members, 1 guests, 0 anonymous users

Вход
Регистрация



Наверх

