Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.08.31;
Скачать: CL | DM;

Вниз

Вопрос о координатах   Найти похожие ветки 

 
ПЛОВ ©   (2008-07-11 14:46) [0]

Типо теоретический :)
Есть числа (реальные) обозначающие координаты неких объектов (xy или xyz, не важно). Они выражены, к примеру, в метрах (это так, чтобы можно было представить масштаб).
Необходимо, чтобы точность каждого такого числа была вплоть до каких-то там долей миллиметра даже если объект находится от начала координат на расстоянии тысяч парсеков (с астрономией все знакомы? :).
Естественно представить их в программе просто в виде одной переменной нельзя, т.к. потеряется точность. Пока придумал только такой способ решения задачи - для каждой координаты иметь несколько переменных, одна из которых хранит общее значение координаты (в парсеках, например), а остальные уточняющие значения вплоть до самых минимальных.
Может есть другие способы реализации? Объектов будет много :)


 
Sergey13 ©   (2008-07-11 14:50) [1]

Можно наверное хранить число и порядок.
2 и 6 = 2000000


 
Ega23 ©   (2008-07-11 14:51) [2]

TCoord = record
 parsecs : Longint;
 meters  : Longint;
 nmeters :  Longint;
end;


 
Игорь Шевченко ©   (2008-07-11 14:52) [3]


> Необходимо, чтобы точность каждого такого числа была вплоть
> до каких-то там долей миллиметра даже если объект находится
> от начала координат на расстоянии тысяч парсеков


Жутко интересно, что за задача ?


 
Рамиль ©   (2008-07-11 14:55) [4]


> Ega23 ©   (11.07.08 14:51) [2]

Боюсь в Longint 1 парсек в метрах не влезет.


> ПЛОВ ©   (11.07.08 14:46)  

А практически какой смысл?


 
wl ©   (2008-07-11 15:01) [5]

BigInt


 
ПЛОВ ©   (2008-07-11 15:03) [6]


> Можно наверное хранить число и порядок.

Знаков после запятой в первом числе может основательно не хватить :)

> Ega23 ©

Да, что-то наподобии этого, чтобы "диапазоны" перекрывались. Т.е. самое общее значение (парсеки) является как бы "началом координат" для уточняющих значений.


 
Romkin ©   (2008-07-11 15:06) [7]

Напомнило мне это рассказ, как математики с физиками многоугольник чертили :)
А измерять чем будешь? Рулетку уже припас? :)
Напиши, плиз, длину парсека в миллиметрах.


 
Ega23 ©   (2008-07-11 15:09) [8]


> Боюсь в Longint 1 парсек в метрах не влезет.


3.08*10^16 метров
Ну BigInt. Или астрономические единицы, какие-нибудь.
Я про саму идею.


 
Ega23 ©   (2008-07-11 15:09) [9]


> Напиши, плиз, длину парсека в миллиметрах.


3.08*10^19


 
Zeqfreed ©   (2008-07-11 15:10) [10]

3.08568025 × 10^19 :)


 
Плохиш ©   (2008-07-11 15:12) [11]


> Ega23 ©   (11.07.08 15:09) [9]


> Zeqfreed ©   (11.07.08 15:10) [10]

Просили точность "до каких-то там долей миллиметра"...


 
Romkin ©   (2008-07-11 15:13) [12]


> 3.08568025 × 10^19 :)

Это в миллиметрах? Не верю. Плюс-минус миллион километров, да? :D


 
Alien1769 ©   (2008-07-11 15:15) [13]

Есть одна Астрономическая Единица.
То есть растоние от Земли до Солнца.
Последний расчет в а.е. нужно умножить на растоние от Земли до Солнца.

Кажись так :)


 
Правильный*Вася   (2008-07-11 15:16) [14]


> Необходимо, чтобы точность каждого такого числа была вплоть
> до каких-то там долей миллиметра даже если объект находится
> от начала координат на расстоянии тысяч парсеков

интересно, для каких инженерных задач моежт понадобиться такая точность?
обычно погрешностями значительно пренебрегают


 
Ega23 ©   (2008-07-11 15:16) [15]


> Это в миллиметрах? Не верю. Плюс-минус миллион километров,
>  да? :D


Ну, если уж совсем формально к этому делу подходить, то парсек штука такая... В самом определении неточность зашита. Ибо при изменении орбиты Земли (увеличении или уменьшении), длина парсека будет меняться.


 
Правильный*Вася   (2008-07-11 15:21) [16]


> растоние от Земли до Солнца.

между центрами или поверхностями?


 
Romkin ©   (2008-07-11 15:22) [17]

Ega23 ©   (11.07.08 15:16) [15] Да нет, а.е. принята константой, с точностью до метра. Поскольку парсек определяется через нее, это дает погрешность примерно 200 км. Математически.
http://ru.wikipedia.org/wiki/Астрономическая_единица
http://ru.wikipedia.org/wiki/Парсек
Точнее значения просто нет и не нужно. Даже до миллиона км - вполне достаточная точность. Звезды-то движутся.
Так что задача вообще не имеет практического смысла.


 
ПЛОВ ©   (2008-07-11 15:25) [18]

Мне это нужно для игры :) А то получается, что чем дальше объект от начала координат, тем с меньшей точностью известно его местоположение. Это бред - точность должна быть одинаковой, даже если он на краю вселенной :D


 
Romkin ©   (2008-07-11 15:25) [19]

Ну есть TBCD, туда хоть поперечник галактики в миллиметрах влезет. Но зачем?!


 
Romkin ©   (2008-07-11 15:26) [20]


> А то получается, что чем дальше объект от начала координат,
>  тем с меньшей точностью известно его местоположение.

А нафига? :)))
С меньшей абсолютной точностью, но относительная-то одинаковая!!! И это не бред.


 
Romkin ©   (2008-07-11 15:27) [21]

И вообще, ты с края вселенной на корабле лететь будешь? С какой скоростью? :)))


 
Правильный*Вася   (2008-07-11 15:28) [22]


> ПЛОВ ©   (11.07.08 15:25) [18]

ну, это даже изюминку вносит :)

хотя перемецать начало координат или заводить их несколько с разной сеткой никто не мешает


 
БарЛог ©   (2008-07-11 15:28) [23]

Я бы в динамическом массиве хранил число, выраженное в минимальных долях.


 
ПЛОВ ©   (2008-07-11 15:32) [24]


> И вообще, ты с края вселенной на корабле лететь будешь?
> С какой скоростью? :)))

У меня есть очень мощный корабль. Он летает в гиперкосмосе намного быстрее этих жалких 300000 км/сек :D

> Я бы в динамическом массиве хранил число, выраженное в минимальных
> долях.

Поподробнее, плиз )


 
Romkin ©   (2008-07-11 15:36) [25]


> У меня есть очень мощный корабль. Он летает в гиперкосмосе
> намного быстрее этих жалких 300000 км/сек :D

И что? Скорость у тебя тоже в миллиметрах задается?
Какая мне разница, находится он на расстоянии безднадцать дурильонов км или на пару а.е. подальше?
Когда прилетит - тогда и померяем.


 
Правильный*Вася   (2008-07-11 15:37) [26]


> Когда прилетит - тогда и померяем.

он боится попасть в звезду на таких скоростях


 
Romkin ©   (2008-07-11 15:38) [27]

Дык когда поближе подлетит - точнее все будет. а издаля-то зачем целиться?


 
Anatoly Podgoretsky ©   (2008-07-11 15:39) [28]

> ПЛОВ  (11.07.2008 15:25:18)  [18]

Абсолютная или относительная.
А что для хранения используешь.


 
ПЛОВ ©   (2008-07-11 15:40) [29]

Проблемы могут быть с отображением объектов. Например, два объекта удалены друг от друга на 120 км, а от "центра вселенной" на 120 парсек. Как их отрисовать на банальном канвасе? )) С погрешностью +/- миллион километров?


 
Правильный*Вася   (2008-07-11 15:41) [30]


> Romkin ©   (11.07.08 15:38) [27]

а мож у него горючки на один прыжок в гиперкосме


 
Ega23 ©   (2008-07-11 15:42) [31]


> Мне это нужно для игры :) А то получается, что чем дальше
> объект от начала координат, тем с меньшей точностью известно
> его местоположение. Это бред - точность должна быть одинаковой,
>  даже если он на краю вселенной :D
>


Будь проще: побей всю голактегу на зоны. Расстояния между зонами и размер зон измеряй в "парсеках". А вот расстояния между объектами внутри зоны - в каких-то других единицах.


 
Правильный*Вася   (2008-07-11 15:43) [32]


>  Как их отрисовать на банальном канвасе?

дополнительная система координат с центром, например, на одном из объектов
но это для случая 120 км (как ты их получишь, если у тебя каждая из координат +-мильон, не ясно)


 
Правильный*Вася   (2008-07-11 15:44) [33]


> Ega23 ©   (11.07.08 15:42) [31]

это [22]


 
Romkin ©   (2008-07-11 15:45) [34]


> Проблемы могут быть с отображением объектов. Например, два
> объекта удалены друг от друга на 120 км, а от "центра вселенной"
> на 120 парсек.

Обыкновенно: бери локальную точку в какой-то области, говори, что эта точка удалена от центра "вселенной" ровно на стока-то, и от нее уже измеряй все. Делов-то!


 
Petr V. Abramov ©   (2008-07-11 15:50) [35]

мне напомнило, как на заводе отсчитывали 567,892 кг сахара - 5 мешков, 7,8 кг на весах и 0,92 кг на аптекарских весах.


 
ПЛОВ ©   (2008-07-11 15:51) [36]

Много систем координат тоже не есть хорошо, особенно если можно обйтись одной. Вообщем, попробую реализовать как придумал, с уточняющими значениями для каждой координаты. Всем спасибо.


 
ПЛОВ ©   (2008-07-11 15:54) [37]


> Petr V. Abramov ©   (11.07.08 15:50) [35]

Это как раз мой случай ))


 
Ega23 ©   (2008-07-11 15:54) [38]


> 567,892 кг сахара - 5 мешков


В мешке 112 кг????


 
БарЛог ©   (2008-07-11 15:55) [39]

ПЛОВ ©   (11.07.08 15:32) [24]

>> Я бы в динамическом массиве хранил число, выраженное в минимальных
>> долях.

> Поподробнее, плиз )

А куда уж подробнее? Требуется хранить огромное число, берём и храним :)


 
БарЛог ©   (2008-07-11 15:56) [40]

> А куда уж подробнее? Требуется хранить огромное число, берём и храним :)
Разбиение на всякие "зоны" неэкономично.


 
Petr V. Abramov ©   (2008-07-11 15:56) [41]


> Ega23 ©   (11.07.08 15:54) [38]

100 или 50, не помню.


 
Petr V. Abramov ©   (2008-07-11 15:58) [42]


> ПЛОВ ©   (11.07.08 15:54) [37]
> Это как раз мой случай ))

дык в мешке-то +- грамм 100 уж точно, так что мучения с аптекарскими весами - бессмыслены


 
Правильный*Вася   (2008-07-11 15:59) [43]


> А куда уж подробнее? Требуется хранить огромное число, берём
> и храним :)

а если размерности массива не хватит? ;)

> мне напомнило, как на заводе отсчитывали 567,892 кг сахара
> - 5 мешков, 7,8 кг на весах и 0,92 кг на аптекарских весах.

интересно, а мешки при засыпке с какой точностью взвешивают? хотя бы до 20г? иначе профанация получается


 
ПЛОВ ©   (2008-07-11 16:00) [44]


> дык в мешке-то +- грамм 100 уж точно, так что мучения с
> аптекарскими весами - бессмыслены

Ну я имел в виду способ реализации в целом )


 
Ega23 ©   (2008-07-11 16:08) [45]


> 100 или 50, не помню.


Тогда у тебя не сходится.


> интересно, а мешки при засыпке с какой точностью взвешивают?
>  хотя бы до 20г? иначе профанация получается


Недобросовестные поставщики белой смерти засыпают в мешки влажный сахар.


 
БарЛог ©   (2008-07-11 16:08) [46]

Правильный*Вася   (11.07.08 15:59) [43]

> А куда уж подробнее? Требуется хранить огромное число, берём
> и храним :)

а если размерности массива не хватит? ;)
Выделяем память требуемого размера (хоть 100Мб), Сохраняем начальный адрес, сохраняем конечный. Тот же самый массив :)


 
Игорь Шевченко ©   (2008-07-11 16:10) [47]

Measure with micrometer,
Mark with chalk,
Cut with axe


 
Petr V. Abramov ©   (2008-07-11 16:47) [48]


> Ega23 ©   (11.07.08 16:08) [45]
> Тогда у тебя не сходится.

ну и фиг с ним :)

> Недобросовестные поставщики белой смерти засыпают в мешки
> влажный сахар.

отсюда и цифра 567,892 и пр. получаются, что кол-во пересчитывают н текущую влажность
:)



Страницы: 1 2 вся ветка

Текущий архив: 2008.08.31;
Скачать: CL | DM;

Наверх




Память: 0.59 MB
Время: 0.059 c
10-1147542762
RUNaum
2006-05-13 21:52
2008.08.31
Как понять что ActiveX в "design-time"?


15-1215773178
ПЛОВ
2008-07-11 14:46
2008.08.31
Вопрос о координатах


15-1215679351
Никитич
2008-07-10 12:42
2008.08.31
Посоветуйте книгу по C#


15-1216025897
MMuxa
2008-07-14 12:58
2008.08.31
Virtual Treeview


1-1198047781
kyn66
2007-12-19 10:03
2008.08.31
TreeView с подсветкой текущей строки