Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Action script 2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=49)
-   -   Скроллинг карты местности, ScrollPane (http://www.flasher.ru/forum/showthread.php?t=62257)

pusher 23.08.2004 13:21

Скроллинг карты местности, ScrollPane
 
Необходимо реализовать навигацию по карте города с функциями масштабирования и отображением элементов на карте.

Карта была перегнана в мувиклип из wmf, для прокрутки используется стандартный компонент ScrollPane - он эту карту и скроллит. Масштабирование тоже сделал (через _xscale/ _yscale у контента).

Вот сейчас самое интересное - необходимо отображать метки на карте в виде пиктограмм. Так вот собственно вопрос как это сделать?

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

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

Подскажите кто имеет опыт как лучше такое сделать? Если удобно, можно пообщаться в аське - 122870822. В плане флеша я новичок, но я хороший спец по PHP и Javascript, так что могу в свою очередь помочь вам по этим вопросам, если вдруг понадобится.

Mitay 25.08.2004 13:47

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

далее при скроле - ловишь события(не помню точно - но должно быть onChange), по этому событию определяешь какие метки лежат в видимой области(можно забить на это, если их мало) и аттачишь в специальный для этого мувик соответствующие иконки
при этом, чтобы избежать увеличение иконок, надо увеличивать не сам контекст что в скроле, а ту часть в мувике, что с картой и метками(они находится должны в одном подмувике, чтобы положения не сбивались)

удачи

Jlekc 28.08.2004 14:57

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

Mitay 30.08.2004 18:37

не покатит, т.к. ему надо размер менять скейлом

pusher 30.08.2004 23:21

Да, не покатит, т.к. иконки не должны менять свой размер при масштабировании. А если обработка кликов и отображение иконок будет в дочерней флешке, то она не сможет контроллировать масштабирование.

Да, вобщем-то я с этим уже разобрался. Получаю объект контента через ScrollPane.getScrollContent(), потом к этому объекту аттачу уже иконку. Вобщем, более менее разобрался.

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

Mitay 31.08.2004 12:05

смори класс LoadVars

Prey 31.08.2004 14:14

делал такой же проект (map.murmanout.ru)
компоненты не использовал, по поводу масштабирования иконок при увеличении - писал функцию их обратного масштабирования, данные брались из файла, который генерился сервером, а потом просто подгружал нужный кусок с нужными координатами для иконок.

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

иконки хранились во флэшках в каждом куске (не рационально, конечно, но че то по другому не получалось)

Jlekc 31.08.2004 16:10

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

Есе использовать символ из библиотеке, что мешает использовать флаги?? так и не вехал( Попробывал, флаги есть (вставлял их динамичиски) клики отрабатываються, маштобирование правда не делал, но не вижу проблем

Jlekc 31.08.2004 16:19

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

pusher 31.08.2004 16:22

Не, ну это уже извращения чистой воды.

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

Jlekc 31.08.2004 17:34

В обратную сторону, хе.
А это не извращение7)

Интереса ради скинь свой сурс, я тож поизвращаюсь, сравним)))

Mitay 31.08.2004 22:27

это полный изврат
к тому же раст в иконках(если он есть) может так размываться

pusher 01.09.2004 09:51

Скинуть пока не могу, потому как пока не выложено и сделал еще только вариант карты для CMS, где нужно просто отметить маркером некий поинт и сохранить. Поинт в векторе. В целом нормально.

А на внешней части (на самом сайте) будет скорее всего растр. Как-то я не подумал что оно может криво масштабироваться. Хотя, с другой стороны почему? Если я допустим у родительского клипа делаю _[x,y]scale = 200, а у иконки _[x,y]scale = 50, то в результате будут исходные 100% и по идее ничего корявиться не должно. Хотя это же флеш...

Supnabor 03.09.2004 23:01

Delau pohozhyi proect v nem kak raz est' i karta i iconki iz bazy dannyh i geometria iz bazy dannyh voobshem vse dinamicheskoe esli ponravitsya to mogu podelitsya kak sdelal.

Smotret' suda http://marquette.hntb.com/page.jsp?&key=tim


Часовой пояс GMT +4, время: 00:48.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.