78 <<
"Cannot read file " << inFileName
97 if (line.empty() || line[0] ==
'$')
104 if (line.size() > 72 && line[72] ==
'+')
106 line = line.substr(0, 72);
113 if (buf.size() > 72 && buf[72] ==
'+')
115 line += buf.substr(8, 64);
119 line += buf.substr(8, buf.size()-8);
134 pointIndices.
append(index);
141 else if (cmd ==
"CBEAM")
144 label index, group, v0,
v1;
145 lineStream >> index >> group >> v0 >>
v1;
147 edgeIndices.
append(index);
157 Pout<<
"Read from " << inFileName
158 <<
" edges:" << edges.
size() <<
" points:" << points.
size()
166 indexToPoint.insert(pointIndices[i], i);
173 e[0] = indexToPoint[e[0]];
174 e[1] = indexToPoint[e[1]];
192 if (outFileName.
ext() ==
"eMesh")
209 Pout<<
"Writing feature edge mesh to " << fem.objectPath()
214 else if (outFileName.
ext() ==
"vtk")
218 str <<
"# vtk DataFile Version 2.0" <<
nl
219 <<
"featureEdgeMesh " << inFileName <<
nl
221 <<
"DATASET POLYDATA" <<
nl;
223 str <<
"POINTS " << eMesh.
points().
size() <<
" float" <<
nl;
228 str << pt.
x() <<
' ' << pt.
y() <<
' ' << pt.
z() <<
nl;
231 str <<
"LINES " << eMesh.
edges().
size() <<
' '
237 str <<
"2 " << e[0] <<
' ' << e[1] <<
nl;
243 <<
"Supported output formats: .eMesh, .vtk"
251 int main(
int argc,
char *argv[])
262 Pout<<
"Input features file : " << inFileName << nl
263 <<
"Output features file : " << outFileName << nl
270 if (inFileName.
ext() ==
"nas")
274 readNASEdges(inFileName, points, edges);
278 write(runTime, inFileName, outFileName, eMesh);
280 else if (inFileName.
ext() ==
"eMesh")
295 Pout<<
"Read from " << inFileName
296 <<
" edges:" << fem.edges().size()
297 <<
" points:" << fem.points().size()
300 write(runTime, inFileName, outFileName, fem);
305 <<
"Can only handle NASTRAN data formats (.nas extension)."