summaryrefslogtreecommitdiff
path: root/assets/javascripts/rectangles/sort.js
blob: 8ece95f325a8f3874a76b53e96fc7aeb2cab6733 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
function sort_rooms_by_position(list){
	return list.sort(function(a,b){
		return compare_rect_position(a.rect, b.rect)
	})
}

function sort_rects_by_position(list){
	return list.sort(compare_rect_position)
}

function compare_rect_position(a,b){
	if (a.x.a < b.x.a) {
		return -1
	}
	if (a.x.a > b.x.a) {
		return 1
	}
	if (a.y.a < b.y.a) {
		return -1
	}
	if (a.y.a > b.y.a) {
		return 1
	}
	return 0
}

function sort_rects_by_area(list){
	return list.map(function(r){ return [r.area(), r] }).sort(function(a,b){
		if (a[0] < b[0]) {
			return 1
		}
		if (a[0] > b[0]) {
			return -1
		}
		return 0
	}).map(function(r){ return r[1] })
}