Здравствуйте
Допустим, нужно повернуть этот бокс на 15 градусов
Дописываю в as3isolib.display.primitive.IsoBox в override protected function drawGeometry ()
_rotation=45 градусов

Код AS3:
var g:Graphics = mainContainer.graphics;
g.clear();
var lbb:Pt;
var rbb:Pt;
var rfb:Pt;
var lfb:Pt;
var lbt:Pt;
var rbt:Pt;
var rft:Pt;
var lft:Pt;
//all pts are named in following order "x", "y", "z" via rfb = right, front, bottom
lbb = IsoMath.isoToScreen(new Pt(0, 0, 0));
// если есть вращение - пересчитать нужно координаты точек тут
// меня смуило что в координатах есть имя width и length
if(_rotation!=0)
{
// пересчет координат взависимости от вращения
var _rotatedCoord:Point;
_rotatedCoord=Math2.vector(length,Math2.degreesToRadians(_rotation));
trace("\n ROTATED: _rotatedCoord="+_rotatedCoord+" width="+width+" height="+height+" length="+length);
rbb = IsoMath.isoToScreen(new Pt(_rotatedCoord.x, 0, 0));
rfb = IsoMath.isoToScreen(new Pt(_rotatedCoord.x, _rotatedCoord.y, 0));
lfb = IsoMath.isoToScreen(new Pt(0, _rotatedCoord.y, 0));
lbt = IsoMath.isoToScreen(new Pt(0, 0, _rotatedCoord.y));
rbt = IsoMath.isoToScreen(new Pt(_rotatedCoord.x, 0, _rotatedCoord.y));
rft = IsoMath.isoToScreen(new Pt(_rotatedCoord.x, _rotatedCoord.y, _rotatedCoord.y));
lft = IsoMath.isoToScreen(new Pt(0, _rotatedCoord.y, _rotatedCoord.y));
}
else
{
trace("UNROTATED: "+width);
rbb = IsoMath.isoToScreen(new Pt(width, 0, 0));
rfb = IsoMath.isoToScreen(new Pt(width, length, 0));
lfb = IsoMath.isoToScreen(new Pt(0, length, 0));
lbt = IsoMath.isoToScreen(new Pt(0, 0, height));
rbt = IsoMath.isoToScreen(new Pt(width, 0, height));
rft = IsoMath.isoToScreen(new Pt(width, length, height));
lft = IsoMath.isoToScreen(new Pt(0, length, height));
}
даже намека на поворот нет, но координаты же пересчитываю в зависимости от поворота
Вот этот большущий куб (на первом скрине) должен быть стеной, такой же тонкости как и остальные, и эта неудавшаяся стена должна повернута быть на 45 градусов
Вот код

Код AS3:
var rotatedBox:IsoBox=new IsoBox();
rotatedBox.setSize(2, 108, _wallHeight);
rotatedBox.rotation=45;
rotatedBox.moveTo(270, 144, -2);
rotatedBox.fills = _boxFills;
rotatedBox.strokes=_boxStrokes;
Елки, может, действительно, нужно пользовать papervision или away, но мне вообще не нужна z координата, по идее (достаточно 2.5D). Но не крутятся же, примитивы, собаки
Задача у меня наложить на рендер здания (сделаный в 3D Studio) интерактивные полы, раскрашеные програмно (заняты помещения или не заняты), добавить мышиную интерактивность к этим полам
Отрисовать програмно стены, если помещение занято, отрисовать крышу с картинкой логотипа хозяина.
НООО, главное условие - минимализация нагрузки на процессор
Рендер (картинка здания) и вся конструкция флешевая таскается мышкой, нет облетов камерой и тому подобных прибамбасов трехмертных.
Где она - золотая середина ?