NuTo
Numerics Tool
Visualizer.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "nuto/base/Group.h"
7 
8 namespace NuTo
9 {
10 namespace Visualize
11 {
12 
15 {
16 public:
20  Visualizer(const Group<CellInterface>& cells, const HandlerInterface& handler);
21 
23  Visualizer(Visualizer&&) = default;
24 
26  Visualizer& operator=(Visualizer&&) = default;
27 
30  void DofValues(DofType dof);
31 
35  void CellData(std::function<Eigen::VectorXd(const CellIpData&)> f, std::string name);
36 
40  void PointData(std::function<Eigen::VectorXd(Eigen::VectorXd)> f, std::string name);
41 
45  void WriteVtuFile(std::string filename, bool asBinary = true);
46 
47 private:
48  Group<CellInterface> mCells;
49  std::vector<std::vector<int>> mPointIds;
50  std::unique_ptr<HandlerInterface> mHandler;
51  UnstructuredGrid mGrid;
52 
53  void WriteGeometry();
54 };
55 } // namespace Visualize
56 } // namespace NuTo
void PointData(std::function< Eigen::VectorXd(Eigen::VectorXd)> f, std::string name)
Visualize a function y = f(x) over a collection of cells.
Definition: Visualizer.cpp:34
Interface for a handler class that visualizes a single cell.
Definition: HandlerInterface.h:19
Similar to NuTo::CellData.
Definition: CellIpData.h:14
visualization of unstructured grids
Definition: UnstructuredGrid.h:18
Definition: DofType.h:8
Visualizer(const Group< CellInterface > &cells, const HandlerInterface &handler)
Construct a visualizer with a group of cells to be visualized.
Definition: Visualizer.cpp:6
void WriteVtuFile(std::string filename, bool asBinary=true)
Write out a VTK unstructured grid file.
Definition: Visualizer.cpp:44
Class to write visualization files of DOF values and cell data.
Definition: Visualizer.h:14
Visualizer & operator=(Visualizer &&)=default
assigment operator that allows overriding an existing visualizer to e.g. change the cells ...
Definition: Exception.h:6
void DofValues(DofType dof)
Define DOF values that should be visualized.
Definition: Visualizer.cpp:13
void CellData(std::function< Eigen::VectorXd(const CellIpData &)> f, std::string name)
Define cell data that should be visualized.
Definition: Visualizer.cpp:23
def Visualize(structure, file)
Definition: Truss1D2N.py:63