|
22.01.2010, 09:55
|
Новичок на форуме
|
|
Регистрация: 22.01.2010
Сообщений: 7
|
|
отрисовка изображения по произвольным координатам
Всем привет!
Помогите плз новичку.
Необходимо реализовать возможность прокрутки изображения с помощью мыши. Сам дошел тока до того как реализовать события мыши (см. код ниже). В функции ms_over я получаю смешения dx и dy. Теперь необходимо перерисовать изображение по новым координатам. Причем смешение может быть и отрицательным, часть изображения которая выходить за пределы ограничивающего элемента должна обрезаться.
Облазил весь интернет и ничего не нашел. Подскажите как реализовать такую функциональность, плз.
<script type="text/javascript">
var gl_x; gl_y, x, y, activate = false;
function ms_down(event) {
defPosition(event);
x = gl_x; y = gl_y;
activate=true;
}
function ms_up(event) {
activate=false;
}
function ms_over(event) {
if (activate) {
dx = gl_x - x;
dy = gl_y - y;
// перерисовка изображения...
}
}
function defPosition(event) {
var x = y = 0;
var event = event || window.event;
if (document.attachEvent != null) { // Internet Explorer & Opera
x = window.event.clientX + (document.documentElement.scrollLeft ?
document.documentElement.scrollLeft : document.body.scrollLeft);
y = window.event.clientY + (document.documentElement.scrollTop ?
document.documentElement.scrollTop : document.body.scrollTop);
}
else if (!document.attachEvent && document.addEventListener) { // Gecko
x = event.clientX + window.scrollX;
y = event.clientY + window.scrollY;
}
y0=document.getElementById("map").offsetTop;
x0=document.getElementById("map").offsetLeft;
gl_x = x-x0;
gl_y = y-y0;
}
</script>
|
|
22.01.2010, 14:56
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
прокрутка изображения и отрисовка, это разные понятия.
|
|
22.01.2010, 15:32
|
Новичок на форуме
|
|
Регистрация: 22.01.2010
Сообщений: 7
|
|
Спс, а я не знал.
Просьба помогите кто знает как реализовать эту фичу. Надо очень срочно. Я может быть непонятно описал. Вообщем функциональность должна быть как на Яндекс.Карте, т.е. отрисована картинка текущего местаположения. Пользователь нажимает мышь и таскает изображение, и пока он не отпустил кнопку оно перерисовывается в соответствии со смещением мыши от начального клика. и лишь когда он отпускает кнопку происходит запрос на сервер новой картинки. Тут скорее всего и верстка нужна какая-то особенное, поэтому у кого какие идеи ответьте плз. Сам точно не разберусь, нужно срочно сделать.
|
|
22.01.2010, 15:37
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Сообщение от Th0m@$
|
Вообщем функциональность должна быть как на Яндекс.Карте
|
Сообщение от Th0m@$
|
Сам точно не разберусь, нужно срочно сделать.
|
Можете взять движок Яндекс.Карт, и подсунуть ему свою карту. http://api.yandex.ru/maps/jsapi/doc/...user-layer.xml
|
|
22.01.2010, 16:23
|
Новичок на форуме
|
|
Регистрация: 22.01.2010
Сообщений: 7
|
|
Да движок свой уже написан на пхп, надо тока прикрутить клиентскую часть навигации по карте. И это как я понимаю реализуется на JavaScript, который я к сожалению толком не знаю.
|
|
22.01.2010, 16:38
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Сообщение от Th0m@$
|
Да движок свой уже написан на пхп, надо тока прикрутить клиентскую часть навигации по карте. И это как я понимаю реализуется на JavaScript, который я к сожалению толком не знаю.
|
Причем здесь PHP? Я говорю как раз про движок на JavaScript, который вы не знаете.
|
|
22.01.2010, 17:17
|
Новичок на форуме
|
|
Регистрация: 22.01.2010
Сообщений: 7
|
|
Я посмотрел описание движка, там вся карта на нем строится, для моего проекта это к сожалению не подходит, а код движка я так понял закрыт, мне по крайней мере не удалось его открыть. Да и не хватает мне тока отрисовки картинки при таскании мышью, остальное все более менее сделано.
|
|
22.01.2010, 19:42
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от Th0m@$
|
Да и не хватает мне тока отрисовки картинки при таскании мышью, остальное все более менее сделано.
|
Какой Вы смешной, всего-то не хватает "отрисовки", хоть бы в кавычки поставили, раз не понимаете реализации.
|
|
22.01.2010, 20:03
|
Новичок на форуме
|
|
Регистрация: 22.01.2010
Сообщений: 7
|
|
Мне кажется что форум создан чтобы более опытные помогали новичками или просто обменивались опытом, а не для оттачивания своего красноречия, и попытке показать всем какой ты умный. По делу есть какие-нибудь предложения? Чего языком-то трепать.
|
|
22.01.2010, 20:06
|
Новичок на форуме
|
|
Регистрация: 22.01.2010
Сообщений: 7
|
|
Да я не понимаю как это реализовать, поэтому и попросил помощи. А в программировании (не web) у меня стаж 20 лет.
|
|
|
|