2012-10-07 2 views
0

Coordinates방법의 ncurses C의 좌표를 그리는 ++

안녕 얘들 아, 내가 좌표지도 시스템을 구축 할 수 있었다 다음 코드를 사용하여. 좌표를 표시하는 데 막혔습니다. 이제 사용자로부터 (x, y)를 얻을 것이고 "*"가있는지도 안쪽에 표시해야합니다. 사용자는 여러 개의 (x, y) 좌표를주고 표시해야합니다. 나는 그렇게 할 수 없다. 루프를 수정해야한다는 것을 이해하지만, 수정하면 완전히 엉망이됩니다. 제발 조언. 나는 ncurses를 사용하고있다.

mvaddstr(3 - 2, 3 + 5, "Main Board"); 
mvaddstr(3 - 1, 3 - 3, numbers); 
for (y = 0; y < 7; ++y) { 
    mvaddch(3 + y, 3 - 3, (chtype) (y + '0')); 
    attron(COLOR_PAIR(COLOR_RED)); 
    addch(' '); 
    for (x = 0; x < 7; x++) { 
     (void) addstr(" . ");    
    } 
    (void) attrset(0); 
    (void) addch(' '); 
    (void) addch((chtype) (y + '0')); 
} 

답변

1

모델 분리는 어떻습니까? 예 : 상태를 다른 객체 또는 구조체에 유지하고 모델을 그리는 함수를 만듭니다. 유지 관리 및 변경이 더 쉬울 수도 있습니다. :).

+0

죄송합니다. u가 더 이상 설명 할 수 있도록 신빙성이 있습니까? – rasul1719435

+0

은 16x15의 배열을 가져 와서 모델을 기본 값으로 0으로 초기화합니다. 클래스를 생성하거나 구조체를 사용할 수 있습니다. 단지 "*"로 인쇄해야하는 위치를 하나만 표시하면됩니다. 마지막으로 그리기 위해 창을 지우려면 어레이 값을 사용하여 바깥 쪽 프레임을 다시 그립니다. 이제까지 당신은 0 장의 프린트를 얻습니다. ' 그렇지 않으면 '*'. –