1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
import React from "react";
import {Group, Line} from "react-konva";
import {TILE_PLUS_COLOR} from "../../../colors/index";
import Shapes from "../../../shapes/index";
import {TILE_PLUS_WIDTH_IN_PIXELS, TILE_SIZE_IN_PIXELS} from "../MapConstants";
const TilePlusIcon = ({positionX, positionY}) => {
const linePoints = [
[
(positionX + 0.5) * TILE_SIZE_IN_PIXELS,
positionY * TILE_SIZE_IN_PIXELS + OBJECT_MARGIN_IN_PIXELS,
(positionX + 0.5) * TILE_SIZE_IN_PIXELS,
(positionY + 1) * TILE_SIZE_IN_PIXELS - OBJECT_MARGIN_IN_PIXELS,
],
[
positionX * TILE_SIZE_IN_PIXELS + OBJECT_MARGIN_IN_PIXELS,
(positionY + 0.5) * TILE_SIZE_IN_PIXELS,
(positionX + 1) * TILE_SIZE_IN_PIXELS - OBJECT_MARGIN_IN_PIXELS,
(positionY + 0.5) * TILE_SIZE_IN_PIXELS,
],
];
return (
<Group>
{linePoints.map(points => (
<Line
points={points}
lineCap="round"
stroke={TILE_PLUS_COLOR}
strokeWidth={TILE_PLUS_WIDTH_IN_PIXELS}
/>
))}
</Group>
)
};
TilePlusIcon.propTypes = {
wallSegment: Shapes.WallSegment,
};
export default TilePlusIcon;
|