Vlad Drakula
Цитата:
округление не допустимо, и так мне нехватает пары порядков точноси!
|
Так я же и не говорил об округлении. Я говорил об скоростной выгоде при использовании целочисленной арифметики. Применив которую можно прошерстить большинство имеющихся точек, а оставшиеся уже проверять по дробным координатам. Перевод в целочисленную форму не значит просто округлить, если требуется большая точность после запятой, можно и увеличить все числа на несколько порядков (на тысячу предварительно умножаешь, например), тем самым ты просто уменьшаещь размерность единицы измерения, главное не забыть тогда и r на столько же порядков увеличить. ИМХО, если сделать второй массив для целочисленных координат и сделать предварительные преобразования для всех точек, то поиск заметно ускорится. Потом с дробной арифметикой останется проверять только точки, лежащие в упомянутой ступенчатой сфере. Если точек очень много, то выгода в скорости д/б сильно заметна.