2008年12月29日
在mapxtreme 中visualMapJ1MouseClicked 事件只能便用左鍵,如果想要右鍵彈出信息的話,非常的不方便,下面是一個臨時的解決辦法:
private void visualMapJ1MouseClicked(java.awt.event.MouseEvent evt) {
// TODO 將在此處添加您的處理代碼:
if(evt.getButton() == MouseEvent.BUTTON1){
JPopupMenu pop =new JPopupMenu(); //右鍵菜單
if(!infoToolListener.getInfo().equals("")){ //取回的地理信息不為空
pop.add(infoToolListener.getInfo()); //把信息加到菜單上
pop.show(evt.getComponent(),evt.getX(),evt.getY()); //在鼠標的地方彈出
infoToolListener.clearInfo(); //清除上次信息
}
} else if (evt.getButton() == MouseEvent.BUTTON3){ //如果點的是鼠標右鍵,把它模擬成左鍵
try {
Robot robot = new Robot(); // 建個機器人
robot.mousePress(InputEvent.BUTTON1_MASK); //模擬左鍵按下
robot.mouseRelease(InputEvent.BUTTON1_MASK); //左鍵彈起
} catch (AWTException ex) {
ex.printStackTrace();
}
}
}
我嘗試了很多辦法,因為mapxtreme 中有很多類都是受保護的,在自己的程序中沒法使用,而且,它耦合度非常的高,我曾經想把其中幾個類反編譯過來使用,結果發現,需要反編譯的類越來越多,以至于最后可能要把整個mapxtreme都反編譯過來,所以我放棄了這種想法,只好用模擬實現,另外,MapMouseEvent 繼承了 MouseEvent 但是沒有提供BUTTON 參數,使得左鍵和中鍵可以讀取到,而右鍵卻不行,所以只好用如此古怪的方法。
2007年1月20日
可能我不應該叫它技術復雜度, 準確的說法應該是"從UFP 到SLOC 的缺省轉換率",公布出來供大家參考.
以下數據來自 Jones? http://www.spr.com/library/0Langtbl.htm
Access????????????????????????38
Ada83????????????????????????71
Ada95????????????????????????49
AIShell????????????????????????49
APL???????????????????????????32
Assembly--Basic?????????320
Assembly--Macro??????213
Bassic--ANSI????????????64
Basic--Visual??????????????32
Basic--Compiled?????????91
C?????????????????????????????????128
C++?????????????????????????????55
Cobol(ANSI85)????????????91
Database--Default?????????40
Forth???????????????????????????64
Fortran????????????????????????77
Fortran95?????????????????????71
HTML 3.0???????????????????15
Java???????????????????????????????53
Jovial???????????????????????????107
Lisp??????????????????????????????64
MachineCode???????????????640
Modula 2???????????????????????80
Pascal???????????????????????????91
PERL???????????????????????????27
PowerBuilder???????????????16
Prolog???????????????????????????64
Query--Default???????????????13
Simulation--Default???????? 46
Spreadsheet?????????????????????6
Unix Shell Scripts????????????107
Visual Basic 5.0???????????????29
VisualC++????????????????????????34
第一代語言?????????????????????320
第二代語言?????????????????????107
第三代語言?????????????????????80
第四代語言?????????????????????20
第五代語言?????????????????????4
高級語言????????????????????????64
報表生成器?????????????????????80
2007年1月9日
我們公司希望通過語言復雜度來決定項目獎金,可是哪一種語言技術含量更高呢? 大家來投一下票吧,
請選出您熟悉的五種以上語言,按復雜度排一下序,(最復雜的排在最前面).謝謝支持!
APL、A+、J 、ASP、Ada 、匯編語言、AWK 、Basic、Fortran 、Brainfuck 、C、C++ 、C#
Clipper 、COBOL 、dBase 、PASCAL、Delphi 、Forth 、FoxPro、F# 、IDL 、Java 、JavaScript
J# 、LISP 、LOGO 、Modula 、Perl 、PHP 、PL/1 、Prolog 、Python 、Ruby 、Scheme 、Smalltalk
SQL 、Tcl/Tk 、Visual Basic 、Visual FoxPro
2006年5月18日
表:?
????? 通常表示一個圖層的所有信息包括"幾何信息"和"屬性信息" mapinfo使用( .tab)格式,可以用
????? 文本編輯器打開
???MapInfo .tab 文件可以組織成為一組用于構建圖層的文件。MapInfo 表包含以下類型的關聯文件:
???
???*.tab:此文件說明 MapInfo 表的結構。這是一個說明數據文件格式的小文本文件。
???*.dat(.mdb, .dbf, .txt, .xls or .wks):這些文件包含制表數據。
???*.map:此文件說明圖形對象(如果表沒有地圖對象,則該文件將不存在)。
???*.id:此文件是一個交叉索引文件,鏈接數據和對象(如果表沒有地圖對象,則該
???文件將不存在)。
???*.ind: 這是一個索引文件。使用該索引文件,可搜索地圖對象(如果表沒有索引,
???該文件將不存在)。
???這些文件在一起構成 MapXtreme Java 中的單一 .tab 圖層。
地圖定義:
????? 地圖定義說明了構成地圖的數據,包括所要顯示的數據、存儲位置、數據組織為圖層的方
???式、數據的顯示方式(如所用顏色、標注圖元、地圖縮放設置)。
????? 地圖定義的格式為:??? .mdf????????
MapInfo Geosets:
?????? MapInfo .tab 文件集稱為 geoset。 如果熟悉 MapInfo Professional,可以注意到 geoset
????? 和工作空間的概念類似。工作空間是一個已保存的 MapInfo 表 (.tab) 和窗口的配置。無需打開
????? 單個的 .tab 文件,即可使用其特定的顯示設置來打開 geoset (somefile.gst) 和所有圖層。
???但是, Geosets 在 MapXtreme Java 中的功能受到了限制。這些限制主要是指不可以保存到
???遠程數據庫的 MapInfo .tab 文件。
???MapXtreme 不能打開 MapInfo 工作空間(.wor 文件類型)。用 MapInfoProfessional,的
???MapInfo Geoset 程序可以將工作空間另存為 geoset,然后用 MapXtreme Java 管理器將它加載到
???MapXtreme Java。
????? Mapinfo Geosets 的格式為 .gst
????? 注:mapinfo 廠家推薦使用??? .mdf??? 在實際使用過程中還是 .gst 使用比較簡單
圖元
???MapXtreme 中的地圖由地圖對象組成的圖層構成。這些地圖對象可通過圖元對象在 MapXtreme
???中訪問。此處有三種基本圖元類型:
???
???區域:?指覆蓋給定區域的閉合對象。可以想像為一個面,其中包括多邊形、橢圓和矩形。
???????區域包括國界、郵政編碼邊界和銷售區域等。
???點對象:表示數據的單一位置。就是一個點,不能縮放,其示例包括客戶位置、飯店和停車計時器等。
???線對象:覆蓋給定距離的開放對象。包括直線、折線和弧線等。其示例有街道、河
???????流和電力線路等。
???????
???不同類型的對象可以放在同一個圖層中,最常見的是每種對象放在一個單獨的圖層中,單獨放置時,
???使用起來比較方便.??
樣式
???MapXtreme Java 地圖中的所有圖元均顯示特定的可見特征,例如顏色或符號類型。相應的
???特征也稱為樣式。MapXtreme Java 包括使用 Java2D API 渲染能力的眾多顯示屬性,其中有
???直線和區域的符號刷、虛線和平行線、矢量符號和縮放符號和標記。
???
標注
???標注是 MapXtreme Java 中功能強大的特性之一,可用于增強地圖功能,并向用戶提供正確
???的消息。標注不僅僅局限于添加文本來說明地圖的特性。使用 MapXtreme Java,可以控制
???字體類型、大小、顏色、位置,并使用光暈和輪廓線等富有創意的效果,為每個圖層創建
???不同的標注。 標注內容可以通過從圖層數據源的一個或多個列取數據的表達式來生成。
2006年3月28日
昨天要用EasyLoader 把數據移到Oracle 9i 上去,移上去后發現 9i 沒有 JDK 1.4 和驅動,不能使用命名資源, 只好下個10G 試試.今天把mapXtreme 部署到tomcat5.5 上,發現mapXtreme? 自帶的打war包工具不太好用,打出來的包解不開,我直接把 MapInfo\MapXtreme-4.7.1\Tomcat-4.1\webapps 目錄下的mapviewer471?? mapxtreme471? samples471 wmsserver111 四個目錄拷貝到 Tomcat 5.5\webapps 下就行了(使用Tomcat5.5必須用JDK 5.0 亂啊!永遠不能統一,我真希望大家都別出新版了), 然后打開這四個文件夾,找到web.xml 文件改一下主機地址和端口號就行了.
2006年3月16日
今天找到MapXtreme for Java 服務器崩潰 的原因了(問題見
2月23日的BLOG http://spaces.msn.com/wjoin/),原來MapXtreme在 \MapInfo\MapXtreme-4.7.1\Tomcat-4.1\work\Standalone\localhost 目錄下生成了許多臨時文件,再次起動服務器的時候有問題,只要把這些文件刪除就好了.可以在startup.bat 文件中加入一行:
del C:\MapInfo\MapXtreme-4.7.1\Tomcat-4.1\work\Standalone\localhost /s/q 就行了.
如下所示: (注意路徑)
@echo off
set CATALINA_HOME=C:/MapInfo/MapXtreme-4.7.1/Tomcat-4.1
set CATALINA_BASE=C:/MapInfo/MapXtreme-4.7.1/Tomcat-4.1
set JAVA_HOME=C:\j2sdk1.4.2_05
del C:\MapInfo\MapXtreme-4.7.1\Tomcat-4.1\work\Standalone\localhost /s/q
if not "%OS%" == "Windows_NT" goto noTitle
set _START_TC=start "MapXtreme Java Server 4.7"
goto start
:noTitle
set _START_TC=start "MapXtreme Java Server 4.7"
:start
rem start tomcat in the background
%_START_TC% "C:/MapInfo/MapXtreme-4.7.1/Tomcat-4.1/bin/catalina.bat" run -config ..\Tomcat-4.1\conf\server.xml
2006年3月12日
上周新買了臺電腦,主板Intel D945PL RN ,裝好后速度不錯,就是麥克風沒音,看網上的貼子說原裝的驅動有問題,得下載一個官方最新版的驅動,折騰了一天,驅動刪了N回,還是不行,郁悶。
說一說配置吧:
主板:Intel D945PL RN 790
CPU :Intel p4 2.8G EM64 885
內存: 金士頓512M 外頻533 400
硬盤:金鉆160G ,8M緩存,串口(硬盤聲音太大) 610
顯示器: GOLDPC 17“寬屏(1024*768) 2200
顯卡:雙敏6516 128位,128M 450
機箱電源: (長城電源,雜牌小機箱) 360
鍵鼠:BENQ 套件 95
攝像頭:80萬像素(比較次,非常次,德亞的) 送
2006年2月24日
今天發現MapXtreme java Edition 4.7.1 中存在一個嚴重的BUG,在起動MapXtreme服務器以后,在瀏覽器中打開一個裝載了地圖的頁面,然后shutdown服務器,發現再次起動服務器時無法起動,這個問題浪費了兩天的時間,無奈呀.開始我認為是我修改web.xml時出了問題,沒想到用MapXtreme的示例程序也出同樣的問題.