概述
水經注軟件除了可以輕松下載無水印Google Earth衛星影像、有明確拍攝日期的歷史影像、地方高清天地圖、百度高德大字體打印地圖,按1萬/5千等國家標準圖幅下載,可對百度坐標與火星坐標進行糾偏,下載陸地及海洋高程、STRM高程、提取10米等高線等深線、CASS高程點以外,還有一個重要的功能就是標注。這里,我們以標繪面為例,對軟件中的標注面功能參數進行說明。
開啟面標繪功能
可以通過在"我的標注"工具欄中點擊"多邊形"工具,或在軟件頂部工具欄中選擇"編輯\繪多邊形"菜單開啟繪面功能。這時,鼠標處于繪制狀態,只需要在地圖中連續點擊可以開始標繪面。
標繪面完成之后,可以在"我的標注"右側顯示的屬性面板中設置面屬性,也可以通過右鍵單擊面,然后在選擇"屬性"菜單后顯示"面屬性編輯"對話中設置參數,如下圖所示。
面屬性
名稱與氣泡提示設置
在屬性對話框中,可以為當前繪制的對象指定名稱和說明備注信息,如果有圖片備注,可以點擊"插入圖片"按鈕將需要備注的圖片插入,如下圖所示。
名稱與氣泡提示設置
面顏色與樣式設置
在"顏色/樣式"參數中,可以為面對象設置邊線顏色、邊線寬度、邊線不透明度、填充顏色、填充不透明度和面對象的顯示樣式,還可以設置面標注文字的相關參數,比如字體和字號等,如下圖所示。
面顏色與樣式設置
面對象的顯示樣式有三種,可以根據實際需求選擇。
填充+邊線:同時顯示填充與邊線。
填充:只顯示填充,不顯示輪廓線。
邊線:只顯示輪廓線,不顯示填充。
多邊形面積與坐標查看
在"面積/坐標"參數中,可以查看面積、設置面積單位、查看周長、設置長度單位、查看節點坐標值、拾取高程和導出坐標值為矢量數據等,如下圖所示。
多邊形面積與坐標查看
點擊"拾取高程"按鈕可以拾取高程,當節點越多時,需要花費的時間會越長。
拾取高程
點擊"導出坐標"按鈕可以將節點數據導出為多種矢量文件格式,主要包括ESRI Shapefile(*.shp)、Google Earth(*.kml)、Google Earth(*.kmz)、AutoCAD(*.dxf)、Mapinfo(*.tab)、文本文件(*.csv)和文件文件(*.txt)等。
單個面屬性設置
需要修改單個面對象的屬性時,可以右鍵單擊面對象并在彈出的菜單中選擇屬性即可,也可以在"我的標注"列表中右鍵單擊需要修改的對象并選擇"面屬性"菜單,最后在顯示的屬性對話框中修改相關參數即可。
修改單個面屬性
批量面屬性設置
當需要批量修改面屬性時,在面對象所屬的文件夾目錄上單擊鼠標右鍵,然后選擇"圖層屬性"下的"面屬性"菜單即可,如下圖所示。
批量修改面屬性
在顯示的"批量修改面屬性"對話框中,只可以批量修改"顏色/樣式"參數,如下圖所示。
批量修改面屬性
這里修改邊線顏色為紅色,寬度為5,填充顏色為藍色,修改完成后,點擊"確定"按鈕,所有面對象會根據重新設置的參數更新顯示,同時會更新"我的標注"列表中的圖標顯示。
系統會自動記憶當前設置的樣式參數,即便是重新啟動軟件之后,也會按最后一次設置的顏色/樣式參數進行新對象的繪制。
結語
以上就是標注面參數的詳細說明,主要包括了開啟面標繪功能、名稱與汽泡提示設置、面顏色與樣式設置、多邊形面積與坐標查看、單個面屬性設置和批量面屬性設置等功能。
從蘋果的 M1 芯片 MacBook 發布后,打破了人們對 ARM 芯片性能弱雞,無法運行大型軟件的印象。蘋果牛X的地方在于 X86 和 ARM 之間的過渡,目前已經有非常多的軟件開發商進行了對 ARM 的適配,例如 Adobe 系列、QQ 等常用到的軟件。
其實在 2012 年的時候微軟就發布過了基于 Tegra 3 ARM 的 Surface 平板電腦,后來又發布了基于驍龍 SQ1/SQ2 ARM 的 Surface Pro X,不過由于性能關心,一直沒有獲得太大的關注度,加上缺乏原生開發的 ARM 應用。
不過最近 Windows 10 on ARM 似乎又火了,更多人愿意嘗試這個系統,因為部分軟件開發商在適配蘋果的 M1 芯片,順手也適配了下 Windows 10 on ARM,例如之前 Adobe 就宣布推出 Windows ARM 版的 PhotoShop,目前還是 Beta 階段。
近期 macOS 著名的虛擬機軟件 Parallel Desktop 新版本支持 M1 Mac,可運行Windows 10 on ARM 系統,所以買了 M1 Mac 的小伙伴,將得到一臺能運行macOS,iOS,Windows 程序的筆記本。
如果你也想體驗嘗試下 Windows 10 on ARM 系統,今天雷鋒哥就分享如何在 X86 的電腦上模擬運行 Windows 10 on ARM 系統。注意:下面的教程來源知乎用戶 @初生之鳥 小伙伴的分享。
準備工具
1.Windows 10 on ARM
2.QEMU軟件
3.QEMU EFI 文件
4.USB Mass Storage DXE 驅動
安裝方法
創建兩個 VHD,一個 UEFI 能訪問的 VHD,存放 USB Mass Storage DXE 驅動模塊大小 16MB 足矣,下文稱為 hdd.vhd(如果能夠把驅動模塊集成到 UEFI 里面,這個 VHD 可以省略)。
以及一個實際安裝系統的 VHD,下文稱為 usb.vhd大小 32-64GB 足夠了,畢竟這也只能作為實驗。
接著掛載 hdd.vhd 文件,然后創建分區并格式化為 FAT32 格式,放入 USBMassStorageDxe_arm64.efi 模塊文件,然后卸載 VHD。
掛載 usb.vhd,使用 GPT 分區表,創建 ESP 和安裝系統的分區 ESP 使用 FAT32 格式,大小 100MB,安裝系統的分區使用 NTFS,占剩下的空間給這兩個分區分配盤符,下文假設 ESP 為 S:,系統安裝分區為 W:
然后使用 dism 將系統 ISO 的 install.wim 恢復到 W: 假設 ISO 掛載到 G:,恢復的映像 ID 為 4(一般 4 是 Pro,具體的 ID 請使用 dism /get-wiminfo 查看)
C:\> dism /apply-image /imagefile:G:\sources\install.wim /index:4 /applydir:W:\
然后使用 bcdboot 在 ESP 分區上建立引導
C:\> bcdboot W:\Windows /s S: /f UEFI
然后卸載 VHD,這里建議備份一下 usb.vhd 再繼續。
QEMU配置啟動
將 Linaro UEFI 的 QEMU_EFI.fd 復制到一個方便的位置
下面假設為以下路徑
然后用以下命令啟動 QEMU ARM64 模擬器
qemu-system-aarch64 -M virt -m 2048 -cpu cortex-a53 -smp 2 -bios D:\QEMU_EFI.fd -device VGA -device nec-usb-xhci -device usb-kbd -device usb-tablet -drive file=D:\usb.vhd,id=usbstick,if=none -device usb-storage,drive=usbstick -hda D:\hdd.vhd
其中
以上可以按實際情況調整
模擬器啟動之后,按 ESC 進入 UEFI 的設置菜單,選擇 Boot Manager,選擇最下面的 EFI Internal Shell,進入 EFI Shell
然后應該可以看到 hdd.vhd 的分區 FS0,鍵入以下命令加載 USB Mass Storage 驅動
load fs0:\USBMassStorageDxe_arm64.efi
然后鍵入以下命令,刷新設備列表
map -r
這時應該能看到一個 FS0: 和一個 FS1:,一般 usb.vhd 的 ESP 會分配到 FS0:,所以我們鍵入
fs0:\efi\boot\bootaa64.efi
啟動系統,如無意外的話,系統就會啟動了。
系統啟動,Logo 來自于 UEFI 固件
開始菜單
系統屬性
自帶的 UWP 是原生的,不過是32位
Edge 是原生 64 位 ARM
系統組件,如 Shell Experience Host(開始菜單、通知中心等 UI 模塊)、Text Input Application (觸摸鍵盤與手寫模塊)、Cortana(小娜與搜索 UI)等 UWP 則為原生 64 位 ARM 程序
用 .Net Framework 自帶的 C# 編譯器編譯了一個簡單的 Hello World 程序,顯示為 32 位,實際上是 x86-32 (系統沒有帶任何 ARM 平臺的 .Net Framework,系統默認的 shell 也是 cmd 而不是 PowerShell)
同時運行三個平臺(x86-32、ARM、ARM64)的 cmd.exe,并顯示 PROCESSOR_ARCHITECTURE 環境變量
Windows 目錄下的四個 System 目錄(SyCHPE32: CHPE DLL,供 x86 程序調用,內部是 ARM 機器碼,使得核心系統庫不需要進行二進制翻譯,減少性能損失;SysARM32: ARM 32 位系統文件;System32: ARM 64 位系統文件;SysWOW64: x86 32 位系統文件)
x86 二進制翻譯器核心組件:xtajit.dll、xtac.exe、XtaCache.exe
運行 x86-32 版本的 Notepad++
運行 x86-32 版本的 CPU-Z(CPU-Z 的驅動加載失敗,但是依然能獲取部分信息)
性能測試
注意:由于 QEMU 使用的是異構模擬,性能肯定非常糟糕,這里僅作為 x86 二進制翻譯性能的一個參考。
也許很少人知道,在 Windows RT 的時候,有一批移植到 Windows RT 的原生 ARM32 Windows 程序,而這些程序在 Windows 10 ARM64 平臺依然可以運行。
而其中有一份 7zip 9.22 beta。這里我們就用這個版本,以及官方下載的 7zip 9.22 beta x86-32 版本做一個簡單的性能對比。
測試環境:
原生 ARM 32 位版本
x86 版本
有細心的朋友可能會發現,這兩個版本并非完全相同,所以這只是一個非常粗略的性能比較,但可以明顯看到,x86 二進制翻譯帶來了接近 30-50% 的性能損失。
對于輕量級應用來說問題不大,但是對于性能要求高的應用,就會非常吃力,盡管如此,在技術上已經非常成功了。
總結
目前 Windows 10 on ARM 最大問題缺乏有力的硬件平臺和軟件生態,不過之前有消息爆料微軟正研發自家 ARM 處理器,也許后續會推出對應的 Surface 設備,最后感興趣的小伙伴可以先嘗鮮體驗下 Windows 10 on ARM 系統。