X-Git-Url: https://git.auder.net/?p=vchess.git;a=blobdiff_plain;f=client%2Fsrc%2Futils%2FprintDiagram.js;h=aee1e96a18b11c2f6f1d1df3b93ec21c03d5984c;hp=00ff2c792f3329d6cd055c70acfbd18c0c503806;hb=4f524197ee499b58f574908c58bf50efa69dd359;hpb=10addfff8239405375a1c99b8582f4d4d8283d0a diff --git a/client/src/utils/printDiagram.js b/client/src/utils/printDiagram.js index 00ff2c79..aee1e96a 100644 --- a/client/src/utils/printDiagram.js +++ b/client/src/utils/printDiagram.js @@ -1,4 +1,5 @@ import { ArrayFun } from "@/utils/array"; +import { store } from "@/store"; // Turn (human) marks into coordinates function getMarkArray(marks) { @@ -64,6 +65,10 @@ function getShadowArray(shadow) { // args: object with position (mandatory), and // orientation, marks, shadow (optional) +// TODO: in time, find a strategy to draw middle lines (weiqi, xianqi...) +// and maybe also some diagonals (fanorona...) +// https://stackoverflow.com/questions/40697231/horizontal-line-in-the-middle-of-divs +// + CSS rotate? export function getDiagram(args) { // Obtain the array of pieces images names: const board = V.GetBoard(args.position); @@ -75,15 +80,22 @@ export function getDiagram(args) { const [startX, startY, inc] = orientation == "w" ? [0, 0, 1] : [V.size.x - 1, V.size.y - 1, -1]; for (let i = startX; i >= 0 && i < V.size.x; i += inc) { - boardDiv += "
"; + boardDiv += "
"; for (let j = startY; j >= 0 && j < V.size.y; j += inc) { - boardDiv += - "
"; + boardDiv += "
"; if (board[i][j] != V.EMPTY) { boardDiv += "