2009-12-11 1 views
1

이것은 호기심을위한 것입니다.MacOS의 Exposé에 대한 논리

Exposé에는 바탕 화면의 창을 다시 정렬하는 기능과 열려있는 모든 창을 표시하는 기능이있어 사용자가 다른 창 아래에 숨겨진 창을 볼 수 있으며 모든 창을 모두 옆으로 이동시키는 기능이 있습니다. 사용자는 데스크탑과 상호 작용합니다.

누군가가 OS가 어느 창을 어디에 놓을 지, 바탕 화면을 보여줄 때 창을 이동할 경계를 결정하는 논리를 알고 있는지 궁금합니다.

+0

이것은 호기심을위한 것입니다. 왜 묻지? 이 퀴즈를 아는 것으로 어떤 문제가 해결되고 있습니까? –

+0

이것은 reallty 퍼지 질문 .... 어떻게 사람들이 대답하기를 원합니까? 프론트 로그에서 psuedocode로, set 이론에서? : D –

+0

깔끔한 방법으로 관련 : http://stackoverflow.com/questions/342687/algorithm-to-implement-something-like-wordle –

답변

4

당신이 찾고있는 무엇의 일반화 된 아이디어는 Graph Drawing라고 :

[] 그래프의 그리기 기본적으로 평면에서 그래프의 삽입의 그림 표현이다, 일반적으로 목표 문제의 그래프 또는 그래프로 모델링 된 객체의 특정 속성을 편리하게 시각화 할 수 있습니다.

Exposé는이 중 하나의 알고리즘 또는 유사 제품군을 사용하여 창 레이아웃 기능을 가져옵니다. Graphviz project의 소스 코드를 살펴볼 수도 있습니다. Exposé와 같은 방식으로 그래프 노드를 레이아웃하는 알고리즘을 가지고 있습니다.

측면에 창을 섞어서 섞는 방법. Windows 위치를 가장 가까운쪽으로 이동시키는 "멍청한"알고리즘 일 가능성이 높습니다.

+0

예, Omnigraffe는 레이아웃 알고리즘을 사용합니다. –