<template>
    <div>
        <canvas id="wall" width="800" height="400" tabindex="0"/>
    </div>
</template>

<script lang="ts">
    import {SGraphScene, SGraphView} from "@persagy-web/graph/";
    import {SVirtualWallItem} from "@persagy-web/big/lib/items/floor/SVirtualWallItem";
    import {Component, Vue} from "vue-property-decorator";

    @Component
    export default class VirtualWallCanvas extends Vue {
        view: SGraphView | undefined;
        // 图中靠上位置的黑色矩形轮廓
        outline1 = [[{X: 12000, Y: 1000}, {X: 12000, Y: 3000}, {X: 1000, Y: 3000}, {X: 1000, Y: 1000}]];
        // 图中靠下位置的,中间掏洞
        outline2 = [
            [{X: 12000, Y: -3000}, {X: 12000, Y: -5000}, {X: 1000, Y: -5000}, {X: 10, Y: -3000}],
            [{X: 2000, Y: -4000}, {X: 2000, Y: -4500}, {X: 10000, Y: -4500}, {X: 10000, Y: -4000}]
        ];

        mounted() {
            this.init();
        };

        init() {
            this.view = new SGraphView('wall');
            const scene = new SGraphScene();
            this.view.scene = scene;
            // 只模拟了轮廓数据
            const item = new SVirtualWallItem(null, {OutLine: this.outline1});
            scene.addItem(item);
            // 只模拟了轮廓数据
            const item2 = new SVirtualWallItem(null, {OutLine: this.outline2});
            scene.addItem(item2);
            this.view.fitSceneToView();
            this.view.scalable = false;
        }
    }
</script>

<style scoped>

</style>