2012-07-23 113 views
1

我在drupal 7網站上設置了openlayers。我看不到如何刪除或移動地圖圖標。我必須編輯openlayers JS代碼嗎?如果是這樣如何?向drupal 7 openlayers添加更多功能

我的另一個問題是,我想讓一層內容(節點)成爲基本層,然後讓其他內容類型的其他節點成爲該基本層的層。根據分類術語,我已經得到了一個帶有圖標/圖層的多層地圖,但我不知道如何設置基本層(它始終保持可見)。

我想要的基礎層的節點沒有與它們相關的分類。我想我可以給他們一個相同分類的術語,這樣他們就會出現,但我仍然需要使它們始終在地圖上充當基本層。 (希望你能跟着)

任何幫助極大的讚賞。 James

回答

1

您的問題的答案可能會變得相當複雜,所以我正在回答它的一部分。要移動圖標,您可能需要更改CSS file而不是JS。我們開發了一個Web GIS portal,其中圖層作爲Drupal節點存儲。這些節點具有與它們相關的分類術語。使用這些分類術語,圖層被分類到不同的文件夾中。我們的前端使用ExtJS開發,節點/層使用後臺AJAX服務調用獲取。

此外,您不需要將底圖存儲爲Drupal節點。如果您不打算支持不同的可定製基礎地圖,則可以在創建OpenLayer對象時直接在JavaScript中對基礎地圖進行硬編碼。看一個例子here。並演示here

+0

其實我想要做的是有節點地圖顯示。在這種情況下,我會稱它們爲「網站」,這就是我所說的基礎層,而不是地圖。這些將是地圖上的點或多邊形。然後,我可以通過選擇鏈接在這些「網站」上顯示不同的內容,在其中顯示其他圖標。合理? – james 2012-07-25 15:08:00

+0

好的,我理解你正在嘗試做的一些事情。如果要在地圖上顯示點或多邊形,可以創建一個包含這些點的KML文件,並要求OpenLayers將該KML文件顯示爲一個圖層(並且永遠不要將其刪除,以便始終保持可見狀態)。如果您想在地圖上顯示其他內容,請創建另一個KML圖層並將其添加到地圖上。所以,現在您將在地圖上同時顯示兩個KML圖層。您可以使用OpenLayers JavaScript API根據特定條件顯示您想要的圖層並隱藏/顯示任何圖層。 – 2012-07-25 15:22:23

+0

我正在使用Drupal 7.我創建了節點並使它們作爲openlayers數據視圖顯示的一部分顯示。我試圖做的是創建「網站」節點和「事物」節點在這些網站。所以我希望網站的圖標留在地圖上,然後能夠在這些網站上切換不同的東西。我認爲這些東西和網站都必須是他們自己獨立的開放層數據顯示。順便說一句:我已經看到人們如何將JS添加到開放層以獲得附加功能,但我不知道該把JS放到Drupal站點的openlayers上。 – james 2012-07-25 17:13:33