-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
112 lines (109 loc) · 3.9 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>加速度センサーの値を取る</title>
<style>
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
html, body{}
</style>
</head>
<body>
<header>
<h1>重力加速度を除いた加速度 加速度 回転速度</h1>
</header>
<main>
<div>
<div id="geolocation">
<h2>位置情報</h2>
<p>log: <span id="ex_gps"></span></p>
</div>
<div id="acceleration">
<h2>加速度</h2>
<p>x: <span id="acc-x"></span></p>
<p>y: <span id="acc-y"></span></p>
<p>z: <span id="acc-z"></span></p>
</div>
<div id="accelerationIncludingGravity">
<h2>加速度</h2>
<p>x: <span id="acc-gx"></span></p>
<p>y: <span id="acc-gy"></span></p>
<p>z: <span id="acc-gz"></span></p>
</div>
<div id="rotationRate">
<h2>回転速度</h2>
<p>a: <span id="rr-a"></span></p>
<p>b: <span id="rr-b"></span></p>
<p>g: <span id="rr-g"></span></p>
</div>
</div>
</main>
<script>
window.addEventListener('load', function(){
function successFunc(){
}
if(navigator.geolocation){
navigator.geolocation.watchPosition(successFunc, errorFunc);
}else{
document.getElementById('ex_gps').insertAdjacentHTML('afterbegin', 'エラー:geolocationを取得できません。');
}
}, false)
function successFunc(position){
var crd = position.coords;
var text = "緯度 latitude:" + crd.latitude + "<br />"
+ "経度 longitude:" + crd.longitude + "<br />"
+ "高度 altitude:" + crd.altitude + "<br />"
+ "水平方向の誤差 accuracy:" + crd.accuracy + "<br />"
+ "垂直方向の誤差 altitudeAccuracy:" + crd.altitudeAccuracy + "<br />"
+ "方向 heading:" + crd.heading + "<br />"
+ "速度 speed:" + crd.speed
;
document.getElementById('ex_gps').innerHTML = text;
}
function errorFunc(error){
document.getElementById('ex_gps').innerHTML = "エラーコード:" + error.code + "<br />エラー内容:" + error.message;
}
</script>
<!-->
(function() {
window.addEventListener("devicemotion", function(e){
//加速度
var acc = e.acceleration;
var x = obj2NumberFix(acc.x, 5);
var y = obj2NumberFix(acc.y, 5);
var z = obj2NumberFix(acc.z, 5);
//傾き(重力加速度)
var acc_g = e.accelerationIncludingGravity;
var gx = obj2NumberFix(acc_g.x, 5);
var gy = obj2NumberFix(acc_g.y, 5);
var gz = obj2NumberFix(acc_g.z, 5);
//回転値
var rota_r = e.rotationRate;
var a = obj2NumberFix(rota_r.alpha, 5); //z方向
var b = obj2NumberFix(rota_r.beta, 5); //x方向
var g = obj2NumberFix(rota_r.gamma, 5); // y方向
//表示
print3('acc-x', x, 'acc-y', y, 'acc-z', z); //加速度
print3('acc-gx', gx, 'acc-gy', gy, 'acc-gz', gz); //傾き
print3('rr-a', a, 'rr-b', b, 'rr-g', g); //回転値
// function
function obj2NumberFix(obj, fix_deg){
return Number(obj).toFixed(fix_deg);
}
function print3(id1, value1, id2, value2, id3, value3){
print1(id1, value1);
print1(id2, value2);
print1(id3, value3);
}
function print1(id, value){
var id_obj = document.getElementById(id);
id_obj.innerHTML = value;
}
});
})();
</script>
<-->
</body>
</html>