Кто-нибудь уже сталкивался с задачами прикручивания карты гугля на свой сайт и управление данными через свои команды? Передо мной стоит задача: 1. есть две точки "Отправление" & "Прибытие" 2. надо чтоб гугл на карте нарисовал дорогу 3. Сбоку будет чекбокс "Покозать пункты Х" 4. по нажатию на чекбокс, пункты должны появится на карте. Пункты 1-3 думаю не очень сложны, что меня больше волнует, так это 4-ый, ибо я не знаю, данные об этих пунктах, я должен хранить у себя и каждый раз скидывать гуглю, либо у них где-то зарание разместить Кто сможет поделится опытом и советом, зарание большое спасибо. Сув. КОТ
У меня точки хранятся в MySQL. Основной файл обращается к другому, который выдаёт из базы данные в виде XML. PHP: // Start XML file, create parent node //$doc = domxml_new_doc("1.0"); $doc = new DOMDocument("1.0"); $node = $doc->createElement("markers"); $parnode = $doc->appendChild($node); // Select all the rows in the markers table $query = "SELECT * FROM markers"; $result = mysql_query($query); if (!$result) { die('Invalid query: ' . mysql_error()); } header("Content-type: text/xml"); // Iterate through the rows, adding XML nodes for each while ($row = @mysql_fetch_assoc($result)){ // ADD TO XML DOCUMENT NODE $node = $doc->createElement("marker"); $newnode = $parnode->appendChild($node); $newnode->setAttribute("name", $row['name']); $newnode->setAttribute("address", $row['address']); $newnode->setAttribute("lat", $row['lat']); $newnode->setAttribute("lng", $row['lng']); $newnode->setAttribute("type", $row['type']); } $xmlfile = $doc->saveXML(); echo $xmlfile; Кусок яваскрипта из основного файла: [js] GDownloadUrl("genxml.php", function(data) { var xml = GXml.parse(data); var markers = xml.documentElement.getElementsByTagName("marker"); for (var i = 0; i < markers.length; i++) { var name = markers.getAttribute("name"); var address = markers.getAttribute("address"); var type = markers.getAttribute("type"); var point = new GLatLng(parseFloat(markers.getAttribute("lat")), parseFloat(markers.getAttribute("lng"))); var marker = createMarkerFromXML(point, name, address, type); } });[/js] По направлениям и пути следования можешь почитать тут: http://code.google.com/apis/maps/docume ... tml#GRoute А вот тут есть примеры: http://esa.ilmari.googlepages.com/draggabledir.htm http://econym.googlepages.com/steps.htm
Хммм, короче нактнулся тута на одну фишку, издатель как я понял, сам гугль, короче по этапно: 1. карта 2. Стывь галочку на "Tankstellen" 3. Потом кликай "Route berechnen", вписывай "New Your, NY" -> "Los Angeles, CA" - berechnen 4. должен получится такой рисунок: Вопрос, как использовать их базу, и показывать точки ТОЛьКО в доль дароги :roll:
Во-первых, у нас РУССКИЙ форум. С Tankstellen можно идти в сторону "php.de". Во-вторых, эти Tankstellen настроены у вас в личных настройках. В-третьих, ты ВСЕГДА используешь ИХ базу. Или у тебя уже завелась своя база? Посмотри откуда берутся данные по заправкам. Там должно быть написано как их забирать. Своим скриптом их берёшь, расфасовываешь, убираешь те, которые очень далеко от дороги и вуаля.. У тебя своя карта.
Спасибо за напоминание, я вроде бы знал, если что то я тоже гражданин РФ, а пытатся вникнуть на немецком в програмирование, равносильно тому чтоб попросить негра зделать ядерную бомбу ))))) Своей бызы для карт у меня нету, зачем изобретать велосипед, если всё уже есть, не вижу смысла, вот только думаю как они отнесутся к такому шагу... Да я вот как раз в процессе разгребания их кода, а кода у них как всегда дофига... но думаю данные на карту я рано или позно получу, но вот как отсортироватъ "только те что вдоль дороги"? Я в АПИ такого не припоминаю :roll:
У каждой точки есть широта и долгота. Нужно только определить широту и долготу основных точек дороги. Это уже отдельный вопрос. Нужно копаться в АПИ.
GRoute & GStep Насколько я понял из прочитаного, можно получить только координаты точек, где маршрут кардинально меняется
А почему не провести линию между ключевыми точками и не отталкиваться от них? Чем больше расстояние между точками - тем больше делай "покрытие" фильтра.
Тригонометрию учил в школе? У меня к сожалению нет возможности сейчас привести тебе примеры расчётов. У тебя же есть опорные точки и их координаты? Между каждой точкой проведи прямую линию и двигаясь вдоль линии "покрывай" какую-нибудь условную площадь, например, в форме квадрата. Чем больше расстояние между точками, увеличивай квадрат "покрытия". Всё что попадает в эту площадь - показывай.. Всё что не попадает - не показывай.
Johnatan скажу чесно, нет не учил, в германии нечему нормальному не учат, но это отдельная история.... Ход мысли я понял, но вопрос в том как это осуществить... :roll: