![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Координаты
Bobby Digital © (2004-12-13 04:00:00)У меня такая проблема ... мне нужно нарисовать в Paintbox многоугольник (4-25 точек), у этой него координаты меняются в границах 1 до 20 000, но иксы отличаются между собой не более чем на 100, игрики - точно так же, в частном случае координаты имеют вид
X=13322.5515 Y=17019.8642,
так вот как мне вывести это все на canvas если он работает только с целыми, думал разделить например на 1000, и округлить до целых ... но в итоге то получиться, что все значения будут X=133(134),Y=170(171) (см. пример точек выше); а это 1 - 2 точки на канве ... как поступить?
Bobby Digital (2004-12-13 12:04:00) [1]не это будет тоже не совсем то ... я придумал как ... я возму выберу самый большой X и самый большой У ... и буду отнимать от него все остальные Х и У соответственно ... т.е.
Х2 = 17700 - 17650=50,
значит Х2 будет равен 50 и как со всеми остальными, в и итоге все Х и У будут раздросаны по canvas не более чем на 100 что собственно и нужно а самым большим Х и У присвою значения (0,0)
Fedia спасибо за то что ответил
Fedia (2004-12-13 05:10:00) [2]Раз у тебя точек максимум 25 и значения отличаются между собой не более чем на 100 то максимальный разброс точек составляет 2500 по Y и по X. Таким образом, если самую левую и верхнюю точку ты будешь рисовать, например, в координатах (10,10), а значения всех остальных точек ты будешь делить на 10 и округлять, то тебе понадобиться canvas с максимальными размерами 260*260 точек, что уже не много и округления будут незначительными. Если же разброс будет меньше, чем 2500 точек, то и делить можно будет на значение, меньшее 10-ти.
Надеюсь, что понятно описал.