18 virtual Array<int> get_connectivity()
const = 0;
19 virtual Array<double> get_points()
const = 0;
20 virtual int num_elems()
const = 0;
21 virtual int elem_type()
const = 0;
22 virtual int np_elem()
const = 0;
23 virtual int num_points()
const = 0;
24 virtual void read_file(
const std::string& file_name) = 0;
26 virtual void set_element_data(
const std::string& data_name,
const Array<double>& data) = 0;
27 virtual void set_element_data(
const std::string& data_name,
const Array<int>& data) = 0;
29 virtual void set_point_data(
const std::string& data_name,
const Array<double>& data) = 0;
30 virtual void set_point_data(
const std::string& data_name,
const Array<int>& data) = 0;
31 virtual void set_point_data(
const std::string& data_name,
const Vector<int>& data) = 0;
33 virtual void set_points(
const Array<double>& points) = 0;
34 virtual void set_connectivity(
const int nsd,
const Array<int>& conn,
const int pid = 0) = 0;
36 virtual bool has_cell_data(
const std::string& data_name) = 0;
37 virtual bool has_point_data(
const std::string& data_name) = 0;
39 virtual void copy_points(Array<double>& points) = 0;
41 virtual void copy_point_data(
const std::string& data_name, Array<double>& mesh_data) = 0;
42 virtual void copy_point_data(
const std::string& data_name,
Vector<double>& mesh_data) = 0;
43 virtual void copy_point_data(
const std::string& data_name,
Vector<int>& mesh_data) = 0;
45 virtual void copy_cell_data(
const std::string& data_name, Array<double>& mesh_data) = 0;
46 virtual void copy_cell_data(
const std::string& data_name,
Vector<double>& mesh_data) = 0;
47 virtual void copy_cell_data(
const std::string& data_name,
Vector<int>& mesh_data) = 0;
49 virtual Array<double> get_point_data(
const std::string& data_name) = 0;
50 virtual std::vector<std::string> get_point_data_names() = 0;
52 virtual void write() = 0;
54 static VtkData* create_reader(
const std::string& file_name);
55 static VtkData* create_writer(
const std::string& file_name);
57 std::string file_name;
63 VtkVtpData(
const std::string& file_name,
bool reader=
true);
71 virtual Array<int> get_connectivity()
const override;
72 virtual Array<double>
get_points()
const override;
73 virtual int elem_type()
const override;
74 virtual int num_elems()
const override;
75 virtual int np_elem()
const override;
76 virtual int num_points()
const override;
77 virtual void read_file(
const std::string& file_name)
override;
79 virtual void copy_points(Array<double>& points)
override;
81 virtual void copy_point_data(
const std::string& data_name, Array<double>& mesh_data)
override;
85 virtual void copy_cell_data(
const std::string& data_name, Array<double>& mesh_data)
override;
88 std::pair<int,int> get_cell_data_dimensions(
const std::string& data_name)
const;
90 virtual Array<double>
get_point_data(
const std::string& data_name)
override;
93 virtual bool has_cell_data(
const std::string& data_name)
override;
94 virtual bool has_point_data(
const std::string& data_name)
override;
96 virtual void set_connectivity(
const int nsd,
const Array<int>& conn,
const int pid = 0)
override;
98 virtual void set_element_data(
const std::string& data_name,
const Array<double>& data)
override;
99 virtual void set_element_data(
const std::string& data_name,
const Array<int>& data)
override;
101 virtual void set_point_data(
const std::string& data_name,
const Array<double>& data)
override;
102 virtual void set_point_data(
const std::string& data_name,
const Array<int>& data)
override;
103 virtual void set_point_data(
const std::string& data_name,
const Vector<int>& data)
override;
105 virtual void set_points(
const Array<double>& points)
override;
106 virtual void write()
override;
116 VtkVtuData(
const std::string& file_name,
bool reader=
true);
119 virtual Array<int> get_connectivity()
const override;
120 virtual int elem_type()
const override;
121 virtual int num_elems()
const override;
122 virtual int np_elem()
const override;
123 virtual int num_points()
const override;
124 virtual void read_file(
const std::string& file_name)
override;
126 virtual void copy_points(Array<double>& points)
override;
128 virtual void copy_point_data(
const std::string& data_name, Array<double>& mesh_data)
override;
132 virtual void copy_cell_data(
const std::string& data_name, Array<double>& mesh_data)
override;
133 virtual void copy_cell_data(
const std::string& data_name,
Vector<double>& mesh_data)
override;
134 virtual void copy_cell_data(
const std::string& data_name,
Vector<int>& mesh_data)
override;
136 virtual Array<double>
get_point_data(
const std::string& data_name)
override;
139 virtual Array<double> get_points()
const override;
141 virtual bool has_cell_data(
const std::string& data_name)
override;
142 virtual bool has_point_data(
const std::string& data_name)
override;
144 virtual void set_connectivity(
const int nsd,
const Array<int>& conn,
const int pid = 0)
override;
146 virtual void set_element_data(
const std::string& data_name,
const Array<double>& data)
override;
147 virtual void set_element_data(
const std::string& data_name,
const Array<int>& data)
override;
149 virtual void set_point_data(
const std::string& data_name,
const Array<double>& data)
override;
150 virtual void set_point_data(
const std::string& data_name,
const Array<int>& data)
override;
151 virtual void set_point_data(
const std::string& data_name,
const Vector<int>& data)
override;
153 virtual void set_points(
const Array<double>& points)
override;
154 virtual void write()
override;
The Vector template class is used for storing int and double data.
Definition Vector.h:24
Definition VtkData.cpp:33
virtual void copy_points(Array< double > &points) override
Copy points into the given array.
Definition VtkData.cpp:776
virtual std::vector< std::string > get_point_data_names() override
Get a list of point data names.
Definition VtkData.cpp:822
virtual void copy_point_data(const std::string &data_name, Array< double > &mesh_data) override
Copy an array of point data from an polydata mesh into the given Array.
Definition VtkData.cpp:711
virtual void copy_cell_data(const std::string &data_name, Array< double > &mesh_data) override
Copy an array of cell data from a polydata mesh into the given Array.
Definition VtkData.cpp:634
virtual Array< double > get_point_data(const std::string &data_name) override
Get an array of point data from an unstructured grid.
Definition VtkData.cpp:795
virtual Array< double > get_points() const override
Get an array of point data from an unstructured grid.
Definition VtkData.cpp:837
Definition VtkData.cpp:265
virtual void copy_points(Array< double > &points) override
Copy points into the given array.
Definition VtkData.cpp:1137
virtual Array< double > get_point_data(const std::string &data_name) override
Get an array of point data from an unstructured grid.
Definition VtkData.cpp:1182
virtual std::vector< std::string > get_point_data_names() override
Get a list of point data names.
Definition VtkData.cpp:991
virtual void copy_point_data(const std::string &data_name, Array< double > &mesh_data) override
Copy an array of point data from an unstructured grid into the given Array.
Definition VtkData.cpp:1071