• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      Surfer繪制等值線在泰州自動站業(yè)務(wù)中的應(yīng)用

      2015-08-17 17:46:04樂穎郭一飛
      現(xiàn)代農(nóng)業(yè)科技 2015年12期

      樂穎++郭一飛

      摘要 等值線已經(jīng)廣泛地應(yīng)用于氣象領(lǐng)域。本文介紹了利用Surfer11.0的主要功能以及對應(yīng)的.net應(yīng)用程序的接口,將.net的軟件開發(fā)能力和Surfer的繪圖功能相結(jié)合,實(shí)現(xiàn)了基于B/S架構(gòu)的泰州地區(qū)的自動站數(shù)據(jù)的在線繪圖。

      關(guān)鍵詞 Surfer;.net;自動成圖

      中圖分類號 TP317.4 文獻(xiàn)標(biāo)識碼 A 文章編號 1007-5739(2015)12-0345-02

      Application of Surfer Contour Drawing in Automatic Stations in Taizhou

      LE Yin 1 GUO Yi-fei 2

      (1 Taizhou Polytechnic College,Taizhou Jiangsu 225300; 2 Weather Bureau of Taizhou)

      Abstract Contour has been widely used in the field of meteorology.This paper introduced the main functions of Surfer11.0 and the corresponding interface of .net application program. Combining .net software development capabilities with Surfer drawing functions,thus to draw contour online by automatic stations in Taizhou district based on B/S frame.

      Key words Surfer;.net;automatic mapping

      隨著計(jì)算機(jī)技術(shù)的迅速發(fā)展,等值線被越來越廣泛地應(yīng)用于氣象領(lǐng)域,用于研究和繪制降水、氣溫以及各類天氣形勢等。目前泰州市氣象局已安裝了103套自動氣象站,但分別由江蘇無錫所和上海長望2家提供,這就造成了數(shù)據(jù)來源的不一致,業(yè)務(wù)人員不能在同一個(gè)平臺上直觀地看到實(shí)況數(shù)據(jù)。為此,市氣象局開始對自動站數(shù)據(jù)進(jìn)行規(guī)范處理,建立統(tǒng)一的數(shù)據(jù)庫,將數(shù)據(jù)標(biāo)準(zhǔn)化。同時(shí)為了更好地方便業(yè)務(wù)人員使用,結(jié)合其他市數(shù)據(jù)處理的辦法,市氣象局?jǐn)M采用Surffer對自動氣象站數(shù)據(jù)進(jìn)行處理,生成等值線、色斑圖等[1]。以前多采用的是Surfer8.0軟件,但該版本軟件基于C/S架構(gòu),不能通過網(wǎng)頁來顯示,因此現(xiàn)將.NET與Surfer 11.0相結(jié)合,開發(fā)一套基于B/S架構(gòu)的等值線顯示系統(tǒng)[2]。

      1 Surfer簡介

      Surfer是美國Gold SoftWare公司開發(fā)的產(chǎn)品,從1985年至今已發(fā)展到11.0版本,該軟件不但能較好處理顯示二維數(shù)據(jù),且對三維數(shù)據(jù)也有不錯(cuò)的處理效果,專用于制作等高線、等值線等。繪制的圖像可通過屏幕、打印機(jī)等方式輸出,使用方便,精準(zhǔn)度較高,技術(shù)難度不高,易掌握,目前在氣象部門應(yīng)用較為廣泛。Surfer主要提供了以下幾大功能。

      1.1 插值功能

      Surfer 11.0提供了12種插值算法,在氣象業(yè)務(wù)的等值線繪制中用得較多的是自然鄰點(diǎn)、最近鄰點(diǎn)以及克里格插值三角網(wǎng)法等算法。根據(jù)其提供的算法,可以快速地對氣象二維、三維數(shù)據(jù)處理,最終生成為連續(xù)的數(shù)據(jù)圖形。

      1.2 繪圖功能

      Surfer 11.0有多種繪圖功能,目前用戶使用的主要有等值線、等高線、張貼圖、影像圖、三維立體網(wǎng)格圖、向量圖等,同時(shí)提供了多種圖形的輸出格式,甚至可以輸出shape應(yīng)用于GIS,需要注意的是,在繪制等值線時(shí),當(dāng)用戶指定按自身要求的區(qū)域輸出時(shí),該區(qū)域以外的部分應(yīng)用bln文件白化(blank)作圖,從而變成空白區(qū)域。

      1.3 Scripter程序

      Surfer 11.0通過CS Scripter腳本語言來進(jìn)行編程,通過它可以方便地控制Surfer的繪制。同時(shí)一些編程語言也能夠很好地調(diào)用Surfer 11.0中Active自動化所提供的編程接口。通過Surfer繪制各類圖形的流程大致如圖1所示。

      2 VB.NET與Surfer接口

      關(guān)于生成Surfer圖形的一些相關(guān)步驟和準(zhǔn)備工作,網(wǎng)上有較多的案例,本文就不一一論述,主要討論與.NET結(jié)合的編程問題。Surfer 11.0中提供的Automation 對象提供負(fù)責(zé)通用的接口,由編程語言調(diào)用,從而嵌入到用戶開發(fā)的系統(tǒng)中去。.NET中對Surfer的調(diào)用,是通過在相關(guān)項(xiàng)目的解決方案中的引用里面添加COM組件進(jìn)行調(diào)用的。下面通過實(shí)例的方式簡單介紹.NET中調(diào)用Surfer對象的幾個(gè)重點(diǎn)步驟。

      2.1 生成對象

      Dim TZSurfer As New Surfer.Application

      Dim zdzPlot As Surfer.IPlotDocument

      zdzPlot = TZSurfer.Documents.Add(1)

      2.2 格點(diǎn)化數(shù)據(jù)

      Dim strDAT,strGRD,strBLN,strOUTGRD as string

      strDAT="E:\TZzdz\zdz.dat"

      strGRD="E:\TZzdz\zdz.grd"

      strBLN="E:\TZzdz\zdz.bln"

      strOUTGRD="E:\TZzdz\zdzOut.grd"

      SurferApp.GridData(DataFile:=strDAT,xCol:=1,yCol:=2,zCol:=3,Algorithm:=Surfer.SrfGridAlgorithm.srfKriging,Dup Method=2,NumCols:=340,NumRows:=500,yMin:=33.0325,yMax:=33.1,xMin:=119.64,xMax:=120.538888,ShowReport:=False,OutGrid:="strGRD")endprint

      SurferApp.GridBlank(InGrid:=strGRD,BlankFile:=strBLN,OutGrid:=strOUTGRD)

      該段代碼表示進(jìn)行克里格網(wǎng)格化插值。其中DataFile表示執(zhí)行的數(shù)據(jù)文件名,Algorithm表示網(wǎng)格化采用的方法,DupMethod表示消除重復(fù)點(diǎn)的方法,采用2是消除所有重復(fù)點(diǎn)。NumCols和NumRows代表了多少行、列,表示的是網(wǎng)格中的格點(diǎn)數(shù)量,同時(shí)代表了空白區(qū)域的大小。xMin至yMax則表示網(wǎng)格化區(qū)域,ShowRepod確定是否輸出報(bào)告,OutGrid表示輸出Grid格式文件zdzOut.grd。

      2.3 數(shù)據(jù)白化

      通過Surfe提供的Blank組件,去掉底圖以外的格點(diǎn)數(shù)據(jù),通過軟件的進(jìn)一步處理,最終去掉邊界的格點(diǎn)值。

      Dim tzMapFrame As Surfer.IMapFrame

      Dim strGRD as string

      strGRD="E:\TZzdz\zdzout.grd"

      tzMapFrame =plot.Shapes.AddContourMap(strGRD)

      2.4 等值線繪制

      將站點(diǎn)數(shù)據(jù)資料格點(diǎn)化后,通過調(diào)用COM組件的Contour功能繪制出等值線。一般先根據(jù)系統(tǒng)默認(rèn)等值線的間隔繪制,再根據(jù)需要逐步調(diào)整間隔,繪制的同時(shí)可決定對等值線進(jìn)行填充。最后通過調(diào)用COM組件的overlay合并同一坐標(biāo)的多個(gè)圖形,從而達(dá)到底圖與等值線的融合。

      Dim tzMap As Surfer.IContourMap()

      Dim strCLR as string

      strCLR="E:\TZzdz\zdz.clr"

      tzMap = contourmapframe.Overlays.Item(1)

      tzMap.SmoothContours = 4

      tzMap.FillContours = True

      tzMap.FillForegroundColorMap.LoadFile(strCLR)

      tzMap.Levels.AutoGenerate(MinLevel:=0,MaxLevel:=20,Interval:=3)'設(shè)置標(biāo)尺的最大和最小值,已經(jīng)間隔

      tzMap.ApplyFillToLevels(FirstIndex:=1,NumberToSet:=22,NumberToSkip:=4)

      tzMap.ShowColorScale = True

      tzMap.ColorScale.Opacity = 100 '設(shè)置顏色標(biāo)尺的透明度()

      tzMap.ColorScale.Height = 4 '

      其中,需要注意Levels.LoadFile()和ApplyFillToLevels()這2個(gè)函數(shù)相對于以前的版本有變化,Levels.LoadFile()主要用來加載* .clr 格式的文件(Surfer 8.0及以前的版本是*.lvl文件),ApplyFillToLevels()用來填充到整個(gè)圖層。Smooth Contours表示的是平滑圖片等級,MinLevel,MaxLevel,Interval,表示設(shè)置標(biāo)尺的最大和最小值,以及間隔。

      2.5 添加等值線背景

      Dim tzMapFrame As Surfer.IMapFrame()

      Dim tzBaseMap As Surfer.IBaseMap()

      tzMapFrame = plot.Shapes.AddBaseMap(strBLN)

      tzBaseMap = tzMapFrame.Overlays.Item(1)

      Dim tzZdzFrame As Surfer.IMapFrame

      tzZdzFrame = plot.Shapes.AddPostMap(DataFileName:="strBLN")

      2.6 導(dǎo)出圖面

      Surfer可通過Export方法導(dǎo)出矢量圖和位圖。但需要注意的是,若選擇位圖輸出時(shí),用戶可自定義其大小,對于填充的圖片,因壓縮算法不一樣,盡量不要選擇JPG格式,GIF、PNG以及BMP格式效果較好。若選輸出矢量圖時(shí),則不能改變其大小,還是按原圖尺寸輸出,EMF格式的圖片效果較好。

      主要代碼如下:

      Dim strGIF as string

      strGIF="E:\TZzdz\BMP\TZzdz.bmp"

      plot.Export(FileName:=strGIF,Options:="Width=1024,Height=960")

      3 在業(yè)務(wù)中的應(yīng)用

      3.1 平臺架構(gòu)

      泰州自動氣象站業(yè)務(wù)系統(tǒng)采用B/S架構(gòu),使用ASP.NET結(jié)合SQL數(shù)據(jù)庫進(jìn)行開發(fā)。通過網(wǎng)頁提供給用戶進(jìn)行在線的實(shí)況數(shù)據(jù)檢索、查詢、統(tǒng)計(jì)等。并根據(jù)檢索的數(shù)據(jù)在線生成等值線等。Surfer11.0的Active接口為在Web環(huán)境下的應(yīng)用提供了可能。

      3.2 Web中利用Surfer組件繪制等值線

      當(dāng)業(yè)務(wù)人員通過瀏覽器打開自動站查詢系統(tǒng),根據(jù)相關(guān)的選擇時(shí)間、要素、站點(diǎn),服務(wù)器端檢索出數(shù)據(jù),然后根據(jù)Surfer數(shù)據(jù)的要求,格點(diǎn)化數(shù)據(jù),以純文本格式文件保存,以24 h降水量文件格式舉例如下:

      latitude,Longitude,Rain24,NumStation

      120.156,2.475,50,M2461

      120.13,33.036,65,M2472

      120.372,32.083,32,M2501

      119.98,32.526,19,M3452

      119.876,32.376,16,M3453

      119.88,32.32,29,M3455

      ……

      圖2、3為生成的降水色斑圖以及溫度色斑圖:

      生成圖片時(shí)引入Ajax(Asynchronous JavaScript and XML)技術(shù),解決了因刷新圖片時(shí)的頁面閃爍問題。

      4 結(jié)語

      通過.NET結(jié)合Surfer 11.0軟件開發(fā)的等值線繪制系統(tǒng),將基于C/S架構(gòu)的Surfer軟件拓展應(yīng)用到B/S架構(gòu),用戶通過IE在線生成色斑圖、等值線圖,拓展了自動站數(shù)據(jù)的應(yīng)用范圍,更好滿足了氣象業(yè)務(wù)的需求[3-4]。

      5 參考文獻(xiàn)

      [1] 梁亮.Surfer軟件在氣象主分量分析中的應(yīng)用[J].浙江氣象,2005(3):29-33.

      (下轉(zhuǎn)第348頁)

      [2] 李雄.利用Surfer軟件包繪制氣候圖[J].廣西氣象,1997,18(4):57-58.

      [3] 連志鸞.Surfer二次開發(fā)實(shí)現(xiàn)加密雨量圖自動顯示與輸出[J].氣象科技,2006,34(2):220-224.

      [4] 張仁凌,齊向華.使用surfer軟件繪制雨量等值線圖[J].水文水利自動化,2007(4):45-47.endprint

      老河口市| 涿州市| 根河市| 肥东县| 普格县| 金门县| 萝北县| 昭平县| 百色市| 吐鲁番市| 兴义市| 公安县| 宣威市| 故城县| 巢湖市| 双辽市| 江阴市| 揭西县| 静海县| 丹凤县| 通河县| 浪卡子县| 丰顺县| 无为县| 蒙山县| 昔阳县| 秦安县| 乌拉特后旗| 孝义市| 博爱县| 长丰县| 公安县| 虎林市| 三穗县| 遂川县| 稻城县| 正定县| 安溪县| 峨边| 晋城| 酉阳|