BasketSettings.vue 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <template>
  2. <div class="card">
  3. <div class="card-header">Basket Settings</div>
  4. <div class="card-body">
  5. <div class="mb-3">
  6. <label class="form-label">Position</label>
  7. <div class="row mb-2">
  8. <div class="col">
  9. <div class="row">
  10. <div class="col-auto pt-1">X:</div>
  11. <div class="col"><input v-model="basket.pos.x" type="number" step="0.01" class="form-control form-control-sm"></div>
  12. </div>
  13. </div>
  14. <div class="col">
  15. <div class="row">
  16. <div class="col-auto pt-1">Y:</div>
  17. <div class="col"><input v-model="basket.pos.y" type="number" step="0.01" class="form-control form-control-sm"></div>
  18. </div>
  19. </div>
  20. <div class="col">
  21. <div class="row">
  22. <div class="col-auto pt-1">Z:</div>
  23. <div class="col"><input v-model="basket.pos.z" type="number" step="0.01" class="form-control form-control-sm"></div>
  24. </div>
  25. </div>
  26. <div class="col-auto">
  27. <button class="btn btn-sm btn-outline-secondary btn-danger me-1" @click="setPosition(n)" title="Set current position of nozzle">🞊</button>
  28. </div>
  29. </div>
  30. </div>
  31. <div class="row mt-2">
  32. <div class="col">
  33. <button :disabled="loading" class="btn btn-sm btn-outline-secondary" @click="applaySettings()">Applay settings</button>
  34. </div>
  35. </div>
  36. </div>
  37. </div>
  38. </template>
  39. <script>
  40. import machineState from '../js/machine_state.js'
  41. export default {
  42. mixins: [machineState],
  43. props: {
  44. basket: Object,
  45. machineState: Object,
  46. machinePos: Object,
  47. loading: Boolean
  48. },
  49. methods: {
  50. applaySettings() {
  51. this.$emit('applaySettings')
  52. },
  53. setPosition(number) {
  54. if (this.machineStateIsOK() == true) {
  55. this.basket.pos.x = parseFloat(this.machinePos.x)
  56. this.basket.pos.y = parseFloat(this.machinePos.y)
  57. this.basket.pos.z = parseFloat(this.machinePos.z)
  58. }
  59. },
  60. }
  61. }
  62. </script>
  63. <style>
  64. </style>