|
프리지아 님이 쓰신 글 :
: 답변 감사합니다.
: 여태껏 삽질을 하고있었네요..
: WARSHIP님께 황당한 부탁 한가지만 드릴께요 T^T
: 지금 하고자 하는게 지도 이미지를 읽어와서 좌표를 세분화해서 표현하고
: 지도상의 위도,경도를 더욱 세밀하게 라인으로 그어서 다시 저장하는 프로그램을 작성중인데요
: 워낙 프로그램밍에 문외한 상태에서 이것저것 하다보니 이렇게 헤메게 되네요.
: 어떤 이미지를 불러와서 라인을 그어주고.. 그걸 다른파일로 저장하는
: Image32를 이용한 간단한 예제코드를 부탁드립니다.
:
너무 긴 코드가 나오겠네요 ^^;
좌표는 마우스 이벤트를 이용해서 구했다고 치구요.
저같으면 이런식으로 하겠습니다.
class LINE
{
public:
LINE(TPoint &_sp,TPoint &_ep)
{
sp.x=_sp.x;
sp.y=_sp.y;
ep.x=_ep.x;
ep.y=_ep.y;
}
LINE(const &LINE line) : LINE(line.sp,line.ep) {}
TPoint sp;
TPoint ep;
} ;
요런 비슷한 클래스를 하나 작성하구
그다음 위의 vector 클래스를 화일로 저장할수 있는 함수 두개를 작성하면 끝나겠네요 ^^;
/* 예로 저장하는것만 나열해 보겠습니다 */
bool SaveLines( vector<LINE> &vec)
{
FILE *fp = fopen("mapdata.dat","wb");
if (fp==NULL) return false;
if (fwrite(&vec[0],sizeof(LINE),vec.size(),fp) != vec.size())
{
fclose(fp); return false;
}
fclose(fp);
return true;
}
이런식이 될거 같구요 LoadLines라는 함수는 우선
화일사이즈 검색 및 더욱 섬세한 에러 처리가 필요하겠네요.
아주 기본적인 뼈대만 제시해드렸구요.
다 적어드리기엔 시간도 부족하고 ^^; 그럼 꼭 성공하시길 바랍니다.
|