콘텐츠로 이동

henc · 사용자 정의

사용자 정의 색상·이미지·심볼 저장소·심볼 레이어

COLORREF hencGetUserColor( EEncColor eco )

사용자 색상표에서 S-52 색상 코드에 해당하는 RGB 값을 획득한다.

EEncColor eco : IN (S-52 색상 코드값)

RGB 색상 값


void hencSetUserColor( EEncColor eco, COLORREF co )

사용자 색상표에서 S-52 색상 코드에 해당하는 RGB 값을 설정한다.

  • EEncColor eco : IN (S-52 색상 코드값)
  • COLORREF co : IN (RGB 색상)

없음


void hencResetUserColor()

사용자 정의 색상표의 모든 색 값을 표준 낮 색상표로 설정한다

없음

없음


CEncUserImage *hencUserImageNew( const char *fnBmp )

이미지 파일로부터 이미지를 생성한다.

const char * fnBmp : IN (이미지 파일명)

  • != NULL : 이미지 객체
  • == NULL : 읽기 실패

int hencUserImageDelete( CEncUserImage * hui )

이미지 객체의 메모리를 해제한다.

  • 함수로 생성된 값이어야 함
  • = 0 : 성공
  • < 0 : 실패

int hencUserImageDrawAtMapPos( CEncUserImage * hui, double x, double y, double angle = 0, double scale = 1.0)

이미지 객체를 지도 위 좌표 상에 그린다.

  • CEncUserImage * hui : IN (이미지 객체)
  • 함수로 생성된 값이어야 함
  • double x : IN (경도, degree)
  • double y : IN (위도, degree)
  • double angle : IN (회전 각도, CW, degree)
  • double scale : IN (확대 비율_)

int hencUserImageDrawAtGlPos( CEncUserImage * hui, double x, double y, double z = 0, double angle = 0, double scale = 1)
  • z 좌표 지정
  • CEncUserImage * hui : IN (이미지 객체)
  • 함수로 생성된 값이어야 함
  • double x : IN (GlPos)
  • double y : IN (GlPos)
  • double z : IN (GlPos)
  • double angle : IN (회전 각도, CW, degree)
  • double scale : IN (확대 비율)
  • = 0 : 성공
  • < 0 : 실패

int hencUsersymbolInit()
  • 사용자 정의 심볼을 초기화 시킨다.
  • 이전에 등록된 사용자 정의 심벌을 메모리에 적재한다.
  • 라이브러리 내에서 자동적으로 호출이 되므로 별도로 호출할 필요가 없다.

없음

  • = 0 : 성공
  • < 0 : 실패

void hencUsersymbolClear()
  • 사용자 정의 심벌이 점유하고 있는 메모리를 해제한다.
  • 라이브러리 내에서 자동적으로 호출이 되므로 별도로 호출할 필요가 없다.

없음

없음


int hencUsersymbolDel( const char *name )

이름에 해당하는 사용자 정의 심볼을 삭제한다. 이 때 사용자 정의 심벌을 저장하는 디렉토리의 이미지 파일도 함께 삭제된다.

const char * name : IN (객체 이름, Null로 종료된 문자열)

  • = 0 : 성공
  • < 0 : 실패
int hencUsersymbolDel( CEncUserImage *img )

객체 포인터에 해당하는 사용자 정의 심볼을 삭제한다. 이 때 사용자 정의 심볼을 저장하는 디렉토리의 이미지 파일도 함께 삭제된다.

CEncUserImage * img : IN (사용자 정의 심볼 포인터)

  • = 0 : 성공
  • < 0 : 실패

int hencUsersymbolAddNewImage( CEncUserImage *imgNew, const char *fname)
  • 사용자 정의 심벌을 등록한다.
  • 사용자 정의 심벌을 저장하는 디렉토리에 해당 파일을 PNG 포맷의 이미지로 저장하여 다음 실행 시에도 사용할 수 있다.
  • CEncUserImage *imgNew : IN (사용자가 생성한 사용자 정의 이미지 객체)
  • 등록된 이후에는 라이브러리가 직접 메모리를 관리하므로 삭제(delete)나 메모리 해제(free)를 하지 말아야 한다.
  • const char *name : IN (사용자 정의 이미지 객체의 이름, Null로 종료된 문자열)
  • 파일 이름으로 적합한 문자열이어야 한다.
  • = 0 : 성공
  • < 0 : 실패

int hencUsersymbolAddToMap( CEncUserImage *imgNew, const char *name )
  • 사용자 정의 심벌로 임시 등록한다.
  • 이 경우, 사용자 정의 심벌 저장 디렉토리에 해당 파일을 저장하지 않는다. 따라서, 이번 실행 시에만 사용이 가능하고, 다음번 실행 시에는 사용할 수 없다.
  • CEncUserImage *imgNew : IN (사용자가 생성한 사용자 정의 이미지 객체)
  • 등록된 이후에는 라이브러리가 직접 메모리를 관리하므로 삭제(delete)나 메모리 해제(free)를 하지 말아야 한다.
  • const char *name : IN (사용자 정의 이미지 객체의 이름, Null로 종료된 문자열)
  • 파일 이름으로 적합한 문자열이어야 한다.
  • = 0 : 성공
  • < 0 : 실패

int hencUsersymbolGetCount()

등록된 사용자 정의 심벌의 개수를 획득한다.

없음

사용자 정의 심벌 개수


const char * hencUsersymbolGetName( int no )
  • 등록된 사용자 정의 심벌의 번호로부터 이름을 획득한다.
  • 사용자 정의 심벌의 번호는 새로운 심벌이 등록되거나 삭제될 경우에는 그 값이 바뀔 수 있으므로, 번호에 따른 이름은 매번 확인해야만 한다.

int no : IN (심볼 번호)

  • != NULL : 사용자 정의 이미지 객체의 이름 (Null로 종료된 문자열)
  • == NULL : 실패 (잘못된 심벌 번호)
const char * hencUsersymbolGetName( CEncUserImage *img )

해당 객체의 심벌 이름을 획득한다.

CEncUserImage *img : IN (이미지 객체 포인터)

  • != NULL : 사용자 정의 이미지 객체의 이름
  • == NULL : 실패 (잘못된 심벌 번호)

CEncUserImage * hencUsersymbolGetImage( int no )
  • 등록된 사용자 정의 심벌의 번호로부터 이름을 획득한다.
  • 사용자 정의 심벌의 번호는 새로운 심벌이 등록되거나 삭제될 경우에는 그 값이 바뀔 수 있으므로, 번호에 따른 이름은 매번 확인해야만 한다.

int no : IN (심볼 번호)

  • != NULL : 이미지 객체
  • 라이브러리가 직접 메모리를 관리하는 객체이므로 삭제(delete)나 메모리 해제(free)를 하지 말아야 한다.
  • == NULL : 실패 (잘못된 심벌 번호)
CEncUserImage *hencUsersymbolGetImage( const char *name )
  • 사용자 정의 심볼의 이름으로부터 객체를 획득한다.
  • 이 객체는 라이브러리에서 저장 관리하는 것이므로, 삭제(delete)하거나 메모리에서 해제(free)하면 안 된다.

const char *name : IN (객체 이름, Null로 종료된 문자열)

  • != NULL : 성공 (객체 포인터)
  • == NULL : 실패 (존재하지 않는 객체)

CEncUserObject * hencUserobjAdd( double x, double y, LPCTSTR *name )

사용자 정의 심볼을 지도 상에 추가한다.

  • double x : IN (경도, degree)
  • double y : IN (위도, degree)
  • const char *name : IN (심볼 저장소에 등록된 심벌의 이름, Null로 종료된 문자열)
  • != NULL : 사용자 정의 객체의 포인터값
  • 이 객체는 라이브러리에서 관리하므로 직접 삭제(delete)나 해제(free)하지 말아야 한다.
  • == NULL : 실패
CEncUserObject * hencUserobjAdd( double x, double y, CEncUserImage *img )
  • 사용자가 로드한 이미지를 지도 상에 추가한다.
  • 사용자 정의 심벌 저장소에 등록된 이미지가 아닌 경우, 이름이 없기 때문에 프로그램 종료 시에 저장이 되지 않는다. 따라서 다음 실행 시에는 지도 상에 복원되지 않는다.
  • double x : IN (경도, degree)
  • double y : IN (위도, degree)
  • CEncUserImage *img : IN (이미지 객체 포인터)
  • != NULL : 사용자 정의 객체의 포인터값
  • 라이브러리가 직접 메모리를 관리하는 객체이므로 삭제(delete)나 메모리 해제(free)를 하지 말아야 한다.
  • == NULL : 실패

int hencUserobjDel( CEncUserObject *obj )

지도 상의 사용자 정의 심볼을 삭제한다. 객체를 생성할 때 얻은 객체 포인터를 이용하여 삭제한다.

CEncUserObject *obj : IN (추가 시 리턴된 객체 포인터)

  • = 0 : 성공 (삭제된 userobj 갯수)

  • < 0 : 실패
int hencUserobjDel( CEncUserImage *obj )

지도 상의 사용자 정의 심볼을 삭제한다. 동일 심벌의 이미지 객체를 사용하는 모든 위치의 심볼들을 삭제한다.

CEncUserImage *obj : IN (사용자 정의 심볼 이미지 객체)

  • = 0 : 성공 (삭제된 userobj 갯수)

  • < 0 : 실패
int hencUserobjDel( double x, double y, const char *name )

지정한 위치와 지정한 이름의 사용자 정의 심볼을 삭제한다.

  • double x : IN (경도, degree)
  • double y : IN (위도, degree)
  • const char *name : IN (심볼 저장소에 등록된 심벌의 이름, Null로 종료된 문자열)
  • = 0 : 성공 (삭제된 userobj 갯수)

  • < 0 : 실패
int hencUserobjDel( const char *name )

지도 상의 사용자 정의 심볼을 삭제한다. 동일 이름의 심벌 이미지 객체를 사용하는 모든 위치의 심볼들을 삭제한다.

const char *name : IN (심볼 저장소에 등록된 심벌의 이름, Null로 종료된 문자열)

  • = 0 : 성공 (삭제된 userobj 갯수)

  • < 0 : 실패
int hencUserobjDel( double x, double y )

지도 상의 지정 위치의 모든 사용자 정의 심볼을 삭제한다.

  • double x : IN (경도, degree)
  • double y : IN (위도, degree)
  • = 0 : 성공 (삭제된 userobj 갯수)

  • < 0 : 실패

CEncUserObject * hencUserobjGet( int no )

no 번째 사용자 지정 심벌의 객체를 반환한다.

int no : IN (사용자 객체 번호)

  • != NULL : 사용자 정의 객체의 포인터값
  • 이 객체는 라이브러리에서 관리하므로 직접 삭제(delete)나 해제(free)하지 말아야 한다.
  • == NULL : 실패

int hencUserobjGetCount()

등록된 사용자 정의 심벌의 개수를 반환한다.

없음

사용자 정의 심벌의 개수