2012-08-06 2 views
7

나는 그림을 HUGE 비어 있습니다.인덱스에서 행과 열을 얻는 방법은 무엇입니까?

내가 찾은 모든 것은 주어진 행과 열에서 색인을 얻는 것이지만 색인에서 행과 열을 얻는 방법은 무엇입니까?

행이 쉬움 : (int)(index/width).

내 뇌가 칼럼을 계산하려고 피를 흘리고 있습니다.

나에게 수치입니다. 0부터 시작하는 인덱스를 들어

답변

23

, 두 작업은 다음과 같습니다

row = (int)(index/width) 
column = index % width 

당신이 당신의 언어를 지정하지 않은 비록 내가, 내가 C 사나이 때문에 여기 %을 사용하고있어, 확실히 보이는 C 기반 시스템 중 하나와 같습니다. 당신이 width에 의해 index를 나눌 때 귀하의 질문에 C 또는 그 형제와 관련 하지 않는 경우

, 그것은 모듈로 연산자는 특정 환경을 위해 무엇이든 할 것이다, 나머지는 남아. 당신이 이 모듈로 연산자이없는 경우

, 당신은 사용할 수 있습니다

row = (int)(index/width) 
column = index - (row * width) 
+0

젠장, 당신은 바로 내 명칭이 엉망이다, 나는 또한 롤, 지금 나는 가능한 바보 같은 해결책을 발견, 행 호출 : 행 = index - (col * width), 물론, 당신이 찾던 하나입니다, 고마워요! – Icebone1000

+0

x 위치는 한 열로 간주하고 y 행은 뒤쪽으로 생각합니다. – CodyMace

+0

@CodyMace : 예, 대답에서 그들이 틀린 길 이었다는 것을 분명히했습니다. 그러나, 당신 말이 맞아. 혼란을 피하기 위해 그리고 OP가 그들이 잘못된 길을 찾았다 고 말했기 때문에 문제를 해결하기 위해 질문과 답변을 정리했습니다. 도와 줘서 고마워. – paxdiablo

0

Paxdiablo의 대답은 바로 하나입니다. 누군가가 행과 열에서 인덱스를 얻을 수있는 역 과정을 필요로하는 경우 :

index = (row * width) + column 
관련 문제