📄 arithmetic.cpp
字号:
#include "arithmetic.h"
int Arithmetic::ChessPlace(int x, int y) //根据鼠标点击位置算棋子在数组中的位置
{
//+0.5四省五入
int n = (x - 30.0) / 35 + 0.5; //30边距;35行距;+0.5四省五入
int m = (y - 30.0) / 35 + 0.5;
return(15*m + n);
}
bool Arithmetic::LimitArea(int x, int y) //限定鼠标点击位置有效位置
{
if ( x < 20 || y < 20 || x > (30 + 14*35 +10) || y > (30 + 14*35 +10) ) //是否超过边界
return false;
int j = ( x +35 - 30 ) % 35;
int k = ( y +35 - 30 ) % 35;
if ( j >10 && j < 25 )
return false;
else if( k > 10 && k < 25 ) //限定,落子点(网格交点)附近-10到10范围内有效
return false;
else
return true;
}
void Arithmetic::AdjustDraw(int x, int y, int &dx, int &dy) //相对鼠标点击位置,适当调整画棋子的位置,是棋子与棋盘对齐
{
int n = (x - 30.0) / 35 + 0.5;
int m = (y - 30.0) / 35 + 0.5;
dx = n*35 + 12.5;
dy = m*35 + 12.5;
//0.5是四省五入的,所以:
//dx = n*35 + 12;
//dy = m*35 + 12;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -