張君伍



摘要:本文為將CorelDraw和節理玫瑰花圖繪圖相結合實現自動繪圖,在CorelDraw VBA中實現了節理數據的自動讀取、分組統計、繪制節理玫瑰花圖、群組、平移等功能,并編成節理走向、節理傾向、節理傾角、傾向傾角等四個玫瑰花圖繪圖函數,建立了窗口界面。該繪圖插件提高了繪制節理玫瑰花圖的效率。
關鍵詞:構造地質學;CorelDraw;VBA;節理玫瑰花圖;自動繪圖
中圖分類號:TP3 文獻標識碼:A
文章編號:1009-3044(2020)14-0267-02
節理玫瑰花圖是構造地質學中整理、統計節理數據的圖形,能夠突出節理數據的優選方位。Coreldraw是一款矢量繪圖軟件,在設計、編輯等中應用很廣。本文利用CoreldrawVBA編制了節理玫瑰花圖繪圖插件,可以完成節理走向玫瑰花圖、節理傾向玫瑰花圖、節理傾角玫瑰花圖、節理傾向傾角玫瑰花圖等的繪制,具有窗口界面、繪圖快速、節約時間、圖形簡潔等特點,在構造地質學的生產、科研、教學中簡潔易用。
1節理玫瑰花圖插件的使用方法
節理玫瑰花圖插件開發首先通過Coreldraw菜單中選擇“工具”>“宏”>“宏管理工具”,調出“宏管理工具”泊塢窗(或按Mt+F11組合鍵打開),然后加載“構造節理玫瑰花圖.gms”,雙擊內部的宏運行插件。
節理玫瑰花圖窗口中提供了數據文件選擇按鈕,選擇數據存儲的文本文件(*.txt);節理玫瑰花圖繪圖類型選擇,每次只能選擇一種節理玫瑰花圖進行繪制;每一種玫瑰花圖繪制前有默認的圖層名(可修改);成圖比例系數默認值為2(可修改,但系數須大于0,系數與圖大小成反比);參數設置好后點擊“開始繪圖”可繪制玫瑰花圖;點擊“關閉窗口”可以關閉窗體(圖1)。
2節理玫瑰花圖實現過程
2.1讀取并統計數據
節理玫瑰花圖插件的數據輸入文件為文本文件(*.txt),數據分為三列,第一行數據為“編號橫坐標縱坐標”,橫縱坐標單位為cm,坐標為玫瑰花圖中心點坐標,從第二行開始向下均為節理數據“編號傾向傾角”(圖2)。采用CorelScriptTools.Get-FileBox選取文件并利用循環Do While Loop和input讀取數據。根據玫瑰花圖類型進行數據統計,節理按照一定的間隔分組,傾向轉化為走向,分組統計平均值和數目。
2.2繪制玫瑰花圖
玫瑰花繪制原理為簡單的幾何和三角函數,玫繪制過程分為繪制底圖、繪制玫瑰花、標注文字、群組與平移等部分。
1)繪制底圖:底圖中節理走向玫瑰花圖為半圓,其余三個玫瑰花圖為整圓(下面的示例是繪制整圓)。內部小圓(半圓)為虛線圓(半圓),最外圈大圓(半圓)為實線圓(半圓)。采用循環調用CreateEllipse2繪制底圖圓,利用對象的Outline.SetProp-erties和Fill.ApplyNoFill屬性設置底圖圓細節如不填充顏色、內部輔助圓為虛線、外圈圓為實線等。
2)繪制玫瑰花:四種玫瑰花圖的花繪制方法相同,根據統計的每組節理平均角度(平均傾向、平均走向、平均傾角)數據繪制成圖。主要代碼如下:
3成圖效果
利用某處的構造節理數據(表1)在CorelDraw中利用繪圖插件繪圖后效果見下圖(圖3)。
4結語
基于Coreldraw VBA開發的Coreldraw節理玫瑰花圖繪圖插件的優勢有:可以作為構造地質學教學繪圖插件;后期可以拓展開發批量成圖功能以滿足大批量成圖的要求;可以為開發CorelDraw VBA環境下其他的構造地質學插件提供參考;提高了繪制節理玫瑰花圖的效率;不足之處為未實現批量繪制節理玫瑰花圖,圖面的細節控制需要繼續完善。
[通聯編輯:梁書]