new object $rect: $frob; var $root created_on = 843360251; var $root flags = ['variables, 'methods, 'code, 'core]; var $root inited = 1; var $root managed = [$rect]; var $root manager = $rect; public method .inside() { arg point, box; return ($math.is_lower(point, box[2])) && ($math.is_lower(box[1], point)); }; public method .intersection() { arg r1, r2; // Doesn't check for validity return [$math.major(r1[1], r2[1]), $math.minor(r1[2], r2[2])]; }; public method .nondegenerate() { arg r1; return $math.is_lower(@r1); }; public method .rect_size() { arg r1; var i, s; s = 0.0; for i in ($math.sub(@r1)) s += i; return -s; }; public method .union() { arg r1, r2; return [$math.minor(r1[1], r2[1]), $math.major(r1[2], r2[2])]; };