通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法
【專利摘要】一種通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法,依次經(jīng)過預(yù)處理階段、應(yīng)用要素類B的階段、保存各圖層定義查詢屬性的文本內(nèi)容的階段、當(dāng)前頁的設(shè)置階段、修改圖框大小的階段、移動地圖元素的階段、修改各圖層定義查詢階段和存儲階段。這樣的方法可有效避免現(xiàn)有技術(shù)中的電子地圖的生成效率非常低從而無法適應(yīng)電子工業(yè)的高效要求的缺陷。
【專利說明】通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于電子地圖的【技術(shù)領(lǐng)域】,具體涉及一種通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法。
【背景技術(shù)】
[0002]現(xiàn)有的電子地圖的制作過程往往是添加數(shù)據(jù)到空白的區(qū)域中,然后對數(shù)據(jù)進(jìn)行符號化表達(dá)以進(jìn)行電子地圖的畫面渲染,接著進(jìn)行圖面整飾,最后得到電子地圖的成品,但是現(xiàn)有的電子地圖的制作常常不便于統(tǒng)一處理以及只能一件一件的單獨(dú)制作,由此帶來電子地圖的生成效率非常低,無法適應(yīng)電子工業(yè)的高效要求。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的提供一種通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法,依次經(jīng)過預(yù)處理階段、應(yīng)用要素類B的階段、保存各圖層定義查詢屬性的文本內(nèi)容的階段、當(dāng)前頁的設(shè)置階段、修改圖框大小的階段、移動地圖元素的階段、修改各圖層定義查詢階段和存儲階段。這樣的方法可有效避免現(xiàn)有技術(shù)中的電子地圖的生成效率非常低從而無法適應(yīng)電子工業(yè)的高效要求的缺陷。
[0004]為了克服現(xiàn)有技術(shù)中的不足,本發(fā)明提供了一種通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法的解決方案,具體如下:
[0005]一種通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法,步驟如下:
[0006]步驟1:預(yù)處理階段,所述的預(yù)處理階段為首先在計算機(jī)中設(shè)置有用來實現(xiàn)批量制圖的模塊、預(yù)先制作的ArcMap地圖文件A和ArcGIS個人數(shù)據(jù)庫;所述的ArcGIS個人數(shù)據(jù)庫中包含有表示每幅圖的標(biāo)識、圖例相對于圖框位置、指北針相對于圖框位置、圖框?qū)挾取D框高度、圖名、地圖文件名和用于替換的標(biāo)示,所述的ArcMap地圖文件A中包含著部分圖層的定義查詢屬性中的一部分字符串的字符串這樣的非空間屬性以及表示圖框范圍的空間屬性的要素類B,所述的要素類B的非空間屬性包含有每幅圖標(biāo)識、圖例相對于圖框位置、指北針相對于圖框位置、圖框?qū)挾?、圖框高度、圖名、地圖文件名以及用于替換的標(biāo)志,所述部分圖層的定義查詢屬性中的一部分字符串中的表示每幅圖標(biāo)識、圖例相對于圖框位置、指北針相對于圖框位置、圖框?qū)挾?、圖框高度、圖名、地圖文件名以及用于替換的標(biāo)志的字符串分別記為 B.1D、B.LG、B.NA、B.FW、B.FH、B.TT、B.FN 以及 B.DQ ;
[0007]步驟2:應(yīng)用要素類B的階段,所述的應(yīng)用要素類B的階段為通過用來實現(xiàn)批量制圖的模塊打開ArcMap地圖文件A,所述的ArcMap地圖文件A中已經(jīng)預(yù)先加載了要素類B作為地圖的一個圖層,并設(shè)置要素類B作為索引圖層,應(yīng)用到地圖的數(shù)據(jù)驅(qū)動頁面的設(shè)置中,另外ArcMap地圖文件A中已經(jīng)包含有其他圖層,并預(yù)先設(shè)置了圖例、指北針和圖名這樣的地圖元素,刷新數(shù)據(jù)驅(qū)動頁面;
[0008]步驟3:保存各圖層定義查詢屬性的文本內(nèi)容的階段,所述的保存各圖層定義查詢屬性的文本內(nèi)容的階段為將ArcMap地圖文件A中各圖層定義查詢屬性的文本內(nèi)容保存在一個字符串?dāng)?shù)組C中;
[0009]步驟4:當(dāng)前頁的設(shè)置階段,所述的當(dāng)前頁的設(shè)置階段為如果步驟3為第一次被執(zhí)行,設(shè)置當(dāng)前頁為第一頁,否則設(shè)置當(dāng)前頁的下一頁為新的當(dāng)前頁;
[0010]步驟5:修改圖框大小的階段,所述的修改圖框大小的階段為獲取當(dāng)前頁對應(yīng)的要素類B中的B.Fff和B.FH的值,根據(jù)B.Fff和B.FH的值,修改ArcMap地圖文件中的圖框的大小,確保圖框左下角位置不變,并使圖框的寬和高分別等于B.FW和B.FH分別加上一個常數(shù)并向上取整到圖上Icm后的值,同時移動圖框顯示范圍,使要素類B中與當(dāng)前頁對應(yīng)的圖形能夠居中顯示與圖框內(nèi);
[0011]步驟6:移動地圖元素的階段,所述的移動圖名的階段為根據(jù)當(dāng)前頁對應(yīng)的B.LG的值,將圖例移動至圖框的左下角或右下角,根據(jù)當(dāng)前頁對應(yīng)的B.NA的值,將指北針移動至圖框的左上角或右上角,根據(jù)當(dāng)前頁對應(yīng)的B.TT的值,修改圖名的文本內(nèi)容,將圖名移動至圖框外上方常數(shù)距離,并相對于圖框左右方向居中的位置,移動腳注文字位置,使其與圖框右端對齊,移動比例尺位置,使其相對于于圖框左右方向居中;
[0012]步驟7:修改各圖層定義查詢階段,所述的替換字符串階段為逐一以字符串?dāng)?shù)組C中的每個成員為原字符串、以一個常量字符串為要被替換的子字符串、以B.DQ的值對應(yīng)的字符串為替換后的子字符串,進(jìn)行替換操作,替換后的字符串分別作為ArcMap地圖文件A中各圖層新的定義查詢屬性的值;
[0013]步驟8:存儲階段,所述的存儲階段為另存當(dāng)前的ArcMap地圖文件為低版本ArcGIS 9.3的副本D,由于低版本的文件不支持?jǐn)?shù)據(jù)驅(qū)動頁面的設(shè)置,所以低版本ArcGIS9.3的副本D中只保存有當(dāng)前頁的相關(guān)設(shè)置,如果當(dāng)前頁是最后一頁,算法結(jié)束;否則返回執(zhí)行步驟3。
[0014]由這些技術(shù)特征,本發(fā)明的生成方法生成效率高,能夠真正實現(xiàn)批量生產(chǎn)。
【專利附圖】
【附圖說明】
[0015]圖1為本發(fā)明的一種電子地圖制作的批量生成系統(tǒng)流程示意圖。
[0016]圖2為本發(fā)明實施例的效果示意圖。
【具體實施方式】
[0017]本發(fā)明的目的是研制自動化的高效的一種通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法,通過附圖和實施例來進(jìn)行進(jìn)一步的說明:
[0018]如圖1和圖2所示,通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法,步驟如下:
[0019]步驟1:預(yù)處理階段,所述的預(yù)處理階段為首先在計算機(jī)中設(shè)置有用來實現(xiàn)批量制圖的模塊、預(yù)先制作的ArcMap地圖文件A和ArcGIS個人數(shù)據(jù)庫;所述的ArcGIS個人數(shù)據(jù)庫中包含有表示每幅圖的標(biāo)識、圖例相對于圖框位置、指北針相對于圖框位置、圖框?qū)挾取D框高度、圖名、地圖文件名和用于替換的標(biāo)示,所述的ArcMap地圖文件A中包含著部分圖層的定義查詢屬性中的一部分字符串的字符串這樣的非空間屬性以及表示圖框范圍的空間屬性的要素類B,所述的要素類B的非空間屬性包含有每幅圖標(biāo)識、圖例相對于圖框位置、指北針相對于圖框位置、圖框?qū)挾取D框高度、圖名、地圖文件名以及用于替換的標(biāo)志,所述部分圖層的定義查詢屬性中的一部分字符串中的表示每幅圖標(biāo)識、圖例相對于圖框位置、指北針相對于圖框位置、圖框?qū)挾取D框高度、圖名、地圖文件名以及用于替換的標(biāo)志的字符串分別記為 B.1D、B.LG、B.NA、B.FW、B.FH、B.TT、B.FN 以及 B.DQ ;
[0020]步驟2:應(yīng)用要素類B的階段,所述的應(yīng)用要素類B的階段為通過用來實現(xiàn)批量制圖的模塊打開ArcMap地圖文件A,所述的ArcMap地圖文件A中已經(jīng)預(yù)先加載了要素類B作為地圖的一個圖層,并設(shè)置要素類B作為索引圖層,應(yīng)用到地圖的數(shù)據(jù)驅(qū)動頁面的設(shè)置中,另外ArcMap地圖文件A中已經(jīng)包含有其他圖層,并預(yù)先設(shè)置了圖例、指北針和圖名這樣的地圖元素,刷新數(shù)據(jù)驅(qū)動頁面;
[0021]步驟3:保存各圖層定義查詢屬性的文本內(nèi)容的階段,所述的保存各圖層定義查詢屬性的文本內(nèi)容的階段為將Ar cMap地圖文件A中各圖層定義查詢屬性的文本內(nèi)容保存在一個字符串?dāng)?shù)組C中;
[0022]步驟4:當(dāng)前頁的設(shè)置階段,所述的當(dāng)前頁的設(shè)置階段為如果步驟3為第一次被執(zhí)行,設(shè)置當(dāng)前頁為第一頁,否則設(shè)置當(dāng)前頁的下一頁為新的當(dāng)前頁;
[0023]步驟5:修改圖框大小的階段,所述的修改圖框大小的階段為獲取當(dāng)前頁對應(yīng)的要素類B中的B.Fff和B.FH的值,根據(jù)B.Fff和B.FH的值,修改ArcMap地圖文件中的圖框的大小,確保圖框左下角位置不變,并使圖框的寬和高分別等于B.FW和B.FH分別加上一個常數(shù)并向上取整到圖上Icm后的值,同時移動圖框顯示范圍,使要素類B中與當(dāng)前頁對應(yīng)的圖形能夠居中顯示與圖框內(nèi);
[0024]步驟6:移動地圖元素的階段,所述的移動圖名的階段為根據(jù)當(dāng)前頁對應(yīng)的B.LG的值,將圖例移動至圖框的左下角或右下角,根據(jù)當(dāng)前頁對應(yīng)的B.NA的值,將指北針移動至圖框的左上角或右上角,根據(jù)當(dāng)前頁對應(yīng)的B.TT的值,修改圖名的文本內(nèi)容,將圖名移動至圖框外上方常數(shù)距離,并相對于圖框左右方向居中的位置,移動腳注文字位置,使其與圖框右端對齊,移動比例尺位置,使其相對于于圖框左右方向居中;
[0025]步驟7:修改各圖層定義查詢階段,所述的替換字符串階段為逐一以字符串?dāng)?shù)組C中的每個成員為原字符串、以一個常量字符串為要被替換的子字符串、以B.DQ的值對應(yīng)的字符串為替換后的子字符串,進(jìn)行替換操作,替換后的字符串分別作為ArcMap地圖文件A中各圖層新的定義查詢屬性的值;
[0026]步驟8:存儲階段,所述的存儲階段為另存當(dāng)前的ArcMap地圖文件為低版本ArcGIS 9.3的副本D,由于低版本的文件不支持?jǐn)?shù)據(jù)驅(qū)動頁面的設(shè)置,所以低版本ArcGIS9.3的副本D中只保存有當(dāng)前頁的相關(guān)設(shè)置,如果當(dāng)前頁是最后一頁,算法結(jié)束;否則返回執(zhí)行步驟3。
[0027]以上所述,僅是本發(fā)明的較佳實施例而已,并非對本發(fā)明作任何形式上的限制,雖然本發(fā)明已以較佳實施例揭露如上,然而并非用以限定本發(fā)明,任何熟悉本專業(yè)的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍內(nèi),當(dāng)可利用上述揭示的技術(shù)內(nèi)容做出些許更動或修飾為等同變化的等效實施例,但凡是未脫離本發(fā)明技術(shù)方案內(nèi)容,依據(jù)本發(fā)明的技術(shù)實質(zhì),在本發(fā)明的精神和原則之內(nèi),對以上實施例所作的任何簡單的修改、等同替換與改進(jìn)等,均仍屬于本發(fā)明技術(shù)方案的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種通過計算機(jī)操作地圖元素實現(xiàn)批量制圖的方法,其特征在于,步驟如下: 步驟1:預(yù)處理階段,所述的預(yù)處理階段為首先在計算機(jī)中設(shè)置有用來實現(xiàn)批量制圖的模塊、預(yù)先制作的ArcMap地圖文件A和ArcGIS個人數(shù)據(jù)庫;所述的ArcGIS個人數(shù)據(jù)庫中包含有表示每幅圖的標(biāo)識、圖例相對于圖框位置、指北針相對于圖框位置、圖框?qū)挾?、圖框高度、圖名、地圖文件名和用于替換的標(biāo)示,所述的ArcMap地圖文件A中包含著部分圖層的定義查詢屬性中的一部分字符串的字符串這樣的非空間屬性以及表示圖框范圍的空間屬性的要素類B,所述的要素類B的非空間屬性包含有每幅圖標(biāo)識、圖例相對于圖框位置、指北針相對于圖框位置、圖框?qū)挾?、圖框高度、圖名、地圖文件名以及用于替換的標(biāo)志,所述的要素類B的非空間屬性包含有每幅圖標(biāo)識、圖例相對于圖框位置、指北針相對于圖框位置、圖框?qū)挾?、圖框高度、圖名、地圖文件名以及用于替換的標(biāo)志的字符串分別記為B.1D、B.LG、B.NA、B.FW、B.FH、B.TT、B.FN 以及 B.DQ ; 步驟2:應(yīng)用要素類B的階段,所述的應(yīng)用要素類B的階段為通過用來實現(xiàn)批量制圖的模塊打開ArcMap地圖文件A,所述的ArcMap地圖文件A中已經(jīng)預(yù)先加載了要素類B作為地圖的一個圖層,并設(shè)置要素類B作為索引圖層,應(yīng)用到地圖的數(shù)據(jù)驅(qū)動頁面的設(shè)置中,另外ArcMap地圖文件A中已經(jīng)包含有其他圖層,并預(yù)先設(shè)置了圖例、指北針和圖名這樣的地圖元素,刷新數(shù)據(jù)驅(qū)動頁面; 步驟3:保存各圖層定義查詢屬性的文本內(nèi)容的階段,所述的保存各圖層定義查詢屬性的文本內(nèi)容的階段為將ArcMap地圖文件A中各圖層定義查詢屬性的文本內(nèi)容保存在一個字符串?dāng)?shù)組C中; 步驟4:當(dāng)前頁的設(shè)置階段,所述的當(dāng)前頁的設(shè)置階段為如果步驟3為第一次被執(zhí)行,設(shè)置當(dāng)前頁為第一頁,否則設(shè)置當(dāng)前頁的下一頁為新的當(dāng)前頁; 步驟5:修改圖框大小的階段,所述的修改圖框大小的階段為獲取當(dāng)前頁對應(yīng)的要素類B中的B.FW和B.FH的值,根據(jù)B.Fff和B.FH的值,修改ArcMap地圖文件中的圖框的大小,確保圖框左下角位置不變,并使圖框的寬和高分別等于B.FW和B.FH分別加上一個常數(shù)并向上取整到圖上Icm后的值,同時移動圖框顯示范圍,使要素類B中與當(dāng)前頁對應(yīng)的圖形能夠居中顯示與圖框內(nèi); 步驟6:移動地圖元素的階段,所述的移動圖名的階段為根據(jù)當(dāng)前頁對應(yīng)的B.LG的值,將圖例移動至圖框的左下角或右下角,根據(jù)當(dāng)前頁對應(yīng)的B.NA的值,將指北針移動至圖框的左上角或右上角,根據(jù)當(dāng)前頁對應(yīng)的B.TT的值,修改圖名的文本內(nèi)容,將圖名移動至圖框外上方常數(shù)距離,并相對于圖框左右方向居中的位置,移動腳注文字位置,使其與圖框右端對齊,移動比例尺位置,使其相對于于圖框左右方向居中; 步驟7:修改各圖層定義查詢階段,所述的替換字符串階段為逐一以字符串?dāng)?shù)組C中的每個成員為原字符串、以一個常量字符串為要被替換的子字符串、以B.DQ的值對應(yīng)的字符串為替換后的子字符串,進(jìn)行替換操作,替換后的字符串分別作為ArcMap地圖文件A中各圖層新的定義查詢屬性的值; 步驟8:存儲階段,所述的存儲階段為另存當(dāng)前的ArcMap地圖文件為低版本ArcGIS.9.3的副本D,由于低版本的文件不支持?jǐn)?shù)據(jù)驅(qū)動頁面的設(shè)置,所以低版本ArcGIS 9.3的副本D中只保存有當(dāng)前頁的相關(guān)設(shè)置,如果當(dāng)前頁是最后一頁,算法結(jié)束;否則返回執(zhí)行步驟.3。
【文檔編號】G09B29/00GK104317567SQ201410508571
【公開日】2015年1月28日 申請日期:2014年9月28日 優(yōu)先權(quán)日:2014年9月28日
【發(fā)明者】琚彪, 邢興蓉, 徐剛, 花峰, 周亞甜 申請人:南京國圖信息產(chǎn)業(yè)股份有限公司