FEBio  1.5.0
FEBio/FEPlotSurfaceData.h
00001 #pragma once
00002 #include "FEPlotData.h"
00003 #include "FESlidingInterface.h"
00004 #include "FEFacet2FacetSliding.h"
00005 #include "FESlidingInterface2.h"
00006 #include "FESlidingInterface3.h"
00007 #include "FETiedInterface.h"
00008 
00009 //=============================================================================
00010 //                         S U R F A C E   D A T A
00011 //=============================================================================
00012 
00013 //-----------------------------------------------------------------------------
00016 class FEPlotContactGap : public FESurfaceData
00017 {
00018 public:
00019         FEPlotContactGap() : FESurfaceData(FLOAT, FMT_MULT){}
00020         bool Save(FESurface& surf, vector<float>& a);
00021 
00022 protected:
00023         bool SaveSliding     (FESlidingSurface&      s, vector<float>& a);
00024         bool SaveFacetSliding(FEFacetSlidingSurface& s, vector<float>& a);
00025         bool SaveSliding2    (FESlidingSurface2&         s, vector<float>& a);
00026         bool SaveSliding3    (FESlidingSurface3&         s, vector<float>& a);
00027         bool SaveTied        (FETiedContactSurface&      s, vector<float>& a);
00028 };
00029 
00030 //-----------------------------------------------------------------------------
00033 class FEPlotContactPressure : public FESurfaceData
00034 {
00035 public:
00036         FEPlotContactPressure() : FESurfaceData(FLOAT, FMT_MULT){}
00037         bool Save(FESurface& surf, vector<float>& a);
00038 
00039 protected:
00040         bool SaveSliding     (FESlidingSurface&      s, vector<float>& a);
00041         bool SaveFacetSliding(FEFacetSlidingSurface& s, vector<float>& a);
00042         bool SaveSliding2    (FESlidingSurface2&         s, vector<float>& a);
00043         bool SaveSliding3    (FESlidingSurface3&         s, vector<float>& a);
00044 };
00045 
00046 //-----------------------------------------------------------------------------
00049 class FEPlotContactTraction : public FESurfaceData
00050 {
00051 public:
00052         FEPlotContactTraction() : FESurfaceData(VEC3F, FMT_MULT){}
00053         bool Save(FESurface& surf, vector<float>& a);
00054 
00055 protected:
00056         bool SaveSliding(FESlidingSurface& s, vector<float>& a);
00057         bool SaveFacetSliding(FEFacetSlidingSurface& s, vector<float>& a);
00058         bool SaveSliding2    (FESlidingSurface2&         s, vector<float>& a);
00059         bool SaveSliding3    (FESlidingSurface3&         s, vector<float>& a);
00060 };