1.Это понятно, но у меня точка в пространстве и есть отдельный объект.
2.Видимо тут имеет значение порядок. Если перемножать рекурсивно сверху вниз, получаются косяки небольшие, но в целом похоже. Сейчас попробую снизу вверх.

Код AS3:
public function calcChildTransform(parentTransform:Matrix,result:Object) {
var matrix:Matrix = parentTransform.clone();
matrix.rotate((baseTransform.r) * Math.PI / 180);
matrix.translate(baseTransform.x, baseTransform.y);
result[name]=matrix;
}
3. Это мне известно)
locatoToGlobal - вернет только x,y . Вращение все равно нужно будет вычислять вручную.
UPD , да обход снизу вверх - исправил ситуацию, Спасибо, теперь считается правильно. Смущает только то, что теперь нельзя обсчитать все за один обход( В ObjectContatiner это так же реализовано?