104 lines
3.0 KiB
HTML
104 lines
3.0 KiB
HTML
|
<!DOCTYPE html>
|
||
|
<html lang="en">
|
||
|
<head>
|
||
|
<title>ROS + Bootstrap 5 demo</title>
|
||
|
<!-- Required meta tags -->
|
||
|
<meta charset="utf-8" />
|
||
|
<meta
|
||
|
name="viewport"
|
||
|
content="width=device-width, initial-scale=1, shrink-to-fit=no"
|
||
|
/>
|
||
|
|
||
|
<!-- Bootstrap CSS v5.2.1 -->
|
||
|
<link
|
||
|
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css"
|
||
|
rel="stylesheet"
|
||
|
integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN"
|
||
|
crossorigin="anonymous"
|
||
|
/>
|
||
|
</head>
|
||
|
|
||
|
<body>
|
||
|
<body class="bg-light"></body>
|
||
|
|
||
|
<header>
|
||
|
<!-- place navbar here -->
|
||
|
</header>
|
||
|
<main>
|
||
|
<!-- SPEED -->
|
||
|
<div class="row">
|
||
|
<div class="col-md-4"></div>
|
||
|
<div class="col-md-4">
|
||
|
<label for="robot-speed">
|
||
|
<strong>Robot speed</strong>
|
||
|
</label>
|
||
|
<input
|
||
|
type="range"
|
||
|
min="15"
|
||
|
max="80"
|
||
|
class="custom-range"
|
||
|
id="robot-speed"
|
||
|
/>
|
||
|
</div>
|
||
|
<div class="col-md-4"></div>
|
||
|
</div>
|
||
|
|
||
|
<!-- VIDEO -->
|
||
|
<div class="row my-4">
|
||
|
<div class="col d-flex justify-content-center">
|
||
|
<img src="" class="p-1 bg-dark" alt="" id="video" />
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<!-- JOYSTICK -->
|
||
|
<div class="row my-4">
|
||
|
<div class="col">
|
||
|
<div
|
||
|
class="d-flex justify-content-center"
|
||
|
style="width: 210px; height: 210px"
|
||
|
>
|
||
|
<div id="joystick"></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<!-- INFO -->
|
||
|
<div class="row my-4">
|
||
|
<div class="col-md-2"></div>
|
||
|
<div class="col-md-8">
|
||
|
<div class="alert alert-success">
|
||
|
<h4 class="alert-heading">ROS + Bootstrap interface demo</h4>
|
||
|
<ul>
|
||
|
<li>set speed using a slider</li>
|
||
|
<li>use joystick or WASD keys on keyboard to move</li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="col-md-2"></div>
|
||
|
</div>
|
||
|
</main>
|
||
|
<footer>
|
||
|
<!-- place footer here -->
|
||
|
</footer>
|
||
|
|
||
|
<!-- Optional JavaScript -->
|
||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/roslibjs/1.1.0/roslib.min.js"></script>
|
||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/eventemitter3/5.0.1/index.min.js"></script>
|
||
|
<script src="https://github.com/GT-RAIL/keyboardteleopjs/raw/develop/build/keyboardteleop.min.js"></script>
|
||
|
<script src="//yoannmoinet.github.io/nipplejs/javascripts/nipplejs.js"></script>
|
||
|
<script src="webui.js"></script>
|
||
|
<!-- Bootstrap JavaScript Libraries -->
|
||
|
<script
|
||
|
src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper.min.js"
|
||
|
integrity="sha384-I7E8VVD/ismYTF4hNIPjVp/Zjvgyol6VFvRkX/vR+Vc4jQkC+hVqc2pM8ODewa9r"
|
||
|
crossorigin="anonymous"
|
||
|
></script>
|
||
|
|
||
|
<script
|
||
|
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.min.js"
|
||
|
integrity="sha384-BBtl+eGJRgqQAUMxJ7pMwbEyER4l1g+O15P+16Ep7Q9Q+zqX6gSbd85u4mG4QzX+"
|
||
|
crossorigin="anonymous"
|
||
|
></script>
|
||
|
</body>
|
||
|
</html>
|