TexGen
Classes | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
TexGen::CTextileWeave Class Reference

Represents a woven textile. More...

#include <TextileWeave.h>

Inheritance diagram for TexGen::CTextileWeave:
Inheritance graph
[legend]

Classes

struct  YARNDATA
 Data structure to keep track of yarn parameters. More...
 

Public Member Functions

 CTextileWeave (int iNumYYarns, int iNumXYarns, double dSpacing, double dThickness)
 Build a weave unit cell of given width, height, yarn spacing and fabric thickness. More...
 
 CTextileWeave (TiXmlElement &Element)
 
virtual ~CTextileWeave (void)
 
virtual CTextileCopy () const
 
virtual string GetType () const
 Derived class should return the class name. More...
 
virtual void PopulateTiXmlElement (TiXmlElement &Element, OUTPUT_TYPE OutputType)
 Used for saving data to XML. More...
 
void SetThickness (double dThickness, bool bAdjustYarnHeights=true)
 Set the thickness of the fabric. More...
 
void SetXYarnWidths (int iIndex, double dWidth)
 Set the width of the yarn parallel to the X axis, with given index. More...
 
void SetYYarnWidths (int iIndex, double dWidth)
 Set the width of the yarn parallel to the Y axis, with given index. More...
 
void SetXYarnHeights (int iIndex, double dHeight)
 Set the height of the yarn parallel to the X axis, with given index. More...
 
void SetYYarnHeights (int iIndex, double dHeight)
 Set the height of the yarn parallel to the Y axis, with given index. More...
 
void SetXYarnSpacings (int iIndex, double dSpacing)
 Set the spacing of the yarn parallel to the X axis, with given index. More...
 
void SetYYarnSpacings (int iIndex, double dSpacing)
 Set the spacing of the yarn parallel to the Y axis, with given index. More...
 
double GetXYarnWidths (int iIndex) const
 Get the width of the yarn parallel to the X axis, with given index. More...
 
double GetYYarnWidths (int iIndex) const
 Get the width of the yarn parallel to the Y axis, with given index. More...
 
double GetXYarnHeights (int iIndex) const
 Get the height of the yarn parallel to the X axis, with given index. More...
 
double GetYYarnHeights (int iIndex) const
 Get the height of the yarn parallel to the Y axis, with given index. More...
 
double GetXYarnSpacings (int iIndex) const
 Get the spacing of the yarn parallel to the X axis, with given index. More...
 
double GetYYarnSpacings (int iIndex) const
 Get the spacing of the yarn parallel to the Y axis, with given index. More...
 
double GetXYarnGapSize (int iIndex) const
 Get the gap size between two yarns parallel to the X axis, with given index. More...
 
double GetYYarnGapSize (int iIndex) const
 Get the gap size between two yarns parallel to the Y axis, with given index. More...
 
void SetXYarnWidths (double dWidth)
 Set the width of all the yarns parallel to the X axis. More...
 
void SetYYarnWidths (double dWidth)
 Set the width of all the yarns parallel to the Y axis. More...
 
void SetXYarnHeights (double dHeight)
 Set the height of all the yarns parallel to the X axis. More...
 
void SetYYarnHeights (double dHeight)
 Set the height of all the yarns parallel to the Y axis. More...
 
void SetXYarnSpacings (double dSpacing)
 Set the spacing of all the yarns parallel to the X axis. More...
 
void SetYYarnSpacings (double dSpacing)
 Set the spacing of all the yarns parallel to the Y axis. More...
 
void SetYarnWidths (double dWidth)
 Set the width of all the yarns in the textile. More...
 
void SetYarnHeights (double dHeight)
 Set the height of all the yarns in the textile. More...
 
void SetYarnSpacings (double dSpacing)
 Set the spacing of all the yarns in the textile. More...
 
void SetGapSize (double dGapSize)
 Set the size of the gap to leave between yarns when correcting interference. More...
 
void SetResolution (int iResolution)
 Set the resolution of the yarns. More...
 
void AssignSectionMesh (const CSectionMesh &SectionMesh)
 Assign a section mesh to the weave. More...
 
virtual CDomainPlanes GetDefaultDomain (bool bSheared=false, bool bAddedHeight=true)
 Get a domain which describes 6 planes triming the textile to a unit cell. More...
 
void AssignDefaultDomain (bool bSheared=false, bool bAddedHeight=true)
 Get the default domain and assign it as the domain. More...
 
bool FlattenYarns (double dFlatLevel, int iUpDownBoth=0)
 
virtual string GetDefaultName () const
 Get the default name to assign to a textile. More...
 
virtual void RefineTextile (bool bCorrectWidths=true, bool bCorrectInterference=true, bool bPeriodic=true)
 Call refine functions for textile weave. Currently only defined for 2D weave to allow refinement after node adjustment in textile. More...
 
void CorrectEdgeInterference ()
 
virtual void ConvertToPatternDraft ()
 
double GetWidth () const
 Get the width of the unit cell. More...
 
double GetHeight () const
 Get the height of the unit cell. More...
 
int GetNumXYarns () const
 
int GetNumYYarns () const
 
double GetFabricThickness () const
 
double GetGapSize () const
 
double GetAverageYarnSpacing () const
 
double GetAverageYarnWidth () const
 
const vector< PATTERN2D > & GetCell (int x, int y) const
 
int GetResolution () const
 
vector< CYarn * > GetXYarns (int iIndex)
 
vector< CYarn * > GetYYarns (int iIndex)
 
int GetYarnIndex (int x, int y, int z) const
 
CPatternDraftGetPatternDraft ()
 
int AddYarn (const CYarn &Yarn)
 Add a Yarn to the textile. More...
 
bool DeleteYarn (int iIndex)
 Delete an Yarn from the textile. More...
 
void DeleteYarns ()
 Delete all Yarns in the textile. More...
 
void AddNodesToMesh (CMesh &Mesh)
 Add the master nodes to the mesh. More...
 
void AddPathToMesh (CMesh &Mesh)
 Add yarn centerline path to mesh. More...
 
void AddSurfaceToMesh (CMesh &Mesh, bool bTrimToDomain=false)
 Create surface mesh for this textile and add it to the mesh object. More...
 
bool AddSurfaceToMesh (CMesh &Mesh, vector< CMesh > &DomainMeshes, bool bTrimToDomain=false)
 
void AddVolumeToMesh (vector< CMesh > &YarnMeshes, bool bTrimToDomain=false)
 Create volume mesh for each yarn in this textile and add to a vector of meshes. More...
 
void AddVolumeToMesh (CMesh &Mesh, bool bTrimToDomain=false)
 Create volume mesh for this textile and add it to the mesh object. More...
 
void AddCentrePlaneToMesh (CMesh &Mesh, bool bTrimToDomain=false)
 Create centre plane mesh for this textile and add it to the mesh object. More...
 
void GetPointInformation (const vector< XYZ > &Points, vector< POINT_INFO > &PointsInfo, double dTolerance=1e-9)
 Get useful information of a list of points. More...
 
void GetPointInformation (const vector< XYZ > &Points, vector< POINT_INFO > &PointsInfo, int iYarn, double dTolerance=1e-9, bool bSurface=false)
 Get information when know which yarn point is in. Saves iterating through entire textile. More...
 
void SavePointInformationToVTK (string Filename, const CMesh &Mesh, double dTolerance=1e-9)
 Output point information to VTK. More...
 
double GetApproximateSize ()
 Get an approximate size for the textile. More...
 
int DetectInterference (vector< float > &DistanceToSurface, vector< int > &YarnIndex, bool bTrimToDomain, CMesh *pInterferingPoints=NULL)
 Find out if any of the yarns are interfering with each other. More...
 
void Rotate (WXYZ Rotation, XYZ Origin=XYZ(0, 0, 0))
 Rotate the Textile by given quaternion. More...
 
void Translate (XYZ Vector)
 Translate the Textile by given vector. More...
 
string GetName () const
 Get the name associated with this textile. More...
 
void AssignDomain (const CDomain &Domain)
 Assign a domain to the textile, will be used by default to trim the domain. More...
 
void RemoveDomain ()
 Remove the domain. More...
 
double GetYarnLength (string Units="m")
 Calculate the total yarn length. More...
 
double GetYarnLengthPerUnitArea (string Units="/m")
 Calculate the total yarn length per unit area. More...
 
double GetYarnVolume (string Units="m^3")
 Calculate the yarn volume. More...
 
double GetYarnVolumePerUnitArea (string Units="m")
 Calculate the total yarn volume per unit area. More...
 
double GetFibreVolume (string Units="m^3")
 Calculate the volume of fibre in the yarn, for just the nodes specified. More...
 
double GetFibreVolumePerUnitArea (string Units="m")
 Calculate the volume of fibre per unit area. More...
 
double GetFibreYarnVolumeFraction ()
 Calculates the total fibre volume fraction for all yarns. More...
 
double GetQuickDomainVolumeFraction ()
 Calculates the fibre volume fraction for the domain. More...
 
double GetDomainVolumeFraction ()
 Calculates the fibre volume fraction for the domain. More...
 
void SetAllYarnsYoungsModulusX (double dValue, string Units="MPa")
 Set the Youngs Modulus for all yarns in textile. More...
 
void SetAllYarnsYoungsModulusY (double dValue, string Units="MPa")
 
void SetAllYarnsYoungsModulusZ (double dValue, string Units="MPa")
 
void SetAllYarnsShearModulusXY (double dValue, string Units="MPa")
 Set the shear modulus for all yarns in textile. More...
 
void SetAllYarnsShearModulusXZ (double dValue, string Units="MPa")
 
void SetAllYarnsShearModulusYZ (double dValue, string Units="MPa")
 
void SetAllYarnsAlphaX (double dValue, string Units="/K")
 Set the coefficient of thermal expansion for all yarns in textile. More...
 
void SetAllYarnsAlphaY (double dValue, string Units="/K")
 
void SetAllYarnsAlphaZ (double dValue, string Units="/K")
 
void SetAllYarnsPoissonsRatioX (double dValue)
 Set the Poisson's ratio for all yarns in textile. More...
 
void SetAllYarnsPoissonsRatioY (double dValue)
 
void SetAllYarnsPoissonsRatioZ (double dValue)
 
bool ConvertToInterpNodes () const
 
CTextileWeaveGetWeave ()
 If this textile is a woven textile get a pointer of that type else return NULL. More...
 
CTextileWeave2DGetWeave2D ()
 
CTextile3DWeaveGet3DWeave ()
 
CTextileOrthogonalGetOrthogonalWeave ()
 
CTextileLayeredGetLayeredTextile ()
 
CTextileLayerToLayerGetLayerToLayerWeave ()
 
CTextileDecoupledLToLGetDecoupledLToLWeave ()
 
CTextileAngleInterlockGetAngleInterlockWeave ()
 
int GetNumYarns () const
 
const CYarnGetYarn (int iIndex) const
 
CYarnGetYarn (int iIndex)
 
const vector< CYarn > & GetYarns () const
 
vector< CYarn > & GetYarns ()
 
const CDomainGetDomain () const
 
CDomainGetDomain ()
 
bool SetGeometryScale (string Units)
 Set the scale of the geometry. More...
 
void SetArealDensity (double dValue, string Units="kg/m^2")
 Set the areal density, i.e. the mass per unit area of fabric. More...
 
void ResetArealDensity ()
 
void SetMatrixYoungsModulus (double dValue, string Units="MPa")
 Set the Young's modulus for matrix. More...
 
void SetMatrixPoissonsRatio (double dValue)
 Set the Poisson's ration for matrix. More...
 
void SetMatrixAlpha (double dValue)
 Set the coefficient of thermal expansion for the matrix. More...
 
string GetGeometryScale () const
 
double GetArealDensity (string Units="kg/m^2") const
 
double GetMatrixYoungsModulus (string Units="MPa") const
 
double GetMatrixPoissonsRatio () const
 
double GetMatrixAlpha () const
 
void SetYarnLinearDensity (double dValue, string Units="kg/m")
 Set the fibre linear density, i.e. the mass per unit length of fibre. More...
 
void SetFibreDensity (double dValue, string Units="kg/m^3")
 Set the fibre density, i.e. the mass per unit volume of fibre. More...
 
void SetFibreDiameter (double dValue, string Units="m")
 Set the fibre diameter. More...
 
void SetFibresPerYarn (int iValue)
 Set the number of fibres in a yarn. More...
 
void SetYoungsModulus (double dValue, string Units="MPa")
 Set the Young's modulus for a yarn. More...
 
void SetYoungsModulusX (double dValue, string Units="MPa")
 
void SetYoungsModulusY (double dValue, string Units="MPa")
 
void SetYoungsModulusZ (double dValue, string Units="MPa")
 
void SetShearModulusXY (double dValue, string Units="MPa")
 Set the Shear modulus for a yarn. More...
 
void SetShearModulusXZ (double dValue, string Units="MPa")
 
void SetShearModulusYZ (double dValue, string Units="MPa")
 
void SetPoissonsRatio (double dValue)
 Set the Poisson's ratio for a yarn. More...
 
void SetPoissonsRatioX (double dValue)
 
void SetPoissonsRatioY (double dValue)
 
void SetPoissonsRatioZ (double dValue)
 
void SetAlphaX (double dValue, string Units="/K")
 Set the coefficients of thermal expansion for a yarn. More...
 
void SetAlphaY (double dValue, string Units="/K")
 
void SetAlphaZ (double dValue, string Units="/K")
 
void SetFibreArea (double dValue, string Units="m^2")
 Set the area occupied by fibres in a yarn cross-section. More...
 
void ResetYarnLinearDensity ()
 
void ResetFibreDensity ()
 
void ResetFibreDiameter ()
 
void ResetFibresPerYarn ()
 
void ResetFibreArea ()
 
void ResetYoungsModulusX ()
 
void ResetYoungsModulusY ()
 
void ResetYoungsModulusZ ()
 
void ResetShearModulusXY ()
 
void ResetShearModulusXZ ()
 
void ResetShearModulusYZ ()
 
void ResetAlphaX ()
 
void ResetAlphaY ()
 
void ResetAlphaZ ()
 
void ResetPoissonsRatioX ()
 
void ResetPoissonsRatioY ()
 
void ResetPoissonsRatioZ ()
 
double GetYarnLinearDensity (string Units="kg/m") const
 
double GetFibreDensity (string Units="kg/m^3") const
 
double GetFibreDiameter (string Units="m") const
 
int GetFibresPerYarn () const
 
double GetFibreArea (string Units="m^2") const
 Get the area occupied by fibres given fibre diameter and number of fibres. More...
 
double GetYoungsModulusX (string Units="MPa") const
 
double GetYoungsModulusY (string Units="MPa") const
 
double GetYoungsModulusZ (string Units="MPa") const
 
double GetShearModulusXY (string Units="MPa") const
 
double GetShearModulusXZ (string Units="MPa") const
 
double GetShearModulusYZ (string Units="MPa") const
 
double GetAlphaX (string Units="/K") const
 
double GetAlphaY (string Units="/K") const
 
double GetAlphaZ (string Units="/K") const
 
double GetPoissonsRatioX () const
 
double GetPoissonsRatioY () const
 
double GetPoissonsRatioZ () const
 

Public Attributes

CProperty m_ArealDensity
 
CProperty m_MatrixYoungsModulus
 
CProperty m_YarnLinearDensity
 
CProperty m_FibreDensity
 
CProperty m_FibreArea
 
CProperty m_FibreDiameter
 
CProperty m_YoungsModulusX
 
CProperty m_YoungsModulusY
 
CProperty m_YoungsModulusZ
 
CProperty m_ShearModulusXY
 
CProperty m_ShearModulusXZ
 
CProperty m_ShearModulusYZ
 
CProperty m_AlphaX
 
CProperty m_AlphaY
 
CProperty m_AlphaZ
 
CProperty m_CalculatedArea
 

Protected Member Functions

bool Valid () const
 Check that the weave pattern contained in m_Pattern is valid. More...
 
virtual bool BuildTextile () const
 Build the textile. More...
 
virtual void CorrectInterference () const
 Adjust cross section shapes to correct interference. More...
 
bool NeedsMidSection (int iYarn, int iSection) const
 
void CorrectYarnWidths () const
 Adjust cross section widths to avoid interference. More...
 
pair< int, int > GetCellCoordinates (int iIndex) const
 
vector< PATTERN2D > & GetCell (int x, int y)
 
int AddYarn (const CYarn &Yarn) const
 
bool BuildTextileIfNeeded () const
 Build the textile only if needed. More...
 
void CleanUp ()
 
void SetDefaultMatrixProperties ()
 Set default matrix properties as specified by DefaultProperties.h. More...
 
void SetDefaultProperties ()
 Set default properties as specified by DefaultProperties.h. More...
 

Protected Attributes

CPatternDraft m_PatternDraft
 Class for generating pattern draft from weave pattern. More...
 
int m_iNumXYarns
 
int m_iNumYYarns
 
vector< vector< PATTERN2D > > m_Pattern
 
double m_dGapSize
 
double m_dFabricThickness
 
int m_iResolution
 
CObjectContainer< CSectionMeshm_pSectionMesh
 
vector< YARNDATAm_XYarnData
 
vector< YARNDATAm_YYarnData
 
vector< vector< int > > m_XYarns
 
vector< vector< int > > m_YYarns
 
vector< CYarnm_Yarns
 Vector of yarns contained within this cell. More...
 
bool m_bNeedsBuilding
 Variable which keeps track of wether the textile needs building or not. More...
 
CObjectContainer< CDomainm_pDomain
 
string m_GeometryScale
 
double m_MatrixPoissonsRatio
 
double m_MatrixAlpha
 
int m_iFibresPerYarn
 
double m_PoissonsRatioX
 
double m_PoissonsRatioY
 
double m_PoissonsRatioZ
 

Detailed Description

Represents a woven textile.

Definition at line 40 of file TextileWeave.h.

Constructor & Destructor Documentation

◆ CTextileWeave() [1/2]

CTextileWeave::CTextileWeave ( int  iNumYYarns,
int  iNumXYarns,
double  dSpacing,
double  dThickness 
)

Build a weave unit cell of given width, height, yarn spacing and fabric thickness.

Definition at line 27 of file TextileWeave.cpp.

References TexGen::CTextileWeave::YARNDATA::dHeight, TexGen::CTextileWeave::YARNDATA::dSpacing, TexGen::CTextileWeave::YARNDATA::dWidth, m_dFabricThickness, m_Pattern, m_XYarnData, and m_YYarnData.

◆ CTextileWeave() [2/2]

CTextileWeave::CTextileWeave ( TiXmlElement &  Element)

◆ ~CTextileWeave()

CTextileWeave::~CTextileWeave ( void  )
virtual

Definition at line 43 of file TextileWeave.cpp.

Member Function Documentation

◆ AddCentrePlaneToMesh()

void CTextile::AddCentrePlaneToMesh ( CMesh Mesh,
bool  bTrimToDomain = false 
)
inherited

Create centre plane mesh for this textile and add it to the mesh object.

Parameters
MeshMesh to add elements to
bTrimToDomainMesh inserted will be clipped to the domain size

Definition at line 319 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::CTextile::m_pDomain, and TexGen::CTextile::m_Yarns.

◆ AddNodesToMesh()

void CTextile::AddNodesToMesh ( CMesh Mesh)
inherited

Add the master nodes to the mesh.

Definition at line 165 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ AddPathToMesh()

void CTextile::AddPathToMesh ( CMesh Mesh)
inherited

Add yarn centerline path to mesh.

Definition at line 176 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ AddSurfaceToMesh() [1/2]

void CTextile::AddSurfaceToMesh ( CMesh Mesh,
bool  bTrimToDomain = false 
)
inherited

Create surface mesh for this textile and add it to the mesh object.

Parameters
MeshMesh to add elements to
bTrimToDomainMesh inserted will be clipped to the domain size

Definition at line 187 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::CTextile::m_pDomain, and TexGen::CTextile::m_Yarns.

Referenced by TexGen::CSurfaceMesh::SaveSurfaceMesh(), and TexGen::CTetgenMesh::SaveTetgenMesh().

◆ AddSurfaceToMesh() [2/2]

bool CTextile::AddSurfaceToMesh ( CMesh Mesh,
vector< CMesh > &  DomainMeshes,
bool  bTrimToDomain = false 
)
inherited

Create surface mesh for this textile and add it to the mesh object Create meshes for domain plane faces with yarn intersection polygons included

Parameters
MeshMesh to add elements to
bTrimToDomainMesh inserted will be clipped to the domain size
DomainMeshesVector of meshes, one for each face of the domain

Definition at line 201 of file Textile.cpp.

References TexGen::CMesh::AddElement(), TexGen::CMesh::AddNode(), TexGen::CTextile::BuildTextileIfNeeded(), TexGen::CMesh::ConvertTriToQuad(), TexGen::CMesh::GetIndices(), TexGen::CMesh::GetNode(), TexGen::CMesh::GetNumNodes(), TexGen::CTextile::m_pDomain, TexGen::CTextile::m_Yarns, TexGen::CMesh::NUM_ELEMENT_TYPES, TexGen::CMesh::POLYGON, and TGERROR.

◆ AddVolumeToMesh() [1/2]

void CTextile::AddVolumeToMesh ( CMesh Mesh,
bool  bTrimToDomain = false 
)
inherited

Create volume mesh for this textile and add it to the mesh object.

Parameters
MeshMesh to add elements to
bTrimToDomainMesh inserted will be clipped to the domain size

Definition at line 287 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::CTextile::m_pDomain, and TexGen::CTextile::m_Yarns.

◆ AddVolumeToMesh() [2/2]

void CTextile::AddVolumeToMesh ( vector< CMesh > &  YarnMeshes,
bool  bTrimToDomain = false 
)
inherited

Create volume mesh for each yarn in this textile and add to a vector of meshes.

Parameters
YarnMeshesVector of meshes, one for each yarn, to add elements to
bTrimToDomainMesh inserted will be clipped to the domain size

Definition at line 301 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::CTextile::m_pDomain, and TexGen::CTextile::m_Yarns.

Referenced by TexGen::CAdjustMeshInterference::AdjustTextileMesh(), and TexGen::CSimulationAbaqus::CreateAbaqusInputFile().

◆ AddYarn() [1/2]

int CTextile::AddYarn ( const CYarn Yarn)
inherited

◆ AddYarn() [2/2]

int CTextile::AddYarn ( const CYarn Yarn) const
protectedinherited

Definition at line 137 of file Textile.cpp.

References TexGen::CTextile::m_Yarns.

◆ AssignDefaultDomain()

void CTextileWeave::AssignDefaultDomain ( bool  bSheared = false,
bool  bAddedHeight = true 
)

Get the default domain and assign it as the domain.

This is the same as AssignDomain(GetDefaultDomain))

Definition at line 1076 of file TextileWeave.cpp.

References TexGen::CTextile::AssignDomain(), and GetDefaultDomain().

◆ AssignDomain()

void CTextile::AssignDomain ( const CDomain Domain)
inherited

Assign a domain to the textile, will be used by default to trim the domain.

Definition at line 724 of file Textile.cpp.

References TexGen::CTextile::m_pDomain.

Referenced by TexGen::CTextile3DWeave::AssignDefaultDomain(), AssignDefaultDomain(), and TexGen::CTextile3DWeave::SetDomainZValues().

◆ AssignSectionMesh()

void CTextileWeave::AssignSectionMesh ( const CSectionMesh SectionMesh)

Assign a section mesh to the weave.

Definition at line 412 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, and m_pSectionMesh.

◆ BuildTextile()

bool CTextileWeave::BuildTextile ( ) const
protectedvirtual

Build the textile.

The weave is built based on the pattern contained in m_Pattern and the data in m_YYarnData and m_XYarnData. The pattern is essentially a 3D array of bools, where true represents a yarn going parallel to the x axis and false representing a yarn going parallel to the y axis. The Yarn data contains yarn width and height, and horizontal spacing between yarns. The spacing value corresponds to the spacing between the centerline of the yarn and the centerline of the next yarn after it. There is one set of width, height and spacing variables for each set of vertically grouped yarns. The assumption is that all vertically grouped yarns will have the same values, this can easily be extended however. The fabric thickness determines the vertical spacing, the spacing between yarns vertically is the fabric thickness divided by the number of yarns crossing over each other. Another limitation here is that the vertical spacing is the same between all vertical yarns. Again something that could easily be extended.

This function is made virtual so that sub-classes may define a completely new build function or more likely extend this one.

Reimplemented from TexGen::CTextile.

Reimplemented in TexGen::CShearedTextileWeave2D, and TexGen::CTextileWeave2D.

Definition at line 253 of file TextileWeave.cpp.

References TexGen::CTextile::AddYarn(), TexGen::CSection::AssignSectionMesh(), GetCell(), GetHeight(), TexGen::CTextile::GetName(), GetWidth(), m_dFabricThickness, m_iNumXYarns, m_iNumYYarns, m_iResolution, m_pSectionMesh, m_XYarnData, m_XYarns, TexGen::CTextile::m_Yarns, m_YYarnData, m_YYarns, TexGen::PATTERN_XYARN, TexGen::PATTERN_YYARN, TGLOGINDENT, and Valid().

Referenced by TexGen::CTextileWeave2D::BuildTextile().

◆ BuildTextileIfNeeded()

bool CTextile::BuildTextileIfNeeded ( ) const
protectedinherited

Build the textile only if needed.

Note: This is only relavant for classes which derive from CTextile and handle the construction of yarns automatically. Note that it may seem strange that this function should be declared as const, but it is to allow dynamic building of the textile when necessary even from within const functions.

Definition at line 710 of file Textile.cpp.

References TexGen::CTextile::BuildTextile(), and TexGen::CTextile::m_bNeedsBuilding.

Referenced by TexGen::CTextile::AddCentrePlaneToMesh(), TexGen::CTextile::AddNodesToMesh(), TexGen::CTextile::AddPathToMesh(), TexGen::CTextile::AddSurfaceToMesh(), TexGen::CTextile::AddVolumeToMesh(), TexGen::CTextile3DWeave::CheckUpVectors(), TexGen::CTextile::DetectInterference(), TexGen::CTextile::GetApproximateSize(), TexGen::CTextile::GetDomainVolumeFraction(), TexGen::CTextile::GetFibreVolume(), TexGen::CTextile::GetFibreVolumePerUnitArea(), TexGen::CTextile::GetFibreYarnVolumeFraction(), TexGen::CTextile::GetNumYarns(), TexGen::CTextile::GetPointInformation(), TexGen::CTextile::GetQuickDomainVolumeFraction(), TexGen::CTextile3DWeave::GetXYarns(), GetXYarns(), TexGen::CTextile::GetYarn(), TexGen::CTextile::GetYarnLength(), TexGen::CTextile::GetYarnLengthPerUnitArea(), TexGen::CTextile::GetYarns(), TexGen::CTextile::GetYarnVolume(), TexGen::CTextile::GetYarnVolumePerUnitArea(), TexGen::CTextile3DWeave::GetYYarns(), GetYYarns(), TexGen::CTextile::PopulateTiXmlElement(), TexGen::CTextile::Rotate(), TexGen::CTextile::SetAllYarnsAlphaX(), TexGen::CTextile::SetAllYarnsAlphaY(), TexGen::CTextile::SetAllYarnsAlphaZ(), TexGen::CTextile::SetAllYarnsPoissonsRatioX(), TexGen::CTextile::SetAllYarnsPoissonsRatioY(), TexGen::CTextile::SetAllYarnsPoissonsRatioZ(), TexGen::CTextile::SetAllYarnsShearModulusXY(), TexGen::CTextile::SetAllYarnsShearModulusXZ(), TexGen::CTextile::SetAllYarnsShearModulusYZ(), TexGen::CTextile::SetAllYarnsYoungsModulusX(), TexGen::CTextile::SetAllYarnsYoungsModulusY(), TexGen::CTextile::SetAllYarnsYoungsModulusZ(), TexGen::CTextile3DWeave::SetDomainZValues(), TexGen::CTextile::SetResolution(), and TexGen::CTextile::Translate().

◆ CleanUp()

void TexGen::CTextile::CleanUp ( )
protectedinherited

Remove all dynamic memory (called by destructor and copy constructor) Not to be used to empty the yarn data for re-use

◆ ConvertToInterpNodes()

bool CTextile::ConvertToInterpNodes ( ) const
inherited

Converts each yarn with constant cross-section to interpolate sections between nodes Sets the section at each node to the original section

Definition at line 1201 of file Textile.cpp.

References TexGen::CTextile::m_Yarns.

Referenced by TexGen::CShearedTextileWeave2D::Refine().

◆ ConvertToPatternDraft()

virtual void TexGen::CTextileWeave::ConvertToPatternDraft ( )
inlinevirtual

Reimplemented in TexGen::CTextileWeave2D.

Definition at line 144 of file TextileWeave.h.

◆ Copy()

virtual CTextile * TexGen::CTextileWeave::Copy ( ) const
inlinevirtual

Reimplemented from TexGen::CTextile.

Reimplemented in TexGen::CShearedTextileWeave2D, TexGen::CTextileWeave2D, and TexGen::CTextileWeave3D.

Definition at line 49 of file TextileWeave.h.

◆ CorrectEdgeInterference()

void CTextileWeave::CorrectEdgeInterference ( )

◆ CorrectInterference()

void CTextileWeave::CorrectInterference ( ) const
protectedvirtual

◆ CorrectYarnWidths()

void CTextileWeave::CorrectYarnWidths ( ) const
protected

◆ DeleteYarn()

bool CTextile::DeleteYarn ( int  iIndex)
inherited

Delete an Yarn from the textile.

Parameters
iIndexThe index of the yarn to delete
Returns
false if the index is out of range

Definition at line 152 of file Textile.cpp.

References TexGen::CTextile::m_Yarns.

◆ DeleteYarns()

void CTextile::DeleteYarns ( )
inherited

Delete all Yarns in the textile.

Definition at line 160 of file Textile.cpp.

References TexGen::CTextile::m_Yarns.

◆ DetectInterference()

int CTextile::DetectInterference ( vector< float > &  DistanceToSurface,
vector< int > &  YarnIndex,
bool  bTrimToDomain,
CMesh pInterferingPoints = NULL 
)
inherited

◆ FlattenYarns()

bool CTextileWeave::FlattenYarns ( double  dFlatLevel,
int  iUpDownBoth = 0 
)

Move the points of the cross section that lie more than FlatLevel away from the yarn center (and away from the weave center)

Parameters
dFlatLeveldistance from the yarn center
iUpDownBoth-1 if only flattening lower passages, 0 for both, 1 for upper passages

Definition at line 575 of file TextileWeave.cpp.

References TexGen::YARN_POSITION_INFORMATION::dSectionPosition, TexGen::CYarnSectionInterpNode::GetSection(), TexGen::CYarnSection::GetType(), TexGen::YARN_POSITION_INFORMATION::iSection, TexGen::CTextile::m_Yarns, TexGen::CYarnSectionInterpNode::ReplaceSection(), TexGen::YARN_POSITION_INFORMATION::SectionLengths, TGERROR, and TexGen::XYZ::z.

◆ Get3DWeave()

CTextile3DWeave * CTextile::Get3DWeave ( )
inherited

Definition at line 867 of file Textile.cpp.

◆ GetAlphaX()

double CProperties::GetAlphaX ( string  Units = "/K") const
inherited

◆ GetAlphaY()

double CProperties::GetAlphaY ( string  Units = "/K") const
inherited

◆ GetAlphaZ()

double CProperties::GetAlphaZ ( string  Units = "/K") const
inherited

◆ GetAngleInterlockWeave()

CTextileAngleInterlock * CTextile::GetAngleInterlockWeave ( )
inherited

Definition at line 887 of file Textile.cpp.

◆ GetApproximateSize()

double CTextile::GetApproximateSize ( )
inherited

Get an approximate size for the textile.

This is useful for rendering where the size of certain objects rendered should be relative to the approximate size of the textile.

Definition at line 556 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::GetLength(), TexGen::CTextile::m_Yarns, TexGen::Max(), and TexGen::Min().

Referenced by TexGen::CTexGenRenderer::RenderInterference(), TexGen::CTexGenRenderer::RenderNodes(), and TexGen::CTexGenRenderer::RenderPath().

◆ GetArealDensity()

double CPropertiesTextile::GetArealDensity ( string  Units = "kg/m^2") const
inherited

◆ GetAverageYarnSpacing()

double TexGen::CTextileWeave::GetAverageYarnSpacing ( ) const
inline

Definition at line 153 of file TextileWeave.h.

◆ GetAverageYarnWidth()

double CTextileWeave::GetAverageYarnWidth ( ) const

Definition at line 1087 of file TextileWeave.cpp.

References m_iNumXYarns, m_iNumYYarns, m_XYarnData, and m_YYarnData.

◆ GetCell() [1/2]

vector< PATTERN2D > & CTextileWeave::GetCell ( int  x,
int  y 
)
protected

Definition at line 196 of file TextileWeave.cpp.

References m_iNumYYarns, and m_Pattern.

◆ GetCell() [2/2]

const vector< PATTERN2D > & CTextileWeave::GetCell ( int  x,
int  y 
) const

◆ GetCellCoordinates()

pair< int, int > CTextileWeave::GetCellCoordinates ( int  iIndex) const
protected

Definition at line 186 of file TextileWeave.cpp.

References m_iNumYYarns.

Referenced by PopulateTiXmlElement().

◆ GetDecoupledLToLWeave()

CTextileDecoupledLToL * CTextile::GetDecoupledLToLWeave ( )
inherited

Definition at line 882 of file Textile.cpp.

◆ GetDefaultDomain()

CDomainPlanes CTextileWeave::GetDefaultDomain ( bool  bSheared = false,
bool  bAddedHeight = true 
)
virtual

◆ GetDefaultName()

string CTextileWeave::GetDefaultName ( ) const
virtual

Get the default name to assign to a textile.

Derived classes should have different default names based on the type of textile

Reimplemented from TexGen::CTextile.

Reimplemented in TexGen::CTextileWeave2D, and TexGen::CTextileWeave3D.

Definition at line 1082 of file TextileWeave.cpp.

References m_iNumXYarns, m_iNumYYarns, and TexGen::stringify().

◆ GetDomain() [1/2]

CDomain * TexGen::CTextile::GetDomain ( )
inlineinherited

Definition at line 288 of file Textile.h.

◆ GetDomain() [2/2]

const CDomain * TexGen::CTextile::GetDomain ( ) const
inlineinherited

Definition at line 287 of file Textile.h.

Referenced by TexGen::CAdjustMeshInterference::AdjustSectionMeshes(), TexGen::CAdjustMeshInterference::AdjustTextileMesh(), TexGen::CGeometrySolver::AssignFibreDirectionToElements(), TexGen::CPrismVoxelMesh::CalculateVoxelSizes(), TexGen::CRectangularVoxelMesh::CalculateVoxelSizes(), TexGen::CRotatedVoxelMesh::CalculateVoxelSizes(), TexGen::CShearedVoxelMesh::CalculateVoxelSizes(), TexGen::CExporter::ConvertTextile(), TexGen::CSimulationAbaqus::CreateAbaqusInputFile(), TexGen::CBasicVolumes::CreateBasicVolumes(), TexGen::CGeometrySolver::CreateSystem(), TexGen::CShearedTextileWeave2D::CreateTopAndBottomMeshes(), TexGen::CTextileDeformer::DeformTextile(), TexGen::CMesher::FillYarnTangentsData(), TexGen::CPrismVoxelMesh::GetElementMap(), TexGen::COctreeVoxelMesh::OutputPeriodicBoundaries(), TexGen::CStaggeredVoxelMesh::OutputPeriodicBoundaries(), TexGen::CVoxelMesh::OutputPeriodicBoundaries(), TexGen::CShearedTextileWeave2D::Refine(), TexGen::CTexGenRenderer::RefreshYarn(), TexGen::CTexGenRenderer::RenderDomain(), TexGen::CTexGenRenderer::RenderDomainAxes(), TexGen::CTexGenRenderer::RenderGrid(), TexGen::CTexGenRenderer::RenderInterference(), TexGen::CTexGenRenderer::RenderMesh(), TexGen::CTexGenRenderer::RenderTextile(), TexGen::CShellElementExport::SaveShellElementToABAQUS(), TexGen::CSurfaceMesh::SaveSurfaceMesh(), TexGen::CMesher::SaveVolumeMeshToABAQUS(), TexGen::CVoxelMesh::SaveVoxelMesh(), TexGen::COctreeVoxelMesh::SaveVoxelMesh(), and TexGen::CTextile3DWeave::SetDomainZValues().

◆ GetDomainVolumeFraction()

double CTextile::GetDomainVolumeFraction ( )
inherited

◆ GetFabricThickness()

double TexGen::CTextileWeave::GetFabricThickness ( ) const
inline

Definition at line 151 of file TextileWeave.h.

◆ GetFibreArea()

double CProperties::GetFibreArea ( string  Units = "m^2") const
inherited

Get the area occupied by fibres given fibre diameter and number of fibres.

Either returns the value stored in m_dFibreArea or calculates it from m_iFibresPerYarn and m_FibreDiameter if they are set OR from m_dYarnLinearDensity and m_dFibreDensity if they are set.

Definition at line 251 of file Properties.cpp.

References TexGen::ConvertUnits(), TexGen::CProperty::GetSIValue(), TexGen::CProperty::GetValue(), TexGen::CProperty::IsSet(), TexGen::CProperties::m_CalculatedArea, TexGen::CProperties::m_FibreArea, TexGen::CProperties::m_FibreDensity, TexGen::CProperties::m_FibreDiameter, TexGen::CProperties::m_iFibresPerYarn, TexGen::CProperties::m_YarnLinearDensity, and PI.

Referenced by TexGen::CTextile3DWeave::GetFibreArea(), TexGen::CYarn::GetFibreVolume(), TexGen::CSimulationAbaqus::GetSectionVolumeFraction(), and TexGen::CYarn::PointInsideYarn().

◆ GetFibreDensity()

double CProperties::GetFibreDensity ( string  Units = "kg/m^3") const
inherited

◆ GetFibreDiameter()

double CProperties::GetFibreDiameter ( string  Units = "m") const
inherited

◆ GetFibresPerYarn()

int CProperties::GetFibresPerYarn ( ) const
inherited

◆ GetFibreVolume()

double CTextile::GetFibreVolume ( string  Units = "m^3")
inherited

Calculate the volume of fibre in the yarn, for just the nodes specified.

Calculates the raw volume of fibre without taking account of repeat vectors or unit cell sizes. This only works when the linear density of the yarns and fibre density are specified.

Definition at line 796 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

Referenced by TexGen::CTextile::GetFibreYarnVolumeFraction().

◆ GetFibreVolumePerUnitArea()

double CTextile::GetFibreVolumePerUnitArea ( string  Units = "m")
inherited

Calculate the volume of fibre per unit area.

Calculates the volume of fibre per unit area of fabric. This only works when the areal density and fibre density is specified. Alternatively if linear density and fibre density is specified calculation will be based on these values.

Definition at line 809 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::ConvertUnits(), TexGen::CProperty::GetSIValue(), TexGen::CProperty::IsSet(), TexGen::CPropertiesTextile::m_ArealDensity, TexGen::CProperties::m_FibreDensity, and TexGen::CTextile::m_Yarns.

Referenced by TexGen::CTextile::GetFibreYarnVolumeFraction().

◆ GetFibreYarnVolumeFraction()

double CTextile::GetFibreYarnVolumeFraction ( )
inherited

Calculates the total fibre volume fraction for all yarns.

Calculates the volume of fibre divided by the volume of yarn. See GetFibreVolume and GetYarnVolume functions for requirements.

Definition at line 838 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::CTextile::GetFibreVolume(), TexGen::CTextile::GetFibreVolumePerUnitArea(), TexGen::CTextile::GetYarnVolume(), and TexGen::CTextile::GetYarnVolumePerUnitArea().

◆ GetGapSize()

double TexGen::CTextileWeave::GetGapSize ( ) const
inline

Definition at line 152 of file TextileWeave.h.

◆ GetGeometryScale()

string CPropertiesTextile::GetGeometryScale ( ) const
inherited

◆ GetHeight()

double CTextileWeave::GetHeight ( ) const

Get the height of the unit cell.

Definition at line 1045 of file TextileWeave.cpp.

References m_iNumXYarns, and m_XYarnData.

Referenced by BuildTextile(), and GetDefaultDomain().

◆ GetLayeredTextile()

CTextileLayered * CTextile::GetLayeredTextile ( )
inherited

Definition at line 862 of file Textile.cpp.

◆ GetLayerToLayerWeave()

CTextileLayerToLayer * CTextile::GetLayerToLayerWeave ( )
inherited

Definition at line 877 of file Textile.cpp.

◆ GetMatrixAlpha()

double CPropertiesTextile::GetMatrixAlpha ( ) const
inherited

◆ GetMatrixPoissonsRatio()

double CPropertiesTextile::GetMatrixPoissonsRatio ( ) const
inherited

◆ GetMatrixYoungsModulus()

double CPropertiesTextile::GetMatrixYoungsModulus ( string  Units = "MPa") const
inherited

◆ GetName()

string CTextile::GetName ( ) const
inherited

◆ GetNumXYarns()

int TexGen::CTextileWeave::GetNumXYarns ( ) const
inline

◆ GetNumYarns()

int CTextile::GetNumYarns ( ) const
inherited

◆ GetNumYYarns()

int TexGen::CTextileWeave::GetNumYYarns ( ) const
inline

◆ GetOrthogonalWeave()

CTextileOrthogonal * CTextile::GetOrthogonalWeave ( )
inherited

Definition at line 872 of file Textile.cpp.

◆ GetPatternDraft()

CPatternDraft & TexGen::CTextileWeave::GetPatternDraft ( )
inline

Definition at line 160 of file TextileWeave.h.

◆ GetPointInformation() [1/2]

void CTextile::GetPointInformation ( const vector< XYZ > &  Points,
vector< POINT_INFO > &  PointsInfo,
double  dTolerance = 1e-9 
)
inherited

Get useful information of a list of points.

Pass in a vector of point coordinates, for each point it will be determined if it lies within a yarn. If it does then the yarn index along with the tangent of the yarn at that point will be returned along with its 2D location relative to the yarn center line. If the point doesn't lie within the yarn an index of -1 will be returned.

Parameters
PointsList of points for which the tangents is required
PointsInfoInformation about the point as described in the POINT_INFO structure
dTolerancePoints outside the yarn by a distance less than this tolerance will be considered part of the yarn

Definition at line 410 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::POINT_INFO::dSurfaceDistance, TexGen::POINT_INFO::dVolumeFraction, TexGen::CDomain::GetTranslations(), TexGen::POINT_INFO::iYarnIndex, TexGen::POINT_INFO::Location, TexGen::CTextile::m_Yarns, TexGen::Max(), TexGen::Min(), TexGen::POINT_INFO::Orientation, TexGen::POINT_INFO::Up, and TexGen::POINT_INFO::YarnTangent.

Referenced by TexGen::CSimulationAbaqus::CreateAbaqusInputFile(), TexGen::COctreeVoxelMesh::fillMaterialInfo(), TexGen::CShellElementExport::GetElementInfo(), TexGen::COctreeVoxelMesh::OutputNodes(), TexGen::CPrismVoxelMesh::OutputNodes(), TexGen::CRectangularVoxelMesh::OutputNodes(), TexGen::CRotatedVoxelMesh::OutputNodes(), TexGen::CShearedVoxelMesh::OutputNodes(), TexGen::CTexGenRenderer::RenderGrid(), TexGen::CTetgenMesh::SaveMesh(), TexGen::CTextile::SavePointInformationToVTK(), and TexGen::COctreeVoxelMesh::storePointInfo().

◆ GetPointInformation() [2/2]

void CTextile::GetPointInformation ( const vector< XYZ > &  Points,
vector< POINT_INFO > &  PointsInfo,
int  iYarn,
double  dTolerance = 1e-9,
bool  bSurface = false 
)
inherited

Get information when know which yarn point is in. Saves iterating through entire textile.

Parameters
bSurfacedefault is False. Set to True if getting point information for surface mesh export. Assumes Points are on yarn surface and doesn't do PointInside check

Definition at line 465 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::POINT_INFO::dSurfaceDistance, TexGen::POINT_INFO::dVolumeFraction, TexGen::CDomain::GetTranslations(), TexGen::POINT_INFO::iYarnIndex, TexGen::POINT_INFO::Location, TexGen::CTextile::m_Yarns, TexGen::Max(), TexGen::Min(), TexGen::POINT_INFO::Orientation, TexGen::POINT_INFO::Up, and TexGen::POINT_INFO::YarnTangent.

◆ GetPoissonsRatioX()

double CProperties::GetPoissonsRatioX ( ) const
inherited

◆ GetPoissonsRatioY()

double CProperties::GetPoissonsRatioY ( ) const
inherited

◆ GetPoissonsRatioZ()

double CProperties::GetPoissonsRatioZ ( ) const
inherited

◆ GetQuickDomainVolumeFraction()

double CTextile::GetQuickDomainVolumeFraction ( )
inherited

Calculates the fibre volume fraction for the domain.

Uses the fibre volume fraction for whole yarns which may give inaccuracies where the yarn cross-section varies along its length. Useful for quick approximation as the more accurate GetDomainVolumeFraction may be slow.

Definition at line 1092 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), TexGen::CMesh::CalculateVolume(), TexGen::CTextile::m_pDomain, TexGen::CTextile::m_Yarns, TGERROR, and TOL.

◆ GetResolution()

int TexGen::CTextileWeave::GetResolution ( ) const
inline

Definition at line 156 of file TextileWeave.h.

◆ GetShearModulusXY()

double CProperties::GetShearModulusXY ( string  Units = "MPa") const
inherited

◆ GetShearModulusXZ()

double CProperties::GetShearModulusXZ ( string  Units = "MPa") const
inherited

◆ GetShearModulusYZ()

double CProperties::GetShearModulusYZ ( string  Units = "MPa") const
inherited

◆ GetType()

virtual string TexGen::CTextileWeave::GetType ( ) const
inlinevirtual

Derived class should return the class name.

Reimplemented from TexGen::CTextile.

Reimplemented in TexGen::CShearedTextileWeave2D, TexGen::CTextileWeave2D, and TexGen::CTextileWeave3D.

Definition at line 50 of file TextileWeave.h.

◆ GetWeave()

CTextileWeave * CTextile::GetWeave ( )
inherited

If this textile is a woven textile get a pointer of that type else return NULL.

Internally the function just returns dynamic_cast<CTextileWeave*>(this) This is mainly usefull in the python interface because type casting is not supported in this language.

Definition at line 852 of file Textile.cpp.

◆ GetWeave2D()

CTextileWeave2D * CTextile::GetWeave2D ( )
inherited

Definition at line 857 of file Textile.cpp.

◆ GetWidth()

double CTextileWeave::GetWidth ( ) const

◆ GetXYarnGapSize()

double CTextileWeave::GetXYarnGapSize ( int  iIndex) const

Get the gap size between two yarns parallel to the X axis, with given index.

Definition at line 925 of file TextileWeave.cpp.

References m_iNumXYarns, m_XYarnData, and TGERROR.

◆ GetXYarnHeights()

double CTextileWeave::GetXYarnHeights ( int  iIndex) const

Get the height of the yarn parallel to the X axis, with given index.

Definition at line 885 of file TextileWeave.cpp.

References m_iNumXYarns, m_XYarnData, and TGERROR.

◆ GetXYarns()

vector< CYarn * > CTextileWeave::GetXYarns ( int  iIndex)

◆ GetXYarnSpacings()

double CTextileWeave::GetXYarnSpacings ( int  iIndex) const

Get the spacing of the yarn parallel to the X axis, with given index.

Definition at line 905 of file TextileWeave.cpp.

References m_iNumXYarns, m_XYarnData, and TGERROR.

◆ GetXYarnWidths()

double CTextileWeave::GetXYarnWidths ( int  iIndex) const

Get the width of the yarn parallel to the X axis, with given index.

Definition at line 865 of file TextileWeave.cpp.

References m_iNumXYarns, m_XYarnData, and TGERROR.

◆ GetYarn() [1/2]

CYarn * CTextile::GetYarn ( int  iIndex)
inherited

◆ GetYarn() [2/2]

const CYarn * CTextile::GetYarn ( int  iIndex) const
inherited

◆ GetYarnIndex()

int CTextileWeave::GetYarnIndex ( int  x,
int  y,
int  z 
) const

◆ GetYarnLength()

double CTextile::GetYarnLength ( string  Units = "m")
inherited

Calculate the total yarn length.

This is the total length of yarn without taking in account of repeat vectors or unit cell sizes. It is calculated from the geometry alone and uses the m_GeometryScale to give the value in the requested units.

Definition at line 734 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ GetYarnLengthPerUnitArea()

double CTextile::GetYarnLengthPerUnitArea ( string  Units = "/m")
inherited

Calculate the total yarn length per unit area.

Calculates the total length of yarn in the unit cell taking into account the repeat vectors. This function only works when each yarn has two repeat vectors assigned to it, otherwise it does not make sense to obtain a length per unit AREA.

Definition at line 747 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ GetYarnLinearDensity()

double CProperties::GetYarnLinearDensity ( string  Units = "kg/m") const
inherited

◆ GetYarns() [1/2]

vector< CYarn > & CTextile::GetYarns ( )
inherited

◆ GetYarns() [2/2]

const vector< CYarn > & CTextile::GetYarns ( ) const
inherited

◆ GetYarnVolume()

double CTextile::GetYarnVolume ( string  Units = "m^3")
inherited

Calculate the yarn volume.

This is the raw volume without taking account of repeat vectors or unit cell sizes. It is calculated from the geometry alone and uses the m_GeometryScale to give the value in the requested units.

Definition at line 765 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

Referenced by TexGen::CTextile::GetFibreYarnVolumeFraction().

◆ GetYarnVolumePerUnitArea()

double CTextile::GetYarnVolumePerUnitArea ( string  Units = "m")
inherited

Calculate the total yarn volume per unit area.

Calculates the volume of yarn in the unit cell taking into account the repeat vectors. This function only works when each yarn has two repeat vectors assigned to it, otherwise it does not make sense to obtain a volume per unit AREA. If 1 repeat vector is given then a volume per unit length would be more suitable, similarly 2 repeat vectors would give a volume per unit volume (i.e. a volume fraction of region occupied by yarns).

Definition at line 778 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

Referenced by TexGen::CTextile::GetFibreYarnVolumeFraction().

◆ GetYoungsModulusX()

double CProperties::GetYoungsModulusX ( string  Units = "MPa") const
inherited

◆ GetYoungsModulusY()

double CProperties::GetYoungsModulusY ( string  Units = "MPa") const
inherited

◆ GetYoungsModulusZ()

double CProperties::GetYoungsModulusZ ( string  Units = "MPa") const
inherited

◆ GetYYarnGapSize()

double CTextileWeave::GetYYarnGapSize ( int  iIndex) const

Get the gap size between two yarns parallel to the Y axis, with given index.

Definition at line 941 of file TextileWeave.cpp.

References m_iNumYYarns, m_YYarnData, and TGERROR.

◆ GetYYarnHeights()

double CTextileWeave::GetYYarnHeights ( int  iIndex) const

Get the height of the yarn parallel to the Y axis, with given index.

Definition at line 895 of file TextileWeave.cpp.

References m_iNumYYarns, m_YYarnData, and TGERROR.

◆ GetYYarns()

vector< CYarn * > CTextileWeave::GetYYarns ( int  iIndex)

◆ GetYYarnSpacings()

double CTextileWeave::GetYYarnSpacings ( int  iIndex) const

Get the spacing of the yarn parallel to the Y axis, with given index.

Definition at line 915 of file TextileWeave.cpp.

References m_iNumYYarns, m_YYarnData, and TGERROR.

◆ GetYYarnWidths()

double CTextileWeave::GetYYarnWidths ( int  iIndex) const

Get the width of the yarn parallel to the Y axis, with given index.

Definition at line 875 of file TextileWeave.cpp.

References m_iNumYYarns, m_YYarnData, and TGERROR.

◆ NeedsMidSection()

bool CTextileWeave::NeedsMidSection ( int  iYarn,
int  iSection 
) const
protected

Definition at line 770 of file TextileWeave.cpp.

References GetCell(), m_XYarns, and m_YYarns.

Referenced by CorrectInterference().

◆ PopulateTiXmlElement()

void CTextileWeave::PopulateTiXmlElement ( TiXmlElement &  Element,
OUTPUT_TYPE  OutputType 
)
virtual

◆ RefineTextile()

virtual void TexGen::CTextileWeave::RefineTextile ( bool  bCorrectWidths = true,
bool  bCorrectInterference = true,
bool  bPeriodic = true 
)
inlinevirtual

Call refine functions for textile weave. Currently only defined for 2D weave to allow refinement after node adjustment in textile.

Reimplemented in TexGen::CTextileWeave2D.

Definition at line 141 of file TextileWeave.h.

◆ RemoveDomain()

void CTextile::RemoveDomain ( )
inherited

Remove the domain.

Definition at line 729 of file Textile.cpp.

References TexGen::CTextile::m_pDomain.

Referenced by TexGen::CTextile3DWeave::SetDomainZValues().

◆ ResetAlphaX()

void TexGen::CProperties::ResetAlphaX ( )
inlineinherited

Definition at line 165 of file Properties.h.

◆ ResetAlphaY()

void TexGen::CProperties::ResetAlphaY ( )
inlineinherited

Definition at line 166 of file Properties.h.

◆ ResetAlphaZ()

void TexGen::CProperties::ResetAlphaZ ( )
inlineinherited

Definition at line 167 of file Properties.h.

◆ ResetArealDensity()

void TexGen::CPropertiesTextile::ResetArealDensity ( )
inlineinherited

Definition at line 56 of file PropertiesTextile.h.

◆ ResetFibreArea()

void TexGen::CProperties::ResetFibreArea ( )
inlineinherited

Definition at line 158 of file Properties.h.

◆ ResetFibreDensity()

void TexGen::CProperties::ResetFibreDensity ( )
inlineinherited

Definition at line 155 of file Properties.h.

◆ ResetFibreDiameter()

void TexGen::CProperties::ResetFibreDiameter ( )
inlineinherited

Definition at line 156 of file Properties.h.

◆ ResetFibresPerYarn()

void TexGen::CProperties::ResetFibresPerYarn ( )
inlineinherited

Definition at line 157 of file Properties.h.

◆ ResetPoissonsRatioX()

void TexGen::CProperties::ResetPoissonsRatioX ( )
inlineinherited

Definition at line 168 of file Properties.h.

◆ ResetPoissonsRatioY()

void TexGen::CProperties::ResetPoissonsRatioY ( )
inlineinherited

Definition at line 169 of file Properties.h.

◆ ResetPoissonsRatioZ()

void TexGen::CProperties::ResetPoissonsRatioZ ( )
inlineinherited

Definition at line 170 of file Properties.h.

◆ ResetShearModulusXY()

void TexGen::CProperties::ResetShearModulusXY ( )
inlineinherited

Definition at line 162 of file Properties.h.

◆ ResetShearModulusXZ()

void TexGen::CProperties::ResetShearModulusXZ ( )
inlineinherited

Definition at line 163 of file Properties.h.

◆ ResetShearModulusYZ()

void TexGen::CProperties::ResetShearModulusYZ ( )
inlineinherited

Definition at line 164 of file Properties.h.

◆ ResetYarnLinearDensity()

void TexGen::CProperties::ResetYarnLinearDensity ( )
inlineinherited

Definition at line 154 of file Properties.h.

◆ ResetYoungsModulusX()

void TexGen::CProperties::ResetYoungsModulusX ( )
inlineinherited

Definition at line 159 of file Properties.h.

◆ ResetYoungsModulusY()

void TexGen::CProperties::ResetYoungsModulusY ( )
inlineinherited

Definition at line 160 of file Properties.h.

◆ ResetYoungsModulusZ()

void TexGen::CProperties::ResetYoungsModulusZ ( )
inlineinherited

Definition at line 161 of file Properties.h.

◆ Rotate()

void CTextile::Rotate ( WXYZ  Rotation,
XYZ  Origin = XYZ(0,0,0) 
)
inherited

Rotate the Textile by given quaternion.

Definition at line 333 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ SavePointInformationToVTK()

void CTextile::SavePointInformationToVTK ( string  Filename,
const CMesh Mesh,
double  dTolerance = 1e-9 
)
inherited

Output point information to VTK.

Makes a call to GetPointInformation and stores the result in a VTK unstructured grid file

Definition at line 521 of file Textile.cpp.

References TexGen::CMeshDataBase::ELEMENT, TexGen::CMesh::GetNodes(), TexGen::CTextile::GetPointInformation(), TexGen::CMeshData< T >::m_Data, and TexGen::CMesh::SaveToVTK().

◆ SetAllYarnsAlphaX()

void CTextile::SetAllYarnsAlphaX ( double  dValue,
string  Units = "/K" 
)
inherited

Set the coefficient of thermal expansion for all yarns in textile.

Definition at line 1020 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ SetAllYarnsAlphaY()

void CTextile::SetAllYarnsAlphaY ( double  dValue,
string  Units = "/K" 
)
inherited

◆ SetAllYarnsAlphaZ()

void CTextile::SetAllYarnsAlphaZ ( double  dValue,
string  Units = "/K" 
)
inherited

◆ SetAllYarnsPoissonsRatioX()

void CTextile::SetAllYarnsPoissonsRatioX ( double  dValue)
inherited

Set the Poisson's ratio for all yarns in textile.

Definition at line 1056 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ SetAllYarnsPoissonsRatioY()

void CTextile::SetAllYarnsPoissonsRatioY ( double  dValue)
inherited

◆ SetAllYarnsPoissonsRatioZ()

void CTextile::SetAllYarnsPoissonsRatioZ ( double  dValue)
inherited

◆ SetAllYarnsShearModulusXY()

void CTextile::SetAllYarnsShearModulusXY ( double  dValue,
string  Units = "MPa" 
)
inherited

Set the shear modulus for all yarns in textile.

Definition at line 984 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ SetAllYarnsShearModulusXZ()

void CTextile::SetAllYarnsShearModulusXZ ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetAllYarnsShearModulusYZ()

void CTextile::SetAllYarnsShearModulusYZ ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetAllYarnsYoungsModulusX()

void CTextile::SetAllYarnsYoungsModulusX ( double  dValue,
string  Units = "MPa" 
)
inherited

Set the Youngs Modulus for all yarns in textile.

Definition at line 948 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ SetAllYarnsYoungsModulusY()

void CTextile::SetAllYarnsYoungsModulusY ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetAllYarnsYoungsModulusZ()

void CTextile::SetAllYarnsYoungsModulusZ ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetAlphaX()

void CProperties::SetAlphaX ( double  dValue,
string  Units = "/K" 
)
inherited

Set the coefficients of thermal expansion for a yarn.

Definition at line 204 of file Properties.cpp.

References TexGen::CProperties::m_AlphaX, and TexGen::CProperty::SetValue().

Referenced by TexGen::CProperties::SetDefaultProperties().

◆ SetAlphaY()

void CProperties::SetAlphaY ( double  dValue,
string  Units = "/K" 
)
inherited

◆ SetAlphaZ()

void CProperties::SetAlphaZ ( double  dValue,
string  Units = "/K" 
)
inherited

◆ SetArealDensity()

void CPropertiesTextile::SetArealDensity ( double  dValue,
string  Units = "kg/m^2" 
)
inherited

Set the areal density, i.e. the mass per unit area of fabric.

Definition at line 83 of file PropertiesTextile.cpp.

References TexGen::CPropertiesTextile::m_ArealDensity, and TexGen::CProperty::SetValue().

◆ SetDefaultMatrixProperties()

void CPropertiesTextile::SetDefaultMatrixProperties ( )
protectedinherited

◆ SetDefaultProperties()

void CProperties::SetDefaultProperties ( )
protectedinherited

◆ SetFibreArea()

void CProperties::SetFibreArea ( double  dValue,
string  Units = "m^2" 
)
inherited

Set the area occupied by fibres in a yarn cross-section.

If not set it can be calculated from the yarn linear density and fibre density.

Definition at line 140 of file Properties.cpp.

References TexGen::CProperties::m_FibreArea, and TexGen::CProperty::SetValue().

Referenced by TexGen::CTextile3DWeave::SetFibreArea(), and TexGen::CTextile3DWeave::SetYarnProperties().

◆ SetFibreDensity()

void CProperties::SetFibreDensity ( double  dValue,
string  Units = "kg/m^3" 
)
inherited

◆ SetFibreDiameter()

void CProperties::SetFibreDiameter ( double  dValue,
string  Units = "m" 
)
inherited

◆ SetFibresPerYarn()

void CProperties::SetFibresPerYarn ( int  iValue)
inherited

◆ SetGapSize()

void CTextileWeave::SetGapSize ( double  dGapSize)

Set the size of the gap to leave between yarns when correcting interference.

Definition at line 400 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, and m_dGapSize.

◆ SetGeometryScale()

bool CPropertiesTextile::SetGeometryScale ( string  Units)
inherited

Set the scale of the geometry.

If 1 unit represents 1 mm in real world units then the geometry scale should be set to Units::mm. By default the geometry scale is set to millimetres.

Definition at line 68 of file PropertiesTextile.cpp.

References TexGen::CompatibleUnits(), TexGen::CPropertiesTextile::m_GeometryScale, and TGERROR.

◆ SetMatrixAlpha()

void CPropertiesTextile::SetMatrixAlpha ( double  dValue)
inherited

Set the coefficient of thermal expansion for the matrix.

Definition at line 108 of file PropertiesTextile.cpp.

References TexGen::CPropertiesTextile::m_MatrixAlpha.

Referenced by TexGen::CPropertiesTextile::SetDefaultMatrixProperties().

◆ SetMatrixPoissonsRatio()

void CPropertiesTextile::SetMatrixPoissonsRatio ( double  dValue)
inherited

Set the Poisson's ration for matrix.

Definition at line 103 of file PropertiesTextile.cpp.

References TexGen::CPropertiesTextile::m_MatrixPoissonsRatio.

Referenced by TexGen::CPropertiesTextile::SetDefaultMatrixProperties().

◆ SetMatrixYoungsModulus()

void CPropertiesTextile::SetMatrixYoungsModulus ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetPoissonsRatio()

void CProperties::SetPoissonsRatio ( double  dValue)
inherited

◆ SetPoissonsRatioX()

void CProperties::SetPoissonsRatioX ( double  dValue)
inherited

◆ SetPoissonsRatioY()

void CProperties::SetPoissonsRatioY ( double  dValue)
inherited

◆ SetPoissonsRatioZ()

void CProperties::SetPoissonsRatioZ ( double  dValue)
inherited

◆ SetResolution()

void CTextileWeave::SetResolution ( int  iResolution)

Set the resolution of the yarns.

Definition at line 406 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, and m_iResolution.

◆ SetShearModulusXY()

void CProperties::SetShearModulusXY ( double  dValue,
string  Units = "MPa" 
)
inherited

Set the Shear modulus for a yarn.

Definition at line 189 of file Properties.cpp.

References TexGen::CProperties::m_ShearModulusXY, and TexGen::CProperty::SetValue().

Referenced by TexGen::CProperties::SetDefaultProperties().

◆ SetShearModulusXZ()

void CProperties::SetShearModulusXZ ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetShearModulusYZ()

void CProperties::SetShearModulusYZ ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetThickness()

void CTextileWeave::SetThickness ( double  dThickness,
bool  bAdjustYarnHeights = true 
)

Set the thickness of the fabric.

Parameters
dThicknessNew fabric thickness to assign
bAdjustYarnHeightsIf true then yarn heights will be set to half the new thickness

Definition at line 390 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, m_dFabricThickness, and SetYarnHeights().

◆ SetXYarnHeights() [1/2]

void CTextileWeave::SetXYarnHeights ( double  dHeight)

Set the height of all the yarns parallel to the X axis.

Definition at line 976 of file TextileWeave.cpp.

References m_iNumXYarns, and SetXYarnHeights().

◆ SetXYarnHeights() [2/2]

void CTextileWeave::SetXYarnHeights ( int  iIndex,
double  dHeight 
)

Set the height of the yarn parallel to the X axis, with given index.

Definition at line 820 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, m_iNumXYarns, m_XYarnData, and TGERROR.

Referenced by SetXYarnHeights(), and SetYarnHeights().

◆ SetXYarnSpacings() [1/2]

void CTextileWeave::SetXYarnSpacings ( double  dSpacing)

Set the spacing of all the yarns parallel to the X axis.

Definition at line 994 of file TextileWeave.cpp.

References m_iNumXYarns, and SetXYarnSpacings().

◆ SetXYarnSpacings() [2/2]

void CTextileWeave::SetXYarnSpacings ( int  iIndex,
double  dSpacing 
)

Set the spacing of the yarn parallel to the X axis, with given index.

Definition at line 842 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, m_iNumXYarns, m_XYarnData, and TGERROR.

Referenced by SetXYarnSpacings(), and SetYarnSpacings().

◆ SetXYarnWidths() [1/2]

void CTextileWeave::SetXYarnWidths ( double  dWidth)

Set the width of all the yarns parallel to the X axis.

Definition at line 958 of file TextileWeave.cpp.

References m_iNumXYarns, and SetXYarnWidths().

◆ SetXYarnWidths() [2/2]

void CTextileWeave::SetXYarnWidths ( int  iIndex,
double  dWidth 
)

Set the width of the yarn parallel to the X axis, with given index.

Definition at line 798 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, m_iNumXYarns, m_XYarnData, and TGERROR.

Referenced by SetXYarnWidths(), and SetYarnWidths().

◆ SetYarnHeights()

void CTextileWeave::SetYarnHeights ( double  dHeight)

Set the height of all the yarns in the textile.

Definition at line 1019 of file TextileWeave.cpp.

References SetXYarnHeights(), and SetYYarnHeights().

Referenced by SetThickness().

◆ SetYarnLinearDensity()

void CProperties::SetYarnLinearDensity ( double  dValue,
string  Units = "kg/m" 
)
inherited

Set the fibre linear density, i.e. the mass per unit length of fibre.

Suppose 1 meter length of yarn weighs X kg, it's linear density is X kg/m

Definition at line 120 of file Properties.cpp.

References TexGen::CProperty::GetSIValue(), TexGen::CProperty::IsSet(), TexGen::CProperties::m_CalculatedArea, TexGen::CProperties::m_FibreDensity, TexGen::CProperties::m_YarnLinearDensity, and TexGen::CProperty::SetValue().

Referenced by TexGen::CTextile3DWeave::SetYarnLinearDensity(), and TexGen::CTextile3DWeave::SetYarnProperties().

◆ SetYarnSpacings()

void CTextileWeave::SetYarnSpacings ( double  dSpacing)

Set the spacing of all the yarns in the textile.

Definition at line 1025 of file TextileWeave.cpp.

References SetXYarnSpacings(), and SetYYarnSpacings().

◆ SetYarnWidths()

void CTextileWeave::SetYarnWidths ( double  dWidth)

Set the width of all the yarns in the textile.

Definition at line 1013 of file TextileWeave.cpp.

References SetXYarnWidths(), and SetYYarnWidths().

◆ SetYoungsModulus()

void CProperties::SetYoungsModulus ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetYoungsModulusX()

void CProperties::SetYoungsModulusX ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetYoungsModulusY()

void CProperties::SetYoungsModulusY ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetYoungsModulusZ()

void CProperties::SetYoungsModulusZ ( double  dValue,
string  Units = "MPa" 
)
inherited

◆ SetYYarnHeights() [1/2]

void CTextileWeave::SetYYarnHeights ( double  dHeight)

Set the height of all the yarns parallel to the Y axis.

Definition at line 985 of file TextileWeave.cpp.

References m_iNumYYarns, and SetYYarnHeights().

◆ SetYYarnHeights() [2/2]

void CTextileWeave::SetYYarnHeights ( int  iIndex,
double  dHeight 
)

Set the height of the yarn parallel to the Y axis, with given index.

Definition at line 831 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, m_iNumYYarns, m_YYarnData, and TGERROR.

Referenced by SetYarnHeights(), and SetYYarnHeights().

◆ SetYYarnSpacings() [1/2]

void CTextileWeave::SetYYarnSpacings ( double  dSpacing)

Set the spacing of all the yarns parallel to the Y axis.

Definition at line 1003 of file TextileWeave.cpp.

References m_iNumYYarns, and SetYYarnSpacings().

◆ SetYYarnSpacings() [2/2]

void CTextileWeave::SetYYarnSpacings ( int  iIndex,
double  dSpacing 
)

Set the spacing of the yarn parallel to the Y axis, with given index.

Definition at line 853 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, m_iNumYYarns, m_YYarnData, and TGERROR.

Referenced by SetYarnSpacings(), and SetYYarnSpacings().

◆ SetYYarnWidths() [1/2]

void CTextileWeave::SetYYarnWidths ( double  dWidth)

Set the width of all the yarns parallel to the Y axis.

Definition at line 967 of file TextileWeave.cpp.

References m_iNumYYarns, and SetYYarnWidths().

◆ SetYYarnWidths() [2/2]

void CTextileWeave::SetYYarnWidths ( int  iIndex,
double  dWidth 
)

Set the width of the yarn parallel to the Y axis, with given index.

Definition at line 809 of file TextileWeave.cpp.

References TexGen::CTextile::m_bNeedsBuilding, m_iNumYYarns, m_YYarnData, and TGERROR.

Referenced by SetYarnWidths(), and SetYYarnWidths().

◆ Translate()

void CTextile::Translate ( XYZ  Vector)
inherited

Translate the Textile by given vector.

Definition at line 344 of file Textile.cpp.

References TexGen::CTextile::BuildTextileIfNeeded(), and TexGen::CTextile::m_Yarns.

◆ Valid()

bool CTextileWeave::Valid ( ) const
protected

Check that the weave pattern contained in m_Pattern is valid.

Definition at line 201 of file TextileWeave.cpp.

References GetCell(), m_iNumXYarns, m_iNumYYarns, TexGen::PATTERN_XYARN, and TexGen::PATTERN_YYARN.

Referenced by TexGen::CShearedTextileWeave2D::BuildTextile(), and BuildTextile().

Member Data Documentation

◆ m_AlphaX

CProperty TexGen::CProperties::m_AlphaX
inherited

◆ m_AlphaY

CProperty TexGen::CProperties::m_AlphaY
inherited

◆ m_AlphaZ

CProperty TexGen::CProperties::m_AlphaZ
inherited

◆ m_ArealDensity

CProperty TexGen::CPropertiesTextile::m_ArealDensity
inherited

◆ m_bNeedsBuilding

bool TexGen::CTextile::m_bNeedsBuilding
mutableprotectedinherited

Variable which keeps track of wether the textile needs building or not.

Note: This is only relavant for classes which derive from CTextile and handle the construction of yarns automatically

Definition at line 330 of file Textile.h.

Referenced by TexGen::CTextile3DWeave::AddXLayers(), TexGen::CTextileWeave3D::AddXLayers(), TexGen::CTextile3DWeave::AddXYarn(), TexGen::CTextile3DWeave::AddYLayers(), TexGen::CTextileWeave3D::AddYLayers(), TexGen::CTextile3DWeave::AddYYarn(), TexGen::CTextile3DWeave::AssignSectionMesh(), AssignSectionMesh(), TexGen::CTextileLayerToLayer::BuildLayerToLayerTextile(), TexGen::CTextile3DWeave::BuildTextile(), TexGen::CTextileAngleInterlock::BuildTextile(), TexGen::CTextileOffsetAngleInterlock::BuildTextile(), TexGen::CTextileOrthogonal::BuildTextile(), TexGen::CTextile::BuildTextileIfNeeded(), TexGen::CTextile::CTextile(), TexGen::CTextile3DWeave::DeleteXLayers(), TexGen::CTextileWeave3D::DeleteXLayers(), TexGen::CTextile3DWeave::DeleteYLayers(), TexGen::CTextileWeave3D::DeleteYLayers(), TexGen::CTextileLayered::MaxNestLayers(), TexGen::CTextileLayered::NestLayers(), TexGen::CTextile::operator=(), TexGen::CTextileWeave3D::PushDown(), TexGen::CTextileWeave3D::PushUp(), TexGen::CTextileAngleInterlock::SetBinderYarnPositions(), TexGen::CTextileOffsetAngleInterlock::SetBinderYarnPositions(), TexGen::CTextile3DWeave::SetGapSize(), SetGapSize(), TexGen::CTextile3DWeave::SetMaxVolFraction(), TexGen::CTextile3DWeave::SetResolution(), SetResolution(), TexGen::CTextile3DWeave::SetThickness(), SetThickness(), TexGen::CTextile3DWeave::SetupWeftRow(), TexGen::CTextileOrthogonal::SetupWeftRow(), TexGen::CTextile3DWeave::SetXYarnHeights(), SetXYarnHeights(), TexGen::CTextile3DWeave::SetXYarnSpacings(), SetXYarnSpacings(), TexGen::CTextile3DWeave::SetXYarnWidths(), SetXYarnWidths(), TexGen::CTextile3DWeave::SetYYarnHeights(), SetYYarnHeights(), TexGen::CTextile3DWeave::SetYYarnSpacings(), SetYYarnSpacings(), TexGen::CTextile3DWeave::SetYYarnWidths(), SetYYarnWidths(), TexGen::CTextile3DWeave::ShapeWeftYarns(), TexGen::CTextileOrthogonal::ShapeWeftYarns(), TexGen::CTextileWeave2D::SwapAll(), TexGen::CTextileOrthogonal::SwapBinderPosition(), TexGen::CTextileWeave2D::SwapPosition(), TexGen::CTextile3DWeave::SwapPosition(), and TexGen::CTextileWeave3D::SwapPosition().

◆ m_CalculatedArea

CProperty TexGen::CProperties::m_CalculatedArea
inherited

◆ m_dFabricThickness

double TexGen::CTextileWeave::m_dFabricThickness
protected

◆ m_dGapSize

double TexGen::CTextileWeave::m_dGapSize
protected

◆ m_FibreArea

CProperty TexGen::CProperties::m_FibreArea
inherited

◆ m_FibreDensity

CProperty TexGen::CProperties::m_FibreDensity
inherited

◆ m_FibreDiameter

CProperty TexGen::CProperties::m_FibreDiameter
inherited

◆ m_GeometryScale

string TexGen::CPropertiesTextile::m_GeometryScale
protectedinherited

◆ m_iFibresPerYarn

int TexGen::CProperties::m_iFibresPerYarn
protectedinherited

◆ m_iNumXYarns

int TexGen::CTextileWeave::m_iNumXYarns
protected

Definition at line 216 of file TextileWeave.h.

Referenced by TexGen::CTextileWeave3D::AddXLayers(), TexGen::CTextileWeave3D::AddYLayers(), TexGen::CShearedTextileWeave2D::AdjustSections(), TexGen::CShearedTextileWeave2D::AdjustSectionsForRotation(), TexGen::CTextileWeave2D::AdjustSectionsForRotation(), TexGen::CTextileWeave2D::AdjustTangents(), TexGen::CShearedTextileWeave2D::BuildTextile(), BuildTextile(), TexGen::CTextileWeave2D::ConvertToPatternDraft(), CorrectEdgeInterference(), CorrectInterference(), TexGen::CShearedTextileWeave2D::CorrectInterference(), CorrectYarnWidths(), CTextileWeave(), TexGen::CTextileWeave2D::CTextileWeave2D(), TexGen::CTextileWeave3D::DeleteXLayers(), TexGen::CTextileWeave3D::DeleteYLayers(), GetAverageYarnWidth(), TexGen::CShearedTextileWeave2D::GetDefaultDomain(), GetDefaultDomain(), GetDefaultName(), TexGen::CTextileWeave2D::GetDefaultName(), TexGen::CTextileWeave3D::GetDefaultName(), GetHeight(), TexGen::CTextileWeave3D::GetMaxNumLayers(), GetXYarnGapSize(), GetXYarnHeights(), GetXYarns(), GetXYarnSpacings(), GetXYarnWidths(), TexGen::CShearedTextileWeave2D::GetYSpacings(), PopulateTiXmlElement(), TexGen::CTextileWeave3D::PushDown(), TexGen::CTextileWeave3D::PushUp(), TexGen::CTextileWeave3D::PushYDown(), TexGen::CTextileWeave3D::PushYUp(), TexGen::CTextileWeave2D::SetInPlaneTangents(), SetXYarnHeights(), SetXYarnSpacings(), SetXYarnWidths(), TexGen::CTextileWeave2D::SwapAll(), TexGen::CTextileWeave2D::SwapPosition(), TexGen::CTextileWeave3D::SwapPosition(), and Valid().

◆ m_iNumYYarns

int TexGen::CTextileWeave::m_iNumYYarns
protected

Definition at line 216 of file TextileWeave.h.

Referenced by TexGen::CTextileWeave3D::AddXLayers(), TexGen::CTextileWeave3D::AddYLayers(), TexGen::CShearedTextileWeave2D::AdjustSections(), TexGen::CShearedTextileWeave2D::AdjustSectionsForRotation(), TexGen::CTextileWeave2D::AdjustSectionsForRotation(), TexGen::CTextileWeave2D::AdjustTangents(), TexGen::CShearedTextileWeave2D::BuildTextile(), BuildTextile(), TexGen::CTextileWeave2D::ConvertToPatternDraft(), CorrectEdgeInterference(), CorrectInterference(), TexGen::CShearedTextileWeave2D::CorrectInterference(), CorrectYarnWidths(), CTextileWeave(), TexGen::CTextileWeave2D::CTextileWeave2D(), TexGen::CTextileWeave3D::DeleteXLayers(), TexGen::CTextileWeave3D::DeleteYLayers(), GetAverageYarnWidth(), GetCell(), GetCellCoordinates(), TexGen::CShearedTextileWeave2D::GetDefaultDomain(), GetDefaultDomain(), GetDefaultName(), TexGen::CTextileWeave2D::GetDefaultName(), TexGen::CTextileWeave3D::GetDefaultName(), TexGen::CTextileWeave3D::GetMaxNumLayers(), GetWidth(), GetYYarnGapSize(), GetYYarnHeights(), GetYYarns(), GetYYarnSpacings(), GetYYarnWidths(), PopulateTiXmlElement(), TexGen::CTextileWeave3D::PushDown(), TexGen::CTextileWeave3D::PushUp(), TexGen::CTextileWeave3D::PushXDown(), TexGen::CTextileWeave3D::PushXUp(), TexGen::CTextileWeave2D::SetInPlaneTangents(), SetYYarnHeights(), SetYYarnSpacings(), SetYYarnWidths(), TexGen::CTextileWeave2D::SwapAll(), TexGen::CTextileWeave2D::SwapPosition(), TexGen::CTextileWeave3D::SwapPosition(), and Valid().

◆ m_iResolution

int TexGen::CTextileWeave::m_iResolution
protected

◆ m_MatrixAlpha

double TexGen::CPropertiesTextile::m_MatrixAlpha
protectedinherited

◆ m_MatrixPoissonsRatio

double TexGen::CPropertiesTextile::m_MatrixPoissonsRatio
protectedinherited

◆ m_MatrixYoungsModulus

CProperty TexGen::CPropertiesTextile::m_MatrixYoungsModulus
inherited

◆ m_Pattern

vector<vector<PATTERN2D> > TexGen::CTextileWeave::m_Pattern
protected

Definition at line 217 of file TextileWeave.h.

Referenced by CTextileWeave(), GetCell(), and PopulateTiXmlElement().

◆ m_PatternDraft

CPatternDraft TexGen::CTextileWeave::m_PatternDraft
protected

Class for generating pattern draft from weave pattern.

Definition at line 203 of file TextileWeave.h.

Referenced by TexGen::CTextileWeave2D::ConvertToPatternDraft().

◆ m_pDomain

CObjectContainer<CDomain> TexGen::CTextile::m_pDomain
protectedinherited

◆ m_PoissonsRatioX

double TexGen::CProperties::m_PoissonsRatioX
protectedinherited

◆ m_PoissonsRatioY

double TexGen::CProperties::m_PoissonsRatioY
protectedinherited

◆ m_PoissonsRatioZ

double TexGen::CProperties::m_PoissonsRatioZ
protectedinherited

◆ m_pSectionMesh

CObjectContainer<CSectionMesh> TexGen::CTextileWeave::m_pSectionMesh
protected

◆ m_ShearModulusXY

CProperty TexGen::CProperties::m_ShearModulusXY
inherited

◆ m_ShearModulusXZ

CProperty TexGen::CProperties::m_ShearModulusXZ
inherited

◆ m_ShearModulusYZ

CProperty TexGen::CProperties::m_ShearModulusYZ
inherited

◆ m_XYarnData

vector<YARNDATA> TexGen::CTextileWeave::m_XYarnData
mutableprotected

◆ m_XYarns

vector<vector<int> > TexGen::CTextileWeave::m_XYarns
mutableprotected

◆ m_YarnLinearDensity

CProperty TexGen::CProperties::m_YarnLinearDensity
inherited

◆ m_Yarns

vector<CYarn> TexGen::CTextile::m_Yarns
mutableprotectedinherited

Vector of yarns contained within this cell.

Note that this variable has been made mutable to enable building of the textile when necessary. For example, the function GetNumYarns should be declared as const but before the number of yarns can be retreived it must build the textile which cannot be done front a const function unless this variable is declared as mutable.

Definition at line 323 of file Textile.h.

Referenced by TexGen::CTextileAngleInterlock::AddBinderNodes(), TexGen::CTextileOffsetAngleInterlock::AddBinderNodes(), TexGen::CTextileOrthogonal::AddBinderNodes(), TexGen::CTextileLayerToLayer::AddBinderNodes(), TexGen::CTextile::AddCentrePlaneToMesh(), TexGen::CTextile::AddNodesToMesh(), TexGen::CTextile::AddPathToMesh(), TexGen::CTextile::AddSurfaceToMesh(), TexGen::CTextile::AddVolumeToMesh(), TexGen::CTextileOrthogonal::AddWeftNodes(), TexGen::CTextile3DWeave::AddWeftNodes(), TexGen::CTextile::AddYarn(), TexGen::CTextileOrthogonal::AdjustBinderPosition(), TexGen::CTextileOrthogonal::AdjustBinderYarnSection(), TexGen::CTextileOrthogonal::AdjustMidLayerHeights(), TexGen::CTextileOrthogonal::AdjustOuterWeftYarns(), TexGen::CShearedTextileWeave2D::AdjustSections(), TexGen::CShearedTextileWeave2D::AdjustSectionsForRotation(), TexGen::CTextileWeave2D::AdjustSectionsForRotation(), TexGen::CTextileWeave2D::AdjustTangents(), TexGen::CTextileLayerToLayer::BuildLayerToLayerTextile(), TexGen::CShearedTextileWeave2D::BuildTextile(), TexGen::CTextile3DWeave::BuildTextile(), TexGen::CTextileAngleInterlock::BuildTextile(), TexGen::CTextileOffsetAngleInterlock::BuildTextile(), TexGen::CTextileOrthogonal::BuildTextile(), BuildTextile(), TexGen::CTextileOrthogonal::BuildWeavePatternTextile(), TexGen::CShearedTextileWeave2D::CalculateModifiers(), TexGen::CTextileOrthogonal::ChangeBinderSection(), TexGen::CTextileOrthogonal::ChangeWeftSection(), TexGen::CTextileOrthogonal::CheckBinderWidths(), TexGen::CTextile3DWeave::CheckUpVectors(), TexGen::CTextile::ConvertToInterpNodes(), TexGen::CTextileOrthogonal::CorrectCrimpInterference(), CorrectEdgeInterference(), CorrectInterference(), TexGen::CShearedTextileWeave2D::CorrectInterference(), CorrectYarnWidths(), TexGen::CTextile::CTextile(), TexGen::CTextile::DeleteYarn(), TexGen::CTextile::DeleteYarns(), TexGen::CTextile::DetectInterference(), FlattenYarns(), TexGen::CTextile::GetApproximateSize(), TexGen::CTextile3DWeave::GetCrossSection(), TexGen::CTextile::GetDomainVolumeFraction(), TexGen::CTextile::GetFibreVolume(), TexGen::CTextile::GetFibreVolumePerUnitArea(), TexGen::CTextileOrthogonal::GetHybridSectionWidth(), TexGen::CTextile::GetNumYarns(), TexGen::CTextile::GetPointInformation(), TexGen::CTextile::GetQuickDomainVolumeFraction(), TexGen::CTextile3DWeave::GetWeftCrossSection(), TexGen::CTextile3DWeave::GetXYarns(), GetXYarns(), TexGen::CTextile::GetYarn(), TexGen::CTextile::GetYarnLength(), TexGen::CTextile::GetYarnLengthPerUnitArea(), TexGen::CTextile::GetYarns(), TexGen::CTextile::GetYarnVolume(), TexGen::CTextile::GetYarnVolumePerUnitArea(), TexGen::CTextile3DWeave::GetYYarns(), GetYYarns(), TexGen::CTextile3DWeave::InsertBinderNode(), TexGen::CTextile3DWeave::InsertWeftNode(), TexGen::CTextileOrthogonal::OffsetYarn(), TexGen::CTextile::operator=(), TexGen::CTextile::PopulateTiXmlElement(), TexGen::CTextile3DWeave::ReplaceLastNode(), TexGen::CTextileOrthogonal::ReplaceYarnSection(), TexGen::CTextile::Rotate(), TexGen::CTextile::SetAllYarnsAlphaX(), TexGen::CTextile::SetAllYarnsAlphaY(), TexGen::CTextile::SetAllYarnsAlphaZ(), TexGen::CTextile::SetAllYarnsPoissonsRatioX(), TexGen::CTextile::SetAllYarnsPoissonsRatioY(), TexGen::CTextile::SetAllYarnsPoissonsRatioZ(), TexGen::CTextile::SetAllYarnsShearModulusXY(), TexGen::CTextile::SetAllYarnsShearModulusXZ(), TexGen::CTextile::SetAllYarnsShearModulusYZ(), TexGen::CTextile::SetAllYarnsYoungsModulusX(), TexGen::CTextile::SetAllYarnsYoungsModulusY(), TexGen::CTextile::SetAllYarnsYoungsModulusZ(), TexGen::CTextileWeave2D::SetInPlaneTangents(), TexGen::CTextile::SetResolution(), and TexGen::CTextile::Translate().

◆ m_YoungsModulusX

CProperty TexGen::CProperties::m_YoungsModulusX
inherited

◆ m_YoungsModulusY

CProperty TexGen::CProperties::m_YoungsModulusY
inherited

◆ m_YoungsModulusZ

CProperty TexGen::CProperties::m_YoungsModulusZ
inherited

◆ m_YYarnData

vector<YARNDATA> TexGen::CTextileWeave::m_YYarnData
mutableprotected

◆ m_YYarns

vector<vector<int> > TexGen::CTextileWeave::m_YYarns
mutableprotected

The documentation for this class was generated from the following files: