added replay template
This commit is contained in:
parent
c8d3fa58ab
commit
ed0b0443c6
@ -148,7 +148,7 @@ func ConvertUbxSensorData(msg interface{}) (*SensorData, error) {
|
||||
sd.HeadMotion = float64(v.HeadMot_dege5) / 1e+5
|
||||
sd.HeadDevice = float64(v.HeadVeh_dege5) / 1e+5
|
||||
sd.HeadingAcc = float64(v.HeadAcc_dege5) / 1e+5
|
||||
sd.Speed = float64(v.GSpeed_mm_s) / 3600
|
||||
sd.Speed = float64(v.GSpeed_mm_s) / 3.6e+3
|
||||
case *ublox.HnrPvt:
|
||||
//logrus.Println("HNR-PVT")
|
||||
sd.itow = v.ITOW_ms
|
||||
@ -161,7 +161,7 @@ func ConvertUbxSensorData(msg interface{}) (*SensorData, error) {
|
||||
sd.HeadMotion = float64(v.HeadMot_dege5) / 1e+5
|
||||
sd.HeadDevice = float64(v.HeadVeh_dege5) / 1e+5
|
||||
sd.HeadingAcc = float64(v.HeadAcc_dege5) / 1e+5
|
||||
sd.Speed = float64(v.GSpeed_mm_s) / 3600
|
||||
sd.Speed = float64(v.GSpeed_mm_s) / 3.6e+3
|
||||
case *ublox.NavAtt:
|
||||
//logrus.Println("NAV-ATT")
|
||||
sd.itow = v.ITOW_ms
|
||||
|
||||
180
templates/replay.html
Normal file
180
templates/replay.html
Normal file
@ -0,0 +1,180 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.bundle.js"></script>
|
||||
<meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no" />
|
||||
<script src="https://api.mapbox.com/mapbox-gl-js/v1.12.0/mapbox-gl.js"></script>
|
||||
<link href="https://api.mapbox.com/mapbox-gl-js/v1.12.0/mapbox-gl.css" rel="stylesheet" />
|
||||
<style>
|
||||
body { margin: 0; padding: 0; }
|
||||
#map { position: absolute; top: 0; bottom: 0; width: 100%; }
|
||||
</style>
|
||||
<script src="static/scripts/websocket.js"></script>
|
||||
<style>
|
||||
|
||||
.legend {
|
||||
background-color: #fff;
|
||||
border-radius: 3px;
|
||||
bottom: 30px;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
||||
font: 12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif;
|
||||
padding: 10px;
|
||||
position: absolute;
|
||||
right: 10px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.legend h4 {
|
||||
margin: 0 0 10px;
|
||||
}
|
||||
|
||||
.legend div span {
|
||||
border-radius: 50%;
|
||||
display: inline-block;
|
||||
height: 10px;
|
||||
margin-right: 5px;
|
||||
width: 10px;
|
||||
}
|
||||
|
||||
body{margin:0; padding:0; font-size:13px; font-family:Georgia, "Times New Roman", Times, serif; color:#919191; background-color:#232323;}
|
||||
|
||||
.float-child {
|
||||
width: 45%;
|
||||
float: left;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.scene {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
border: 0px solid #CCC;
|
||||
margin: 75px;
|
||||
perspective: 400px;
|
||||
}
|
||||
|
||||
.cube {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
position: relative;
|
||||
transform-style: preserve-3d;
|
||||
/*transform: translateZ(-100px);*/
|
||||
/*transition: transform 25ms;*/
|
||||
}
|
||||
|
||||
.cube.show-front { transform:/*translateZ(-100px)*/ rotateY( 0deg); }
|
||||
.cube.show-right { transform:/*translateZ(-100px)*/ rotateY( -90deg); }
|
||||
.cube.show-back { transform:/*translateZ(-100px)*/ rotateY(-180deg); }
|
||||
.cube.show-left { transform:/*translateZ(-100px)*/ rotateY( 90deg); }
|
||||
.cube.show-top { transform:/*translateZ(-100px)*/ rotateX( -90deg); }
|
||||
.cube.show-bottom { transform:/*translateZ(-100px)*/ rotateX( 90deg); }
|
||||
|
||||
.cube__face {
|
||||
position: absolute;
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
border: 1px solid white;
|
||||
line-height: 200px;
|
||||
font-size: 40px;
|
||||
font-weight: bold;
|
||||
color: white;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.cube__face--front { background: hsla( 0, 100%, 50%, 0.7); }
|
||||
.cube__face--right { background: hsla( 60, 100%, 50%, 0.7); }
|
||||
.cube__face--back { background: hsla(120, 100%, 50%, 0.7); }
|
||||
.cube__face--left { background: hsla(180, 100%, 50%, 0.7); }
|
||||
.cube__face--top { background: hsla(240, 100%, 50%, 0.7); }
|
||||
.cube__face--bottom { background: hsla(300, 100%, 50%, 0.7); }
|
||||
|
||||
.cube__face--front { transform: rotateY( 0deg) translateZ(100px); }
|
||||
.cube__face--right { transform: rotateY( 90deg) translateZ(100px); }
|
||||
.cube__face--back { transform: rotateY(180deg) translateZ(100px); }
|
||||
.cube__face--left { transform: rotateY(-90deg) translateZ(100px); }
|
||||
.cube__face--top { transform: rotateX( 90deg) translateZ(100px); }
|
||||
.cube__face--bottom { transform: rotateX(-90deg) translateZ(100px); }
|
||||
|
||||
label { margin-right: 10px; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<table style="font-size: small">
|
||||
<tr>
|
||||
<td valign="top" width="50%">
|
||||
<p>Click "Open" to create a connection to the server.
|
||||
</p>
|
||||
<form>
|
||||
<button id="open">Verbinden</button>
|
||||
<button id="close">Trennen</button>
|
||||
<p style="display: none" >
|
||||
<input id="input" type="text" value="Hello world!">
|
||||
<button id="send">Send</button>
|
||||
</p>
|
||||
</form>
|
||||
|
||||
<button id="messung starten">Messung starten</button>
|
||||
<button id="messung beenden">Messung beenden</button>
|
||||
<button id="messung speichern">Messung speichern</button>
|
||||
<button id="messung verwerfen">Messung verwerfen</button>
|
||||
<button id="messung laden">Messung laden</button></li>
|
||||
</td>
|
||||
<td valign="top" width="100%">
|
||||
<div id="output"></div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class="float-container">
|
||||
<div class="float-child">
|
||||
<label id="TCPlong" style= "font: 12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif">Smartphone long: </label>
|
||||
<label id="TCPlat" style= "font: 12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif">Smartphone lat: </label>
|
||||
<label id="SERIALlong" style= "font: 12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif">Ublox long: </label>
|
||||
<label id="SERIALlat" style= "font: 12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif">Ublox lat: </label>
|
||||
<label id="diffLong" style= "font: 12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif">Differenz long: </label>
|
||||
<label id="diffLat" style= "font: 12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif">Differenz lat: </label>
|
||||
<div class="scene" style='width: 500px; height: 500px;'>
|
||||
<div id="map" style='width: 500px; height: 500px;'></div>
|
||||
<div id="state-legend" class="legend">
|
||||
<h4>Legende</h4>
|
||||
<div><span style="background-color: yellow"></span>Ublox</div>
|
||||
<div><span style="background-color: blue"></span>Smartphone</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="float-child">
|
||||
<div class="scene">
|
||||
<p style="font-size: large">Smartphone</p>
|
||||
<div id="gyroscopeTCP" class="cube">
|
||||
<div class="cube__face cube__face--front">front</div>
|
||||
<div class="cube__face cube__face--back">back</div>
|
||||
<div class="cube__face cube__face--right">right</div>
|
||||
<div class="cube__face cube__face--left">left</div>
|
||||
<div class="cube__face cube__face--top">top</div>
|
||||
<div class="cube__face cube__face--bottom">bottom</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="scene">
|
||||
<p style="font-size: large">Ublox</p>
|
||||
<div id="gyroscopeSERIAL" class="cube">
|
||||
<div class="cube__face cube__face--front">front</div>
|
||||
<div class="cube__face cube__face--back">back</div>
|
||||
<div class="cube__face cube__face--right">right</div>
|
||||
<div class="cube__face cube__face--left">left</div>
|
||||
<div class="cube__face cube__face--top">top</div>
|
||||
<div class="cube__face cube__face--bottom">bottom</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://d3js.org/d3.v3.min.js" charset="utf-8"></script>
|
||||
<script src="static/scripts/map.js"></script>
|
||||
|
||||
<div style="width: 600px; height: 400px;">
|
||||
<canvas id="myChart" width="400" height="200"></canvas>
|
||||
</div>
|
||||
<script src="static/scripts/chart.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
Loading…
Reference in New Issue
Block a user