排名小工具允許使用者從清單中,對選項進行排序。儲存在表單中並傳送到伺服器的值是一個以空格分隔的有序選項清單。
與「選擇」小工具一樣,選項清單要放在 XLSForm 中的「choices」(選項)的工作表內。
若要變更清單中選項的順序,請點選「對項目進行排序」按鈕。在出現的對話框中,長按某個項目,一旦它周圍出現邊框,請將其向上或向下拖曳以更改順序。如果未提供預設值,則問題的值為空,直到使用者在排名對話方塊中點下「確定」。
若要變更清單中選項的順序,請點選「對項目進行排序」按鈕。在出現的對話框中,長按某個項目,一旦它周圍出現邊框,請將其向上或向下拖曳以更改順序。
type | name | label | hint |
---|---|---|---|
rank opt_abcd | rank_widget | 手動排序 | 若要變更清單中選項的順序,請點選「對項目進行排序」按鈕。在出現的對話框中,長按某個項目,一旦它周圍出現邊框,請將其向上或向下拖曳以更改順序。 |
從設備捕獲目前地理位置。位置以度-分-秒 (DMS) 表示法顯示,並以十進制儲存高度和精確度。在位置小部件部分了解有關結果資料格式的更多資訊。 此問題類型顯示一個具有當前精確度的對話框,並讓資料收集者決定何時捕獲該點。若要在背景紀錄位置,後面會提到使用 start-geopoint來記錄初始位置。若要讓使用者直接標記地點,可使用placement-map外觀。
type | name | label | hint | parameters |
---|---|---|---|---|
geopoint | geopoint_widget | Geopoint widget | geopoint type | capture-accuracy=10 warning-accuracy=10 allow-mock-accuracy=true |
可以使用三個參數來自訂地理點問題的行為:
* capture-accuracy:當設備精度達到該值或更好時,將自動捕獲該點並關閉對話框。如果您始終希望資料收集器就接受某個點做出明確的決定,請將此值設為 0。我們通常不建議將此值設為低於 3(公尺),除非您使用外部 GPS 裝置。您也可以設定精度約束。
* warning-accuracy:當設備精確度為該值或更差時,對話方塊呈紅色並顯示一則訊息,指出精確度不可接受。沒有強制執行閾值,因此如果資料收集者需要以不可接受的精確度數值(例如沒時間等待),他們可以這樣做。如果您通常希望資料收集器一直等到自動擷取點,請將此值設為與 capture-accuracy 相同的值。預設為 100(米),大約是一個城市街區的長度。在極端條件下,例如在茂密的森林樹冠下,任何報告的準確性都可以被認為是可以接受的。在這種情況下,您可以將此值設定為非常大的數字。
* allow-mock-accuracy:設定為 true 以使用使用模擬 GPS 提供者的外部 GPS 裝置。否則,從模擬提供者捕獲的任何位置的精度將為 0。
彈出的小視窗,用於向資料收集者提供有正在取得的位置的訊息:
此對話方塊用於跟資料收集者提供目前GPS的精確程度,以供資料收集者評估是否使用該位置資訊。
目前精確度顯示在對話方塊頂部:
https://docs.getodk.org/_images/geopoint-dialog.png
對話方塊的下半部顯示故障排除訊息:
4. 顯示自動擷取點的精確度。這是由 capture-accuracy 參數設定的
5. 經過的時間,可觀察系統是否花了很長時間才能獲得高精度值。這可能設備有問題,或者有遮蔽的情況。
您還可以訓練資料收集者利用經過的時間來採取某些行動。例如,您可以讓他們知道在等待 2 分鐘後捕捉任何可用的點。
請參閱如何提高定位效能: https://docs.getodk.org/collect-location/。
如果精準度不足,會出現這樣的情況。
預設的 Geopoint 小工具不會向使用者顯示地圖。當外觀屬性為maps(地圖)時,小工具會顯示地圖以幫助使用者確定方向並確認所選點是否正確且足夠準確。
當設備的地理位置可用時,它會在地圖上以藍色十字顯示。十字周圍的藍色陰影圓圈表示地理位置的精確半徑。可以點擊螢幕右上角的「新增標記」按鈕,在藍色十字中間指示的位置新增一個點。所選點以帶有紅色輪廓的小圓圈表示。
當再次開啟具有選定點的地圖視圖時,地圖將以該點為中心。若要變更選擇,請先點擊「垃圾桶」圖標,然後選擇一個新點。
type | name | label | appearance | hint |
---|---|---|---|---|
geopoint | geopoint_widget_maps | Geopoint widget | maps | geopoint type with maps appearance |
預設的地理點小工具不允許使用者將點放置在裝置目前地理位置之外的任何位置。
使用placement-map外觀屬性,則是允許使用者從地圖中選擇任何點。使用者可以長按螢幕將該點放置在任何位置,或如果裝置知道其地理位置,則點擊螢幕右上角的「新增點」按鈕。選定的點由帶有紅色輪廓的小圓圈表示。
儲存按鈕儲存所選點並返回到問題畫面。如果通過長按選擇點,則精度半徑和高度都將為0。
當使用現有點再次開啟地圖視圖時,地圖將以所選點為中心。若要變更選擇,請先點擊「垃圾桶」圖標,然後選擇一個新點。
type | name | label | appearance | hint |
---|---|---|---|---|
geopoint | geopoint_widget_placementmap | Geopoint widget | placement-map | geopoint type with placement-map appearance |
使用geotrace小工具可以將移動路徑記錄下來,進而產生一系列的點,它與後面要介紹的 geoshape小工具,紀錄方式相同,只是第一個點和最後一個點可以不同且至少需要 2 個點。
可以透過點擊螢幕放置每個點,也可以透過讀取設備隨時間的地理位置讀數來建立資料。在地圖上,每個座標都由帶有紅色輪廓的小圓圈表示。它們由紅線連接。
若要收集地理軌跡,請先點擊螢幕右上角的「新增點」按鈕來選擇位置記錄模式。所選模式將顯示在螢幕底部的灰色欄中。當點收集正在進行時,「新增標記」按鈕變為「暫停」按鈕。
「後退箭頭」按鈕可用於在主動收集點或暫停時刪除最後輸入的點。任何時候都可以透過點擊並拖曳它來手動移動任何點。只有當首先透過點擊「垃圾桶」按鈕清除現有線路時才能更改模式。必須暫停錄製以清除現有線路。
透過點擊輸入或拖曳調整的點的精度半徑始終為 0。
儲存軌跡後,其點的座標將顯示在問題畫面上。透過點擊新增更多點、移動現有點或刪除最後新增的點,可以開啟軌跡進行手動編輯。跡線保存一次後,無法在手動或自動定位記錄模式下新增。
三種位置記錄模式分別是:
type | name | label |
---|---|---|
geotrace | trace_example | 你要去哪兒? |
使用geoshape小工具,可以建立閉合多邊形,與 geotrace 相同,是記錄一系列點,但是不同地方,是第一個點和最後一個點始終相同並且至少需要 3 個點。
操作方法與使用邏輯,均與geotrace相同。
type | name | label |
---|---|---|
geoshape | shape_example | 選擇一個地理區域 |
area() 函數可用於計算 geoshape 中定義的多邊形的土地面積(以平方公尺為單位)。該值將包含在您完成的調查資料中,也可以在表單中的後續小工具中使用。
type | name | label | calculation |
---|---|---|---|
geoshape | shape | 記錄Geoshape資訊 | |
calculate | shape_area | area(${shape}) | |
calculate | rounded_shape_area | round(${shape_area}, 2) | |
note | shape_area_note | 此區域面積為: ${rounded_shape_area} m² |
讀取手機陀螺儀的方位訊,並將其儲存為十進制資料。
type | name | label | appearance | hint |
---|---|---|---|---|
decimal | bearing_widget | 陀螺儀小工具(Bearing widget) | bearing | decimal type with bearing appearance |
從設備擷取影像。使用者可以選擇使用裝置相機拍攝新照片,或從裝置照片庫中選擇影像。
type | name | label | hint |
---|---|---|---|
image | image_widget | 請拍照或選擇圖片 | image type with no appearance |
添加annotate(註釋)外觀,允許用戶在提交影像前,可以在上面進行繪圖。
若要強制對該預設圖片進行註釋,您可以使用諸如 not(. = 'jr://images/template.png')) 之類的約束描述,並寫在constraint(約束)欄位中,因為 Collect 會在使用註釋後,重命名圖片。
type | name | label | appearance | hint |
---|---|---|---|---|
image | annotate_image_widget | 請拍照或選擇圖片,並標記問題 | annotate | image type with annotate appearance |
type欄位輸入[image] ,appearance欄位輸入[new]
不包含“選擇圖像”按鈕的圖像小工具。這需要用戶拍攝新照片
type | name | label | appearance | hint |
---|---|---|---|---|
image | image_widget_no_choose | 請拍攝照片 | new | image type with new appearance (can also be added with annotate appearance and on audio and video types) |
嘗試擷取照片時,ODK Collect 預設會開啟內建相機應用程式。但是,如果您希望使用特定的相機應用程序,則可以透過包含 app 參數並提供所需相機應用程式的套件名稱來實現。
type | name | label | hint | parameters |
---|---|---|---|---|
image | image_widget_app | 開啟OpenCamara | image type with custom camera app | app=net.sourceforge.opencamera |
若要尋找相機應用程式的套件名稱,請在 Web 瀏覽器中在 Play 商店中搜尋,當您開啟網頁後,套件名稱將在網址列中的 id= 後提供。
有些第三方軟體可以考慮使用:
設備上必須安裝具該套件名稱的應用程式。如果沒有,則無法拍照。
預設情況下,可以從裝置中選擇圖片。使用new外觀可以防止這種情況發生。 Collect 會要求提供圖片,但某些相機應用程式可能仍允許使用者拍攝影片,那將會無法取得資料。
使用前置(自拍)相機拍照。不顯示選擇圖像按鈕。
type | name | label | hint | appearance |
---|---|---|---|---|
image | self-portrait | 開啟前置鏡頭拍照 | image type with new-front appearance | new-front |
啟動外部應用程式並接收從外部應用程式傳回的影像。如果指定的外部應用程式不可用,則無法使用該小工具。
當外觀屬性以 ex: 開頭時,將顯示外部應用程式影像小工具。外觀字串的其餘部分指定要啟動的應用程式。
type | name | label | appearance | hint |
---|---|---|---|---|
image | ex_image_widget | 外部程式影像小工具 | ex:com.example.collectanswersprovider(questionImage='') | image type with ex:com.example.collectanswersprovider(questionImage='') appearance (can use other external apps) |
為使用者提供繪圖板並收集繪製的圖像。
type | name | label | appearance | hint |
---|---|---|---|---|
image | draw_image_widget | 請繪圖說明 | draw | image type with draw appearance |
使用上述任何影像小工具建立的影像,都可以使用 max-pixels 參數在儲存時自動縮小。如果影像的長邊大於指定的最大尺寸,則按比例調整影像大小,以使長邊與提供的像素值相符。當頻寬有限時,這對於減少上傳大小很有用。
所有縮小的 jpg 影像均以 80% 的品質儲存,極少數情況下:
type | name | label | parameters | hint |
---|---|---|---|---|
image | my_scaled_image | 縮放影像 | max-pixels=1024 | 影像縮放至最長邊 1024 像素 |