바로 전 포스트에서 QuadTree가 데이터에 따라 어떻게 분화되는지를 보여드렸는데요,
이번엔 QuadTree를 이용한 Search를 테스트하기 위해서 만들어 본 데모입니다.
QuadTree를 통해서 검색을 하면
QuadTree Leaf Node의 Boundary들과 검색 영역을 먼저 비교하여 내부 노드로
더 깊숙히 들어가야 할지 말지를 미리 결정하기 때문에, 전체 데이터를 모두 순회하면서 데이터들을 검색 영역과 비교하는 방법에 비해서 상당히 매력적인 자료구조입니다.
Live Demo
Mouse 왼쪽버튼 클릭 - 데이터 1개 추가
Random 버튼 - 한 번 누르실 때 마다, 임의의 위치에 200개 데이터가 추가됩니다.
화면 Drag - 선택 영역을 설정합니다.
선택 영역을 변경할 때마다, QuadTree를 통해 검색하여 영역 내의 데이터를 하이라이트합니다.
(Threshold = 25 입니다.)
이번엔 QuadTree를 이용한 Search를 테스트하기 위해서 만들어 본 데모입니다.
QuadTree를 통해서 검색을 하면
QuadTree Leaf Node의 Boundary들과 검색 영역을 먼저 비교하여 내부 노드로
더 깊숙히 들어가야 할지 말지를 미리 결정하기 때문에, 전체 데이터를 모두 순회하면서 데이터들을 검색 영역과 비교하는 방법에 비해서 상당히 매력적인 자료구조입니다.
Live Demo
Mouse 왼쪽버튼 클릭 - 데이터 1개 추가
Random 버튼 - 한 번 누르실 때 마다, 임의의 위치에 200개 데이터가 추가됩니다.
화면 Drag - 선택 영역을 설정합니다.
선택 영역을 변경할 때마다, QuadTree를 통해 검색하여 영역 내의 데이터를 하이라이트합니다.
(Threshold = 25 입니다.)
'Silverlight > Experiment' 카테고리의 다른 글
실버라이트로 즐기는 다음맵 (개선판) (8) | 2009.02.21 |
---|---|
인터넷지도에 대한 단상 (부제 : AJAX vs. 실버라이트) (0) | 2009.02.20 |
다음맵을 실버라이트로 맛보기 (17) | 2009.02.16 |
QuadTree가 어떻게 분화되는지 보여주는 Live Demo (2) | 2009.01.22 |
실버라이트 2 RC0에서 HttpUtility.UrlEncode 정상적 사용이 가능하네요. (0) | 2008.10.06 |
실버라이트 PasswordBox (= Password TextBox) 구현하는 꼼수 하나 소개 (0) | 2008.09.26 |
QuadTree (1) | 2008.03.12 |