Ну про высчитывание пересечения это вы загнули конечно =)
такой эффект делается маской и только ей : )

Код:
for (var i; i<4; i += 1) {
_root.createEmptyMovieClip("sector"+i, i);
with (_root["sector"+i]) {
//синий
_root.sector.beginFill(0x014DC9);
//желтый
_root.sector1.beginFill(0xDCF42F);
//маска для зеленого
_root.sector2.beginFill(0xDCF42F);
//зеленый
_root.sector3.beginFill(0x34A062);
lineStyle(2, 0x000000, 100);
moveTo(-25, 25);
lineTo(-25, -25);
lineTo(25, -25);
lineTo(25, 25);
lineTo(-25, 25);
endFill();
}
}
//
startDrag("sector", true);
_root.sector._y = _root.sector1._y=_root.sector2._y=_root.sector3._y=200;
_root.sector1._x = _root.sector2._x=350;
_root.sector3.setMask(_root.sector1);
_root.onEnterFrame = function() {
_root.sector3._x = _root.sector._x;
_root.sector3._y = _root.sector._y;
};