Example #1
0
void IvObjectDragger::GetMessage(ostream& sout)
{
    ItemPtr selectedItem = GetSelectedItem();
    if( !selectedItem ) {
        return;
    }
    KinBodyItemPtr pbody = boost::dynamic_pointer_cast<KinBodyItem>(selectedItem);
    if( !pbody ) {
        return;
    }

    Transform t = pbody->GetTransform();
    sout << "Selected " << selectedItem->GetName() << " (id=" << pbody->GetNetworkId() << ")" << endl
         << "  translation = ("
         << std::fixed << std::setprecision(5)
         << std::setw(8) << std::left << t.trans.x << ", "
         << std::setw(8) << std::left << t.trans.y << ", "
         << std::setw(8) << std::left << t.trans.z << ")" << endl
         << "  quaternion = ("
         << std::fixed << std::setprecision(5)
         << std::setw(8) << std::left << t.rot.x << ", "
         << std::setw(8) << std::left << t.rot.y << ", "
         << std::setw(8) << std::left << t.rot.z << ", "
         << std::setw(8) << std::left << t.rot.w << ")" << endl;
}
Example #2
0
void IvJointDragger::GetMessage(ostream& sout)
{
    ItemPtr selectedItem = GetSelectedItem();
    if( !selectedItem ) {
        return;
    }
    KinBodyItemPtr pbody = boost::dynamic_pointer_cast<KinBodyItem>(selectedItem);
    if( !pbody ) {
        return;
    }

    vector<dReal> vjoints;
    pbody->GetDOFValues(vjoints);

    sout << "Selected " << selectedItem->GetName() << " (id=" << pbody->GetNetworkId() << ")" << endl
         << std::fixed << std::setprecision(4)
         << "  joint " << _jointname << " (" << _iJointIndex << ") "  << " = " << vjoints[_iJointIndex];

    if( pbody->GetBody()->GetJoints()[_iJointIndex]->GetType() != KinBody::JointSlider ) {
        sout << " rad (" << (vjoints[_iJointIndex]/PI*180.0f) << " deg)" << endl;
    }
}