diff --git a/Main/src/main/java/com/chameleonvision/vision/camera/Camera.java b/Main/src/main/java/com/chameleonvision/vision/camera/Camera.java index 367215705..102b08886 100644 --- a/Main/src/main/java/com/chameleonvision/vision/camera/Camera.java +++ b/Main/src/main/java/com/chameleonvision/vision/camera/Camera.java @@ -9,6 +9,8 @@ import edu.wpi.cscore.*; import edu.wpi.first.cameraserver.CameraServer; import org.opencv.core.Mat; +import java.nio.channels.Pipe; +import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.List; @@ -42,7 +44,7 @@ public class Camera { private CameraValues camVals; private CamVideoMode camVideoMode; private int currentPipelineIndex; - private HashMap pipelines; + private List pipelines; public Camera(String cameraName) { this(cameraName, DEFAULT_FOV); @@ -57,18 +59,16 @@ public class Camera { } public Camera(String cameraName, UsbCameraInfo usbCamInfo, double fov, StreamDivisor divisor) { - this(cameraName, usbCamInfo, fov, new HashMap<>(), 0, divisor); + this(cameraName, usbCamInfo, fov, new ArrayList<>(), 0, divisor); } - public Camera(String cameraName, double fov, int videoModeIndex, StreamDivisor divisor) { - this(cameraName, fov, new HashMap<>(), videoModeIndex, divisor); - } - - public Camera(String cameraName, double fov, HashMap pipelines, int videoModeIndex, StreamDivisor divisor) { + public Camera(String cameraName, double fov, List pipelines, int videoModeIndex, StreamDivisor divisor) { this(cameraName, CameraManager.AllUsbCameraInfosByName.get(cameraName), fov, pipelines, videoModeIndex, divisor); } - - public Camera(String cameraName, UsbCameraInfo usbCamInfo, double fov, HashMap pipelines, int videoModeIndex, StreamDivisor divisor) { + public Camera(String cameraName, double fov, int videoModeIndex, StreamDivisor divisor) { + this(cameraName, fov, new ArrayList<>(), videoModeIndex, divisor); + } + public Camera(String cameraName, UsbCameraInfo usbCamInfo, double fov, List pipelines, int videoModeIndex, StreamDivisor divisor) { FOV = fov; name = cameraName; @@ -140,28 +140,20 @@ public class Camera { ServerHandler.sendFullSettings(); } } - public void addPipeline() { - addPipeline(pipelines.size()); + Pipeline p = new Pipeline(); + p.nickname = "New pipeline " + pipelines.size(); + addPipeline(p); + } + public void addPipeline(Pipeline p){ + this.pipelines.add(p); } - public void addPipeline(Pipeline pipeline) { - int newPipelineIndex = pipelines.size(); - addPipeline(newPipelineIndex, pipeline); + public void deletePipeline(int index) { + pipelines.remove(index); } - - private void addPipeline(int pipelineNumber) { - if (pipelines.containsKey(pipelineNumber)) return; - pipelines.put(pipelineNumber, new Pipeline()); - } - - private void addPipeline(int pipelineIndex, Pipeline pipeline) { - if (pipelines.containsKey(pipelineIndex)) return; - pipelines.put(pipelineIndex, pipeline); - } - - public void deleteCurrentPipeline() { - pipelines.remove(getCurrentPipelineIndex()); + public void deletePipeline() { + deletePipeline(getCurrentPipelineIndex()); } public Pipeline getCurrentPipeline() { @@ -189,12 +181,12 @@ public class Camera { streamDivisor = StreamDivisor.values()[divisor]; } - public HashMap getPipelines() { + public List getPipelines() { return pipelines; } public List getPipelinesNickname(){ var pipelines = getPipelines(); - return pipelines.values().stream().map(pipeline -> pipeline.nickname).collect(Collectors.toList()); + return pipelines.stream().map(pipeline -> pipeline.nickname).collect(Collectors.toList()); } public CamVideoMode getVideoMode() { diff --git a/Main/src/main/java/com/chameleonvision/vision/camera/CameraDeserializer.java b/Main/src/main/java/com/chameleonvision/vision/camera/CameraDeserializer.java index d0440c7ca..50ac7cb09 100644 --- a/Main/src/main/java/com/chameleonvision/vision/camera/CameraDeserializer.java +++ b/Main/src/main/java/com/chameleonvision/vision/camera/CameraDeserializer.java @@ -2,13 +2,17 @@ package com.chameleonvision.vision.camera; import com.chameleonvision.vision.Pipeline; import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.type.MapType; +import com.fasterxml.jackson.databind.type.ArrayType; import com.fasterxml.jackson.databind.type.TypeFactory; import com.google.gson.*; import java.lang.reflect.Type; +import java.util.ArrayList; import java.util.HashMap; +import java.util.List; public class CameraDeserializer implements JsonDeserializer { @Override @@ -21,12 +25,12 @@ public class CameraDeserializer implements JsonDeserializer { var divisor = StreamDivisor.values()[jsonObj.get("streamDivisor").getAsInt()]; var pipelines = jsonObj.get("pipelines"); - HashMap actualPipelines = new HashMap<>(); + List actualPipelines = new ArrayList<>(); ObjectMapper mapper = new ObjectMapper(); TypeFactory typeFactory = mapper.getTypeFactory(); - MapType mapType = typeFactory.constructMapType(HashMap.class, Integer.class, Pipeline.class); + JavaType arrayType = typeFactory.constructCollectionType(List.class, Pipeline.class); try { - actualPipelines = mapper.readValue(pipelines.toString(), mapType); + actualPipelines = mapper.readValue(pipelines.toString(), arrayType); } catch (JsonProcessingException e) { e.printStackTrace(); } diff --git a/Main/src/main/java/com/chameleonvision/vision/camera/CameraManager.java b/Main/src/main/java/com/chameleonvision/vision/camera/CameraManager.java index 3584ef6f1..6ee622e51 100644 --- a/Main/src/main/java/com/chameleonvision/vision/camera/CameraManager.java +++ b/Main/src/main/java/com/chameleonvision/vision/camera/CameraManager.java @@ -116,8 +116,9 @@ public class CameraManager { } public static void setCurrentPipeline(int pipelineNumber) throws CameraException { - if (!getCurrentCamera().getPipelines().containsKey(pipelineNumber)) + if (pipelineNumber >= getCurrentCamera().getPipelines().size()){ throw new CameraException(CameraException.CameraExceptionType.BAD_PIPELINE); + } getCurrentCamera().setCurrentPipelineIndex(pipelineNumber); SettingsManager.updatePipelineSetting(pipelineNumber); } diff --git a/Main/src/main/java/com/chameleonvision/vision/process/VisionProcess.java b/Main/src/main/java/com/chameleonvision/vision/process/VisionProcess.java index 319de8639..f1293a591 100644 --- a/Main/src/main/java/com/chameleonvision/vision/process/VisionProcess.java +++ b/Main/src/main/java/com/chameleonvision/vision/process/VisionProcess.java @@ -78,8 +78,9 @@ public class VisionProcess implements Runnable { private void pipelineListener(EntryNotification entryNotification) { var ntPipelineIndex = (int) entryNotification.value.getDouble(); - if (camera.getPipelines().containsKey(ntPipelineIndex)) { -// camera.setEntryNotification.value.getString()); + if (ntPipelineIndex >= camera.getPipelines().size()){ + ntPipelineEntry.setNumber(camera.getCurrentPipelineIndex()); + } else{ var pipeline = camera.getCurrentPipeline(); camera.setCurrentPipelineIndex(ntPipelineIndex); try { @@ -96,8 +97,6 @@ public class VisionProcess implements Runnable { ServerHandler.sendFullSettings(); } - } else { - ntPipelineEntry.setNumber(camera.getCurrentPipelineIndex()); } } diff --git a/Main/src/main/java/com/chameleonvision/web/ServerHandler.java b/Main/src/main/java/com/chameleonvision/web/ServerHandler.java index ddcce439a..a204b4974 100644 --- a/Main/src/main/java/com/chameleonvision/web/ServerHandler.java +++ b/Main/src/main/java/com/chameleonvision/web/ServerHandler.java @@ -94,8 +94,15 @@ public class ServerHandler { sendFullSettings(); break; case "deleteCurrentPipeline": - cam.deleteCurrentPipeline(); - cam.setCurrentPipelineIndex(cam.getCurrentPipelineIndex() - 1); + int currentIndex = cam.getCurrentPipelineIndex(); + int nextIndex = 0; + if (currentIndex == cam.getPipelines().size() - 1){ + nextIndex = currentIndex - 1; + } else { + nextIndex = currentIndex; + } + cam.deletePipeline(); + cam.setCurrentPipelineIndex(nextIndex); sendFullSettings(); break; } @@ -107,17 +114,24 @@ public class ServerHandler { var cam = CameraManager.getCurrentCamera(); HashMap tmp = new HashMap<>(); tmp.put("pipeline", cam.getCurrentPipeline()); - tmp.put("pipelineList", cam.getPipelines().keySet()); + tmp.put("pipelineList", cam.getPipelinesNickname()); tmp.put("port", cam.getStreamPort()); tmp.put("resolutionList", cam.getResolutionList()); broadcastMessage(tmp); break; } case "currentPipeline": { - CameraManager.getCurrentCamera().setCurrentPipelineIndex((Integer) entry.getValue()); + var cam = CameraManager.getCurrentCamera(); + cam.setCurrentPipelineIndex((Integer) entry.getValue()); HashMap tmp = new HashMap<>(); tmp.put("pipeline", getOrdinalPipeline()); broadcastMessage(tmp); + try { + cam.setBrightness(cam.getCurrentPipeline().brightness); + cam.setExposure(cam.getCurrentPipeline().exposure); + }catch (Exception e){ + continue; + } break; } default: { diff --git a/Main/src/main/resources/web/css/chunk-c11abc1e.550a8275.css b/Main/src/main/resources/web/css/chunk-58ba3dae.65211bf4.css similarity index 98% rename from Main/src/main/resources/web/css/chunk-c11abc1e.550a8275.css rename to Main/src/main/resources/web/css/chunk-58ba3dae.65211bf4.css index b55e25bb5..90ea97515 100644 --- a/Main/src/main/resources/web/css/chunk-c11abc1e.550a8275.css +++ b/Main/src/main/resources/web/css/chunk-58ba3dae.65211bf4.css @@ -1 +1 @@ -.theme--light.v-input--selection-controls.v-input--is-disabled:not(.v-input--indeterminate) .v-icon{color:rgba(0,0,0,.26)!important}.theme--dark.v-input--selection-controls.v-input--is-disabled:not(.v-input--indeterminate) .v-icon{color:hsla(0,0%,100%,.3)!important}.v-input--selection-controls{margin-top:16px;padding-top:4px}.v-input--selection-controls .v-input__append-outer,.v-input--selection-controls .v-input__prepend-outer{margin-top:0;margin-bottom:0}.v-input--selection-controls .v-input__control{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;width:auto}.v-input--selection-controls:not(.v-input--hide-details) .v-input__slot{margin-bottom:12px}.v-input--selection-controls__input{color:inherit;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:24px;position:relative;margin-right:8px;-webkit-transition:.3s cubic-bezier(.25,.8,.25,1);transition:.3s cubic-bezier(.25,.8,.25,1);-webkit-transition-property:color,-webkit-transform;transition-property:color,-webkit-transform;transition-property:color,transform;transition-property:color,transform,-webkit-transform;width:24px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.v-application--is-rtl .v-input--selection-controls__input{margin-right:0;margin-left:8px}.v-input--selection-controls__input input[role=checkbox],.v-input--selection-controls__input input[role=radio],.v-input--selection-controls__input input[role=switch]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.v-input--selection-controls__input+.v-label{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.v-input--selection-controls__ripple{border-radius:50%;cursor:pointer;height:34px;position:absolute;-webkit-transition:inherit;transition:inherit;width:34px;left:-12px;top:calc(50% - 24px);margin:7px}.v-input--selection-controls__ripple:before{border-radius:inherit;bottom:0;content:"";position:absolute;opacity:.2;left:0;right:0;top:0;-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:scale(.2);transform:scale(.2);-webkit-transition:inherit;transition:inherit}.v-input--selection-controls__ripple .v-ripple__container{-webkit-transform:scale(1.2);transform:scale(1.2)}.v-input--selection-controls.v-input{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.v-input--selection-controls.v-input .v-label{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;top:0;height:auto}.v-input--selection-controls.v-input--is-focused .v-input--selection-controls__ripple:before,.v-input--selection-controls .v-radio--is-focused .v-input--selection-controls__ripple:before{background:currentColor;opacity:.4;-webkit-transform:scale(1.2);transform:scale(1.2)}.v-input--selection-controls .v-input--selection-controls__input:hover .v-input--selection-controls__ripple:before{background:currentColor;-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-transition:none;transition:none}.theme--light.v-input--switch .v-input--switch__thumb{color:#fff}.theme--light.v-input--switch .v-input--switch__track{color:rgba(0,0,0,.38)}.theme--light.v-input--switch.v-input--is-disabled:not(.v-input--is-dirty) .v-input--switch__thumb{color:#fafafa!important}.theme--light.v-input--switch.v-input--is-disabled:not(.v-input--is-dirty) .v-input--switch__track{color:rgba(0,0,0,.12)!important}.theme--dark.v-input--switch .v-input--switch__thumb{color:#bdbdbd}.theme--dark.v-input--switch .v-input--switch__track{color:hsla(0,0%,100%,.3)}.theme--dark.v-input--switch.v-input--is-disabled:not(.v-input--is-dirty) .v-input--switch__thumb{color:#424242!important}.theme--dark.v-input--switch.v-input--is-disabled:not(.v-input--is-dirty) .v-input--switch__track{color:hsla(0,0%,100%,.1)!important}.v-input--switch__thumb,.v-input--switch__track{background-color:currentColor;pointer-events:none;-webkit-transition:inherit;transition:inherit}.v-input--switch__track{border-radius:8px;width:36px;height:14px;left:2px;position:absolute;opacity:.6;right:2px;top:calc(50% - 7px)}.v-input--switch__thumb{border-radius:50%;top:calc(50% - 10px);height:20px;position:relative;width:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)}.v-input--switch .v-input--selection-controls__input{width:38px}.v-input--switch .v-input--selection-controls__ripple{top:calc(50% - 24px)}.v-input--switch.v-input--is-dirty.v-input--is-disabled{opacity:.6}.v-application--is-ltr .v-input--switch .v-input--selection-controls__ripple{left:-14px}.v-application--is-ltr .v-input--switch.v-input--is-dirty .v-input--selection-controls__ripple,.v-application--is-ltr .v-input--switch.v-input--is-dirty .v-input--switch__thumb{-webkit-transform:translate(20px);transform:translate(20px)}.v-application--is-rtl .v-input--switch .v-input--selection-controls__ripple{right:-14px}.v-application--is-rtl .v-input--switch.v-input--is-dirty .v-input--selection-controls__ripple,.v-application--is-rtl .v-input--switch.v-input--is-dirty .v-input--switch__thumb{-webkit-transform:translate(-20px);transform:translate(-20px)}.v-input--switch:not(.v-input--switch--flat):not(.v-input--switch--inset) .v-input--switch__thumb{-webkit-box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.v-input--switch--inset .v-input--selection-controls__input,.v-input--switch--inset .v-input--switch__track{width:48px}.v-input--switch--inset .v-input--switch__track{border-radius:14px;height:28px;left:-4px;opacity:.32;top:calc(50% - 14px)}.v-application--is-ltr .v-input--switch--inset .v-input--selection-controls__ripple,.v-application--is-ltr .v-input--switch--inset .v-input--switch__thumb{-webkit-transform:translate(0)!important;transform:translate(0)!important}.v-application--is-ltr .v-input--switch--inset.v-input--is-dirty .v-input--selection-controls__ripple,.v-application--is-ltr .v-input--switch--inset.v-input--is-dirty .v-input--switch__thumb{-webkit-transform:translate(20px)!important;transform:translate(20px)!important}.v-application--is-rtl .v-input--switch--inset .v-input--selection-controls__ripple,.v-application--is-rtl .v-input--switch--inset .v-input--switch__thumb{-webkit-transform:translate(-6px)!important;transform:translate(-6px)!important}.v-application--is-rtl .v-input--switch--inset.v-input--is-dirty .v-input--selection-controls__ripple,.v-application--is-rtl .v-input--switch--inset.v-input--is-dirty .v-input--switch__thumb{-webkit-transform:translate(-26px)!important;transform:translate(-26px)!important}.v-snack{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;left:8px;pointer-events:none;position:fixed;right:8px;text-align:left;-webkit-transition-duration:.15s;transition-duration:.15s;-webkit-transition-timing-function:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1);z-index:1000}.v-snack--absolute{position:absolute}.v-snack--top{top:8px}.v-snack--bottom{bottom:8px}.v-snack__wrapper{background-color:#323232;border-radius:4px;margin:0 auto;pointer-events:auto;-webkit-transition:inherit;transition:inherit;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform;min-width:100%;-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.v-snack__content,.v-snack__wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.v-snack__content{min-height:48px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;overflow:hidden;padding:8px 16px;width:100%}.v-snack__content .v-btn.v-btn{color:#fff;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:auto;margin:0 -8px 0 24px;min-width:auto;padding:8px;width:auto}.v-snack__content .v-btn.v-btn__content{margin:-2px}.v-application--is-rtl .v-snack__content .v-btn.v-btn{margin:0 24px 0 -8px}.v-snack__content .v-btn.v-btn:before{display:none}.v-snack--multi-line .v-snack__content{height:auto;min-height:68px}.v-snack--vertical .v-snack__content{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:auto;padding:16px 16px 8px}.v-snack--vertical .v-snack__content .v-btn.v-btn{-ms-flex-item-align:end;align-self:flex-end;justify-self:flex-end;margin-left:0;margin-top:18px}.v-snack--vertical .v-snack__content .v-btn__content{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;margin:0}@media only screen and (min-width:600px){.v-snack__wrapper{min-width:344px;max-width:672px}.v-snack--left .v-snack__wrapper{margin-left:0}.v-snack--right .v-snack__wrapper{margin-right:0}.v-snack__content .v-btn:first-of-type{margin-left:42px}.v-application--is-rtl .v-snack__content .v-btn:first-of-type{margin-left:0;margin-right:42px}}.v-snack-transition-enter .v-snack__wrapper{-webkit-transform:scale(.8);transform:scale(.8)}.v-snack-transition-enter .v-snack__wrapper,.v-snack-transition-leave-to .v-snack__wrapper{opacity:0}.hover[data-v-415259b7]:hover{color:#fff!important}.v-tooltip{display:inline}.v-tooltip__content{background:rgba(97,97,97,.9);color:#fff;border-radius:4px;font-size:14px;line-height:22px;display:inline-block;padding:5px 16px;position:absolute;text-transform:none;width:auto;opacity:1;pointer-events:none}.v-tooltip__content--fixed{position:fixed}.v-tooltip__content[class*=-active]{-webkit-transition-timing-function:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.v-tooltip__content[class*=enter-active]{-webkit-transition-duration:.15s;transition-duration:.15s}.v-tooltip__content[class*=leave-active]{-webkit-transition-duration:75ms;transition-duration:75ms}.colsClass[data-v-653fc3ad]{padding:0!important}.videoClass[data-v-653fc3ad]{text-align:center}.videoClass img[data-v-653fc3ad]{height:auto!important;width:70%;vertical-align:middle}#Point[data-v-653fc3ad]{padding-top:5px;text-align:center;color:#f4f4f4}.v-input--checkbox.v-input--indeterminate.v-input--is-disabled{opacity:.6}.v-dialog{border-radius:4px;margin:24px;overflow-y:auto;pointer-events:auto;-webkit-transition:.3s cubic-bezier(.25,.8,.25,1);transition:.3s cubic-bezier(.25,.8,.25,1);width:100%;z-index:inherit;-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.v-dialog:not(.v-dialog--fullscreen){max-height:90%}.v-dialog>*{width:100%}.v-dialog>.v-card>.v-card__title{font-size:1.25rem;font-weight:500;letter-spacing:.0125em;padding:16px 24px 10px}.v-dialog>.v-card>.v-card__text{padding:0 24px 20px}.v-dialog__content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;pointer-events:none;position:fixed;top:0;-webkit-transition:.2s cubic-bezier(.25,.8,.25,1),z-index 1ms;transition:.2s cubic-bezier(.25,.8,.25,1),z-index 1ms;width:100%;z-index:6;outline:none}.v-dialog__activator,.v-dialog__activator *{cursor:pointer}.v-dialog__container{display:inline}.v-dialog--animated{-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:animate-dialog;animation-name:animate-dialog;-webkit-animation-timing-function:cubic-bezier(.25,.8,.25,1);animation-timing-function:cubic-bezier(.25,.8,.25,1)}.v-dialog--fullscreen{border-radius:0;margin:0;height:100%;position:fixed;overflow-y:auto;top:0;left:0}.v-dialog--fullscreen>.v-card{min-height:100%;min-width:100%;margin:0!important;padding:0!important}.v-dialog--scrollable,.v-dialog--scrollable>form{display:-webkit-box;display:-ms-flexbox;display:flex}.v-dialog--scrollable>.v-card,.v-dialog--scrollable>form>.v-card{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%;max-width:100%}.v-dialog--scrollable>.v-card>.v-card__actions,.v-dialog--scrollable>.v-card>.v-card__title,.v-dialog--scrollable>form>.v-card>.v-card__actions,.v-dialog--scrollable>form>.v-card>.v-card__title{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.v-dialog--scrollable>.v-card>.v-card__text,.v-dialog--scrollable>form>.v-card>.v-card__text{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;overflow-y:auto}@-webkit-keyframes animate-dialog{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.03);transform:scale(1.03)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes animate-dialog{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.03);transform:scale(1.03)}to{-webkit-transform:scale(1);transform:scale(1)}}.theme--light.v-overlay{color:rgba(0,0,0,.87)}.theme--dark.v-overlay{color:#fff}.v-overlay{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1),z-index 1ms;transition:.3s cubic-bezier(.25,.8,.5,1),z-index 1ms}.v-overlay__content{position:relative}.v-overlay__scrim{border-radius:inherit;bottom:0;height:100%;left:0;position:absolute;right:0;top:0;-webkit-transition:inherit;transition:inherit;width:100%;will-change:opacity}.v-overlay--absolute{position:absolute}.v-overlay--active{pointer-events:auto;-ms-touch-action:none;touch-action:none} \ No newline at end of file +.theme--light.v-input--selection-controls.v-input--is-disabled:not(.v-input--indeterminate) .v-icon{color:rgba(0,0,0,.26)!important}.theme--dark.v-input--selection-controls.v-input--is-disabled:not(.v-input--indeterminate) .v-icon{color:hsla(0,0%,100%,.3)!important}.v-input--selection-controls{margin-top:16px;padding-top:4px}.v-input--selection-controls .v-input__append-outer,.v-input--selection-controls .v-input__prepend-outer{margin-top:0;margin-bottom:0}.v-input--selection-controls .v-input__control{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;width:auto}.v-input--selection-controls:not(.v-input--hide-details) .v-input__slot{margin-bottom:12px}.v-input--selection-controls__input{color:inherit;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:24px;position:relative;margin-right:8px;-webkit-transition:.3s cubic-bezier(.25,.8,.25,1);transition:.3s cubic-bezier(.25,.8,.25,1);-webkit-transition-property:color,-webkit-transform;transition-property:color,-webkit-transform;transition-property:color,transform;transition-property:color,transform,-webkit-transform;width:24px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.v-application--is-rtl .v-input--selection-controls__input{margin-right:0;margin-left:8px}.v-input--selection-controls__input input[role=checkbox],.v-input--selection-controls__input input[role=radio],.v-input--selection-controls__input input[role=switch]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.v-input--selection-controls__input+.v-label{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.v-input--selection-controls__ripple{border-radius:50%;cursor:pointer;height:34px;position:absolute;-webkit-transition:inherit;transition:inherit;width:34px;left:-12px;top:calc(50% - 24px);margin:7px}.v-input--selection-controls__ripple:before{border-radius:inherit;bottom:0;content:"";position:absolute;opacity:.2;left:0;right:0;top:0;-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:scale(.2);transform:scale(.2);-webkit-transition:inherit;transition:inherit}.v-input--selection-controls__ripple .v-ripple__container{-webkit-transform:scale(1.2);transform:scale(1.2)}.v-input--selection-controls.v-input{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.v-input--selection-controls.v-input .v-label{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;top:0;height:auto}.v-input--selection-controls.v-input--is-focused .v-input--selection-controls__ripple:before,.v-input--selection-controls .v-radio--is-focused .v-input--selection-controls__ripple:before{background:currentColor;opacity:.4;-webkit-transform:scale(1.2);transform:scale(1.2)}.v-input--selection-controls .v-input--selection-controls__input:hover .v-input--selection-controls__ripple:before{background:currentColor;-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-transition:none;transition:none}.theme--light.v-input--switch .v-input--switch__thumb{color:#fff}.theme--light.v-input--switch .v-input--switch__track{color:rgba(0,0,0,.38)}.theme--light.v-input--switch.v-input--is-disabled:not(.v-input--is-dirty) .v-input--switch__thumb{color:#fafafa!important}.theme--light.v-input--switch.v-input--is-disabled:not(.v-input--is-dirty) .v-input--switch__track{color:rgba(0,0,0,.12)!important}.theme--dark.v-input--switch .v-input--switch__thumb{color:#bdbdbd}.theme--dark.v-input--switch .v-input--switch__track{color:hsla(0,0%,100%,.3)}.theme--dark.v-input--switch.v-input--is-disabled:not(.v-input--is-dirty) .v-input--switch__thumb{color:#424242!important}.theme--dark.v-input--switch.v-input--is-disabled:not(.v-input--is-dirty) .v-input--switch__track{color:hsla(0,0%,100%,.1)!important}.v-input--switch__thumb,.v-input--switch__track{background-color:currentColor;pointer-events:none;-webkit-transition:inherit;transition:inherit}.v-input--switch__track{border-radius:8px;width:36px;height:14px;left:2px;position:absolute;opacity:.6;right:2px;top:calc(50% - 7px)}.v-input--switch__thumb{border-radius:50%;top:calc(50% - 10px);height:20px;position:relative;width:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)}.v-input--switch .v-input--selection-controls__input{width:38px}.v-input--switch .v-input--selection-controls__ripple{top:calc(50% - 24px)}.v-input--switch.v-input--is-dirty.v-input--is-disabled{opacity:.6}.v-application--is-ltr .v-input--switch .v-input--selection-controls__ripple{left:-14px}.v-application--is-ltr .v-input--switch.v-input--is-dirty .v-input--selection-controls__ripple,.v-application--is-ltr .v-input--switch.v-input--is-dirty .v-input--switch__thumb{-webkit-transform:translate(20px);transform:translate(20px)}.v-application--is-rtl .v-input--switch .v-input--selection-controls__ripple{right:-14px}.v-application--is-rtl .v-input--switch.v-input--is-dirty .v-input--selection-controls__ripple,.v-application--is-rtl .v-input--switch.v-input--is-dirty .v-input--switch__thumb{-webkit-transform:translate(-20px);transform:translate(-20px)}.v-input--switch:not(.v-input--switch--flat):not(.v-input--switch--inset) .v-input--switch__thumb{-webkit-box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.v-input--switch--inset .v-input--selection-controls__input,.v-input--switch--inset .v-input--switch__track{width:48px}.v-input--switch--inset .v-input--switch__track{border-radius:14px;height:28px;left:-4px;opacity:.32;top:calc(50% - 14px)}.v-application--is-ltr .v-input--switch--inset .v-input--selection-controls__ripple,.v-application--is-ltr .v-input--switch--inset .v-input--switch__thumb{-webkit-transform:translate(0)!important;transform:translate(0)!important}.v-application--is-ltr .v-input--switch--inset.v-input--is-dirty .v-input--selection-controls__ripple,.v-application--is-ltr .v-input--switch--inset.v-input--is-dirty .v-input--switch__thumb{-webkit-transform:translate(20px)!important;transform:translate(20px)!important}.v-application--is-rtl .v-input--switch--inset .v-input--selection-controls__ripple,.v-application--is-rtl .v-input--switch--inset .v-input--switch__thumb{-webkit-transform:translate(-6px)!important;transform:translate(-6px)!important}.v-application--is-rtl .v-input--switch--inset.v-input--is-dirty .v-input--selection-controls__ripple,.v-application--is-rtl .v-input--switch--inset.v-input--is-dirty .v-input--switch__thumb{-webkit-transform:translate(-26px)!important;transform:translate(-26px)!important}.v-snack{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;left:8px;pointer-events:none;position:fixed;right:8px;text-align:left;-webkit-transition-duration:.15s;transition-duration:.15s;-webkit-transition-timing-function:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1);z-index:1000}.v-snack--absolute{position:absolute}.v-snack--top{top:8px}.v-snack--bottom{bottom:8px}.v-snack__wrapper{background-color:#323232;border-radius:4px;margin:0 auto;pointer-events:auto;-webkit-transition:inherit;transition:inherit;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform;min-width:100%;-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.v-snack__content,.v-snack__wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.v-snack__content{min-height:48px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;overflow:hidden;padding:8px 16px;width:100%}.v-snack__content .v-btn.v-btn{color:#fff;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;height:auto;margin:0 -8px 0 24px;min-width:auto;padding:8px;width:auto}.v-snack__content .v-btn.v-btn__content{margin:-2px}.v-application--is-rtl .v-snack__content .v-btn.v-btn{margin:0 24px 0 -8px}.v-snack__content .v-btn.v-btn:before{display:none}.v-snack--multi-line .v-snack__content{height:auto;min-height:68px}.v-snack--vertical .v-snack__content{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:auto;padding:16px 16px 8px}.v-snack--vertical .v-snack__content .v-btn.v-btn{-ms-flex-item-align:end;align-self:flex-end;justify-self:flex-end;margin-left:0;margin-top:18px}.v-snack--vertical .v-snack__content .v-btn__content{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;margin:0}@media only screen and (min-width:600px){.v-snack__wrapper{min-width:344px;max-width:672px}.v-snack--left .v-snack__wrapper{margin-left:0}.v-snack--right .v-snack__wrapper{margin-right:0}.v-snack__content .v-btn:first-of-type{margin-left:42px}.v-application--is-rtl .v-snack__content .v-btn:first-of-type{margin-left:0;margin-right:42px}}.v-snack-transition-enter .v-snack__wrapper{-webkit-transform:scale(.8);transform:scale(.8)}.v-snack-transition-enter .v-snack__wrapper,.v-snack-transition-leave-to .v-snack__wrapper{opacity:0}.hover[data-v-415259b7]:hover{color:#fff!important}.v-tooltip{display:inline}.v-tooltip__content{background:rgba(97,97,97,.9);color:#fff;border-radius:4px;font-size:14px;line-height:22px;display:inline-block;padding:5px 16px;position:absolute;text-transform:none;width:auto;opacity:1;pointer-events:none}.v-tooltip__content--fixed{position:fixed}.v-tooltip__content[class*=-active]{-webkit-transition-timing-function:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.v-tooltip__content[class*=enter-active]{-webkit-transition-duration:.15s;transition-duration:.15s}.v-tooltip__content[class*=leave-active]{-webkit-transition-duration:75ms;transition-duration:75ms}.colsClass[data-v-d7b415de]{padding:0!important}.videoClass[data-v-d7b415de]{text-align:center}.videoClass img[data-v-d7b415de]{height:auto!important;width:70%;vertical-align:middle}#Point[data-v-d7b415de]{padding-top:5px;text-align:center;color:#f4f4f4}.v-input--checkbox.v-input--indeterminate.v-input--is-disabled{opacity:.6}.v-dialog{border-radius:4px;margin:24px;overflow-y:auto;pointer-events:auto;-webkit-transition:.3s cubic-bezier(.25,.8,.25,1);transition:.3s cubic-bezier(.25,.8,.25,1);width:100%;z-index:inherit;-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.v-dialog:not(.v-dialog--fullscreen){max-height:90%}.v-dialog>*{width:100%}.v-dialog>.v-card>.v-card__title{font-size:1.25rem;font-weight:500;letter-spacing:.0125em;padding:16px 24px 10px}.v-dialog>.v-card>.v-card__text{padding:0 24px 20px}.v-dialog__content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;pointer-events:none;position:fixed;top:0;-webkit-transition:.2s cubic-bezier(.25,.8,.25,1),z-index 1ms;transition:.2s cubic-bezier(.25,.8,.25,1),z-index 1ms;width:100%;z-index:6;outline:none}.v-dialog__activator,.v-dialog__activator *{cursor:pointer}.v-dialog__container{display:inline}.v-dialog--animated{-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:animate-dialog;animation-name:animate-dialog;-webkit-animation-timing-function:cubic-bezier(.25,.8,.25,1);animation-timing-function:cubic-bezier(.25,.8,.25,1)}.v-dialog--fullscreen{border-radius:0;margin:0;height:100%;position:fixed;overflow-y:auto;top:0;left:0}.v-dialog--fullscreen>.v-card{min-height:100%;min-width:100%;margin:0!important;padding:0!important}.v-dialog--scrollable,.v-dialog--scrollable>form{display:-webkit-box;display:-ms-flexbox;display:flex}.v-dialog--scrollable>.v-card,.v-dialog--scrollable>form>.v-card{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%;max-width:100%}.v-dialog--scrollable>.v-card>.v-card__actions,.v-dialog--scrollable>.v-card>.v-card__title,.v-dialog--scrollable>form>.v-card>.v-card__actions,.v-dialog--scrollable>form>.v-card>.v-card__title{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.v-dialog--scrollable>.v-card>.v-card__text,.v-dialog--scrollable>form>.v-card>.v-card__text{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;overflow-y:auto}@-webkit-keyframes animate-dialog{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.03);transform:scale(1.03)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes animate-dialog{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.03);transform:scale(1.03)}to{-webkit-transform:scale(1);transform:scale(1)}}.theme--light.v-overlay{color:rgba(0,0,0,.87)}.theme--dark.v-overlay{color:#fff}.v-overlay{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1),z-index 1ms;transition:.3s cubic-bezier(.25,.8,.5,1),z-index 1ms}.v-overlay__content{position:relative}.v-overlay__scrim{border-radius:inherit;bottom:0;height:100%;left:0;position:absolute;right:0;top:0;-webkit-transition:inherit;transition:inherit;width:100%;will-change:opacity}.v-overlay--absolute{position:absolute}.v-overlay--active{pointer-events:auto;-ms-touch-action:none;touch-action:none} \ No newline at end of file diff --git a/Main/src/main/resources/web/index.html b/Main/src/main/resources/web/index.html index 676e7dc19..a27604c68 100644 --- a/Main/src/main/resources/web/index.html +++ b/Main/src/main/resources/web/index.html @@ -1 +1 @@ -Chameleon Vision
\ No newline at end of file +Chameleon Vision
\ No newline at end of file diff --git a/Main/src/main/resources/web/js/app.0989a0d2.js b/Main/src/main/resources/web/js/app.deaf0ffb.js similarity index 89% rename from Main/src/main/resources/web/js/app.0989a0d2.js rename to Main/src/main/resources/web/js/app.deaf0ffb.js index 62c1e04f4..5ab21aecf 100644 --- a/Main/src/main/resources/web/js/app.0989a0d2.js +++ b/Main/src/main/resources/web/js/app.deaf0ffb.js @@ -1,2 +1,2 @@ -(function(e){function t(t){for(var a,r,o=t[0],s=t[1],u=t[2],l=0,p=[];l({}),created(){this.$options.sockets.onmessage=async e=>{try{var t=await e.data.arrayBuffer();let n=this.$msgPack.decode(t);for(let e in n)n.hasOwnProperty(e)&&this.handleMessage(e,n[e])}catch(n){console.error("error: "+e.data+" , "+n)}}}},o=i,s=(n("034f"),n("2877")),u=n("6544"),l=n.n(u),p=n("7496"),f=n("40dc"),d=n("a523"),h=n("a75b"),m=n("0e8f"),b=n("a722"),k=n("71a3"),v=n("fe57"),g=n("2a7f"),y=Object(s["a"])(o,r,c,!1,null,null,null),w=y.exports;l()(y,{VApp:p["a"],VAppBar:f["a"],VContainer:d["a"],VContent:h["a"],VFlex:m["a"],VLayout:b["a"],VTab:k["a"],VTabs:v["a"],VToolbarItems:g["a"],VToolbarTitle:g["b"]});var C=n("8c4f");function x(e){return()=>n("1a5d")(`./${e}.vue`)}a["a"].use(C["a"]);var P=new C["a"]({base:"/",routes:[{path:"/",redirect:"/vision"},{path:"/vision",name:"Vision",component:x("Camera")},{path:"/settings",name:"Settings",component:x("Settings")}]}),L=n("2f62");a["a"].use(L["a"]);const O=e=>(t,n)=>{a["a"].set(t,e,n)};var S=new L["a"].Store({state:{settings:{teamNumber:1577,connectionType:0,ip:"",gateway:"",netmask:"",hostname:"Chameleon-vision"},pipeline:{exposure:0,brightness:0,orientation:0,hue:[0,15],saturation:[0,15],value:[0,25],erode:!1,dilate:!1,area:[0,12],ratio:[0,12],extent:[0,12],speckle:5,targetGrouping:0,targetIntersection:0,sortMode:0,isBinary:0},cameraSettings:{},resolutionList:[],port:1181,currentCameraIndex:0,currentPipelineIndex:0,cameraList:[],pipelineList:[],point:{}},mutations:{settings:O("settings"),pipeline:O("pipeline"),cameraSettings:O("cameraSettings"),resolutionList:O("resolutionList"),port:O("port"),currentCameraIndex:O("currentCameraIndex"),currentPipelineIndex:O("currentPipelineIndex"),cameraList:O("cameraList"),pipelineList:O("pipelineList"),point:O("point")},actions:{settings:e=>e.settings,pipeline:e=>e.pipeline,cameraSettings:e=>e.cameraSettings,resolutionList:e=>e.resolutionList,port:e=>e.port,currentCameraIndex:e=>e.currentCameraIndex,currentPipelineIndex:e=>e.currentPipelineIndex,cameraList:e=>e.cameraList,pipelineList:e=>e.pipelineList,point:e=>e.point,setPipeValues(e,t){for(let n in t)a["a"].set(e.pipeline,n,t[n])}}}),V=(n("5363"),n("d1e7"),n("f309"));a["a"].use(V["a"]);var T=new V["a"]({icons:{}}),_=n("b408"),I=n.n(_),j=n("7d47"),E=n.n(j);a["a"].config.productionTip=!1,a["a"].use(I.a,"ws://"+location.hostname+":8888/websocket"),a["a"].prototype.$msgPack=E()(!0),a["a"].mixin({methods:{handleInput(e,t){let n=this.$msgPack.encode({[e]:t});this.$socket.send(n)}}}),new a["a"]({router:P,store:S,vuetify:T,render:e=>e(w)}).$mount("#app")},cf05:function(e,t,n){e.exports=n.p+"img/logo.e82307fd.png"}}); -//# sourceMappingURL=app.0989a0d2.js.map \ No newline at end of file +(function(e){function t(t){for(var a,r,o=t[0],s=t[1],u=t[2],l=0,p=[];l({}),created(){this.$options.sockets.onmessage=async e=>{try{var t=await e.data.arrayBuffer();let n=this.$msgPack.decode(t);for(let e in n)n.hasOwnProperty(e)&&this.handleMessage(e,n[e])}catch(n){console.error("error: "+e.data+" , "+n)}}}},o=i,s=(n("034f"),n("2877")),u=n("6544"),l=n.n(u),p=n("7496"),d=n("40dc"),f=n("a523"),h=n("a75b"),m=n("0e8f"),b=n("a722"),k=n("71a3"),v=n("fe57"),g=n("2a7f"),y=Object(s["a"])(o,r,c,!1,null,null,null),w=y.exports;l()(y,{VApp:p["a"],VAppBar:d["a"],VContainer:f["a"],VContent:h["a"],VFlex:m["a"],VLayout:b["a"],VTab:k["a"],VTabs:v["a"],VToolbarItems:g["a"],VToolbarTitle:g["b"]});var C=n("8c4f");function x(e){return()=>n("1a5d")(`./${e}.vue`)}a["a"].use(C["a"]);var P=new C["a"]({base:"/",routes:[{path:"/",redirect:"/vision"},{path:"/vision",name:"Vision",component:x("Camera")},{path:"/settings",name:"Settings",component:x("Settings")}]}),L=n("2f62");a["a"].use(L["a"]);const O=e=>(t,n)=>{a["a"].set(t,e,n)};var S=new L["a"].Store({state:{settings:{teamNumber:1577,connectionType:0,ip:"",gateway:"",netmask:"",hostname:"Chameleon-vision"},pipeline:{exposure:0,brightness:0,orientation:0,hue:[0,15],saturation:[0,15],value:[0,25],erode:!1,dilate:!1,area:[0,12],ratio:[0,12],extent:[0,12],speckle:5,targetGrouping:0,targetIntersection:0,sortMode:0,isBinary:0},cameraSettings:{},resolutionList:[],port:1181,currentCameraIndex:0,currentPipelineIndex:0,cameraList:[],pipelineList:[],point:{}},mutations:{settings:O("settings"),pipeline:O("pipeline"),cameraSettings:O("cameraSettings"),resolutionList:O("resolutionList"),port:O("port"),currentCameraIndex:O("currentCameraIndex"),currentPipelineIndex:O("currentPipelineIndex"),cameraList:O("cameraList"),pipelineList:O("pipelineList"),point:O("point")},actions:{settings:e=>e.settings,pipeline:e=>e.pipeline,cameraSettings:e=>e.cameraSettings,resolutionList:e=>e.resolutionList,port:e=>e.port,currentCameraIndex:e=>e.currentCameraIndex,currentPipelineIndex:e=>e.currentPipelineIndex,cameraList:e=>e.cameraList,pipelineList:e=>e.pipelineList,point:e=>e.point,setPipeValues(e,t){for(let n in t)a["a"].set(e.pipeline,n,t[n])}}}),V=(n("5363"),n("d1e7"),n("f309"));a["a"].use(V["a"]);var T=new V["a"]({icons:{}}),_=n("b408"),I=n.n(_),j=n("7d47"),E=n.n(j);a["a"].config.productionTip=!1,a["a"].use(I.a,"ws://"+location.hostname+":8888/websocket"),a["a"].prototype.$msgPack=E()(!0),a["a"].mixin({methods:{handleInput(e,t){let n=this.$msgPack.encode({[e]:t});this.$socket.send(n)}}}),new a["a"]({router:P,store:S,vuetify:T,render:e=>e(w)}).$mount("#app")},cf05:function(e,t,n){e.exports=n.p+"img/logo.e82307fd.png"}}); +//# sourceMappingURL=app.deaf0ffb.js.map \ No newline at end of file diff --git a/Main/src/main/resources/web/js/app.0989a0d2.js.map b/Main/src/main/resources/web/js/app.deaf0ffb.js.map similarity index 99% rename from Main/src/main/resources/web/js/app.0989a0d2.js.map rename to Main/src/main/resources/web/js/app.deaf0ffb.js.map index f9d5e2b09..410e0f4fe 100644 --- a/Main/src/main/resources/web/js/app.0989a0d2.js.map +++ b/Main/src/main/resources/web/js/app.deaf0ffb.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/App.vue?9745","webpack:///./src/views lazy ^\\.\\/.*\\.vue$ namespace object","webpack:///./src/App.vue?7adf","webpack:///src/App.vue","webpack:///./src/App.vue?d7d8","webpack:///./src/App.vue?4f7e","webpack:///./src/router.js","webpack:///./src/store.js","webpack:///./src/plugins/vuetify.js","webpack:///./src/main.js","webpack:///./src/assets/logo.png"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","map","webpackAsyncContext","req","ids","id","keys","render","_vm","this","_h","$createElement","_c","_self","attrs","staticClass","_v","staticRenderFns","components","methods","$store","state","commit","pipeline","log","$options","sockets","onmessage","async","buffer","arrayBuffer","$msgPack","decode","prop","handleMessage","component","VApp","VAppBar","VContainer","VContent","VFlex","VLayout","VTab","VTabs","VToolbarItems","VToolbar","VToolbarTitle","lazyLoad","view","use","base","routes","path","redirect","set","val","Store","settings","teamNumber","connectionType","ip","gateway","netmask","hostname","exposure","brightness","orientation","hue","saturation","erode","dilate","area","ratio","extent","speckle","targetGrouping","targetIntersection","sortMode","isBinary","cameraSettings","resolutionList","port","currentCameraIndex","currentPipelineIndex","cameraList","pipelineList","point","mutations","actions","obj","icons","config","productionTip","location","mixin","msg","encode","$socket","send","router","store","vuetify","h","App","$mount"],"mappings":"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","file":"js/app.0989a0d2.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-716fb61c\":\"84a36d26\",\"chunk-234aed0c\":\"fbf7ad5e\",\"chunk-402ab08c\":\"dd7b432d\",\"chunk-7a810817\":\"bca05c28\",\"chunk-3ae1c3ad\":\"6979650a\",\"chunk-c11abc1e\":\"fa113e7a\",\"chunk-98e0c8cc\":\"240c79a9\",\"chunk-9cd0ff3c\":\"29be4c57\",\"chunk-c44c6306\":\"d9c69fb0\",\"chunk-79b72a3d\":\"aeb36768\",\"chunk-7cf477eb\":\"de18472d\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-716fb61c\":1,\"chunk-234aed0c\":1,\"chunk-402ab08c\":1,\"chunk-7a810817\":1,\"chunk-c11abc1e\":1,\"chunk-9cd0ff3c\":1,\"chunk-c44c6306\":1,\"chunk-79b72a3d\":1,\"chunk-7cf477eb\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-716fb61c\":\"ab43288b\",\"chunk-234aed0c\":\"62cd23bf\",\"chunk-402ab08c\":\"d47fe89d\",\"chunk-7a810817\":\"e757f52a\",\"chunk-3ae1c3ad\":\"31d6cfe0\",\"chunk-c11abc1e\":\"550a8275\",\"chunk-98e0c8cc\":\"31d6cfe0\",\"chunk-9cd0ff3c\":\"bd74e87e\",\"chunk-c44c6306\":\"3e507f7b\",\"chunk-79b72a3d\":\"52ef46aa\",\"chunk-7cf477eb\":\"a93b3047\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../node_modules/vuetify-loader/lib/loader.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../node_modules/vuetify-loader/lib/loader.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=css&\"","var map = {\n\t\"./Camera.vue\": [\n\t\t\"6ec0\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-7a810817\",\n\t\t\"chunk-c11abc1e\"\n\t],\n\t\"./CameraViewes/ContoursTab.vue\": [\n\t\t\"5c73\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-7a810817\",\n\t\t\"chunk-3ae1c3ad\"\n\t],\n\t\"./CameraViewes/InputTab.vue\": [\n\t\t\"50ef\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-402ab08c\"\n\t],\n\t\"./CameraViewes/OutputTab.vue\": [\n\t\t\"4c92\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-c44c6306\"\n\t],\n\t\"./CameraViewes/ThresholdTab.vue\": [\n\t\t\"1a40\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-7a810817\",\n\t\t\"chunk-79b72a3d\"\n\t],\n\t\"./Settings.vue\": [\n\t\t\"26d3\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-9cd0ff3c\"\n\t],\n\t\"./SettingsViewes/Cameras.vue\": [\n\t\t\"0b81\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-98e0c8cc\"\n\t],\n\t\"./SettingsViewes/General.vue\": [\n\t\t\"13f2\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-7cf477eb\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"1a5d\";\nmodule.exports = webpackAsyncContext;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app',[_c('v-app-bar',{attrs:{\"app\":\"\",\"dense\":\"\",\"clipped-left\":\"\",\"dark\":\"\"}},[_c('img',{staticClass:\"imgClass\",attrs:{\"src\":require(\"./assets/logo.png\")}}),_c('v-toolbar-title',{attrs:{\"id\":\"title\"}},[_vm._v(\"Chameleon Vision\")]),_c('div',{staticClass:\"flex-grow-1\"}),_c('v-toolbar-items',[_c('v-tabs',{attrs:{\"dark\":\"\",\"height\":\"48\",\"slider-color\":\"#4baf62\"}},[_c('v-tab',{attrs:{\"to\":\"vision\"}},[_vm._v(\"Vision\")]),_c('v-tab',{attrs:{\"to\":\"settings\"}},[_vm._v(\"Settings\")])],1)],1)],1),_c('v-content',[_c('v-container',{attrs:{\"fluid\":\"\",\"fill-height\":\"\"}},[_c('v-layout',[_c('v-flex',[_c('router-view')],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/vuetify-loader/lib/loader.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/vuetify-loader/lib/loader.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=499e1ae6&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VApp } from 'vuetify/lib/components/VApp';\nimport { VAppBar } from 'vuetify/lib/components/VAppBar';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VContent } from 'vuetify/lib/components/VContent';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VToolbarItems } from 'vuetify/lib/components/VToolbar';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VApp,VAppBar,VContainer,VContent,VFlex,VLayout,VTab,VTabs,VToolbarItems,VToolbarTitle})\n","import Vue from 'vue'\r\nimport Router from 'vue-router'\r\nVue.use(Router)\r\n\r\nfunction lazyLoad(view){\r\n return() => import(`@/views/${view}.vue`)\r\n}\r\nexport default new Router({\r\n // mode: 'history',\r\n base: process.env.BASE_URL,\r\n routes: [\r\n {\r\n path: '/',\r\n redirect:'/vision'\r\n },\r\n {\r\n path: '/vision',\r\n name: 'Vision',\r\n component: lazyLoad('Camera')\r\n },\r\n {\r\n path: '/settings',\r\n name: 'Settings',\r\n component: lazyLoad('Settings')\r\n }\r\n ]\r\n})\r\n","import Vue from 'vue'\r\nimport Vuex from 'vuex'\r\n\r\nVue.use(Vuex)\r\n\r\nconst set = key => (state,val) =>{\r\n Vue.set(state,key,val);\r\n};\r\n\r\nexport default new Vuex.Store({\r\n state: {\r\n settings:{\r\n teamNumber:1577,\r\n connectionType:0,\r\n ip:\"\",\r\n gateway:\"\",\r\n netmask:\"\",\r\n hostname: \"Chameleon-vision\"\r\n },\r\n pipeline:{\r\n exposure:0,\r\n brightness:0,\r\n orientation:0,\r\n hue:[0,15],\r\n saturation:[0,15],\r\n value:[0,25],\r\n erode:false,\r\n dilate:false,\r\n area:[0,12],\r\n ratio:[0,12],\r\n extent:[0,12],\r\n speckle:5,\r\n targetGrouping:0,\r\n targetIntersection:0,\r\n sortMode:0,\r\n isBinary:0\r\n },\r\n cameraSettings:{},\r\n resolutionList:[],\r\n port:1181,\r\n currentCameraIndex:0,\r\n currentPipelineIndex:0,\r\n cameraList:[],\r\n pipelineList:[],\r\n point:{}\r\n },\r\n mutations: {\r\n settings: set('settings'),\r\n pipeline: set('pipeline'),\r\n cameraSettings: set('cameraSettings'),\r\n resolutionList: set('resolutionList'),\r\n port: set('port'),\r\n currentCameraIndex: set('currentCameraIndex'),\r\n currentPipelineIndex: set('currentPipelineIndex'),\r\n cameraList: set('cameraList'),\r\n pipelineList: set('pipelineList'),\r\n point:set('point')\r\n },\r\n actions: {\r\n settings: state => state.settings,\r\n pipeline: state => state.pipeline,\r\n cameraSettings: state =>state.cameraSettings,\r\n resolutionList: state =>state.resolutionList,\r\n port: state =>state.port,\r\n currentCameraIndex: state =>state.currentCameraIndex,\r\n currentPipelineIndex: state =>state.currentPipelineIndex,\r\n cameraList: state =>state.cameraList,\r\n pipelineList: state =>state.pipelineList,\r\n point: state =>state.point,\r\n setPipeValues(state,obj){\r\n for(let i in obj){\r\n Vue.set(state.pipeline,i,obj[i]);\r\n }\r\n }\r\n }\r\n})\r\n","\r\nimport '@mdi/font/css/materialdesignicons.css';\r\nimport 'material-design-icons-iconfont/dist/material-design-icons.css'\r\nimport Vue from 'vue';\r\nimport Vuetify from 'vuetify/lib';\r\nVue.use(Vuetify);\r\n\r\nexport default new Vuetify({\r\n icons: {\r\n \r\n}\r\n \r\n});\r\n","import Vue from 'vue'\r\nimport App from './App.vue'\r\nimport router from './router'\r\nimport store from './store'\r\nimport vuetify from './plugins/vuetify';\r\nimport VueNativeSock from 'vue-native-websocket';\r\nimport msgPack from 'msgpack5';\r\n\r\nVue.config.productionTip = false;\r\n// Vue.use(VueNativeSock,'ws://' + location.host + '/websocket',{format: 'json'});\r\nVue.use(VueNativeSock,'ws://'+location.hostname+':8888/websocket');\r\nVue.prototype.$msgPack = msgPack(true)\r\nVue.mixin({\r\n methods:{\r\n handleInput(key,value){\r\n let msg = this.$msgPack.encode({[key]:value})\r\n this.$socket.send(msg);\r\n }\r\n }\r\n})\r\nnew Vue({\r\n router,\r\n store,\r\n vuetify,\r\n render: h => h(App)\r\n}).$mount('#app')\r\n","module.exports = __webpack_public_path__ + \"img/logo.e82307fd.png\";"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/App.vue?9745","webpack:///./src/views lazy ^\\.\\/.*\\.vue$ namespace object","webpack:///./src/App.vue?7adf","webpack:///src/App.vue","webpack:///./src/App.vue?d7d8","webpack:///./src/App.vue?4f7e","webpack:///./src/router.js","webpack:///./src/store.js","webpack:///./src/plugins/vuetify.js","webpack:///./src/main.js","webpack:///./src/assets/logo.png"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","map","webpackAsyncContext","req","ids","id","keys","render","_vm","this","_h","$createElement","_c","_self","attrs","staticClass","_v","staticRenderFns","components","methods","$store","state","commit","pipeline","log","$options","sockets","onmessage","async","buffer","arrayBuffer","$msgPack","decode","prop","handleMessage","component","VApp","VAppBar","VContainer","VContent","VFlex","VLayout","VTab","VTabs","VToolbarItems","VToolbar","VToolbarTitle","lazyLoad","view","use","base","routes","path","redirect","set","val","Store","settings","teamNumber","connectionType","ip","gateway","netmask","hostname","exposure","brightness","orientation","hue","saturation","erode","dilate","area","ratio","extent","speckle","targetGrouping","targetIntersection","sortMode","isBinary","cameraSettings","resolutionList","port","currentCameraIndex","currentPipelineIndex","cameraList","pipelineList","point","mutations","actions","obj","icons","config","productionTip","location","mixin","msg","encode","$socket","send","router","store","vuetify","h","App","$mount"],"mappings":"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","file":"js/app.deaf0ffb.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-716fb61c\":\"84a36d26\",\"chunk-234aed0c\":\"fbf7ad5e\",\"chunk-402ab08c\":\"dd7b432d\",\"chunk-7a810817\":\"bca05c28\",\"chunk-3ae1c3ad\":\"6979650a\",\"chunk-58ba3dae\":\"81c89e61\",\"chunk-98e0c8cc\":\"240c79a9\",\"chunk-9cd0ff3c\":\"29be4c57\",\"chunk-c44c6306\":\"d9c69fb0\",\"chunk-79b72a3d\":\"aeb36768\",\"chunk-7cf477eb\":\"de18472d\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-716fb61c\":1,\"chunk-234aed0c\":1,\"chunk-402ab08c\":1,\"chunk-7a810817\":1,\"chunk-58ba3dae\":1,\"chunk-9cd0ff3c\":1,\"chunk-c44c6306\":1,\"chunk-79b72a3d\":1,\"chunk-7cf477eb\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-716fb61c\":\"ab43288b\",\"chunk-234aed0c\":\"62cd23bf\",\"chunk-402ab08c\":\"d47fe89d\",\"chunk-7a810817\":\"e757f52a\",\"chunk-3ae1c3ad\":\"31d6cfe0\",\"chunk-58ba3dae\":\"65211bf4\",\"chunk-98e0c8cc\":\"31d6cfe0\",\"chunk-9cd0ff3c\":\"bd74e87e\",\"chunk-c44c6306\":\"3e507f7b\",\"chunk-79b72a3d\":\"52ef46aa\",\"chunk-7cf477eb\":\"a93b3047\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../node_modules/vuetify-loader/lib/loader.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../node_modules/vuetify-loader/lib/loader.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=css&\"","var map = {\n\t\"./Camera.vue\": [\n\t\t\"6ec0\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-7a810817\",\n\t\t\"chunk-58ba3dae\"\n\t],\n\t\"./CameraViewes/ContoursTab.vue\": [\n\t\t\"5c73\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-7a810817\",\n\t\t\"chunk-3ae1c3ad\"\n\t],\n\t\"./CameraViewes/InputTab.vue\": [\n\t\t\"50ef\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-402ab08c\"\n\t],\n\t\"./CameraViewes/OutputTab.vue\": [\n\t\t\"4c92\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-c44c6306\"\n\t],\n\t\"./CameraViewes/ThresholdTab.vue\": [\n\t\t\"1a40\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-7a810817\",\n\t\t\"chunk-79b72a3d\"\n\t],\n\t\"./Settings.vue\": [\n\t\t\"26d3\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-9cd0ff3c\"\n\t],\n\t\"./SettingsViewes/Cameras.vue\": [\n\t\t\"0b81\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-234aed0c\",\n\t\t\"chunk-98e0c8cc\"\n\t],\n\t\"./SettingsViewes/General.vue\": [\n\t\t\"13f2\",\n\t\t\"chunk-716fb61c\",\n\t\t\"chunk-7cf477eb\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"1a5d\";\nmodule.exports = webpackAsyncContext;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app',[_c('v-app-bar',{attrs:{\"app\":\"\",\"dense\":\"\",\"clipped-left\":\"\",\"dark\":\"\"}},[_c('img',{staticClass:\"imgClass\",attrs:{\"src\":require(\"./assets/logo.png\")}}),_c('v-toolbar-title',{attrs:{\"id\":\"title\"}},[_vm._v(\"Chameleon Vision\")]),_c('div',{staticClass:\"flex-grow-1\"}),_c('v-toolbar-items',[_c('v-tabs',{attrs:{\"dark\":\"\",\"height\":\"48\",\"slider-color\":\"#4baf62\"}},[_c('v-tab',{attrs:{\"to\":\"vision\"}},[_vm._v(\"Vision\")]),_c('v-tab',{attrs:{\"to\":\"settings\"}},[_vm._v(\"Settings\")])],1)],1)],1),_c('v-content',[_c('v-container',{attrs:{\"fluid\":\"\",\"fill-height\":\"\"}},[_c('v-layout',[_c('v-flex',[_c('router-view')],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/vuetify-loader/lib/loader.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/vuetify-loader/lib/loader.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=499e1ae6&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VApp } from 'vuetify/lib/components/VApp';\nimport { VAppBar } from 'vuetify/lib/components/VAppBar';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VContent } from 'vuetify/lib/components/VContent';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VToolbarItems } from 'vuetify/lib/components/VToolbar';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VApp,VAppBar,VContainer,VContent,VFlex,VLayout,VTab,VTabs,VToolbarItems,VToolbarTitle})\n","import Vue from 'vue'\r\nimport Router from 'vue-router'\r\nVue.use(Router)\r\n\r\nfunction lazyLoad(view){\r\n return() => import(`@/views/${view}.vue`)\r\n}\r\nexport default new Router({\r\n // mode: 'history',\r\n base: process.env.BASE_URL,\r\n routes: [\r\n {\r\n path: '/',\r\n redirect:'/vision'\r\n },\r\n {\r\n path: '/vision',\r\n name: 'Vision',\r\n component: lazyLoad('Camera')\r\n },\r\n {\r\n path: '/settings',\r\n name: 'Settings',\r\n component: lazyLoad('Settings')\r\n }\r\n ]\r\n})\r\n","import Vue from 'vue'\r\nimport Vuex from 'vuex'\r\n\r\nVue.use(Vuex)\r\n\r\nconst set = key => (state,val) =>{\r\n Vue.set(state,key,val);\r\n};\r\n\r\nexport default new Vuex.Store({\r\n state: {\r\n settings:{\r\n teamNumber:1577,\r\n connectionType:0,\r\n ip:\"\",\r\n gateway:\"\",\r\n netmask:\"\",\r\n hostname: \"Chameleon-vision\"\r\n },\r\n pipeline:{\r\n exposure:0,\r\n brightness:0,\r\n orientation:0,\r\n hue:[0,15],\r\n saturation:[0,15],\r\n value:[0,25],\r\n erode:false,\r\n dilate:false,\r\n area:[0,12],\r\n ratio:[0,12],\r\n extent:[0,12],\r\n speckle:5,\r\n targetGrouping:0,\r\n targetIntersection:0,\r\n sortMode:0,\r\n isBinary:0\r\n },\r\n cameraSettings:{},\r\n resolutionList:[],\r\n port:1181,\r\n currentCameraIndex:0,\r\n currentPipelineIndex:0,\r\n cameraList:[],\r\n pipelineList:[],\r\n point:{}\r\n },\r\n mutations: {\r\n settings: set('settings'),\r\n pipeline: set('pipeline'),\r\n cameraSettings: set('cameraSettings'),\r\n resolutionList: set('resolutionList'),\r\n port: set('port'),\r\n currentCameraIndex: set('currentCameraIndex'),\r\n currentPipelineIndex: set('currentPipelineIndex'),\r\n cameraList: set('cameraList'),\r\n pipelineList: set('pipelineList'),\r\n point:set('point')\r\n },\r\n actions: {\r\n settings: state => state.settings,\r\n pipeline: state => state.pipeline,\r\n cameraSettings: state =>state.cameraSettings,\r\n resolutionList: state =>state.resolutionList,\r\n port: state =>state.port,\r\n currentCameraIndex: state =>state.currentCameraIndex,\r\n currentPipelineIndex: state =>state.currentPipelineIndex,\r\n cameraList: state =>state.cameraList,\r\n pipelineList: state =>state.pipelineList,\r\n point: state =>state.point,\r\n setPipeValues(state,obj){\r\n for(let i in obj){\r\n Vue.set(state.pipeline,i,obj[i]);\r\n }\r\n }\r\n }\r\n})\r\n","\r\nimport '@mdi/font/css/materialdesignicons.css';\r\nimport 'material-design-icons-iconfont/dist/material-design-icons.css'\r\nimport Vue from 'vue';\r\nimport Vuetify from 'vuetify/lib';\r\nVue.use(Vuetify);\r\n\r\nexport default new Vuetify({\r\n icons: {\r\n \r\n}\r\n \r\n});\r\n","import Vue from 'vue'\r\nimport App from './App.vue'\r\nimport router from './router'\r\nimport store from './store'\r\nimport vuetify from './plugins/vuetify';\r\nimport VueNativeSock from 'vue-native-websocket';\r\nimport msgPack from 'msgpack5';\r\n\r\nVue.config.productionTip = false;\r\n// Vue.use(VueNativeSock,'ws://' + location.host + '/websocket',{format: 'json'});\r\nVue.use(VueNativeSock,'ws://'+location.hostname+':8888/websocket');\r\nVue.prototype.$msgPack = msgPack(true)\r\nVue.mixin({\r\n methods:{\r\n handleInput(key,value){\r\n let msg = this.$msgPack.encode({[key]:value})\r\n this.$socket.send(msg);\r\n }\r\n }\r\n})\r\nnew Vue({\r\n router,\r\n store,\r\n vuetify,\r\n render: h => h(App)\r\n}).$mount('#app')\r\n","module.exports = __webpack_public_path__ + \"img/logo.e82307fd.png\";"],"sourceRoot":""} \ No newline at end of file diff --git a/Main/src/main/resources/web/js/chunk-58ba3dae.81c89e61.js b/Main/src/main/resources/web/js/chunk-58ba3dae.81c89e61.js new file mode 100644 index 000000000..50ed2ef7a --- /dev/null +++ b/Main/src/main/resources/web/js/chunk-58ba3dae.81c89e61.js @@ -0,0 +1,2 @@ +(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-58ba3dae","chunk-c44c6306","chunk-3ae1c3ad"],{1447:function(t,e,i){"use strict";var a=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("v-row",{attrs:{dense:"",align:"center"}},[i("v-col",{attrs:{cols:2}},[i("span",[t._v(t._s(t.name))])]),i("v-col",{attrs:{cols:10}},[i("v-slider",{staticClass:"align-center",attrs:{value:t.localValue,dark:"",max:t.max,min:t.min,"hide-details":"",color:"#4baf62",step:t.step},on:{input:t.handleInput},scopedSlots:t._u([{key:"append",fn:function(){return[i("v-text-field",{staticClass:"mt-0 pt-0",staticStyle:{width:"50px"},attrs:{dark:"",max:t.max,min:t.min,value:t.localValue,"hide-details":"","single-line":"",type:"number",step:t.step},on:{input:t.handleChange,focus:function(e){t.isFocused=!0},blur:function(e){t.isFocused=!1}}})]},proxy:!0}])})],1)],1)],1)},s=[],n={name:"Slider",props:["min","max","name","value","step"],data(){return{isFocused:!1}},methods:{handleChange(t){this.isFocused&&(this.localValue=parseFloat(t))},handleInput(t){this.isFocused||(this.localValue=t)}},computed:{localValue:{get(){return this.value},set(t){this.$emit("input",t)}}}},o=n,l=i("2877"),r=i("6544"),c=i.n(r),u=i("62ad"),h=i("0fd9"),d=i("ba0d"),p=i("8654"),v=Object(l["a"])(o,a,s,!1,null,"5b310213",null);e["a"]=v.exports;c()(v,{VCol:u["a"],VRow:h["a"],VSlider:d["a"],VTextField:p["a"]})},"1a40":function(t,e,i){"use strict";i.r(e);var a=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("CVrangeSlider",{attrs:{name:"Hue",min:0,max:180},on:{input:function(e){return t.handleInput("hue",t.value.hue)}},model:{value:t.value.hue,callback:function(e){t.$set(t.value,"hue",e)},expression:"value.hue"}}),i("CVrangeSlider",{attrs:{name:"Saturation",min:0,max:255},on:{input:function(e){return t.handleInput("saturation",t.value.saturation)}},model:{value:t.value.saturation,callback:function(e){t.$set(t.value,"saturation",e)},expression:"value.saturation"}}),i("CVrangeSlider",{attrs:{name:"Value",min:0,max:255},on:{input:function(e){return t.handleInput("value",t.value.value)}},model:{value:t.value.value,callback:function(e){t.$set(t.value,"value",e)},expression:"value.value"}}),i("CVswitch",{attrs:{name:"Erode"},on:{input:function(e){return t.handleInput("erode",t.value.erode)}},model:{value:t.value.erode,callback:function(e){t.$set(t.value,"erode",e)},expression:"value.erode"}}),i("CVswitch",{attrs:{name:"Dilate"},on:{input:function(e){return t.handleInput("dilate",t.value.dilate)}},model:{value:t.value.dilate,callback:function(e){t.$set(t.value,"dilate",e)},expression:"value.dilate"}})],1)},s=[],n=i("1029"),o=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("v-row",{attrs:{dense:"",align:"center"}},[i("v-col",{attrs:{cols:2}},[i("span",[t._v(t._s(t.name))])]),i("v-col",[i("v-switch",{attrs:{color:"#4baf62"},model:{value:t.localValue,callback:function(e){t.localValue=e},expression:"localValue"}})],1)],1)],1)},l=[],r={name:"CVSwitch",props:["name","value"],data(){return{}},computed:{localValue:{get(){return this.value},set(t){this.$emit("input",t)}}}},c=r,u=i("2877"),h=i("6544"),d=i.n(h),p=i("62ad"),v=i("0fd9"),m=(i("ec29"),i("9d01"),i("fe09")),f=i("c37a"),g=i("c3f0"),b=i("0789"),C=i("490a"),y=i("80d2"),k=m["a"].extend({name:"v-switch",directives:{Touch:g["a"]},props:{inset:Boolean,loading:{type:[Boolean,String],default:!1},flat:{type:Boolean,default:!1}},computed:{classes(){return{...f["a"].options.computed.classes.call(this),"v-input--selection-controls v-input--switch":!0,"v-input--switch--flat":this.flat,"v-input--switch--inset":this.inset}},attrs(){return{"aria-checked":String(this.isActive),"aria-disabled":String(this.disabled),role:"switch"}},validationState(){return this.hasError&&this.shouldValidate?"error":this.hasSuccess?"success":this.hasColor?this.computedColor:void 0},switchData(){return this.setTextColor(this.loading?void 0:this.validationState,{class:this.themeClasses})}},methods:{genDefaultSlot(){return[this.genSwitch(),this.genLabel()]},genSwitch(){return this.$createElement("div",{staticClass:"v-input--selection-controls__input"},[this.genInput("checkbox",{...this.$attrs,...this.attrs}),this.genRipple(this.setTextColor(this.validationState,{directives:[{name:"touch",value:{left:this.onSwipeLeft,right:this.onSwipeRight}}]})),this.$createElement("div",{staticClass:"v-input--switch__track",...this.switchData}),this.$createElement("div",{staticClass:"v-input--switch__thumb",...this.switchData},[this.genProgress()])])},genProgress(){return this.$createElement(b["c"],{},[!1===this.loading?null:this.$slots.progress||this.$createElement(C["a"],{props:{color:!0===this.loading||""===this.loading?this.color||"primary":this.loading,size:16,width:2,indeterminate:!0}})])},onSwipeLeft(){this.isActive&&this.onChange()},onSwipeRight(){this.isActive||this.onChange()},onKeydown(t){(t.keyCode===y["s"].left&&this.isActive||t.keyCode===y["s"].right&&!this.isActive)&&this.onChange()}}}),x=Object(u["a"])(c,o,l,!1,null,"a4465ad0",null),w=x.exports;d()(x,{VCol:p["a"],VRow:v["a"],VSwitch:k});var V={name:"Threshold",props:["value"],components:{CVrangeSlider:n["a"],CVswitch:w},data(){return{}},computed:{},methods:{}},I=V,S=Object(u["a"])(I,a,s,!1,null,"2ae8265d",null);e["default"]=S.exports},"2db4":function(t,e,i){"use strict";i("ca71");var a=i("a9ad"),s=i("f2e7"),n=i("fe6c"),o=i("58df"),l=i("d9bd");e["a"]=Object(o["a"])(a["a"],s["a"],Object(n["b"])(["absolute","top","bottom","left","right"])).extend({name:"v-snackbar",props:{multiLine:Boolean,timeout:{type:Number,default:6e3},vertical:Boolean},data:()=>({activeTimeout:-1}),computed:{classes(){return{"v-snack--active":this.isActive,"v-snack--absolute":this.absolute,"v-snack--bottom":this.bottom||!this.top,"v-snack--left":this.left,"v-snack--multi-line":this.multiLine&&!this.vertical,"v-snack--right":this.right,"v-snack--top":this.top,"v-snack--vertical":this.vertical}}},watch:{isActive(){this.setTimeout()}},created(){this.$attrs.hasOwnProperty("auto-height")&&Object(l["d"])("auto-height",this)},mounted(){this.setTimeout()},methods:{setTimeout(){window.clearTimeout(this.activeTimeout),this.isActive&&this.timeout&&(this.activeTimeout=window.setTimeout(()=>{this.isActive=!1},this.timeout))}},render(t){return t("transition",{attrs:{name:"v-snack-transition"}},[this.isActive&&t("div",{staticClass:"v-snack",class:this.classes,on:this.$listeners},[t("div",this.setBackgroundColor(this.color,{staticClass:"v-snack__wrapper"}),[t("div",{staticClass:"v-snack__content"},this.$slots.default)])])])}})},"368e":function(t,e,i){},"3c93":function(t,e,i){},"4c92":function(t,e,i){"use strict";i.r(e);var a=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("CVselect",{attrs:{name:"SortMode",list:["Largest","Smallest","Highest","Lowest","Rightmost","Leftmost","Closest"]},on:{input:function(e){return t.handleInput("sortMode",t.value.sortMode)}},model:{value:t.value.sortMode,callback:function(e){t.$set(t.value,"sortMode",e)},expression:"value.sortMode"}}),i("span",[t._v("Calibrate:")]),i("v-divider",{attrs:{dark:"",color:"white"}}),i("v-row",{attrs:{align:"center",justify:"start"}},[i("v-col",{staticStyle:{"padding-right":"0px"},attrs:{cols:3}},[i("v-btn",{attrs:{small:"",color:"#4baf62"},on:{click:t.takePointA}},[t._v("Take Point A")])],1),i("v-col",{staticStyle:{"margin-left":"0px"},attrs:{cols:3}},[i("v-btn",{attrs:{small:"",color:"#4baf62"},on:{click:t.takePointB}},[t._v("Take Point B")])],1),i("v-col",[i("v-btn",{attrs:{small:"",color:"yellow darken-3"},on:{click:t.clearSlope}},[t._v("Clear All Points")])],1)],1),i("v-snackbar",{attrs:{timeout:3e3,top:"",color:"error"},model:{value:t.snackbar,callback:function(e){t.snackbar=e},expression:"snackbar"}},[i("span",{staticStyle:{color:"#000"}},[t._v("Points are too close")]),i("v-btn",{attrs:{color:"black",text:""},on:{click:function(e){t.snackbar=!1}}},[t._v("Close")])],1)],1)},s=[],n=i("8384"),o={name:"Output",props:["value"],components:{CVselect:n["a"]},methods:{takePointA(){this.pointA=this.rawPoint,this.calcSlope()},takePointB(){this.pointB=this.rawPoint,this.calcSlope()},calcSlope(){if(void 0!==this.pointA&&void 0!==this.pointB){let t=(this.pointB[1]-this.pointA[1])/(this.pointB[0]-this.pointA[0]),e=this.pointA[1]-t*this.pointA[0];!1===isNaN(t)&&!1===isNaN(e)?this.sendSlope(t,e,!0):this.snackbar=!0,this.pointA=void 0,this.pointB=void 0}},sendSlope(t,e,i){this.handleInput("m",t),this.handleInput("b",e),this.handleInput("isCalibrated",i)},clearSlope(){this.sendSlope(1,0,!1),this.pointA=void 0,this.pointB=void 0}},data(){return{snackbar:!1,pointA:void 0,pointB:void 0}},computed:{rawPoint:{get(){return this.$store.state.point.rawPoint}}}},l=o,r=i("2877"),c=i("6544"),u=i.n(c),h=i("8336"),d=i("62ad"),p=i("ce7e"),v=i("0fd9"),m=i("2db4"),f=Object(r["a"])(l,a,s,!1,null,"58812995",null);e["default"]=f.exports;u()(f,{VBtn:h["a"],VCol:d["a"],VDivider:p["a"],VRow:v["a"],VSnackbar:m["a"]})},"50ef":function(t,e,i){"use strict";i.r(e);var a=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("CVslider",{attrs:{name:"Exposure",min:0,max:100},on:{input:function(e){return t.handleInput("exposure",t.value.exposure)}},model:{value:t.value.exposure,callback:function(e){t.$set(t.value,"exposure",e)},expression:"value.exposure"}}),i("CVslider",{attrs:{name:"Brightness",min:0,max:100},on:{input:function(e){return t.handleInput("brightness",t.value.brightness)}},model:{value:t.value.brightness,callback:function(e){t.$set(t.value,"brightness",e)},expression:"value.brightness"}}),i("CVselect",{attrs:{name:"Orientation",list:["Normal","Inverted"]},on:{input:function(e){return t.handleInput("orientation",t.value.orientation)}},model:{value:t.value.orientation,callback:function(e){t.$set(t.value,"orientation",e)},expression:"value.orientation"}})],1)},s=[],n=i("1447"),o=i("8384"),l={name:"Input",props:["value"],components:{CVslider:n["a"],CVselect:o["a"]},data(){return{t:0,a:1}},methods:{},computed:{}},r=l,c=i("2877"),u=Object(c["a"])(r,a,s,!1,null,"25199448",null);e["default"]=u.exports},5311:function(t,e,i){"use strict";var a=i("5607"),s=i("2b0e");e["a"]=s["a"].extend({name:"rippleable",directives:{ripple:a["a"]},props:{ripple:{type:[Boolean,Object],default:!0}},methods:{genRipple(t={}){return this.ripple?(t.staticClass="v-input--selection-controls__ripple",t.directives=t.directives||[],t.directives.push({name:"ripple",value:{center:!0}}),t.on=Object.assign({click:this.onChange},this.$listeners),this.$createElement("div",t)):null},onChange(){}}})},"5c73":function(t,e,i){"use strict";i.r(e);var a=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("CVrangeSlider",{attrs:{name:"Area",min:0,max:100,step:.1},on:{input:function(e){return t.handleInput("area",t.value.area)}},model:{value:t.value.area,callback:function(e){t.$set(t.value,"area",e)},expression:"value.area"}}),i("CVrangeSlider",{attrs:{name:"Ratio (W/H)",min:0,max:100,step:.1},on:{input:function(e){return t.handleInput("ratio",t.value.ratio)}},model:{value:t.value.ratio,callback:function(e){t.$set(t.value,"ratio",e)},expression:"value.ratio"}}),i("CVrangeSlider",{attrs:{name:"Extent",min:0,max:100},on:{input:function(e){return t.handleInput("extent",t.value.extent)}},model:{value:t.value.extent,callback:function(e){t.$set(t.value,"extent",e)},expression:"value.extent"}}),i("CVslider",{attrs:{name:"Speckle Rejection",min:0,max:100},on:{input:function(e){return t.handleInput("speckle",t.value.speckle)}},model:{value:t.value.speckle,callback:function(e){t.$set(t.value,"speckle",e)},expression:"value.speckle"}}),i("CVselect",{attrs:{name:"Target Group",list:["Single","Dual"]},on:{input:function(e){return t.handleInput("targetGroup",t.value.targetGroup)}},model:{value:t.value.targetGroup,callback:function(e){t.$set(t.value,"targetGroup",e)},expression:"value.targetGroup"}}),i("CVselect",{attrs:{name:"Target Intersection",list:["None","Up","Down","Left","Right"],disabled:t.isDisabled},on:{input:function(e){return t.handleInput("targetIntersection",t.value.targetIntersection)}},model:{value:t.value.targetIntersection,callback:function(e){t.$set(t.value,"targetIntersection",e)},expression:"value.targetIntersection"}})],1)},s=[],n=i("1029"),o=i("8384"),l=i("1447"),r={name:"Contours",props:["value"],components:{CVrangeSlider:n["a"],CVselect:o["a"],CVslider:l["a"]},data(){return{}},computed:{isDisabled(){return 0===this.value.targetGroup}}},c=r,u=i("2877"),h=Object(u["a"])(c,a,s,!1,null,"be9f115a",null);e["default"]=h.exports},"6ca7":function(t,e,i){},"6ec0":function(t,e,i){"use strict";i.r(e);var a=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("div",[i("v-row",{attrs:{align:"center"}},[i("v-col",{staticClass:"colsClass",attrs:{cols:3}},[i("div",{staticStyle:{"padding-left":"30px"}},[0==t.isCameraNameEdit?i("CVselect",{attrs:{name:"Camera",list:t.cameraList},on:{input:function(e){return t.handleInput("currentCamera",t.currentCameraIndex)}},model:{value:t.currentCameraIndex,callback:function(e){t.currentCameraIndex=e},expression:"currentCameraIndex"}}):i("CVinput",{attrs:{name:"Camera",errorMessage:t.checkCameraName},on:{Enter:t.saveCameraNameChange},model:{value:t.newCameraName,callback:function(e){t.newCameraName=e},expression:"newCameraName"}})],1)]),i("v-col",{attrs:{cols:1}},[0==t.isCameraNameEdit?i("CVicon",{attrs:{color:"#c5c5c5",hover:"",text:"edit",tooltip:"Edit camera name"},on:{click:t.toCameraNameChange}}):i("div",[i("CVicon",{staticStyle:{display:"inline-block"},attrs:{color:"#c5c5c5",hover:"",text:"save",tooltip:"Save Camera Name"},on:{click:t.saveCameraNameChange}}),i("CVicon",{staticStyle:{display:"inline-block"},attrs:{color:"error",hover:"",text:"close",tooltip:"Discard Changes"},on:{click:t.discardCameraNameChange}})],1)],1),i("v-col",{staticClass:"colsClass",attrs:{cols:3}},[0==t.isPipelineEdit?i("CVselect",{attrs:{name:"Pipeline",list:t.pipelineList},on:{input:function(e){return t.handleInput("currentPipeline",t.currentPipelineIndex)}},model:{value:t.currentPipelineIndex,callback:function(e){t.currentPipelineIndex=e},expression:"currentPipelineIndex"}}):i("CVinput",{attrs:{name:"Pipeline"},on:{Enter:t.savePipelineNameChange},model:{value:t.newPipelineName,callback:function(e){t.newPipelineName=e},expression:"newPipelineName"}})],1),i("v-col",{staticClass:"colsClass",attrs:{cols:1}},[0==t.isPipelineEdit?i("v-menu",{attrs:{"offset-y":"",dark:"",auto:""},scopedSlots:t._u([{key:"activator",fn:function(e){var a=e.on;return[i("v-icon",t._g({attrs:{color:"white"}},a),[t._v("menu")])]}}],null,!1,2044107425)},[i("v-list",{attrs:{dense:""}},[i("v-list-item",{on:{click:t.toPipelineNameChange}},[i("v-list-item-title",[i("CVicon",{attrs:{color:"#c5c5c5",right:!0,text:"edit",tooltip:"Edit pipeline name"}})],1)],1),i("v-list-item",{on:{click:function(e){return t.handleInput("command","addNewPipeline")}}},[i("v-list-item-title",[i("CVicon",{attrs:{color:"#c5c5c5",right:!0,text:"add",tooltip:"Add new pipeline"}})],1)],1),i("v-list-item",{on:{click:t.deleteCurrentPipeline}},[i("v-list-item-title",[i("CVicon",{attrs:{color:"red darken-2",right:!0,text:"delete",tooltip:"Delete pipeline"}})],1)],1),i("v-list-item",{on:{click:t.openDuplicateDialog}},[i("v-list-item-title",[i("CVicon",{attrs:{color:"#c5c5c5",right:!0,text:"mdi-content-copy",tooltip:"Duplicate pipeline"}})],1)],1)],1)],1):i("div",[i("CVicon",{staticStyle:{display:"inline-block"},attrs:{color:"#c5c5c5",hover:"",text:"save",tooltip:"Save Pipeline Name"},on:{click:t.savePipelineNameChange}}),i("CVicon",{staticStyle:{display:"inline-block"},attrs:{color:"error",hover:"",text:"close",tooltip:"Discard Changes"},on:{click:t.discardPipelineNameChange}})],1)],1)],1)],1),i("v-row",[i("v-col",{staticClass:"colsClass",attrs:{cols:"6"}},[i("v-tabs",{attrs:{"fixed-tabs":"","background-color":"#212121",dark:"",height:"48","slider-color":"#4baf62"},model:{value:t.selectedTab,callback:function(e){t.selectedTab=e},expression:"selectedTab"}},[i("v-tab",[t._v("Input")]),i("v-tab",[t._v("Threshold")]),i("v-tab",[t._v("Contours")]),i("v-tab",[t._v("Output")])],1),i("div",{staticStyle:{"padding-left":"30px"}},[i(t.selectedComponent,{tag:"component",model:{value:t.pipeline,callback:function(e){t.pipeline=e},expression:"pipeline"}})],1)],1),i("v-col",{staticClass:"colsClass",attrs:{cols:"6"}},[i("div",[i("v-tabs",{staticStyle:{"padding-bottom":"10px"},attrs:{"background-color":"#212121",dark:"",height:"48","slider-color":"#4baf62",centered:""},on:{change:function(e){return t.handleInput("isBinary",t.pipeline.isBinary)}},model:{value:t.isBinaryNumber,callback:function(e){t.isBinaryNumber=e},expression:"isBinaryNumber"}},[i("v-tab",[t._v("Normal")]),i("v-tab",[t._v("Threshold")])],1),i("div",{staticClass:"videoClass"},[t.cameraList.length>0?i("img",{attrs:{src:t.steamAdress}}):i("span",[t._v("No Cameras Are connected")]),i("h5",{attrs:{id:"Point"}},[t._v(t._s(t.point))])])],1)])],1),i("v-dialog",{attrs:{dark:"",width:"500",height:"357"},model:{value:t.duplicateDialog,callback:function(e){t.duplicateDialog=e},expression:"duplicateDialog"}},[i("v-card",{attrs:{dark:""}},[i("v-card-title",{staticClass:"headline",attrs:{"primary-title":""}},[t._v("Duplicate Pipeline")]),i("v-card-text",[i("CVselect",{attrs:{name:"Pipeline",list:t.pipelineList},model:{value:t.pipelineDuplicate.pipeline,callback:function(e){t.$set(t.pipelineDuplicate,"pipeline",e)},expression:"pipelineDuplicate.pipeline"}}),t.cameraList.length>1?i("v-checkbox",{attrs:{dark:"",label:"To another camera"},model:{value:t.anotherCamera,callback:function(e){t.anotherCamera=e},expression:"anotherCamera"}}):t._e(),!0===t.anotherCamera?i("CVselect",{attrs:{name:"Camera",list:t.cameraList},model:{value:t.pipelineDuplicate.camera,callback:function(e){t.$set(t.pipelineDuplicate,"camera",e)},expression:"pipelineDuplicate.camera"}}):t._e()],1),i("v-divider"),i("v-card-actions",[i("v-spacer"),i("v-btn",{attrs:{color:"#4baf62",text:""},on:{click:t.duplicatePipeline}},[t._v("Duplicate")]),i("v-btn",{attrs:{color:"error",text:""},on:{click:t.closeDuplicateDialog}},[t._v("Cancels")])],1)],1)],1),i("v-snackbar",{attrs:{timeout:3e3,top:"",color:"error"},model:{value:t.snackbar,callback:function(e){t.snackbar=e},expression:"snackbar"}},[i("span",{staticStyle:{color:"#000"}},[t._v("Can not remove the only pipeline!")]),i("v-btn",{attrs:{color:"black",text:""},on:{click:function(e){t.snackbar=!1}}},[t._v("Close")])],1)],1)},s=[],n=i("50ef"),o=i("1a40"),l=i("5c73"),r=i("4c92"),c=i("8384"),u=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("v-tooltip",{attrs:{right:t.right,bottom:!t.right,"nudge-right":"10"},scopedSlots:t._u([{key:"activator",fn:function(e){var a=e.on;return[i("v-icon",t._g({class:t.hoverClass,attrs:{color:t.color},on:{click:t.handleClick}},a),[t._v(t._s(t.text))])]}}])},[i("span",[t._v(t._s(t.tooltip))])])],1)},h=[],d={name:"Icon",props:["color","tooltip","text","right","hover"],data(){return{}},methods:{handleClick(){this.$emit("click")}},computed:{hoverClass(){if(void 0!==this.hover)return"hover"}}},p=d,v=(i("d90e"),i("2877")),m=i("6544"),f=i.n(m),g=i("132d"),b=(i("9734"),i("4ad4")),C=i("a9ad"),y=i("16b7"),k=i("b848"),x=i("75eb"),w=i("f573"),V=i("f2e7"),I=i("80d2"),S=i("d9bd"),$=i("58df"),_=Object($["a"])(C["a"],y["a"],k["a"],x["a"],w["a"],V["a"]).extend({name:"v-tooltip",props:{closeDelay:{type:[Number,String],default:0},disabled:Boolean,fixed:{type:Boolean,default:!0},openDelay:{type:[Number,String],default:0},openOnHover:{type:Boolean,default:!0},tag:{type:String,default:"span"},transition:String,zIndex:{default:null}},data:()=>({calculatedMinWidth:0,closeDependents:!1}),computed:{calculatedLeft(){const{activator:t,content:e}=this.dimensions,i=!this.bottom&&!this.left&&!this.top&&!this.right,a=!1!==this.attach?t.offsetLeft:t.left;let s=0;return this.top||this.bottom||i?s=a+t.width/2-e.width/2:(this.left||this.right)&&(s=a+(this.right?t.width:-e.width)+(this.right?10:-10)),this.nudgeLeft&&(s-=parseInt(this.nudgeLeft)),this.nudgeRight&&(s+=parseInt(this.nudgeRight)),`${this.calcXOverflow(s,this.dimensions.content.width)}px`},calculatedTop(){const{activator:t,content:e}=this.dimensions,i=!1!==this.attach?t.offsetTop:t.top;let a=0;return this.top||this.bottom?a=i+(this.bottom?t.height:-e.height)+(this.bottom?10:-10):(this.left||this.right)&&(a=i+t.height/2-e.height/2),this.nudgeTop&&(a-=parseInt(this.nudgeTop)),this.nudgeBottom&&(a+=parseInt(this.nudgeBottom)),`${this.calcYOverflow(a+this.pageYOffset)}px`},classes(){return{"v-tooltip--top":this.top,"v-tooltip--right":this.right,"v-tooltip--bottom":this.bottom,"v-tooltip--left":this.left}},computedTransition(){return this.transition?this.transition:this.isActive?"scale-transition":"fade-transition"},offsetY(){return this.top||this.bottom},offsetX(){return this.left||this.right},styles(){return{left:this.calculatedLeft,maxWidth:Object(I["e"])(this.maxWidth),minWidth:Object(I["e"])(this.minWidth),opacity:this.isActive?.9:0,top:this.calculatedTop,zIndex:this.zIndex||this.activeZIndex}}},beforeMount(){this.$nextTick(()=>{this.value&&this.callActivate()})},mounted(){"v-slot"===Object(I["p"])(this,"activator",!0)&&Object(S["b"])("v-tooltip's activator slot must be bound, try '