BeamLinearMapping.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #include <sofa/component/mapping/BeamLinearMapping.inl>
00026 #include <sofa/core/ObjectFactory.h>
00027 #include <sofa/core/componentmodel/behavior/MappedModel.h>
00028 #include <sofa/core/componentmodel/behavior/MechanicalState.h>
00029 #include <sofa/core/componentmodel/behavior/MechanicalMapping.inl>
00030
00031 namespace sofa
00032 {
00033
00034 namespace component
00035 {
00036
00037 namespace mapping
00038 {
00039
00040 SOFA_DECL_CLASS(BeamLinearMapping)
00041
00042 using namespace defaulttype;
00043 using namespace core;
00044 using namespace core::componentmodel::behavior;
00045
00046
00047
00048 int BeamLinearMappingClass = core::RegisterObject("Set the positions and velocities of points attached to a beam using linear interpolation between DOFs")
00049
00050 #ifndef SOFA_FLOAT
00051 .add< BeamLinearMapping< MechanicalMapping< MechanicalState<Rigid3dTypes>, MechanicalState<Vec3dTypes> > > >()
00052 .add< BeamLinearMapping< Mapping< State<Rigid3dTypes>, MappedModel<Vec3dTypes> > > >()
00053
00054 .add< BeamLinearMapping< Mapping< State<Rigid3dTypes>, MappedModel<ExtVec3fTypes> > > >()
00055 #endif
00056 #ifndef SOFA_DOUBLE
00057 .add< BeamLinearMapping< MechanicalMapping< MechanicalState<Rigid3fTypes>, MechanicalState<Vec3fTypes> > > >()
00058 .add< BeamLinearMapping< Mapping< State<Rigid3fTypes>, MappedModel<Vec3fTypes> > > >()
00059
00060 .add< BeamLinearMapping< Mapping< State<Rigid3fTypes>, MappedModel<ExtVec3fTypes> > > >()
00061 #endif
00062
00063 #ifndef SOFA_FLOAT
00064 #ifndef SOFA_DOUBLE
00065 .add< BeamLinearMapping< MechanicalMapping< MechanicalState<Rigid3dTypes>, MechanicalState<Vec3fTypes> > > >()
00066 .add< BeamLinearMapping< MechanicalMapping< MechanicalState<Rigid3fTypes>, MechanicalState<Vec3dTypes> > > >()
00067 .add< BeamLinearMapping< Mapping< State<Rigid3dTypes>, MappedModel<Vec3fTypes> > > >()
00068 .add< BeamLinearMapping< Mapping< State<Rigid3fTypes>, MappedModel<Vec3dTypes> > > >()
00069 #endif
00070 #endif
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081 ;
00082
00083 #ifndef SOFA_FLOAT
00084 template class BeamLinearMapping< MechanicalMapping<MechanicalState<Rigid3dTypes>, MechanicalState<Vec3dTypes> > >;
00085 template class BeamLinearMapping< Mapping< State<Rigid3dTypes>, MappedModel<Vec3dTypes> > >;
00086
00087 template class BeamLinearMapping< Mapping< State<Rigid3dTypes>, MappedModel<ExtVec3fTypes> > >;
00088 #endif
00089 #ifndef SOFA_DOUBLE
00090 template class BeamLinearMapping< MechanicalMapping<MechanicalState<Rigid3fTypes>, MechanicalState<Vec3fTypes> > >;
00091 template class BeamLinearMapping< Mapping< State<Rigid3fTypes>, MappedModel<Vec3fTypes> > >;
00092
00093 template class BeamLinearMapping< Mapping< State<Rigid3fTypes>, MappedModel<ExtVec3fTypes> > >;
00094 #endif
00095
00096 #ifndef SOFA_FLOAT
00097 #ifndef SOFA_DOUBLE
00098 template class BeamLinearMapping< MechanicalMapping<MechanicalState<Rigid3dTypes>, MechanicalState<Vec3fTypes> > >;
00099 template class BeamLinearMapping< MechanicalMapping<MechanicalState<Rigid3fTypes>, MechanicalState<Vec3dTypes> > >;
00100 template class BeamLinearMapping< Mapping< State<Rigid3dTypes>, MappedModel<Vec3fTypes> > >;
00101 template class BeamLinearMapping< Mapping< State<Rigid3fTypes>, MappedModel<Vec3dTypes> > >;
00102 #endif
00103 #endif
00104
00105
00106
00107
00108 }
00109
00110 }
00111
00112 }
00113