конвертация координат в разрешение

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Skarobey
Обычный пользователь
Обычный пользователь
 
Сообщения: 73
Зарегистрирован: 01.06.2002 (Сб) 17:34
Откуда: Russia

конвертация координат в разрешение

Сообщение Skarobey » 02.08.2005 (Вт) 23:22

как можно сконвертировать координаты в окне при разных разрешениях?

скажем при 640*480 координаты точки = 330, 212
какие координаты будут этой же точки в разрешении 800*600 и других разрешениях окна?

именно окна, т.е. отсчет координат идет от начало координат окна, а не всего монитора.

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 03.08.2005 (Ср) 0:25

X = 330 / 640 * Screen.Width
Y = 212 / 480 * Screen.Height
Это в пикселях если. Если в твипах - дели на Screen.TwipsPerPixelX(Y)
А вообще, при стандартных разрешениях экрана (640х480, 800х600, 1024х768, 1152х864, 1280х960, 1600х1200 и т.д.) сохраняется пропорция 4:3. Это так, к слову =)
Нет меня больше

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 03.08.2005 (Ср) 8:36

Есть разрешение 1280x1024 (довольно таки стандартное), для которого пропорция 4:3 не сохраняется.
Lasciate ogni speranza, voi ch'entrate.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 03.08.2005 (Ср) 8:40

Странные вы люди :)

Если при 640*480 координаты точки = 330, 212, то при 1024*768 координаты точки = 330, 212 :)

Другое дело, что сами точки будут меньше, и потому указанная точка будет ближе к левому верхнему углу монитора. Но координаты точки не изменятся :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 04.08.2005 (Чт) 0:14

2 alibek: дык я и неспроста его в список не добавил :) Оно 5:4 и используется в основном на ЖК-мониторах (на ЭЛТ (у меня) оно смотрелось, мягко говоря, не очень).
2 GSerg: используя свои исключительные телепатические способности :lol:, я пришел к выводу, что челу нужно масштабирование :)
Нет меня больше

hohol_kz
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 05.08.2005 (Пт) 6:21

Сообщение hohol_kz » 08.08.2005 (Пн) 10:13

A.A.Z. писал(а):2 alibek: 2 GSerg: используя свои исключительные телепатические способности :lol:, я пришел к выводу, что челу нужно масштабирование :)


Дык в этом случае зачем вообще огород городить с какими-то сложными формулами?
Простой единственный масштабный коэфициент если используются равнопропорциональные разрешения (4:3) и такие же, но два для перехода на другие пропорции (5:4, например). В этом случае будет искажение.

Для первого случая: коэф=НовРазрешХ/СтарРазрешХ (или по Y, как кому нравится)

Для второго случая:
коэфХ=НовРазрешХ/СтарРазрешХ
коэфY=НовРазрешY/СтарРазрешY
Последний раз редактировалось hohol_kz 08.08.2005 (Пн) 10:32, всего редактировалось 1 раз.
На правах саморекламмы: "Кофейник" - это тот же "чайник", только круче.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 08.08.2005 (Пн) 10:19

СратРазрешY

Разрешишь всё-таки? Ура :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

hohol_kz
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 05.08.2005 (Пт) 6:21

Сообщение hohol_kz » 08.08.2005 (Пн) 10:37

GSerg писал(а):
СратРазрешY

Разрешишь всё-таки? Ура :)

Ага, и по Х и по У
:wink:
Можешь даже трехмерно...
:lol:
На правах саморекламмы: "Кофейник" - это тот же "чайник", только круче.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 143

    TopList