summaryrefslogtreecommitdiff
path: root/public/assets/javascripts/rectangles/engine/rooms/clipper.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/assets/javascripts/rectangles/engine/rooms/clipper.js')
-rw-r--r--public/assets/javascripts/rectangles/engine/rooms/clipper.js8
1 files changed, 6 insertions, 2 deletions
diff --git a/public/assets/javascripts/rectangles/engine/rooms/clipper.js b/public/assets/javascripts/rectangles/engine/rooms/clipper.js
index cd45479..365ae8c 100644
--- a/public/assets/javascripts/rectangles/engine/rooms/clipper.js
+++ b/public/assets/javascripts/rectangles/engine/rooms/clipper.js
@@ -41,7 +41,7 @@
app.tube("clip")
}
- var rooms, regions
+ var regions
// Given a set of overlapping rooms, clip any intersections, then cull any duplicate polygons
base.solve_rects = function(){
@@ -59,6 +59,7 @@
// Reset the clipping/culling states of each of the rooms
base.reset_rects = function(){
+ regions = []
Rooms.forEach(function(room){
room.reset()
})
@@ -67,7 +68,6 @@
// Compare each room to the rooms it overlaps, and subdivide
base.clip_rects = function(){
var rooms = Rooms.sorted_by_position()
- regions = []
var left, right
for (var i = 0; i < rooms.length; i++) {
@@ -89,6 +89,8 @@
rooms[i].regions = rooms[i].regions.filter(function(r){ return !!r })
regions = regions.concat(rooms[i].regions)
}
+
+ return regions
}
// Find overlapping regions (of the same size) and dedupe
@@ -125,6 +127,8 @@
ttx.data = new Tree (regions[i].y.a, [regions[i]])
}
}
+
+ return regions
}
return base