Mercurial > gemma
view client/src/components/map/Main.vue @ 1372:553aadd97087
new cross profile workflow (WIP)
Needs fixing of some bugs and not so nice looks.
author | Markus Kottlaender <markus@intevation.de> |
---|---|
date | Tue, 27 Nov 2018 12:59:26 +0100 |
parents | ca33ad696594 |
children | b350b0b5cb6c |
line wrap: on
line source
<template> <div class="main d-flex flex-column"> <Maplayer :split="showSplitscreen"></Maplayer> <FairwayProfile :xScale="xAxis" :yScaleLeft="yAxisLeft" :yScaleRight="yAxisRight" ></FairwayProfile> </div> </template> <script> /* This is Free Software under GNU Affero General Public License v >= 3.0 * without warranty, see README.md and license for details. * * SPDX-License-Identifier: AGPL-3.0-or-later * License-Filename: LICENSES/AGPL-3.0.txt * * Copyright (C) 2018 by via donau * – Österreichische Wasserstraßen-Gesellschaft mbH * Software engineering by Intevation GmbH * * Author(s): * Thomas Junk <thomas.junk@intevation.de> */ import Maplayer from "./Maplayer"; import FairwayProfile from "./fairway/Fairwayprofile"; import { mapState } from "vuex"; export default { name: "mainview", components: { Maplayer, FairwayProfile }, computed: { ...mapState("application", ["showSplitscreen"]), ...mapState("fairwayprofile", [ "minAlt", "maxAlt", "totalLength", "selectedWaterLevel" ]), ...mapState("bottlenecks", ["surveys", "selectedSurvey"]), xAxis() { return [this.xScale.x, this.xScale.y]; }, yAxisLeft() { const hi = Math.max(this.maxAlt, this.selectedWaterLevel); return [this.yScaleLeft.lo, hi]; }, yAxisRight() { const DELTA = this.maxAlt * 1.1 - this.maxAlt; return [this.maxAlt * 1 + DELTA, -DELTA]; }, yScaleLeft() { return { lo: this.minAlt, hi: this.maxAlt }; }, xScale() { return { x: 0, y: this.totalLength }; } } }; </script>