From afcb0d4ed194fa1453cabcf664dfea4b1587ab01 Mon Sep 17 00:00:00 2001 From: Loic Guegan Date: Wed, 11 Jan 2023 13:04:52 +0100 Subject: Debug arrows drawing --- src/game_tab/left_panel/board/BoardCanvas.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/game_tab/left_panel/board/BoardCanvas.cpp') diff --git a/src/game_tab/left_panel/board/BoardCanvas.cpp b/src/game_tab/left_panel/board/BoardCanvas.cpp index 97ca3ad..7fc9d10 100644 --- a/src/game_tab/left_panel/board/BoardCanvas.cpp +++ b/src/game_tab/left_panel/board/BoardCanvas.cpp @@ -667,10 +667,11 @@ void BoardCanvas::DrawLArrow(wxDC &dc, int xsrc, int ysrc, int xdst, int ydst, b // Compute metrics double tip_height=sqrt(3)/2*thickness; double yoffset=Y<0 ? -thickness/4 : thickness/4; // Y tail should be longer to form a right angle (corner of tail joins) + double xoffset=X<0 ? -thickness/4 : thickness/4; // X tail's starting point should be translated to form a right angle (corner of tail joins) if(X<0){tip_height=-tip_height;} wxPoint tip[]={wxPoint(X-tip_height,-thickness/2+Y),wxPoint(X,Y),wxPoint(X-tip_height,thickness/2+Y)}; wxPoint tail1[]={wxPoint(-thickness/4,0),wxPoint(thickness/4,0),wxPoint(thickness/4,Y+yoffset),wxPoint(-thickness/4,Y+yoffset)}; - wxPoint tail2[]={wxPoint(0,Y-thickness/4),wxPoint(X-tip_height,Y-thickness/4),wxPoint(X-tip_height,Y+thickness/4),wxPoint(0,Y+thickness/4)}; + wxPoint tail2[]={wxPoint(xoffset,Y-thickness/4),wxPoint(X-tip_height,Y-thickness/4),wxPoint(X-tip_height,Y+thickness/4),wxPoint(xoffset,Y+thickness/4)}; // Apply transforms TRANS2(tip[0]);TRANS2(tip[1]);TRANS2(tip[2]); @@ -685,11 +686,12 @@ void BoardCanvas::DrawLArrow(wxDC &dc, int xsrc, int ysrc, int xdst, int ydst, b } else { // Compute metrics double tip_height=sqrt(3)/2*thickness; - double xoffset=X<0 ? -thickness/4 : thickness/4; // Y tail should be longer to form a right angle (corner of tail joins) + double xoffset=X<0 ? -thickness/4 : thickness/4; // X tail should be longer to form a right angle (corner of tail joins) + double yoffset=Y<0 ? -thickness/4 : thickness/4; // Y tail's starting point should be translated to form a right angle (corner of tail joins) if(Y<0){tip_height=-tip_height;} wxPoint tip[]={wxPoint(-thickness/2 + X,Y-tip_height),wxPoint(thickness/2 + X ,Y-tip_height),wxPoint(X,Y)}; wxPoint tail1[]={wxPoint(0,-thickness/4),wxPoint(X+xoffset,-thickness/4),wxPoint(X+xoffset,thickness/4),wxPoint(0,thickness/4)}; - wxPoint tail2[]={wxPoint(X-thickness/4,0),wxPoint(X+thickness/4,0),wxPoint(X+thickness/4,Y-tip_height),wxPoint(X-thickness/4,Y-tip_height)}; + wxPoint tail2[]={wxPoint(X-thickness/4,yoffset),wxPoint(X+thickness/4,yoffset),wxPoint(X+thickness/4,Y-tip_height),wxPoint(X-thickness/4,Y-tip_height)}; // Apply transforms TRANS2(tip[0]);TRANS2(tip[1]);TRANS2(tip[2]); -- cgit v1.2.3