henc · 전시 환경
레이어·가시성·픽셀·심볼 스케일·메르카토르·심도·색상·폰트 등 전시 설정
hencGetMapLevelMask
섹션 제목: “hencGetMapLevelMask”함수 원형
섹션 제목: “함수 원형”DWORD hencGetMapLevelMask()- ENC 지도는 6 개의 지도 레벨이 있다. 이 함수는 현재 지도의 레벨별 전시 여부에 대한 플래그값(flag)을 획득한다. 즉, 각 레벨별 전시 설정값을 획득한다.
- 각 레벨별로 LSB0
5의 비트값은 각각 16 S-57 Code에 해당된다. 각 비트값에 따라 해당 레벨이 지도를 화면에 전시하거나 전시하지 않는다. - 0 이면 전시하지 않고, 1 이면 전시한다.
없음
반환값
섹션 제목: “반환값”레벨별 비트 마스크(Bit Mask)
hencSetMapLevelMask
섹션 제목: “hencSetMapLevelMask”함수 원형
섹션 제목: “함수 원형”void hencSetMapLevelMask( DWORD mask )- 지도의 레벨별 전시 여부를 설정하기 위한 함수이다. 각 지도 레벨별 전시 설정 여부는 비트마스크(Bit Mask) 형태로 지정한다.
- 각 레벨별로 LSB0
5의 비트값은 각각 16 S-57 Code에 해당된다. 각 비트값에 따라 해당 레벨이 지도를 화면에 전시하거나 전시하지 않는다. - 0 이면 전시하지 않고, 1 이면 전시한다.
- Level 0
5는 S-57 Code 16에 해당하며, 각 지도 전시 여부를 결정
반환값
섹션 제목: “반환값”없음
- 전자해도 로드시 레벨 값은 지도셀의 파일명이 xx?xxxxx.xxx일 경우, ?의 값으로 지정된다. 이 값은 S-57 코드값으로 1~6 까지 설정이 가능하다. 내부적으로 저장되는 레벨 값은 S-57 코드값 보다 1 작은 값으로 세팅된다.
- (예) Level 0 = S-57 Code 1
- 레벨 값을 확인할 수 없는 경우에는 “0”으로 지정한다.
- 레벨 10은 최상위 레벨로서 별도로 처리되며, 모든 지도의 최상위 계층에 그려지게 된다.
- 함수의 결과값으로 지도의 레벨 값을 변경할 수가 있다.
hencEncfileGetVisible
섹션 제목: “hencEncfileGetVisible”함수 원형
섹션 제목: “함수 원형”int hencEncfileGetVisible( int no )각 지도셀 별로 전시가 설정되어 있는지 여부를 확인한다.
int no : IN (지도 번호)
반환값
섹션 제목: “반환값”-
0 : 전시
- == 0 : 미전시
- < 0 : 실패 (지도 번호 오류)
- 상세 내용은 “지도 파일 입출력”을 참고
hencEncfileSetVisible
섹션 제목: “hencEncfileSetVisible”함수 원형
섹션 제목: “함수 원형”int hencEncfileSetVisible( int no, int isShow )- flag가 0 이면, 해당 지도셀을 화면에서 보이지 않도록 감춘다.
- int no : IN (지도 번호)
- int isShow : IN (0 : 미전시, 1 : 전시)
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
hencEncfileSetLevel
섹션 제목: “hencEncfileSetLevel”함수 원형
섹션 제목: “함수 원형”int hencEncfileSetLevel( int no, int level )- 개별 지도 파일의 레벨을 변경한다.
- 각 지도를 로딩할 때 파일명에 포함된 S-57 코드값에 따라 전시 레벨이 결정된다.
- 상위 레벨(숫자가 크면 상위 레벨)이 하위 레벨의 지도와 영역이 겹치는 경우, 상위 레벨 지도가 하위 레벨 지도를 가리게 된다.
- int no : IN (지도 번호)
- int level : IN (지도 레벨, 0~5 or 10까지 가능)
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
hencEncfileGetLevel
섹션 제목: “hencEncfileGetLevel”함수 원형
섹션 제목: “함수 원형”int hencEncfileGetLevel( int no )지도 맵 파일(Map File)의 현재 설정된 레벨값을 얻는다.
int no : IN (지도 번호)
반환값
섹션 제목: “반환값”- 0~5 or 10 : 성공 (레벨 값)
- < 0 : 실패
hencEncfileSetBottom
섹션 제목: “hencEncfileSetBottom”함수 원형
섹션 제목: “함수 원형”int hencEncfileSetBottom( int no )특정 지도 셀을 레벨 0으로 지정하여 화면상에서 다른 지도의 하위 레이어에 그려지도록 한다.
없음
반환값
섹션 제목: “반환값”- = 0 : 성공.
- < 0 : 실패
hencEncfileSetTopMost
섹션 제목: “hencEncfileSetTopMost”함수 원형
섹션 제목: “함수 원형”int hencEncfileSetTopMost( int no )특정 지도 셀을 레벨 10으로 지정하여 화면상에서 다른 지도의 상위 레이어에 그려지도록 한다.
없음
반환값
섹션 제목: “반환값”- = 0 : 성공.
- < 0 : 실패
hencEncfileSetScaleForTopmost
섹션 제목: “hencEncfileSetScaleForTopmost”함수 원형
섹션 제목: “함수 원형”int hencEncfileSetScaleForTopmost( int scale )- 레벨 10의 지도를 전시할 최소의 축척을 지정한다. 이는 최상위(Top Most)의 지도가 용량이 매우 크고, 상세한 지도일 때 사용하기 위한 함수이다.
- 즉, 기존 전자해도 상위에 추가적으로 오버레이(Overlay)하는 지도를 사용하기 위한 용도에 적용될 수 있다.
- 0 : 상시 전시
-
0 : 전시 축척 1:N에서 N 값이 스케일(scale) 값보다 작을 때에만 전시
반환값
섹션 제목: “반환값”- = 0 : 성공.
- < 0 : 실패
hencSetObjMask
섹션 제목: “hencSetObjMask”함수 원형
섹션 제목: “함수 원형”int hencSetObjMask( EEncObject obj, bool flag )ENC Feature Object의 종류별 전시 여부를 지정한다.
- EEncObject obj : IN (ENC Feature Object Code)
- 2.23.1 S-57 Feature Object Catalog 참조
- bool flag : IN
- true : 전시
- false : 미전시
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
hencGetObjMask
섹션 제목: “hencGetObjMask”함수 원형
섹션 제목: “함수 원형”bool hencGetObjMask( EEncObject obj )ENC Feature Object의 종류별 전시 여부를 획득한다.
- 2.23.1 S-57 Feature Object Catalog 참조
반환값
섹션 제목: “반환값”- true : 전시
- false : 미전시
hencSetPixelSize
섹션 제목: “hencSetPixelSize”함수 원형
섹션 제목: “함수 원형”int hencSetPixelSize( double meter )- 지도의 축척 계산에 사용되는 화면 픽셀의 크기를 지정한다. (단위 : meter)
- 함수와 연동이 되며, 단위만 차이가 있다.
double meter : IN (화면 1 픽셀의 크기, meter)
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
기본 설정값 : 0.000265 ~= 96DPI
hencSetPixelDPI
섹션 제목: “hencSetPixelDPI”함수 원형
섹션 제목: “함수 원형”int hencSetPixelDPI( int dpi )- 지도의 축척 계산에 사용되는 화면 픽셀의 크기를 지정한다. (단위 : 픽셀수, DPI)
- 함수와 연동이 되며, 단위만 차이가 있다.
int dpi : IN (화면 1 인치 당 픽셀 수, DPI)
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
기본 설정값 : 0.000265 ~= 96DPI
hencGetPixelSize
섹션 제목: “hencGetPixelSize”함수 원형
섹션 제목: “함수 원형”double hencGetPixelSize()설정된 화면 1 픽셀의 크기 값을 미터 단위로 변환하여 반환한다.
없음
반환값
섹션 제목: “반환값”설정된 화면 1 픽셀에 해당하는 크기 값 (미터 단위)
기본 설정값 : 0.000265 ~= 96DPI
hencGetPixelDPI
섹션 제목: “hencGetPixelDPI”함수 원형
섹션 제목: “함수 원형”int hencGetPixelDPI()설정된 화면 1 픽셀의 크기 값을 DPI 단위로 변환하여 반환한다.
없음
반환값
섹션 제목: “반환값”설정된 화면 DPI 값
기본 설정값 : 0.000265 ~= 96DPI
hencGetSymbolScale
섹션 제목: “hencGetSymbolScale”함수 원형
섹션 제목: “함수 원형”double hencGetSymbolScale()S-52 심볼(Symbol), 패턴(Pattern), 라인(Line) 등의 크기값을 획득한다.
없음
반환값
섹션 제목: “반환값”Symbol Scale 값
hencSetSymbolScale
섹션 제목: “hencSetSymbolScale”함수 원형
섹션 제목: “함수 원형”int hencSetSymbolScale( double scale )S-52 심볼(Symbol), 패턴(Pattern), 라인(Line) 등의 크기값을 지정한다. 이 값의 비율에 따라 각 심볼, 패턴, 라인이 같은 비율로 바뀐다.
double scale : IN (심볼의 크기(Symbol Scale) 값)
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
기본 설정값 : 0.033333 ~= 96DPI
hencIsAutoScaleToZoom
섹션 제목: “hencIsAutoScaleToZoom”함수 원형
섹션 제목: “함수 원형”bool hencIsAutoScaleToZoom()위도 변경시 전시 배율의 자동 조정 기능을 사용하고 있는지 여부를 확인한다.
없음
반환값
섹션 제목: “반환값”- true : 자동 배율을 사용
- false : 자동 배율을 사용하지 않음
hencSetAutoScaleToZoom
섹션 제목: “hencSetAutoScaleToZoom”함수 원형
섹션 제목: “함수 원형”int hencSetAutoScaleToZoom( bool flag )위도 변경시 축척값에 맞게 전시 배율을 자동으로 조정하는 기능을 설정한다.
- true : 자동 배율을 사용
- false : 자동 배율을 사용하지 않음
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
hencIsMercator
섹션 제목: “hencIsMercator”함수 원형
섹션 제목: “함수 원형”bool hencIsMercator()Mercator 투영법의 사용 여부를 확인한다.
없음
반환값
섹션 제목: “반환값”- true : Mercator 투영법을 사용
- false : Mercator 투영법을 사용하지 않음
hencSetMercator
섹션 제목: “hencSetMercator”함수 원형
섹션 제목: “함수 원형”void hencSetMercator( bool flag )Mercator 투영법의 사용 여부를 지정한다.
- true : Mercator 투영법을 사용
- false : Mercator 투영법을 사용하지 않음
반환값
섹션 제목: “반환값”없음
hencSetSimplifiedSymbol
섹션 제목: “hencSetSimplifiedSymbol”함수 원형
섹션 제목: “함수 원형”void hencSetSimplifiedSymbol( bool flag )S-52 심볼, 패턴, 라인을 전시할 때 간략화 심볼(Simpilfied Symbol)의 사용 여부를 지정한다.
- true : Simpilfied 심볼, 패턴, 라인을 사용
- false : Simpilfied 심볼, 패턴, 라인을 사용하지 않음
반환값
섹션 제목: “반환값”없음
hencIsSimplifiedSymbol
섹션 제목: “hencIsSimplifiedSymbol”함수 원형
섹션 제목: “함수 원형”bool hencIsSimplifiedSymbol()S-52 심볼, 패턴, 라인을 전시할 때 간략화된 심볼(Simpilfied Symbol)의 사용 여부를 확인한다.
없음
반환값
섹션 제목: “반환값”- true : Simpilfied 심볼, 패턴, 라인을 사용
- false : Simpilfied 심볼, 패턴, 라인을 사용하지 않음
hencGetDisplayCategory
섹션 제목: “hencGetDisplayCategory”함수 원형
섹션 제목: “함수 원형”EDisplayCategory hencGetDisplayCategory()전시 카테고리를 획득한다. (2.23.5절의 S-52 Display Category 참조)
없음
반환값
섹션 제목: “반환값”EDisplayCategory의 현재 설정값
hencSetDisplayCategory
섹션 제목: “hencSetDisplayCategory”함수 원형
섹션 제목: “함수 원형”void hencSetDisplayCategory( EDisplayCategory c )전시 카테고리를 지정한다. (2.23.5절의 S-52 Display Category 참조)
EDisplayCategory c : IN (EDisplayCategory 설정값)
반환값
섹션 제목: “반환값”없음
hencSetNationalLanguage
섹션 제목: “hencSetNationalLanguage”함수 원형
섹션 제목: “함수 원형”void hencSetNationalLanguage( bool flag )- ENC 파일 내에 지역 언어의 사용 여부를 지정한다.
- 각 ENC 특성 객체(Feature Object)의 정보를 표시할 때 지역 언어 정보를 포함하고 있으면, 이를 사용할 것인지 여부를 지정한다. 사용하지 않도록 설정하면 항상 영어로 표시된다.
- true : 지역 언어 사용
- false : 영어만 사용
반환값
섹션 제목: “반환값”없음
hencIsNationalLanguage
섹션 제목: “hencIsNationalLanguage”함수 원형
섹션 제목: “함수 원형”bool hencIsNationalLanguage()ENC 파일 내에 지역 언어의 사용 여부를 확인한다.
없음
반환값
섹션 제목: “반환값”- true : 지역 언어 사용
- false : 영어만 사용
hencGetUseScaleMinMax
섹션 제목: “hencGetUseScaleMinMax”함수 원형
섹션 제목: “함수 원형”int hencGetUseScaleMinMax()ENC Feature Object 내에 SCAMIN, SCAMAX 값을 활용하여 전시하고 있는지 여부를 확인한다.
없음
반환값
섹션 제목: “반환값”- != 0 : 사용 중
- ==0 : 사용 안 함
- < 0 : 실패
hencSetUseScaleMinMax
섹션 제목: “hencSetUseScaleMinMax”함수 원형
섹션 제목: “함수 원형”void hencSetUseScaleMinMax( int flag )ENC Feature Object 내 SCAMIN, SCAMAX 값을 활용하여 전시할지 여부를 지정한다.
- != 0 : 사용
- ==0 : 사용 안 함
반환값
섹션 제목: “반환값”없음
hencGetViewMapByScale
섹션 제목: “hencGetViewMapByScale”함수 원형
섹션 제목: “함수 원형”int hencGetUseScaleMinMax()지도 전시 시 레벨에 따라 전시 여부를 결정하는 기능의 사용 여부를 획득합니다.
없음
반환값
섹션 제목: “반환값”- != 0 : 사용 중
- ==0 : 사용 안 함
- < 0 : 실패
hencSetViewMapByScale
섹션 제목: “hencSetViewMapByScale”함수 원형
섹션 제목: “함수 원형”void hencSetViewMapByScale( int flag )지도 전시 시 레벨에 따라 전시 여부를 결정하는 기능의 사용 여부를 설정한다. 지정된 축척 이하에서는 상세 지도를 화면에서 감추는 기능을 설정한다.
- != 0 : 사용
- ==0 : 사용 안 함
반환값
섹션 제목: “반환값”없음
hencSetDepth
섹션 제목: “hencSetDepth”함수 원형
섹션 제목: “함수 원형”int hencSetDepth( EDepthType t, double depth )현재 설정된 수심을 표시하는 설정값을 변경한다. S-52 CSP에 사용되는 수심 별 색상 및 선 구분 표시에 사용되는 수심값을 설정한다.
- EDepthType t: IN (수심 종류)
- double depth : IN (수심 값, meter)
반환값
섹션 제목: “반환값”-
= 0 : 성공
- < 0 : 실패
hencGetDepth
섹션 제목: “hencGetDepth”함수 원형
섹션 제목: “함수 원형”double hencGetDepth( EDepthType t );- 현재 설정된 수심 표시에 대한 설정값을 획득한다.
- 상세 내용은 함수를 참조
EDepthType t : IN (수심 종류) enum EDepthType { SHALLOW_CONTOUR, DEEP_CONTOUR, SAFETY_CONTOUR, SAFETY_DEPTH, DEPTHTYPE_MAX };
반환값
섹션 제목: “반환값”현재 설정값
hencSetShallowPattern
섹션 제목: “hencSetShallowPattern”함수 원형
섹션 제목: “함수 원형”int hencSetShallowPattern( bool flag )얕은 수심을 표시하기 위한 저수심 패턴(Shallow pattern)의 표시 여부를 설정한다.
- true : 저수심 패턴을 표시
- false : 저수심 패턴을 표시 안함
반환값
섹션 제목: “반환값”-
= 0 : 성공
- < 0 : 실패
hencIsShallowPattern
섹션 제목: “hencIsShallowPattern”함수 원형
섹션 제목: “함수 원형”bool hencIsShallowPattern()얕은 수심을 표시하기 위한 저수심 패턴(Shallow pattern)의 표시 유무 설정값을 획득한다.
없음
반환값
섹션 제목: “반환값”저수심 패턴의 전시 유무 값
hencSetTwoShades
섹션 제목: “hencSetTwoShades”함수 원형
섹션 제목: “함수 원형”int hencSetTwoShades( bool flag )- 해수면의 수심 영역을 표시할 때 2 가지 색상만 사용할지에 대한 여부를 설정한다.
- 해수면은 2 가지 색상 또는 4 가지의 색상으로 수심 깊이에 따라 다른 색상으로 표시된다. 이때 사용할 색상의 수를 지정한다.
- true : 2가지 색상만을 사용
- false : 2가지 색상 이상을 사용
반환값
섹션 제목: “반환값”-
= 0 : 성공
- < 0 : 실패
hencIsTwoShades
섹션 제목: “hencIsTwoShades”함수 원형
섹션 제목: “함수 원형”bool hencIsTwoShades()해수면을 표시할 때 2가지 색상 모드를 사용하는지 여부를 획득한다.
없음
반환값
섹션 제목: “반환값”1: 2가지 색상 사용 1: 2가지 색상 사용하지 않음(4가지 색상이 사용됨)
hencSetHideMeta
섹션 제목: “hencSetHideMeta”함수 원형
섹션 제목: “함수 원형”int hencSetHideMeta( bool flag )S-57 ENC의 특성객체(Feature Object) 중에서 메타객체(Meta Object, 300번대 Object Code)에 해당하는 객체의 표시 여부를 설정한다.
- true : 메타객체를 전시하지 않음
- false : 메타객체를 전시
반환값
섹션 제목: “반환값”-
= 0 : 성공
- < 0 : 실패
hencIsHideMeta
섹션 제목: “hencIsHideMeta”함수 원형
섹션 제목: “함수 원형”bool hencIsHideMeta()메타객체(Meta Object)의 전시 여부 설정값을 획득한다.
없음
반환값
섹션 제목: “반환값”메타객체의 전시 여부
hencSetColorset
섹션 제목: “hencSetColorset”함수 원형
섹션 제목: “함수 원형”int hencSetColorset( EEncColorset colorset )지도 전시 색상표를 지정한다. (S-52 Color 참조)
EEncColorset colorset : IN (색상표 값) enum EEncColorset { COLORSET_DAY_BRIGHT, COLORSET_DAY_WHITEBACK, COLORSET_DAY_BLACKBACK, COLORSET_DUSK, COLORSET_NIGHT, COLORSET_USER, COLORSET_MAX };
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
hencGetColorset
섹션 제목: “hencGetColorset”함수 원형
섹션 제목: “함수 원형”EEncColorset hencGetColorset()사용 중인 지도 전시 색상표 값을 획득한다. (S-52 Color 참조)
없음
반환값
섹션 제목: “반환값”사용 중인 지도 전시 색상표 값 enum EEncColorset { COLORSET_DAY_BRIGHT, COLORSET_DAY_WHITEBACK, COLORSET_DAY_BLACKBACK, COLORSET_DUSK, COLORSET_NIGHT, COLORSET_USER, COLORSET_MAX };
hencFontGet
섹션 제목: “hencFontGet”함수 원형
섹션 제목: “함수 원형”int hencFontGet( LOGFONT *lf )지도 전시에 사용할 글꼴에 대한 설정값을 획득한다.
LOGFONT *lf : IN, OUT (Win32 LOGFONT structure)
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
hencFontSet
섹션 제목: “hencFontSet”함수 원형
섹션 제목: “함수 원형”int hencFontSet( LOGFONT *lf )지도 전시에 사용할 글꼴의 설정값을 지정한다.
LOGFONT *lf : IN (Win32 LOGFONT structure)
반환값
섹션 제목: “반환값”- = 0 : 성공
- < 0 : 실패
hencPrintf
섹션 제목: “hencPrintf”함수 원형
섹션 제목: “함수 원형”int hencPrintf( double x, double y, COLORREF co, const char *fmt, ... )- 지도 전시에 사용되는 글꼴과 동일한 글꼴로 지정된 좌표에 지정된 색상으로 문자열을 그린다.
- C언어의 printf 형태의 문자열 formatting 기능
- double x : IN (글자를 표시할 OpenGL x 좌표값)
- double y : IN (글자를 표시할 OpenGL y 좌표값)
- COLORREF co : IN (글자 색상)
- const char *fmt : IN (화면에 표시할 문자열, Null로 종료된 문자열)
- C언어 printf 포맷 규격을 참조
반환값
섹션 제목: “반환값”-
= 0 : 성공
- < 0 : 실패
함수 원형
섹션 제목: “함수 원형”int hencPrintf( double x, double y, double z, COLORREF co, const char *fmt, ... )- 지도 전시에 사용되는 글꼴과 동일한 글꼴로 지정된 좌표에 지정된 색상으로 문자열을 그린다. (z 좌표 포함)
- C언어의 printf 형태의 문자열 formatting 기능
- double x : IN (글자를 표시할 OpenGL x 좌표값)
- double y : IN (글자를 표시할 OpenGL y 좌표값)
- double z : IN (글자를 표시할 OpenGL z 좌표값)
- COLORREF co : IN (글자 색상)
- const char *fmt : IN (화면에 표시할 문자열, Null로 종료된 문자열)
- C언어 printf 포맷 규격을 참조
반환값
섹션 제목: “반환값”-
= 0 : 성공
- < 0 : 실패