2011-02-26 2 views
1

타일의 등각 투영 격자 (Diablo와 같은 것으로 생각할 수 있음)가 있다고 가정하십시오. 그리드 높이, 그리드 폭, 타일 높이/너비와 같은 그리드에 대한 몇 가지 방법이 있습니다. (이 이미지를 고려하십시오 : http://2.bp.blogspot.com/_bazwyKf2FDM/Si2GBwD7kjI/AAAAAAAABvw/bcB-EaMgez4/s1600-h/isometric_grid). 그리드의 중심 셀은 iso-north (+ y), iso-south (-y), iso-east (+ x), iso-west (-x)를 확장하는 0,0입니다.등각 투영 격자에서 사각형 내부에 포함 된 셀 계산

그리드의 임의의 위치에 사각형을 그려 보자. 직사각형의 등각 투영 위치가 아니라, 왼쪽 상단 구석이 0,0이고 남쪽이 y +이고 오른쪽이 x + 인 그리드의 일반 그리기 좌표가 있습니다.

문제의 직사각형의 상단, 좌측, 높이 및 너비가있는 경우 - 직사각형의 아래쪽 가장자리가 교차하는 등변 (iso-cells) 배열을 어떻게 계산할 수 있습니까?

여기에 설명 된 언어로 충분합니다.

답변

1

아이소 메트릭 프로그래밍 (다이렉트 X7로 아이소 메트릭 프로그래밍, 예전에는 그렇지만 문제점과 기술에 대한 개요는 제공)에 대한 일부 논문 및 서적에서는 마우스 맵을 사용합니다.

사각형으로 덮여있는지도 영역을 이미지로 렌더링하는 기술이 있습니다. 각 타일은 고유 한 색을 갖기 때문에 렌더링 된 색입니다. 이후 그들은 이미지의 색상을 확인하고 타일 목록을 추출합니다.

너가 고전적인 isometric 도와 너비 절반 높이를 사용하고 있기 때문에 수학 해결책이 역시있을 수 있었다. 불행히도 제안 된 알고리즘은지도 레이아웃에 크게 의존합니다.

The code for a Java based TileSystem can be found here

관련 문제