TexGen
|
Deform the geometry of a textile given a volume mesh. More...
#include <TextileDeformerVolumeMesh.h>
Classes | |
struct | YARN_MESH |
Public Member Functions | |
CTextileDeformerVolumeMesh (void) | |
virtual | ~CTextileDeformerVolumeMesh (void) |
bool | SetYarnMeshDisplacements (int iYarn, const CMesh &Mesh, vector< XYZ > &Displacements) |
virtual void | DeformTextile (CTextile &Textile, bool bDeformDomain=true) |
CTextile * | GetDeformedCopyOfTextile (CTextile &Textile, bool bDeformDomain=true) |
const CLinearTransformation & | GetRepeatVectorDeformation () const |
void | SetRepeatVectorDeformation (CLinearTransformation RepeatDeformation) |
Protected Member Functions | |
virtual double | GetDisplacement (XYZ Pos, int iYarn, XYZ &Disp) const |
void | GetBarycentricCoordinates (const XYZ &P, const XYZ &P1, const XYZ &P2, const XYZ &P3, const XYZ &P4, double &a, double &b, double &c, double &d) const |
Protected Attributes | |
vector< YARN_MESH > | m_YarnMeshes |
CLinearTransformation | m_RepeatDeformation |
Deform the geometry of a textile given a volume mesh.
The idea is that a volume mesh of a textile can be created and used to run a mechanical analysis using a finite element analysis package. The displacements of the nodes calculated by the FE package are read back in with this class. And using these displacements, the textile geometry is deformed.
Definition at line 38 of file TextileDeformerVolumeMesh.h.
CTextileDeformerVolumeMesh::CTextileDeformerVolumeMesh | ( | void | ) |
Definition at line 26 of file TextileDeformerVolumeMesh.cpp.
|
virtual |
Definition at line 30 of file TextileDeformerVolumeMesh.cpp.
|
virtualinherited |
Definition at line 35 of file TextileDeformer.cpp.
References TexGen::CYarnSectionAdjusted::AddAdjustment(), TexGen::CInterpolationAdjusted::AddAdjustment(), TexGen::CYarn::AssignInterpolation(), TexGen::CYarn::AssignSection(), TexGen::CDomain::Deform(), TexGen::DotProduct(), TexGen::CTextileDeformer::GetDisplacement(), TexGen::CTextile::GetDomain(), TexGen::CYarn::GetInterpolation(), TexGen::CTextile::GetNumYarns(), TexGen::CYarn::GetRepeats(), TexGen::CYarn::GetSlaveNodes(), TexGen::CDomain::GetTranslations(), TexGen::CTextile::GetYarn(), TexGen::CYarn::GetYarnSection(), TexGen::CTextileDeformer::m_RepeatDeformation, TexGen::CYarn::SetRepeats(), TexGen::CYarn::SURFACE, TexGen::XY::x, and TexGen::XY::y.
Referenced by TexGen::CGeometrySolver::DeformTextile(), and TexGen::CTextileDeformer::GetDeformedCopyOfTextile().
|
protected |
Definition at line 98 of file TextileDeformerVolumeMesh.cpp.
References TexGen::XYZ::x, TexGen::XYZ::y, and TexGen::XYZ::z.
Referenced by GetDisplacement().
|
inherited |
Definition at line 137 of file TextileDeformer.cpp.
References TexGen::CTextile::Copy(), TexGen::CTextileDeformer::DeformTextile(), and TEXGEN.
Referenced by TexGen::CGeometrySolver::GetDeformedCopyOfTextile().
|
protectedvirtual |
Get the displacement of a given point
Pos | The position of which the displacement is requested |
iYarn | The yarn number for which the displacement is requested this is necessary because sometimes yarns may overlap and the yarns may have different displacements at the same point in space |
Disp | The displacement value should be filled in here by the function |
Implements TexGen::CTextileDeformer.
Definition at line 57 of file TextileDeformerVolumeMesh.cpp.
References GetBarycentricCoordinates(), TexGen::CMesh::GetIndices(), TexGen::CMesh::GetNode(), m_YarnMeshes, and TexGen::CMesh::TET.
|
inlineinherited |
Definition at line 46 of file TextileDeformer.h.
|
inlineinherited |
Definition at line 47 of file TextileDeformer.h.
bool CTextileDeformerVolumeMesh::SetYarnMeshDisplacements | ( | int | iYarn, |
const CMesh & | Mesh, | ||
vector< XYZ > & | Displacements | ||
) |
Definition at line 34 of file TextileDeformerVolumeMesh.cpp.
References TexGen::CMesh::GetNodes(), m_YarnMeshes, and TGERROR.
|
protectedinherited |
Definition at line 67 of file TextileDeformer.h.
Referenced by TexGen::CTextileDeformer::CTextileDeformer(), and TexGen::CTextileDeformer::DeformTextile().
|
protected |
Definition at line 56 of file TextileDeformerVolumeMesh.h.
Referenced by GetDisplacement(), and SetYarnMeshDisplacements().