29CRectangularVoxelMesh::CRectangularVoxelMesh(
string Type)
57 vector<XYZ> CentrePoints;
58 vector<POINT_INFO> RowInfo;
74 Output << iNodeIndex <<
", ";
79 Output << Point <<
"\n";
86 CentrePoints.push_back(Point);
const CMesh & GetMesh() const
Get the mesh representing the domain as a surface mesh.
const int AddNode(XYZ Node)
Append a node to the list of nodes, the integer returns the index of the node
pair< XYZ, XYZ > GetAABB(double dGrowDistance=0) const
Get an axis aligned bounding box for the mesh.
double m_VoxSize[3]
Voxel size for each axis.
virtual ~CRectangularVoxelMesh(void)
bool CalculateVoxelSizes(CTextile &Textile)
Calculate voxel size based on number of voxels on each axis and domain size.
void OutputNodes(ostream &Output, CTextile &Textile, int Filetype=INP_EXPORT)
Outputs nodes to .inp file and gets element information.
Represents a textile cell containing yarns.
const CDomain * GetDomain() const
void GetPointInformation(const vector< XYZ > &Points, vector< POINT_INFO > &PointsInfo, double dTolerance=1e-9)
Get useful information of a list of points.
Class used to generate voxel mesh for output to ABAQUS.
pair< XYZ, XYZ > m_DomainAABB
Domain limits.
int m_XVoxels
Number of voxels along x,y and z axes.
vector< POINT_INFO > m_ElementsInfo
Element information as calculated by GetPointInformation.
CMesh m_Mesh
Find intersections of yarn surfaces with grid of lines from node points in each axis.
Namespace containing a series of customised math operations not found in the standard c++ library.
Struct for representing points in 3D space.