Здравия! есть задача реализовать конструктор, для расчета материалов для дверей, наподобии вот этого:
http://artcupe.md/designer - это не на флэше
http://myconstructor.ru/ - это на флэше. (нужно зайти в раздел - "дверей-купе")
Меня несколько, озадачил вопрос как реализовать разделители! (это в указанных примерах 2 кнопки - верикальная и горизонтальная перегородки)
Т.е. какие использовать для этого объекты, свойства... ничего путного для реализации подобной задачи в интернете не нашел.
Я сделал простой макет с двумя MovieClip которые хочу разделить по вертикали и горизонтали как в примерах,
но не могу нарыть саму идею реализации... Буду признателен за добрый совет!

Код AS3:
package {
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.display.DisplayObject;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.ui.Mouse;
import flash.ui.MouseCursor;
public class MODUL extends MovieClip {
public function MODUL()
{
// constructor code
var _WP:Number = 2500; // Ширина проема
var _HP:Number = 2000; // Высота проема
var _WD:Number = 0; // Ширина двери
var _HD:Number = 0; // Высота двери
var _WZ:Number = 20; // Замер профиля
var _HZ:Number = 20; // Замер профиля
var _KOL_D:Number = 2; // Количество дверей
var _KOL_P:Number = 1; // Количество перекрытий
var _KOEFFICIENT:Number = 7; // Коэффициент для подгона в экран
var _color_fon:uint = 0x747714; // Цвет фона
var _color_line:uint = 0x740000; // Цвет линии
var zdvig_h:Number = 40; // Здвиг по отношению к началу координат
var zdvig_w:Number = 40; // Здвиг по отношению к началу координат
var _KW = Math.ceil(_WP / 700);
var _KH = Math.ceil(_HP / 450);
if (_KH <= _KW) {_KOEFFICIENT = _KW} else {_KOEFFICIENT = _KH};
trace(" _KW "+_KW+" _KH "+_KH +"_KOEFFICIENT "+_KOEFFICIENT);
_WP = (_WP / _KOEFFICIENT);
_HP = (_HP / _KOEFFICIENT);
_WZ = (_WZ / _KOEFFICIENT);
_HZ = (_HZ / _KOEFFICIENT);
F_Fon(zdvig_w, zdvig_h,_WP,_HP,_color_fon);
zdvig_w = 45; zdvig_h = 45 + _HZ;
var i:int;
for (i = 0; i < _KOL_D; i++)
{
zdvig_w = zdvig_w + _WD * (i) + _WZ;
zdvig_h = zdvig_h;
_WD = _WP/_KOL_D - _WZ*2;
_HD = _HP - _HZ; // - _ZAMER*2;
_color_fon = 0xf08d0d; //e6e3d3; //740000;
F_Sekcia(zdvig_w, zdvig_h,_WD,_HD,_color_fon);
}
}
public function F_Fon(zdvig_w:Number=40, zdvig_h:Number=40, _w:Number=88888, _h:Number=55555, _color:uint=0xffffff)
{
graphics.beginFill(_color);
graphics.drawRect(zdvig_w,zdvig_h,_w,_h);
graphics.endFill();
}
public function F_Sekcia(zdvig_w:Number=40, zdvig_h:Number=40, _w:Number=88888, _h:Number=55555, _color:uint=0xffffff, _color_line:uint=0x750000)
{
//var mc:MovieClip = new MovieClip();
var mc:Sprite = new Sprite();
mc.graphics.beginFill(_color);
mc.graphics.lineStyle(0.5,_color_line); // , _color_line
mc.graphics.drawRect(zdvig_w,zdvig_h,_w,_h);
mc.graphics.endFill();
addChild(mc);
//mc.addEventListener(MouseEvent.MOUSE_OVER, curOn);
//mc.addEventListener(MouseEvent.MOUSE_OUT, curOff);
}
}
}