41 |
#include <MeshExtractor.hpp> |
#include <MeshExtractor.hpp> |
42 |
|
|
43 |
#include <SurfaceMeshGenerator.hpp> |
#include <SurfaceMeshGenerator.hpp> |
44 |
|
#include <RealExpression.hpp> |
45 |
|
|
46 |
ReferenceCounting<Mesh> MeshExpression::mesh() const |
ReferenceCounting<Mesh> MeshExpression::mesh() const |
47 |
{ |
{ |
306 |
MeshExpressionExtract:: |
MeshExpressionExtract:: |
307 |
put(std::ostream& os) const |
put(std::ostream& os) const |
308 |
{ |
{ |
309 |
os << "extract(" |
os << "extract(" << (*__originalMesh) << ',' |
310 |
<< (*__originalMesh) << ')'; |
<< (*__referenceToExtract) << ')'; |
311 |
return os; |
return os; |
312 |
} |
} |
313 |
|
|
316 |
execute() |
execute() |
317 |
{ |
{ |
318 |
(*__originalMesh).execute(); |
(*__originalMesh).execute(); |
319 |
|
(*__referenceToExtract).execute(); |
320 |
|
|
321 |
switch ((*(*__originalMesh).mesh()).type()) { |
switch ((*(*__originalMesh).mesh()).type()) { |
322 |
case Mesh::cartesianHexahedraMesh: { |
case Mesh::cartesianHexahedraMesh: { |
331 |
case Mesh::surfaceMeshTriangles: { |
case Mesh::surfaceMeshTriangles: { |
332 |
MeshExtractor<SurfaceMeshOfTriangles> |
MeshExtractor<SurfaceMeshOfTriangles> |
333 |
extractor(dynamic_cast<const SurfaceMeshOfTriangles&>(*(*__originalMesh).mesh())); |
extractor(dynamic_cast<const SurfaceMeshOfTriangles&>(*(*__originalMesh).mesh())); |
334 |
__mesh = extractor(1); |
__mesh = extractor(static_cast<int>((*__referenceToExtract).realValue())); |
335 |
break; |
break; |
336 |
} |
} |
337 |
case Mesh::surfaceMeshQuadrangles: { |
case Mesh::surfaceMeshQuadrangles: { |
345 |
} |
} |
346 |
|
|
347 |
MeshExpressionExtract:: |
MeshExpressionExtract:: |
348 |
MeshExpressionExtract(ReferenceCounting<MeshExpression> me) |
MeshExpressionExtract(ReferenceCounting<MeshExpression> me, |
349 |
|
ReferenceCounting<RealExpression> re) |
350 |
: MeshExpression(0, MeshExpression::extract), |
: MeshExpression(0, MeshExpression::extract), |
351 |
__originalMesh(me) |
__originalMesh(me), |
352 |
|
__referenceToExtract(re) |
353 |
{ |
{ |
354 |
; |
; |
355 |
} |
} |
357 |
MeshExpressionExtract:: |
MeshExpressionExtract:: |
358 |
MeshExpressionExtract(const MeshExpressionExtract& e) |
MeshExpressionExtract(const MeshExpressionExtract& e) |
359 |
: MeshExpression(e), |
: MeshExpression(e), |
360 |
__originalMesh(e.__originalMesh) |
__originalMesh(e.__originalMesh), |
361 |
|
__referenceToExtract(e.__referenceToExtract) |
362 |
{ |
{ |
363 |
; |
; |
364 |
} |
} |