Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Class Members | File Members | Related Pages

vpplanejoint.cpp

Go to the documentation of this file.
00001 //deprecated
00003 //
00004 //  PROJECT.....: vpat - Creating Virtual Patients
00005 //  RESPONSIBLE.: Carla Freitas e Luciana Nedel
00006 //
00007 //  FILE........: vpplanejoint.cpp
00008 //  DESCRIPTION.: Contain the VPPlaneJoint class definitions.
00009 //
00010 //  AUTHOR......: Anderson Maciel
00011 //  DATE........: May/16/2001
00012 //  DESCRIPTION.: Methods implementation.
00013 //
00015 
00016 #include    <stdio.h>
00017 #include    <vpplanejoint.h>
00018 #include    <vpdof.h>
00019 
00020 VPPlaneJoint::VPPlaneJoint( void ):VPJoint(){
00021 
00022     vpSetParent( NULL );
00023     VPDof *d1 = new VPDof( VPVector3D( 0, 0, 1 ), VPPoint3D(), new VPBezier() );
00024     VPDof *d2 = new VPDof( VPVector3D( 1, 0, 0 ), VPPoint3D(), new VPBezier() );
00025     VPDof *d3 = new VPDof( VPVector3D( 0, 1, 0 ), VPPoint3D(), new VPBezier() );
00026     VPDof *d4 = new VPDof( VPVector3D( 1, 0, 0 ), VPPoint3D(), new VPBezier() );
00027     VPDof *d5 = new VPDof( VPVector3D( 0, 1, 0 ), VPPoint3D(), new VPBezier() );
00028     VPDof *d6 = new VPDof( VPVector3D( 0, 0, 1 ), VPPoint3D(), new VPBezier() );
00029     d1->vpSetOwnerJoint( this );
00030     d2->vpSetOwnerJoint( this );
00031     d3->vpSetOwnerJoint( this );
00032     d4->vpSetOwnerJoint( this );
00033     d5->vpSetOwnerJoint( this );
00034     d6->vpSetOwnerJoint( this );
00035     vpAddDof( d1 );
00036     vpAddDof( d2 );
00037     vpAddDof( d3 );
00038     vpAddDof( d4 );
00039     vpAddDof( d5 );
00040     vpAddDof( d6 );
00041     vpMakeLim();
00042 }
00043 
00044 VPPlaneJoint::VPPlaneJoint( VPJoint *parent ):VPJoint(){
00045 
00046     vpSetParent( parent );
00047     VPDof *d1 = new VPDof( VPVector3D( 0, 0, 1 ), VPPoint3D(), new VPBezier() );
00048     VPDof *d2 = new VPDof( VPVector3D( 1, 0, 0 ), VPPoint3D(), new VPBezier() );
00049     VPDof *d3 = new VPDof( VPVector3D( 0, 1, 0 ), VPPoint3D(), new VPBezier() );
00050     VPDof *d4 = new VPDof( VPVector3D( 1, 0, 0 ), VPPoint3D(), new VPBezier() );
00051     VPDof *d5 = new VPDof( VPVector3D( 0, 1, 0 ), VPPoint3D(), new VPBezier() );
00052     VPDof *d6 = new VPDof( VPVector3D( 0, 0, 1 ), VPPoint3D(), new VPBezier() );
00053     d1->vpSetOwnerJoint( this );
00054     d2->vpSetOwnerJoint( this );
00055     d3->vpSetOwnerJoint( this );
00056     d4->vpSetOwnerJoint( this );
00057     d5->vpSetOwnerJoint( this );
00058     d6->vpSetOwnerJoint( this );
00059     vpAddDof( d1 );
00060     vpAddDof( d2 );
00061     vpAddDof( d3 );
00062     vpAddDof( d4 );
00063     vpAddDof( d5 );
00064     vpAddDof( d6 );
00065     vpMakeLim();
00066 }
00067 
00068 VPPlaneJoint::VPPlaneJoint( VPJoint *parent, VPDof *dof1, VPDof *dof2, VPDof *dof3,
00069                                                                                          VPDof *dof4, VPDof *dof5, VPDof *dof6 ):VPJoint(){
00070 
00071     vpSetParent( parent );
00072     dof1->vpSetOwnerJoint( this );
00073     dof2->vpSetOwnerJoint( this );
00074     dof3->vpSetOwnerJoint( this );
00075     dof4->vpSetOwnerJoint( this );
00076     dof5->vpSetOwnerJoint( this );
00077     dof6->vpSetOwnerJoint( this );
00078     vpAddDof( dof1 );
00079     vpAddDof( dof2 );
00080     vpAddDof( dof3 );
00081     vpAddDof( dof4 );
00082     vpAddDof( dof5 );
00083     vpAddDof( dof6 );
00084     vpMakeLim();
00085 }
00086 
00087 void
00088 VPPlaneJoint::vpSetFlexionTo( float value ){
00089 
00090     vpGetDofList()[0]->vpMoveTo( value );
00091     vpMakeLim();
00092 }
00093 
00094 void
00095 VPPlaneJoint::vpSetAdductionTo( float value ){
00096 
00097     vpGetDofList()[1]->vpMoveTo( value );
00098     vpMakeLim();
00099 }
00100 
00101 void
00102 VPPlaneJoint::vpSetTwistTo( float value ){
00103 
00104     vpGetDofList()[2]->vpMoveTo( value );
00105     vpMakeLim();
00106 }
00107 
00108 void
00109 VPPlaneJoint::vpSetXSlideTo( float value ){
00110 
00111     vpGetDofList()[3]->vpMoveTo( value );
00112     vpMakeLim();
00113 }
00114 
00115 void
00116 VPPlaneJoint::vpSetYSlideTo( float value ){
00117 
00118     vpGetDofList()[4]->vpMoveTo( value );
00119     vpMakeLim();
00120 }
00121 
00122 void
00123 VPPlaneJoint::vpSetZSlideTo( float value ){
00124 
00125     vpGetDofList()[5]->vpMoveTo( value );
00126     vpMakeLim();
00127 }

Generated on Tue Sep 6 10:00:05 2005 for VPAT by  doxygen 1.4.4