星期三, 8月 22, 2012

Adding markup on MapGuide Open Source using fusion

1. server side
2. client side fusion
3. client side map guide viewer api
4. client side open layers
5. php access mysql or sqlite spatial

DLNA for Mac OS rmvb

USAHRE
tvmobili
ps3 media server

typeof in vb.net

Using GetType

星期五, 8月 03, 2012

download file do not open new window

var downloadURL = function downloadURL(url)
{
var iframe;
iframe = document.getElementById("hiddenDownloader");
if (iframe === null)
{
iframe = document.createElement('iframe');
iframe.id = "hiddenDownloader";
iframe.style.visibility = 'hidden';
document.body.appendChild(iframe);
}
iframe.src = url;
}

from here

星期二, 7月 31, 2012

export change set from TFS

tf history $/project /format:detailed /recursive /noprompt > d:\20120731d.txt

help file
c:\>tf history /?
TF - Team Foundation 版本控制工具
Copyright (c) Microsoft Corporation. All rights reserved.

顯示一或多個檔案和資料夾的修訂記錄。

tf history [/server:servername] itemspec [/version:versionspec]
[/stopafter:number] [/recursive] [/user:username]
[/format:(brief|detailed)] [/slotmode] [/noprompt]

Versionspec:
Date/Time Dmm/dd/yyyy
或任何 .Net Framework 支援的格式
或任何本機電腦的日期格式
Changeset number Cnnnnnn
Label Llabelname
Latest version T
Workspace Wworkspacename;workspaceowner

add date range

tf history /server:http://MYTFSSERVER:8080 $/MYTEAMPROJECT/FOLDER /recursive /format:brief /user:* /version:D"04/28/2008"~D"04/29/2008" /noprompt

ref from Mark Brown's Blog

星期三, 7月 18, 2012

網站專案 vs 網站應用程式差異

MSDN的說明
不過對於我而言,就是網站專案會砍掉你整個發佈的根目錄,而網站應用程式可以選擇不刪掉全部,只更新部分就好。
做得那麼像,區別又那麼小,看起來那麼像的發行動作,卻隱藏著重大的危機,不可不小心呀。

星期三, 7月 11, 2012

星期四, 7月 05, 2012

export bookmarks from visual studio

Writes properties to the solution .sln file.

Namespace: Microsoft.VisualStudio.Shell.Interop
Assembly: Microsoft.VisualStudio.Shell.Interop (in microsoft.visualstudio.shell.interop.dll)

星期四, 6月 28, 2012

GMT grdfilter 參數說明(beta)

-D
輸入的 grid 檔與給的 width 若單位不同,可用-D0~5 來設定
-F 設定要使用的過濾器
-G
輸出檔的格式及設定,每個值的輸出會乘上 scale 再加 offset,id 代表的是 grid 的格式或 精度?,可查閱 grdreformat,nan 表示空資料要用什麼值來代表。
grdfilter -Gid/scale/offset/nanFIlename
-I
x_inc [and optionally y_inc] is the output Increment. Append m to indicate minutes, or c to indicate seconds. If the new x_inc, y_inc are NOT integer multiples of the old ones (in the input data), filtering will be considerably slower. [Default: Same as input.]
-N 空值如何處理Ni Nr Np三種
-R 代表輸出檔案要輸出的區域west/east/south/north
-T Toggle the node registration for the output grid so as to become the opposite of the input grid [Default gives the same registration as the input grid].
-V 就秀出程式的處理過程
-f Special formatting of input and/or output columns (time or geographical data). -S step

Example:
ncku_grdfilter -V -D0 -S10 -Fg600 snan.grd -Gdnan600.grd

星期二, 6月 26, 2012

reformating VB SQL String

If a SQL String size is WTF more than one A4 Page. You need something else to clear it, to simply it, or to delete it. :p

first
1. eval
2. clear
3. translate

second
1. replace
2. clear
3. translate

link is here
http://dl.dropbox.com/u/86293957/index.html

to be continue...

星期六, 6月 09, 2012

星期二, 5月 22, 2012

MapGuide Open Source 2.2 for windows 安裝小問題

安裝完了記得重新啟動IIS,才不會遇到某些圖層可顯示,某些圖層不可顯示的問題。
而預覽圖資時所出現提示是請你重開一下MapGuide Server。不過怎麼重開都沒有用。

星期二, 5月 15, 2012

mapguide open source 常見問題

這陣子在處理圖資發佈遇到的,特此記錄一下這數個問題。

Q:單一圖層可以預覽,但多個圖層套疊時卻看不到某些圖層。
A:其實很簡單,就只是因為座標系統不一致。重新產生prj檔就可以解決了。

Q:地圖最大範圖由系統自動抓出來的和肉眼看得不同。
A:同樣很簡單,不過遇到時可能不容易抓出來,就是有部分資料沒有座標,只有屬性資料。

Q:檔案過大無法使用管理工具上傳。
A:可以使用unmanager的方式,先經由ftp把資料傳上伺服器,再經由路徑指定的方式使用。

mapguide open source 2.4 preview release

as title

只寫as title好像太不負責了,不過要知道新功能,就自已去看官網好了。如果還需要有人翻譯成中文的話,那也不用玩開放源始碼的軟體了。
特別寫一下是因為在mapguide open source 2.0時還有在參加一般大拜拜的研討會,那時有一些論文有提到,但是似乎就沒有後續的消息了。前陣子因為執行一些案子的緣故又想要寫個arcgis 2 mapguide open source的地圖發佈工具,所以想說看一下它的進展如何了。這一看,沒想到原來支持它的公司連這個名字都改掉了,而官網上的文件和軟體版本就這麼一直停留在2.2版了。突然覺得自已選了這個工具是錯誤的,原先以為它和商業模式的結合,或許可以更有利於社群的發展,沒想到每況越下呀。
不過在追文及google之後,才發現原來2.3版被跳過不出版,直接變成2.4版,而且已經有prview版可以用了,這才又重燃起繼續寫出那個方便自已的專案的想法。不過,說實在的,在有小朋友之後,又要有心來寫這個東西,又要賺足夠的錢來買房子,這真的有可能嗎?還是先放著唄,真不知道國內外這些可以寫出作品的社群長輩們是怎麼撥出時間來投入這些業餘創作的。

人吃人

沒有想到我也吃了。

face detect using opencv (1/2)

自從脫離上一個MIS的工作,以及上上個亦可說是雜亂模式的工作環境後,想起了研究所該畢業的時候,所承接而沒有結案的大案子。

每個案子和工作總是會有有趣的部分,和困難的部分,有時候會重疊但是沒有時間。這次的情況是,承接的部分很有趣,但是有很大的困難,所以要想辦法解決,找了三個方案,都是要買元件的方案,換算一下好像和自已開發的接案價錢差不多,當初若是使用CASE的方式承接,或許可以在自已的預算下,直接購買再進一步開發賺取價差就行了。無奈的是,當初若是要當成案子來做,對方的老闆要簽約,要壓日期,事實上那也是BY CASE應該要有的方式,訂規格看結果,在時間內結案給錢。

很有趣的案子,不做嗎?有機會未來可以繼續發展,不做嗎?所以改用計時制,就是算時間,當成PART TIME來做?不需要上班,也沒有人監督,只要在某個不知道什麼時候的時間,把功能做完就好了。每個月都有薪水?聽起來好像做得越久,對承接的這一方越有利的樣子?那,為什麼當初要提議而且也往這個方向來做呢?

應該是為了當做是加入一間不知道是什麼名字的公司的試練?試的是能不能把一個人當成一個團隊來使用,或許在一兩個月之內就可以把要用的東西弄出來,只要花很少的錢,投資成本和收益很好,風險只是損失一個月一點點的薪水。

總而言之,時間只維持了一個月,對方去承接的案子後來也失敗了,投入的一切都是浪費。而還好的是,離開公司的目的也完成了,終於有了個碩士的資格,也因為這個資格,所以現在的薪水多一點點,但還是與科學園區無緣。或許這就是命吧,我不該在工廠上班的。^_^y

那,說了一大堆,和標題的face detect好像沒有關聯吼?

接著說到,這個功能其實是當初接案時就想玩,但當初沒有排入工作項目。研究所的同學也洽巧使用opencv實作專注度應用的論文。所以一直就想要把腦中所想到的東西,建立起測試及開發的環境。

未完待續....

星期四, 5月 10, 2012

shape file character encoding

把它的編碼型態寫在同樣主檔名的.cpg檔案中,可以讓有支援它的軟體得知這個shape file的編碼。

在mapgudie open source(MGOS)中,有時會遇到label無法顯示的問題,顯示出來是奇怪的符號,或是正方形。通常會有兩種可能,第一種就是所選用的字型沒有中文字,或是那個字型是對映Big5字集的字型。這時只要改選字型為simhei或是simsun就可以正常顯示了。第二種問題則是由於在MGOS中所採用的是utf8編碼,所以若是所有的資源所使用的都是utf8,那就不會有出現什麼問題。但資料的產製常常不是自已所態控制的,所以就會出現編碼對映的問題了。那不是把shape file的字元編碼更改成utf8就可以了嗎?例如這邊所提到的使用QGIS另存新檔就可以了。但是檔案很多時,又急著要在MGOS上發佈呢?或是資料的產製者不斷的給這種格式的資料,經過履次的溝通仍然無效呢?或許是因為所使用的工具、或許因為是別人寫好的、前人建立的資料庫,或是最可惡但是又常常發生的「我不會」。總之,做為最終資料的呈現者,就必需要有能力將所有有問題的東西變成看得到。所以就像是.prj檔的使用方式一樣,產生一個同樣主檔名的.cpg檔,然後label就會神奇的顯示出中文來了。

星期三, 5月 09, 2012

brew install opencv

因為還不太會使用brew,在安裝opencv時裝不起來卻找不到是什麼原因。用brew doctor時出現說可能是被Mono.Framework所影響,因為 monotouch的緣故,所以在系統上有Mono.Framework。anyway,先把它移到另一個目錄Mono.Framework.bak,然後再brew install opencv,結果一下子就安裝好了。改天再來查原因好了。

星期二, 5月 08, 2012

windows system volume extend

有時機器的系統碟做得太小想要把它變大,在以前是一件麻煩的事情,又得要先份資料然後找軟體、燒光碟,做開機磁碟等等的。
現在這個時代好像什麼都很方便,有需求的東西不只是做出了解決方案,在簡單的需求下都有了免費的解決方案了,免費的東西真好。
之前在工作上遇到的只是擴大資料碟區的空間,用windows內建的disk part下指令就可以解決了。但這次遇上的是windows 2003 server版,和之前的某一次做windows xp的系統碟延申變大,又不相同,之前是使用easeus partition manager free for home來做,上網看了一下,它並不支援在server版使用,是哩,畢竟人家寫出來的是home版嘛,家用版的又怎麼會支援給伺服器使用呢?
原本想說應該是不會有免費版本了,要麻買軟體、要麻就是找破解、運氣好一點的或許可以撿到open source的工具,或免費的工具。沒想到的是後來找到的是商業版本的工具,但有提供最基本的功能的免費版,Aomei Partition Assistant Lite Edition for server,真好。競爭的市場對消費者的權益是最好的保障。

星期五, 5月 04, 2012

你丟我撿

小時候常常聽到的口號,垃圾不落地、你丟我撿,總覺得那就只是口號,有誰會那麼無聊去撿別人留下來的垃圾呀。不過想起了過去幾年的專案經歴,在大多數的時候只要是接手的專案,幾乎都都面臨著要大幅度改寫的狀況,或是砍掉重練。

而開發中的專案也常面臨業主要求某某功能,只給了你什麼資料,只能那樣子做,但實際上那樣子開發並不好。在這個情況下就面臨了要不要製造垃圾給別人的問題了。撿拾別人的垃圾在執行專案中很常見,而在短期的專案中製造垃圾,或甚至是在長期的專案中仍然繼續製造垃圾,從而使一個原來開發資訊系統的專案,轉變成了一個維護資訊系統,或甚至說得更為貼切一些的,變成不斷重新開發雛型的專案。不斷的製造垃圾,並且隨著業主的要求而更快速的製造垃圾。

情況由業主要求時「寫一隻程式」滿足他,漸漸的演變為「有要求時快速的做一個雛型」滿足他,最後變成了先不寫程式,由「人工製造需要的資料」,畫一個系統、做一些資料。漸漸的系統不只是充滿了BUG,而是本身就是一個BUG,其實最後它不是一個BUG,而只是一個垃圾,因為它幾乎不具備任何實用的功能。換句話說,沒有系統了只有垃圾,而所謂的系統就是開發人員本身。那何必寫程式呢?若是維護經費年年皆有,但又不可能年年需要新功能,那麼不如5年期的專案就做5年期的「資訊服務案」,n年期的專案就做n年期的「資訊服務案」,不是皆大歡喜嗎?省點功夫不要製造垃圾,只製造有用處的資料,費用可以減少一些,雙贏。

星期四, 4月 26, 2012

opencv on macos

大概在十數年前就打算做一個可以截取視訊的小程式,但是從來就沒有真正的去完成過,由那時獲得的資訊要是要藉由呼叫windows SDK來達成目的。日子一直過去了,有時間的時候拿來打混,沒時間的時候想做的事情一堆。應該快十年或是十年了,時至今日,由原來使用桌機對NB的鍵盤和效能呹之以鼻的年代。直至今日家中連一台桌機也沒有,卻擁有至少兩台NB。
那時在windows下查到的資訊或許仍然沒錯,依舊可以使用sdk的方式截取視訊,然而時代在演變,.Net的推出vb6的落寞,自已的NB也由windows變成了macos,許多工具變得不太一樣,截取視訊以今日的技術而言,應該說沒有技術而言,一般高中生學過一點程式語言,就能寫出個簡單的練習來,有工具真的快多了。
在macos上用了幾行程式碼,google了別人的程式碼,似乎不需要MFC不需要QT什麼GUI toolkit都不需要引用,opencv真是個做研究,寫作業的好東西,一直沒有去試,也一直覺得應該不難,所以今天終於弄出來了,只是轉貼別人的程式碼,就可以跑了,頂多只是再去google一下在macos下的編譯指令,結果如下。

g++ `pkg-config --cflags opencv` `pkg-config --libs opencv` tt.cpp -o tt
參考自Christoph Seibert: Weblog

好像只有醬XD
其它的google opencv camera 會有一大堆的結果可供參考

星期六, 4月 21, 2012

build mapguide open source for linux

好吧,國外的編譯說明文件好像漏掉了一個步驟,雖然可以很簡單的就發現到,不過在遇到急著要上線,那裡有時間那麼細心的去查究原因哩?
為了怕又忘記還是筆記一下好了。
用svn同步回來的mapguide opensource 程式碼,我將它放在mgdev目錄之下,然後依以下步驟就可以至少編出一個可以RUN的mgserver了。

cd ~dany/mgdev/Oem

#把port改成80,預設是8008
./build_oem.sh --port 80

cd LinuxApt
./build_apt.sh

cd ~dany/mgdev
#預設會編譯成DEBUG用的,可以下參數編成不是DEBUG用的,不過輸出的資訊會比較少,暫時不使用。
./configure

make clean

make

#醬就搞定啦
make install

現在可以用瀏覽器連線測試了,
http://你的ip/mapguide

正常的話就會出現成功的畫面了


再者,雖然預設編譯的apache是有支援php的,但是在htdocs下的php是沒有開啟的,所以要先更改apache2/conf/httpd.conf,加入htdocs目錄對php的支援

AddHandler php5-script .php
AddHandler php5-script .html
AddHandler php5-script .htm

星期日, 2月 12, 2012

UTF8編碼簡轉繁工具 cconv for MacOS

./configure -liconv 這樣就不會出現undefined symbol for ... x86_64 cconv -f UTF8-CN -t UTF8-TW 檔名 成功轉換簡體版epub為繁中版epub

星期三, 2月 01, 2012

滿一年

任網管滿一年