2009-04-18 5 views
7

저는 하이트 맵 내의 특정 높이에 윤곽선을 나타내는 선 목록을 생성하는 함수 또는 예제를 찾고 있습니다. 고도가 부동 소수점 값의 512 × 512 배열3D 하이트 맵의 윤곽 계산?

Lines[] = GetContours(Heights[512,512], HeightValue) 

는 HeightValue는 윤곽이 그려 져야하는 높이이다. 높이에는 특정 높이 (예 : 새들 또는 섬 체인)에 대해 여러 줄이 포함될 수 있습니다.

누가 이것을 생성 할 수있는 알고리즘을 가지고 있거나 알고 있습니까?

답변

2

실제로하려는 것은 iso-line을 그리는 것입니다.
좀 전에 my question about을 참조하십시오.
The link given 답변 중 하나가 매우 도움이되었습니다.

+0

논문 링크가 끊어졌습니다 (404). – IAbstract

1

알고리즘 :.

A) 다각형 관심있는 높이

b)는 평면 라인을 얻을 수있는 평면과 그 다각형의 가장자리 교차 아래 & 위의 정점이있는 찾습니다.

c) 줄을 함께 묶습니다.

1

NASA의 SRTM 데이터에서 윤곽을 생성하기 위해 만든 도구 Srtm2Osm을 살펴보십시오. 알고리즘은 C# 코드에서 찾을 수 있습니다.