SensorEvent.Values 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
數位的 #values values 長度和內容取決於 android.hardware.Sensor sensor 要監視的類型(另 SensorEvent 請參閱所使用的座標系統定義)。
[Android.Runtime.Register("values")]
public System.Collections.Generic.IList<float>? Values { get; set; }
[<Android.Runtime.Register("values")>]
member this.Values : System.Collections.Generic.IList<single> with get, set
屬性值
- 屬性
備註
數位的 #values values 長度和內容取決於 android.hardware.Sensor sensor 要監視的類型(另 SensorEvent 請參閱所使用的座標系統定義)。
<h4:</h4>>android.hardware.Sensor#TYPE_ACCELEROMETER Sensor.TYPE_ACCELEROMETER 所有值為 SI 單位 (m/s^2)
<ul>li values[0]: x 軸<上的加減 Gx /li li<>> values[1]: y 軸上的加減 Gy /li li> values[2]: Acceleration minus Gz on the z-axis<< /li<<>>/ul><>
此類型的感測器會測量套用至裝置的加速(<b>Ad</b>)。 從概念上講,它會使用關聯來測量套用至感測器本身 (<b>Fs</b>) 的強制:
<b><center>Ad = - ∑Fs / mass</center></b>
特別是重力的力總是影響測量的加速:
<b><center>Ad = -g - ∑F / 品質</中心></b>
基於這個理由,當裝置坐在桌子上(顯然沒有加速),加速計會讀取 b>g</b> = 9.81 m/s^2 的量級<
同樣地,當裝置處於自由落地狀態,因此危險地加速至地面時,其加速計會讀取0米/秒^2的震級。
很明顯,為了測量裝置的實際加速,必須消除重力力的貢獻。 這可藉由套用 高傳遞 篩選來達成。 相反地, 低通 篩選可用來隔離重力的力。
public void onSensorChanged(SensorEvent event)
{
// alpha is calculated as t / (t + dT)
// with t, the low-pass filter's time-constant
// and dT, the event delivery rate
final float alpha = 0.8;
gravity[0] = alpha * gravity[0] + (1 - alpha) * event.values[0];
gravity[1] = alpha * gravity[1] + (1 - alpha) * event.values[1];
gravity[2] = alpha * gravity[2] + (1 - alpha) * event.values[2];
linear_acceleration[0] = event.values[0] - gravity[0];
linear_acceleration[1] = event.values[1] - gravity[1];
linear_acceleration[2] = event.values[2] - gravity[2];
}
<u>Examples</u>:<ul<>li>當裝置位於桌子上平面,並推到其左側向右推時,x 加速值會是正數。</李>
<li>當裝置躺在桌子上時,加速值為 +9.81,這對應於裝置的加速度 (0 m/s^2) 減去重力 (-9.81 m/s^2) 的力量。</李>
<li>當裝置躺在桌子上,並以 A m/s^2 的加速度推向天空時,加速值等於 A+9.81,相當於裝置 (+A m/s^2) 的加速度減去重力 (-9.81 m/s^2) 的加速度。</li></ul>
<h4:</h4>>android.hardware.Sensor#TYPE_MAGNETIC_FIELD Sensor.TYPE_MAGNETIC_FIELD 所有值都在微特斯拉(uT)中,並測量 X、Y 和 Z 軸中的環境磁場。
<h4:</h4>>android.hardware.Sensor#TYPE_GYROSCOPE Sensor.TYPE_GYROSCOPE 所有值都以弧度/秒為單位,並測量裝置本機 X、Y 和 Z 軸周圍的旋轉速率。 坐標系統與用於加速感測器相同。 旋轉在逆時針方向為正數。 也就是說,如果裝置似乎順時針旋轉,則從位於原點之裝置上 x、y 或 z 軸上某個正位置的觀察者會報告正旋轉。 請注意,這是正旋轉的標準數學定義,且不同意稍早指定之滾動的定義。 <ul>li values[0]: x 軸<周圍的 Angular 速度 /li li><> values[1]: y 軸<周圍的 Angular 速度 /li li> values[2]: z 軸 </li<<>>/ul 周圍的 Angular 速度><>
陀螺儀的輸出通常會隨著時間整合,以計算描述時間步驟角度變化的旋轉,例如:
private static final float NS2S = 1.0f / 1000000000.0f;
private final float[] deltaRotationVector = new float[4]();
private float timestamp;
public void onSensorChanged(SensorEvent event) {
// This time step's delta rotation to be multiplied by the current rotation
// after computing it from the gyro sample data.
if (timestamp != 0) {
final float dT = (event.timestamp - timestamp) * NS2S;
// Axis of the rotation sample, not normalized yet.
float axisX = event.values[0];
float axisY = event.values[1];
float axisZ = event.values[2];
// Calculate the angular speed of the sample
float omegaMagnitude = sqrt(axisX*axisX + axisY*axisY + axisZ*axisZ);
// Normalize the rotation vector if it's big enough to get the axis
if (omegaMagnitude > EPSILON) {
axisX /= omegaMagnitude;
axisY /= omegaMagnitude;
axisZ /= omegaMagnitude;
}
// Integrate around this axis with the angular speed by the time step
// in order to get a delta rotation from this sample over the time step
// We will convert this axis-angle representation of the delta rotation
// into a quaternion before turning it into the rotation matrix.
float thetaOverTwo = omegaMagnitude * dT / 2.0f;
float sinThetaOverTwo = sin(thetaOverTwo);
float cosThetaOverTwo = cos(thetaOverTwo);
deltaRotationVector[0] = sinThetaOverTwo * axisX;
deltaRotationVector[1] = sinThetaOverTwo * axisY;
deltaRotationVector[2] = sinThetaOverTwo * axisZ;
deltaRotationVector[3] = cosThetaOverTwo;
}
timestamp = event.timestamp;
float[] deltaRotationMatrix = new float[9];
SensorManager.getRotationMatrixFromVector(deltaRotationMatrix, deltaRotationVector);
// User code should concatenate the delta rotation we computed with the current
// rotation in order to get the updated rotation.
// rotationCurrent = rotationCurrent * deltaRotationMatrix;
}
實際上,陀螺儀雜訊和位移將引入一些需要補償的錯誤。 這通常是使用來自其他感測器的資訊來完成,但超出本文件的範圍。
<h4>android.hardware.Sensor#TYPE_LIGHT Sensor.TYPE_LIGHT:</h4><ul><li>values[0]: SI lux units </li></ul 中的環境光線等級>
<h4>android.hardware.Sensor#TYPE_PRESSURE Sensor.TYPE_PRESSURE:</h4><ul><li>values[0]: hPa (millibar) </li></ul 中的大氣壓力>
<h4>android.hardware.Sensor#TYPE_PROXIMITY Sensor.TYPE_PROXIMITY: </h4>
<ul><li>values[0]: 以公分 </li></ul 測量的鄰近感測器距離>
<b>注意:</b> 有些鄰近感測器只支援二進位接近或遠距測量。 在此情況下,感測器應該報告其android.hardware.Sensor#getMaximumRange() maximum range值處於遠方狀態,且接近狀態的較小值。
<h4>android.hardware.Sensor#TYPE_GRAVITY Sensor.TYPE_GRAVITY:</h4>
三維向量,表示重力的方向和大小。 單位為 m/s^2。 坐標系統與加速感測器所使用的相同。
<b>注意:</b> 當裝置靜止時,重力感測器的輸出應該與加速計輸出相同。
<h4:</h4>>android.hardware.Sensor#TYPE_LINEAR_ACCELERATION Sensor.TYPE_LINEAR_ACCELERATION 指出每個裝置軸上加速的三維向量,不包括重力。 所有值都有 m/s^2 的單位。 坐標系統與加速感測器所使用的相同。
加速計、重力和線性加速感測器的輸出必須遵守下列關聯性:
<ul>acceleration = gravity + linear-acceleration</ul>
<h4>android.hardware.Sensor#TYPE_ROTATION_VECTOR Sensor.TYPE_ROTATION_VECTOR:</h4>
旋轉轉向量代表裝置的方向做為角度和軸的組合,其中裝置已繞軸旋轉角度 θ ;x、y、z>。
旋轉向量的三個元素是
</p>旋轉向量的三個元素等於 b>單位</b> 四元數 & lt 的最後三個<元件;cos(θ/2)、x*sin(θ/2)、y*sin(θ/2)、z*sin(θ/2)>。</p>
旋轉向量的元素是無單位的。 x、y 和 z 軸的定義方式與加速感測器相同。
參考座標系統定義為直接正交基礎,其中: </p>
<ul><li>X 被定義為向量產品 <b>Y.Z</b> (它是正切的地面在裝置目前的位置和大約指向東點)。</li li><>Y 與裝置目前位置的地面正切,指向磁北。</li li><>Z 指向天空,並垂直於地面。</li></ul>
<center><img src=“../../../images/axis_globe.png“ alt=”World 座標系統圖表“。 border=“0” /></center>
<ul>li values[0]: x*sin(θ/2) </li li><> values[1]: y*sin(θ/2) /li li>>< values[2]: z*sin() <952/2) </li li><> values[3]: cos(θ/2) /li li>>< values[4]: estimated heading Accuracy (in radians) <(-1 if unavailable)</li></ul><>
值[3],原本是選擇性的,一律會從 SDK 層級 18 以後出現。 values[4] 是 SDK 層級 18 中新增的新值。
<h4:</h4>>android.hardware.Sensor#TYPE_ORIENTATION Sensor.TYPE_ORIENTATION 所有值都是以度為單位的角度。
<ul><li> values[0]: Azimuth,磁北方向與 y 軸之間的角度,繞 z 軸 (0 到 359)。 0=North、90=East、180=South、270=West </p>
values[1]:在 z 軸向 b 向/b> 向< y 軸移動<時>,以正值旋轉 x 軸 (-180 到 180)。
values[2]:當裝置順時針移動時,旋轉 y 軸 (-90 到 90) 會增加。
</ul>
<b>注意:</b> 此定義與 <在航空中使用的 b>yaw、音調和滾</b> 不同,其中 X 軸沿著平面的長側(尾對鼻子)。
<b>注意:</b> 基於舊版原因,此感測器類型存在,請改用 android.hardware.Sensor#TYPE_ROTATION_VECTOR rotation vector sensor type 和 android.hardware.SensorManager#getRotationMatrix getRotationMatrix() 來android.hardware.SensorManager#remapCoordinateSystem remapCoordinateSystem()android.hardware.SensorManager#getOrientation getOrientation()計算這些值。
<b>重要注意事項:</b> 基於歷史原因,滾動角度在順時針方向為正數(從數學上講,在逆時針方向應該是正數)。
<h4>android.hardware.Sensor#TYPE_RELATIVE_HUMIDITY Sensor.TYPE_RELATIVE_HUMIDITY:</h4><ul<>li> values[0]: 相對環境空氣濕度百分比 </li></ul>
測量相對環境空氣濕度和環境溫度時,可以計算露點和絕對濕度。
<u>露點</u>
露點是一個給定的空氣包裹必須冷卻的溫度,在固定的氣壓下,水蒸汽凝結成水。
<center>
ln(RH/100%) + m·t/(T<sub>n</sub>+t)
t<sub>d</sub>(t,RH) = T<sub>n</sub> · ------------------------------
m - [ln(RH/100%) + m·t/(T<sub>n</sub>+t)]
</center><dl><dt>t<sub>d</sub></dt><dd>dew point temperature in °C</dd<>dt>t</dt><dd>實際溫度在 °%/dd><>dt m/dt<>dd 中的< C</dd<>dt>RH</dt<>>dd 實際相對濕度 dd>17.62</dd><dt>T<sub>n</sub></dt<>dd>243.12 °<C</dd></dl>
例如:
h = Math.log(rh / 100.0) + (17.62 * t) / (243.12 + t);
td = 243.12 * h / (17.62 - h);
<u>絕對濕度</u>
絕對濕度是特定乾燥空氣量中的水蒸汽量。 單位為 g/m<sup>3</sup>。
<center>
RH/100%·A·exp(m·t/(T<sub>n</sub>+t))
d<sub>v</sub>(t,RH) = 216.7 · -------------------------
273.15 + t
</center dl><dt>d<sub>v</sub></dt><dd>絕對濕度在 g/m<sup>3</sup></dd dt>t</dt<>dd><>實際溫度在 °><%/dd><>dt m/dt<>dd 中的< C</dd<>dt>RH</dt<>>dd 實際相對濕度 dd>17.62</dd><dt>T<sub>n</sub></dt<>dd>243.12 °<C</dd<>dt>A</dt<>dd>6.112 hPa</dd></dl>
例如:
dv = 216.7 *
(rh / 100.0 * 6.112 * Math.exp(17.62 * t / (243.12 + t)) / (273.15 + t));
<h4>android.hardware.Sensor#TYPE_AMBIENT_TEMPERATURE Sensor.TYPE_AMBIENT_TEMPERATURE: </h4>
<ul><li> values[0]: ambient (room) temperature in degreeus.</li></ul>
<h4>android.hardware.Sensor#TYPE_MAGNETIC_FIELD_UNCALIBRATED Sensor.TYPE_MAGNETIC_FIELD_UNCALIBRATED:</h4> 類似於 android.hardware.Sensor#TYPE_MAGNETIC_FIELD,但硬鐵校正會個別報告,而不是包含在測量中。 工廠校正和溫度補償仍會套用至「未調整」的測量。 假設磁場是由於地球的極點而避免的。
值陣列如下所示:ul>li values[0] = x_uncalib /li li>>< values[1] = y_uncalib </<>>li li values[2] = <z_uncalib </li<>> li values[3<><>] = x_bias /li li values[4] = y_bias </li li values[5] = z_bias </><li<>>/ul><<>
x_uncalib、y_uncalib、z_uncalib是 X、Y、Z 軸中的測量磁場。 會套用軟鐵和溫度校正。 但不會套用硬鐵校正。 這些值位於 micro-Tesla (uT) 中。
x_bias,y_bias,z_bias提供 X、Y、Z 軸中估計的鐵偏差。 每個欄位都是估計硬鐵校正的元件。 這些值位於 micro-Tesla (uT) 中。
硬鐵 - 這些失真是由於裝置上的磁化鐵、鋼鐵或永久磁石引起的。 軟鐵 - 這些失真是由於與地球磁場的互動而出現的。
<h4>android.hardware.Sensor#TYPE_GAME_ROTATION_VECTOR Sensor.TYPE_GAME_ROTATION_VECTOR:</h4> 與 android.hardware.Sensor#TYPE_ROTATION_VECTOR 相同,不同之處在於它不使用地磁字段。 因此,Y 軸不會指向北,而是指向一些其他參考,該參考可以與 Z 軸周圍的陀螺儀漂移相同的大小順序來漂移。
在理想情況下,手機旋轉並返回相同的真實世界方向將報告相同的遊戲旋轉量(不使用地球的地磁場)。 不過,方向可能會隨著時間而漂移。 如需值的詳細描述,請參閱 android.hardware.Sensor#TYPE_ROTATION_VECTOR 。 此感測器不會有估計的標題精確度值。
<h4:</h4>>android.hardware.Sensor#TYPE_GYROSCOPE_UNCALIBRATED Sensor.TYPE_GYROSCOPE_UNCALIBRATED 所有值都以弧度/秒為單位,並測量繞 X、Y 和 Z 軸旋轉的速率。 也會報告每個軸上的漂移估計。
不會執行陀螺漂移補償。 工廠校正和溫度補償仍然適用於旋轉率(角度速度)。
坐標系統與用於 android.hardware.Sensor#TYPE_ACCELEROMETER 旋轉的座標系統相同,在逆時針方向為正數(右方規則)。 也就是說,如果裝置似乎順時針旋轉,則從位於原點之裝置上 x、y 或 z 軸上某個正位置的觀察者會報告正旋轉。 範圍至少會是 17.45 rad/s (即: ~1000 deg/s)。 <ul>li values[0] : rad/s </li li><> values[1] 中 X 軸周圍的角度速度 (w/o 漂移補償) : rad/s </li 中<>Y 軸周圍的角度速度 (w/o 漂移補償) li> values[2] : rad/s </li li><> values[3] 中 Z 軸周圍的角度速度(w/o 漂移補償):rad/s </li li><> values[4] 中 X 軸的估計漂移[4] :>< rad/s </li li>>< values[5] 中 Y 軸的估計漂移:rad/s </li></ul 中 Z 軸的估計漂移>
<b>Pro Tip:</b> 一律使用值陣列的長度,同時對陣列執行作業。 在舊版中,這一定是現在已變更的 3。
<h4>android.hardware.Sensor#TYPE_POSE_6DOF Sensor.TYPE_POSE_6DOF:</h4>
TYPE_POSE_6DOF事件是由以四元數表示的旋轉和以SI單位表示的翻譯所組成。 事件也包含差異旋轉和轉譯,顯示裝置的姿勢自上一個序號姿勢以來的變更方式。 事件會使用標準 Android 感測器軸。
<ul>li values[0]: x*sin(θ/2) /li li>>< values[1]: y*sin(θ/2) <</li<>> li values[2]: z*sin(θ/2) </li li values[3]: cos(θ/2) </li>><><>
<li> values[4]: 從任意原點沿著 x 軸轉譯。 </li li><> values[5]: 從任意原點沿著 y 軸轉譯。 </li li><> values[6]: 從任意原點沿著 z 軸轉譯。 </李>
<li> values[7]: Delta quaternion rotation x*sin(θ/2) </li li><> values[8]: Delta quaternion rotation y*sin(θ/2) </li><li> values[9]: Delta quaternion rotation z*sin(θ/2) </li li<>> values[10]: Delta quaternion rotation cos(θ/2) </li>
<li> values[11]:沿著 x 軸的 Delta 轉譯。 </li li><> values[12]:沿著 y 軸的 Delta 轉譯。 </li li><> values[13]:沿著 z 軸進行差異轉譯。 </李>
<li> values[14]: 序號 </li>
</ul>
<h4>android.hardware.Sensor#TYPE_STATIONARY_DETECT Sensor.TYPE_STATIONARY_DETECT:</h4>
如果裝置至少靜止 5 秒,且最大延遲為 5 秒,則會產生TYPE_STATIONARY_DETECT事件。 例如:可能需要 5 到 10 秒的時間,裝置已待用以觸發此事件。
唯一允許的值為 1.0。
<ul><li> values[0]: 1.0 </li></ul>
<h4>android.hardware.Sensor#TYPE_MOTION_DETECT Sensor.TYPE_MOTION_DETECT:</h4>
如果裝置已移動至少 5 秒,且最大延遲為 5 秒,則會產生TYPE_MOTION_DETECT事件。 例如:可能需要 5 到 10 秒的時間,裝置已待用以觸發此事件。
唯一允許的值為 1.0。
<ul><li> values[0]: 1.0 </li></ul>
<h4>android.hardware.Sensor#TYPE_HEART_BEAT Sensor.TYPE_HEART_BEAT:</h4>
每次偵測到心跳尖峰時,此類型的感測器都會傳回事件。
此處的尖峰理想情況下會對應到 ECG 訊號 QRS 複本中的正尖峰。
<ul><li> values[0]: confidence</li></ul>
信賴值為 0.0 表示完全不確定 , 尖峰可能和其他地方一樣位於指定的時間戳。 信賴值為 1.0 表示絕對完成 -- 尖峰完全不太可能位於 QRS 複雜位置。
<h4>android.hardware.Sensor#TYPE_LOW_LATENCY_OFFBODY_DETECT Sensor.TYPE_LOW_LATENCY_OFFBODY_DETECT:</h4>
每次裝置從身體移轉至身體和從身體到身體外時,此類型的感測器都會傳回事件(例如,從手腕移除可穿戴裝置時,會觸發指出身體外轉換的事件)。 傳回的事件會包含單一值,以指出非主體狀態:
<ul><li> values[0]: off-body state</li></ul>
off-body 狀態的有效值:<ul><li> 1.0 (device is on-body)</li li><> 0.0 (device is off-body)</li></ul>
啟動此類型的感測器時,必須在啟動感測器的 5 秒內傳遞代表目前裝置狀態的初始內文或離體事件。
此感測器必須能夠在裝置從主體移除的 1 秒內偵測並報告身體內部轉換,而且必須在裝置放回主體的 5 秒內偵測並報告身體外轉換。
<h4:</h4>>android.hardware.Sensor#TYPE_ACCELEROMETER_UNCALIBRATED Sensor.TYPE_ACCELEROMETER_UNCALIBRATED 所有值為 SI 單位 (m/s^2)
與 android.hardware.Sensor#TYPE_ACCELEROMETER類似,工廠校正和溫度補償仍會套用至「未調整」的測量。
值陣列如下所示:ul>li values[0] = x_uncalib沒有偏差補償 /li<>> li values[1] = y_uncalib不含偏差補償<< /li li values[2] = z_uncalib不含偏差補償 </>>><><li li values[3] = estimated x_bias /li<>> li values[4] = estimated <y_bias </li><> li values[5] = estimated z_bias </><li/ul><<>
x_uncalib、y_uncalib、z_uncalib是 X、Y、Z 軸的測量加速, android.hardware.Sensor#TYPE_ACCELEROMETER類似於 ,沒有任何偏差修正(允許出廠偏差補償和任何溫度補償)。 x_bias,y_bias,z_bias是估計的偏差。
<h4>android.hardware.Sensor#TYPE_HINGE_ANGLE Sensor.TYPE_HINGE_ANGLE:</h4>
此類型的感測器測量裝置兩個整數部分之間的角度,以度為單位。 此感測器類型測量的轉軸移動,預期會改變使用者與裝置互動的方式,例如展開或顯示顯示器。
<ul><li> values[0]: 測量轉軸角度介於 0 到 360 度之間,內含</li></ul>
<h4>android.hardware.Sensor#TYPE_HEAD_TRACKER Sensor.TYPE_HEAD_TRACKER:</h4>
此類型的感測器會測量使用者頭部相對於任意參考框架的方向,以及旋轉速率。
此感測器所產生的事件會遵循特殊的頭部中心座標框架,其中:ul>li X 軸穿過使用者的耳朵,正 X 方向從使用者的右耳<延伸/li li>>< Y 軸從使用者的頭部背面穿過鼻子,正方向延伸出鼻子,><< 當使用者直立且直視<<>>時,X/Y 平面正向地平行於地面,而 Z 軸則從用戶頭部頂端交叉,正向從頭部<頂端延伸/li></ul>
在 Euler 向量表示中提供數據,這是向量,其方向表示旋轉軸,而大小表示繞該軸旋轉的角度,以弧度為單位。
前三個元素提供從 (任意,可能緩慢漂移) 參考框架到前端框架的轉換。 此向量的大小在範圍 [0, & pi;] 弧度中,而個別座標軸的值則位於範圍 [-π, π]。 接下來的三個元素選擇性地提供使用者頭部相對於本身的估計旋轉速度,以每秒弧度為單位。 如果指定的感測器不支持判斷速度,則這些項目會設定為 0。
<ul>li values[0] : 代表 rotation/li li><> values[1] 的 Euler 向量 X 元件:代表 rotation/li li values[2] 的 Euler 向量 Y 元件:代表 rotation<<</li<><>> li> values[3] 的 Euler 向量 Z 元件:代表角度速度的 Euler 向量 X 元件(如果支援,否則為 0)</li li li>><><values[4] : 代表角度速度的 Euler 向量的 Y 元件(如果支援,否則為 0)</li li>>< 值[5] : 代表角度速度的 Euler 向量 Z 元件(如果支持,否則為 0)</li></ul>
<h4:</h4>>android.hardware.Sensor#TYPE_ACCELEROMETER_LIMITED_AXES Sensor.TYPE_ACCELEROMETER_LIMITED_AXES 相當於TYPE_ACCELEROMETER,但不支援一或兩個軸的支援案例。
最後三個值代表是否支援指定座標軸的加速值。 值為 1.0 表示支援座標軸,而值為 0 表示不支援。 支援的座標軸應該在建置階段決定,而且這些值不會在運行時間期間變更。
不支援之座標軸的加速值會設定為 0。
類似於 android.hardware.Sensor#TYPE_ACCELEROMETER。
<ul>li values[0]: x 軸上的加速減 Gx (如果支援)</li li<>> values[1]: y 軸上的加減 Gy (如果支援),</li li><> 值[2]: 加速 z 軸上的減 Gz (如果支援)</li li><> 值[3]: x 軸/li><> li 值支援的加速[4]: y 軸<</li<>li> 值支援的加速[5]:>< z 軸</li></ul 支援的加速>
<h4:</h4>>android.hardware.Sensor#TYPE_GYROSCOPE_LIMITED_AXES Sensor.TYPE_GYROSCOPE_LIMITED_AXES 相當於TYPE_GYROSCOPE,但不支援一或兩個軸的支援案例。
最後三個值代表是否支援指定座標軸的角速度值。 值為 1.0 表示支援座標軸,而值為 0 表示不支援。 支援的座標軸應該在建置階段決定,而且這些值不會在運行時間期間變更。
不支援之座標軸的角速度值會設定為 0。
類似於 android.hardware.Sensor#TYPE_GYROSCOPE。
<ul>li values[0]: x 軸的 Angular 速度 (如果支援)</li li>>< 值[1]: y 軸周圍的 Angular 速度 (如果支援)</li li>>< 值[2]: Z 軸周圍的 Angular 速度 (if if supported)</li li<>> values[3]: x 軸</li<>li> 值支援的 Angular 速度[4]: y 軸</li li> 值支援的 Angular 速度[5]: z 軸</li><></ 支援的 Angular 速度><ul>
<h4>android.hardware.Sensor#TYPE_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED Sensor.TYPE_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED: </h4> 相當於TYPE_ACCELEROMETER_UNCALIBRATED,但不支援一或兩個軸的支援案例。
最後三個值代表是否支援指定座標軸的加速值。 值為 1.0 表示支援座標軸,而值為 0 表示不支援。 支援的座標軸應該在建置階段決定,而且這些值不會在運行時間期間變更。
不支援之座標軸的加速值和偏差值會設定為 0。
<ul>li values[0]: x_uncalib沒有偏差補償 (如果支援)</li li>>< 值[1]: y_uncalib沒有偏差補償 (如果支援)</li li><> 值[2]: z_uncalib沒有偏差補償 (如果支援)<li li<>> values[3]: estimated x_bias (if supported)</li li<>> values[4]: estimated y_bias (if supported)</li<>li> values[5]: estimated z_bias (if supported)</li><li values[6]: x 軸</li<>值>支援的加速[7]: y 軸/li 值支援的加速[8]: z 軸<</li><<>>/ul 支援的加速> ><>
<h4:</h4>>android.hardware.Sensor#TYPE_GYROSCOPE_LIMITED_AXES_UNCALIBRATED Sensor.TYPE_GYROSCOPE_LIMITED_AXES_UNCALIBRATED 相當於TYPE_GYROSCOPE_UNCALIBRATED,但不支援一或兩個軸的支援案例。
最後三個值代表是否支援指定座標軸的角速度值。 值為 1.0 表示支援座標軸,而值為 0 表示不支援。 支援的座標軸應該在建置階段決定,而且這些值不會在運行時間期間變更。
不支援之座標軸的角速度值和漂移值會設定為 0。
<ul>li values[0]: X 軸周圍的 Angular 速度 (w/o 漂移補償) (如果支援)</li li<>> values[1]: Y 軸周圍的 Angular 速度 (w/o 漂移補償) (如果支援)</li<>li> values[2]: Z 軸周圍的 Angular speed (w/o drift compensation) (if supported)</li<>li> values[3]: estimated drift around X axis (if supported)</li li><> values[4]:>< Y 軸的估計漂移 (如果支援)</li li<>> 值[5]: Z 軸的估計漂移 (如果支援)</li<>> li 值[6]: x< 軸/li<>> 值支援的 Angular 速度[7]: y 軸</li li> 值支援的 Angular 速度[8]: z 軸</<>li></ul></p 支援的 Angular 速度>
<h4>android.hardware.Sensor#TYPE_HEADING Sensor.TYPE_HEADING:</h4>
此類型的感測器會測量裝置相對於真實北度的方向。 此值必須介於0.0(含)和360.0之間(獨佔),0表示北、90 東、180南部和270西部。
精確度是以 68% 信賴度來定義。 在假設基礎分佈為 Gaussian 常態的情況下,這會被視為一個標準偏差。 例如,如果標題傳回 60 度,且精確度傳回 10 度,則 true 標題的機率為 50 度到 70 度之間,則 true 標題的機率為 68%。
<ul><li> values[0]: 以度為單位的測量標題。</li li><> values[1]: 標題正確度。</li></ul>
的 android.hardware.SensorEvent.valuesJava 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。