exports.set_tsr = function(obj, tsr) { if (m_cons.get_type(obj) == m_cons.CONS_TYPE_CHILD_OF) { var offset = m_cons.get_child_of_offset(obj); m_tsr.copy(tsr, offset); } else set_tsr_raw(obj, tsr); }
exports.get_rotation = function(obj, dest) { if (m_cons.get_type(obj) == m_cons.CONS_TYPE_CHILD_OF) { var offset = m_cons.get_child_of_offset(obj); m_quat.copy(m_tsr.get_quat_view(offset), dest); } else { m_quat.copy(obj._render.quat, dest); } }
exports.get_translation = function(obj, dest) { if (m_cons.get_type(obj) == m_cons.CONS_TYPE_CHILD_OF) { var offset = m_cons.get_child_of_offset(obj); m_vec3.copy(m_tsr.get_trans_view(offset), dest); } else { m_vec3.copy(obj._render.trans, dest); } }
exports.get_scale = function(obj) { if (m_cons.get_type(obj) == m_cons.CONS_TYPE_CHILD_OF) { // NOTE: untested var offset = m_cons.get_child_of_offset(obj); return m_tsr.get_scale(offset); } else { return obj._render.scale; } }
exports.set_rotation_euler = function(obj, euler) { if (m_cons.get_type(obj) == m_cons.CONS_TYPE_CHILD_OF) { var quat = m_util.euler_to_quat(euler, _quat4_tmp); var offset = m_cons.get_child_of_offset(obj); m_tsr.set_quat(quat, offset); } else { m_util.euler_to_quat(euler, obj._render.quat); } }
exports.set_translation = function(obj, trans) { if (m_cons.get_type(obj) == m_cons.CONS_TYPE_CHILD_OF) { var offset = m_cons.get_child_of_offset(obj); m_tsr.set_trans(trans, offset); } else { var render = obj._render; render.trans.set(trans); } }
exports.get_tsr = function(obj, dest) { if (m_cons.get_type(obj) == m_cons.CONS_TYPE_CHILD_OF) { var offset = m_cons.get_child_of_offset(obj); m_tsr.copy(offset, dest); } else { var render = obj._render; m_tsr.set_sep(render.trans, render.scale, render.quat, dest); } }
exports.set_rotation = function(obj, quat) { if (m_cons.get_type(obj) == m_cons.CONS_TYPE_CHILD_OF) { var offset = m_cons.get_child_of_offset(obj); m_tsr.set_quat(quat, offset); } else { var render = obj._render; render.quat.set(quat); } }
exports.set_tsr = function(obj, tsr) { if (m_cons.get_type(obj) == m_cons.CONS_TYPE_CHILD_OF) { var offset = m_cons.get_child_of_offset(obj); m_tsr.copy(tsr, offset); } else { var render = obj._render; render.trans[0] = tsr[0]; render.trans[1] = tsr[1]; render.trans[2] = tsr[2]; render.scale = tsr[3]; render.quat[0] = tsr[4]; render.quat[1] = tsr[5]; render.quat[2] = tsr[6]; render.quat[3] = tsr[7]; } }