00001 //###################################################################### 00002 // 00003 // GraspIt! 00004 // Copyright (C) 2002-2009 Columbia University in the City of New York. 00005 // All rights reserved. 00006 // 00007 // GraspIt! is free software: you can redistribute it and/or modify 00008 // it under the terms of the GNU General Public License as published by 00009 // the Free Software Foundation, either version 3 of the License, or 00010 // (at your option) any later version. 00011 // 00012 // GraspIt! is distributed in the hope that it will be useful, 00013 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 // GNU General Public License for more details. 00016 // 00017 // You should have received a copy of the GNU General Public License 00018 // along with GraspIt!. If not, see <http://www.gnu.org/licenses/>. 00019 // 00020 // Author(s): Andrew T. Miller and Matei T. Ciocarlie 00021 // 00022 // $Id: 00023 // 00024 //###################################################################### 00025 00026 #include "ui_bodyPropDlg.h" 00027 00028 #include <vector> 00029 00030 class Body; 00031 class DynamicBody; 00032 00052 class BodyPropDlg : public QDialog, public Ui::BodyPropDlgUI 00053 { 00054 Q_OBJECT 00055 private: 00056 DynamicBody *dynBod; 00057 std::vector<Body *> bodyVec; 00058 int numBodies; 00059 double origMass; 00060 bool origAxesShown; 00061 bool origDynContactForcesShown; 00062 bool origIsDynamic; 00063 std::vector<int> origMaterials; 00064 std::vector<bool> origShowFC; 00065 std::vector<float> origTransparencies; 00066 00067 void init(); 00068 public: 00069 BodyPropDlg(QWidget *parent = 0) : QDialog(parent) { 00070 setupUi(this); 00071 init(); 00072 } 00073 public slots: 00074 void setTransparency( int val ); 00075 void setShowAxes( int state); 00076 void setShowFC( int state ); 00077 void setDynamic( int state ); 00078 void setShowDynContactForces( int state ); 00079 void setMaterial( int choice ); 00080 void showBvs(); 00081 void revertAndClose(); 00082 };