從開發環境要轉移到正式環境,
除了資料庫和程式碼以外,圖資的轉移也是一個大工程,
MapGuide有提供一個打包圖資的工具,
步驟:
1. 先確定你要打包的內容在MapGuide Studio內的哪一個資料夾
2. 打開MapGuide管理介面http://localhost/mapguide2010/mapadmin/packagemanagement.php
點選Manage Packages項目,在Folder name欄位輸入要打包的資料夾
輸入規格:"Library://資料夾名稱"
3. 按下Make,MapGuide即會在C:\Program Files\Autodesk\MapGuideEnterprise2010\Server\Packages這個資料夾產一個.MGP的壓縮檔案。
4. 帶著這個壓縮檔,複製到正式環境相同的資料夾內
5. 於正式環境的管理介面進到Manage Packages項目,可以發現下方資料列表有上傳的MGP檔案,按下Load Package,即會將全部資料放置回與測試環境相同的位子。
管理介面:
2010年5月31日 星期一
MapGuide_變更滑鼠指標
在開發MapGuide的時候會發現,滑鼠指標不會跟著功能改變,
常常會被使用者尋問是否可以依照功能變更滑鼠指標,
才能清楚的知道自己再哪一項功能。
方法就是在滑鼠移到Map視窗的時候執行一個換圖的Script,
步驟:
1. 準備相關的滑鼠指標圖示(.cur)
2. 將上述檔案放置到Program Files\Autodesk\MapGuideEnterprise2010\WebServerExtensions\www\stdicons\cursor之下
3. 增加改變滑鼠指標的程式碼
位置:MapGuideEnterprise2010\WebServerExtensions\www\viewerfiles
檔案:toolbar.templ
程式碼:
4. 找到地圖反應的事件執行上述Script以更滑鼠指標圖案
搜尋:OnCommandExecuted,增加changeIcon(action)呼叫
程式碼:
常常會被使用者尋問是否可以依照功能變更滑鼠指標,
才能清楚的知道自己再哪一項功能。
方法就是在滑鼠移到Map視窗的時候執行一個換圖的Script,
步驟:
1. 準備相關的滑鼠指標圖示(.cur)
2. 將上述檔案放置到Program Files\Autodesk\MapGuideEnterprise2010\WebServerExtensions\www\stdicons\cursor之下
3. 增加改變滑鼠指標的程式碼
位置:MapGuideEnterprise2010\WebServerExtensions\www\viewerfiles
檔案:toolbar.templ
程式碼:
function changeIcon(action)
{
var cururl = "../../mapguide2010/stdicons/cursor/";
var map = parent.mapFrame.document.getElementById("map");
switch(action)
{
case 1: //平移
map.style.cursor = cururl + "1.cur"
break;
case 7: //放大
map.style.cursor = cururl + "7.cur"
break;
case 8: //縮小
map.style.cursor = cururl + "8.cur"
break;
case 9: //框選放大
map.style.cursor = cururl + "9.cur"
break;
case 15: //選擇
map.style.cursor = 'default';
break;
case 12: //上一頁
//map.style.cursor = cururl + "12.cur"
//break;
case 13: //下一頁
//map.style.cursor = cururl + "13.cur"
//break;
default:
//map.style.cursor = 'default';
//break;
}
}
4. 找到地圖反應的事件執行上述Script以更滑鼠指標圖案
搜尋:OnCommandExecuted,增加changeIcon(action)呼叫
程式碼:
function OnCommandExecuted(action)
{
changeIcon(action) ←←←←←←←←←←←←←←←←←←←
.....
.....
.....
}
2010年5月28日 星期五
雲林縣都市計畫地理資訊系統上線了~~
2010年5月27日 星期四
MapGuide_動態隱藏功能頁面
MapGuide預設版面的功能頁於頁面右側,
雖然這樣的設計算是好用,但常聽到螢幕小的業主抱怨,
認為右邊的功能頁應該要可以縮放,
想要達成隱藏功能頁可以利用下面的程式碼,
步驟:
1. 首先在Layout上新增一個Invoke Script
2. 在Additonal Parameters輸入下列Script
即可透過該按鈕讓使用者自行隱藏功能頁面。
註:當然,若是你所使用的框架有改變,其呼叫的階層也會有所變化。
雖然這樣的設計算是好用,但常聽到螢幕小的業主抱怨,
認為右邊的功能頁應該要可以縮放,
想要達成隱藏功能頁可以利用下面的程式碼,
步驟:
1. 首先在Layout上新增一個Invoke Script
2. 在Additonal Parameters輸入下列Script
if (document.all.tags("Frameset").item(1).cols == '*,0')
document.all.tags("Frameset").item(1).cols = '*,280';
else
document.all.tags("Frameset").item(1).cols = '*,0';
即可透過該按鈕讓使用者自行隱藏功能頁面。
註:當然,若是你所使用的框架有改變,其呼叫的階層也會有所變化。
MapGuide_解決圖例展開不全
專案開發如果碰到圖例較多時,
使用MapGuide的基本版型會造成左邊圖例無法顯示全部項目,
這個原因其實是因為MapGuide原始程式碼內有進行判斷,
當超過一定的數量時,會自動以...代替圖示,以保持顯示的美觀,
但這樣就失去圖例的用處了,所以我們還是要把他展開,
方法就是去改變他判斷的數值,讓這個數值大於我們的項目。
步驟:
1. 找到要修改的檔案
位置:C:\Program Files\Autodesk\MapGuideEnterprise2009\WebServerExtensions\www\viewerfiles
檔案:legendui.templ
2. 用記事本打開上述檔案,搜尋if(!sc.showlongtheme && styles.length > 15)
3. 找到位置後,將數字15改為你希望的項目
4. 存檔,你會發現,現在他不會用...來代替圖例了。
使用MapGuide的基本版型會造成左邊圖例無法顯示全部項目,
這個原因其實是因為MapGuide原始程式碼內有進行判斷,
當超過一定的數量時,會自動以...代替圖示,以保持顯示的美觀,
但這樣就失去圖例的用處了,所以我們還是要把他展開,
方法就是去改變他判斷的數值,讓這個數值大於我們的項目。
步驟:
1. 找到要修改的檔案
位置:C:\Program Files\Autodesk\MapGuideEnterprise2009\WebServerExtensions\www\viewerfiles
檔案:legendui.templ
2. 用記事本打開上述檔案,搜尋if(!sc.showlongtheme && styles.length > 15)
3. 找到位置後,將數字15改為你希望的項目
4. 存檔,你會發現,現在他不會用...來代替圖例了。
MapGuide_使用Asp.net開始開發
不管是用MapGuide OpenSource或是MapGuide Enterprise遇到第一個問題都是如何開始?
首先安裝MapGuideServer與MapGuideWebServerExtensions
過程中注意選擇要用的語言跟使用的網路伺服器(IIS)
安裝完成後可先連至MapGuide的管理介面看是否安裝完成
管理介面:http://localhost/mapguide2010/mapadmin/login.php
預設帳號為:Administrator 密碼:admin
接下來就是正式的程式開發工作
步驟
1. 開啟MapGuide Studio依照步驟完成一個想要展示的Layout
2. 開啟VS20XX版,選擇Asp.Net專案
3. 將C:\Program Files\Autodesk\MapGuideEnterprise2010\WebServerExtensions
\www\mapviewernet\bin 這個目錄下的所有DLL檔複製到專案的BIN資料夾
以確保程式呼叫MapGuide相關API時無誤。
4. 新增一個檔名.aspx檔案,並輸入以下程式碼
主要是利用MapGuide所提供的框架來展示圖面資料,
效果就像下圖這樣。
首先安裝MapGuideServer與MapGuideWebServerExtensions
過程中注意選擇要用的語言跟使用的網路伺服器(IIS)
安裝完成後可先連至MapGuide的管理介面看是否安裝完成
管理介面:http://localhost/mapguide2010/mapadmin/login.php
預設帳號為:Administrator 密碼:admin
接下來就是正式的程式開發工作
步驟
1. 開啟MapGuide Studio依照步驟完成一個想要展示的Layout
2. 開啟VS20XX版,選擇Asp.Net專案
3. 將C:\Program Files\Autodesk\MapGuideEnterprise2010\WebServerExtensions
\www\mapviewernet\bin 這個目錄下的所有DLL檔複製到專案的BIN資料夾
以確保程式呼叫MapGuide相關API時無誤。
4. 新增一個檔名.aspx檔案,並輸入以下程式碼
<%@ Import Namespace="OSGeo.MapGuide" %>
<%
MapGuideApi.MgInitializeWebTier("C:\Program Files\Autodesk\MapGuideEnterprise2010\WebServerExtensions\www\webconfig.ini")
Dim userInfo As MgUserInformation = New MgUserInformation("Administrator", "admin")
Dim site As MgSite = New MgSite()
site.Open(userInfo)
Dim sessionId As String = site.CreateSession()
Dim webLayout As String = "Library://TPSW/Layout/TPSWLayout.WebLayout"
Session("UserSession") = sessionId
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<frameset rows="80,*">
<frame src="SWTitle.aspx" scrolling="no" name="Title">
<frame src="/mapguide2010/mapviewernet/ajaxviewer.aspx?SESSION=<%= sessionId %>&WEBLAYOUT=<%= webLayout %>" name="ViewerFrame" />
</frameset>
<body>
<form id="form1" runat="server">
<div></div>
</form>
</body>
</html>
主要是利用MapGuide所提供的框架來展示圖面資料,
效果就像下圖這樣。
2010年5月26日 星期三
MapGuide_中文化版面
必須將版面變更為繁體中文版本。
步驟:
1. 至C:\Program Files\MapGuideOpenSource\WebServerExtensions\www\localized之下
2. 利用記事本修改en檔案。
3. 依照需要中文化的文字輸入想顯示的內容(儲存時選擇UTF-8編碼)
4. 重新啟動MapGuide服務。
當然,也可以自行製作zh語系檔案,但必須在MapGuide管理介面及程式呼叫時設定
1. 於管理介面http://localhost/mapguide/mapadmin/login.php
2. 於Manage Servers下的 Configure Server 將General Properties/Default locale設定為zh
3. 程式呼叫時設定要抓的語系檔
4. src="http://localhost/mapguide2008/mapviewernet/ajaxviewer.aspx?SESSION=<%= sessionId %>&WEBLAYOUT=<%= webLayout %>&locale=zh" name="ViewerFrame"
Mapguide_解決中文標註
MapGuide在顯示中文標註上會有亂碼問題產生,
解決方法只要在安裝MapGuide Server的伺服器安裝可顯示繁體中文的字型檔即可。
步驟:
1. 下載arialuni.ttf字型檔(網路上即可搜尋下載)。
2. 安裝於伺服器C:/windows/fonts資料夾內。
3. 重新啟動電腦。
4. 於MapGuide Studio內設定標註字型時,選擇Arial Unicode MS。
5. 重新整理網頁。
賀!看到繁體中文了。
訂閱:
文章 (Atom)