중국 장기 프로그램의 설계와 실현(9) - 바둑점, 바둑알의 둥지

이 편은 중국 장기 프로그램에서 바둑알을 수용하는 바둑알을 간략하게 소개한다.
바둑알이 바둑판에 있기 때문에 본 편을 설명하기 편리하도록 먼저 바둑판의 구조를 간략하게 소개해야 한다.
바둑판의 구조
//바둑알점, 총 90개, 가로 9* 세로 10 public ChessPoint chessPoints[];
바둑판은 90개의 점으로 구성되어 있다.(후속 기사, 바둑판을 상세히 소개할 예정)
바둑돌점
모든 정상적인 바둑알은 바둑판 위의 한 점에 위치하고, 바둑알은 한 바둑알의 작은 둥지이다.
이 점은 좌표 (x, y) 가 있고, 바둑알의 인용이 저장되어 있습니다.
public class ChessPoint{
    /**
     *         -x 
     */
    private int x;
    /**
     *         -y 
     */
    private int y;
    /**
     *       
     */
     private ChessPiece piece;

     /**
     *          
     * @return   ,  <code>true</code>;  ,  <code>fasle</code>
     */
    public boolean hasPiece() {
        return piece != null;
    }

    public void setHasPiece(boolean hasPiece) {
        //    
        if (!hasPiece) {
            piece = null;
        }
    }

    public Point getPoint() {
        return new Point(x, y);
    }

}

초기화
//       
        chessPoints = new ChessPoint[X + 1][Y + 1];
        for (int i = 1; i <= X; i++) {
            for (int j = 1; j <= Y; j++) {
                chessPoints[i][j] = new ChessPoint(i * UNIT_WIDTH, j
                        * UNIT_HEIGHT);
            }
        }

상관 상수
//바둑판의 수평 방향은 바둑알의 점을 수용할 수 있는 개수public static final int X = 9;
//바둑판의 수직 방향은 바둑알의 점을 수용할 수 있는 개수public static final int Y = 10;
//검사기 셀의 너비 public static int UNITWIDTH = ChessPiece.UNIT_WIDTH;//검사기 셀의 높이 public static int UNITHEIGHT = ChessPiece.UNIT_HEIGHT;
더 자세한 내용은 바둑판 등 관련 장과 절을 설명할 때 ChessPoint를 소개하겠습니다.
특별 설명
기점의 좌표와 기점의 좌표는 다르다.
바둑판의 좌표, Point 유형.좌표 범위 {(x, y) | 1<=x<=9,1<=y<=10}
바둑판의 좌표, 좌표 범위 | 1*UNIT WIDTH<=x<=9*UNIT WIDTH, 1*UNIT HEIGHT<=y<=10*UNIT HEIGHT}
관련 읽기
중국 장기 프로그램의 설계와 실현(영)-원시판 원본 코드
중국 장기 프로그램의 설계와 실현(一)-프로젝트 캡처
중국 장기 프로그램의 설계와 실현(二)--원본 코드
중국 장기 프로그램의 설계와 실현 (3) - 2012 본과 졸업 논문 등 중요한 문서 자료
중국 장기 프로그램의 설계와 실현(4)--한 번의'유산'쓰기 계획
중국 장기 프로그램의 설계와 실현(5) - CSDN 독자의 질문에 대답
중국 장기 프로그램의 디자인과 실현(六)--N황후 문제의 알고리즘 디자인과 실현(원본+주석+캡처)
중국 장기 프로그램의 설계와 실현(7) - 체험과 개발 일지
중국 장기 프로그램의 설계와 실현(8) - 바둑돌(차마포 등)을 어떻게 구성하는가
향후 계획
앞으로 3개월에서 1년 동안 나는 가능한 한 빨리 중국 장기-초한기병 시리즈를 다 쓸 것이다.
괜찮은 것 같아, 나를 도와 대들어줘!
참고 자료:http://FansUnion.cn/articles/1914

좋은 웹페이지 즐겨찾기