카카오맵 또는 네이버지도에서 나침반, 방향지시 모드 처럼 표현할 수 있는 방법이 있을까요?

안녕하세요. 현재 프로젝트 진행 중에 0~360도 기준으로 방향 표시하는 기능을 구현 중입니다.
첫 구현은 opengl을 사용하여 3D Arrow로 상하, 좌우의 방향을 표시하였으나 생각보다 시각적으로 정확한 구분이 안가더라고요.
그래서 생각한게 상하표시를 없애고 좌우만 표시할 수 있는 방법으로 하자고하여 네비어맵 또는 카카오맵 처럼 표기하고 싶은데 샘플코드나 방법이 있을까요?
(물론 radar로 응용해서 구현하면 되겠다 싶긴한데…)


위에 이미지는 샘플 이미지입니다. 빨간색과 같이 0~360도 기준으로 구현하고 싶어요… 검색해도 어떤키워드로 해야할지 의문이긴하네요.
아 참고로 avalonia framework 사용 중입니다. wpf 샘플 있으면 그것도 응용 가능할거 같긴합니다

감사합니다

1개의 좋아요

카카오 로드맵의 360도 표시와 동일하게 하고 싶으시면 너무 어렵게 생각하지 마시고 16개의 이미지를 준비한 후 바라보는 각도에 따라 적절한 이미지를 표시하시면 될 듯 합니다.

4개의 좋아요

@dimohy 님 말씀대로 카카오맵은 아래 그림과 같이 스프라이트 방식으로 구현되어 있습니다.

카카오맵

네이버맵

WPF나 Avalonia에서 스프라이트 애니메이션을 사용하시려면 위와 같은 이미지 한 장을 로드하여 Viewbox 속성을 활용하면 됩니다.

각도를 입력으로 하여 해당 프레임의 이미지 영역에 대한 Rect를 반환하는 Converter를 만들어 사용하시면 될 듯 합니다.

9개의 좋아요

감사합니다.

오옷 감사합니다.
혹시 이미지 따로따로 있는건 없죠?

이미지가 따로따로 있는 것보다 답변드린대로 하나의 이미지를 로딩해서 필요한 영역만 그리는 방식으로 사용하는 것이 더 유리합니다.

1개의 좋아요

아하 이해했어요 ㅎㅎ 감사합니다~