|
|
|
@ -25,9 +25,9 @@
|
|
|
|
|
* Also add information on how to contact you by electronic and paper mail.
|
|
|
|
|
******************************************************/
|
|
|
|
|
|
|
|
|
|
#include "tri_mesh.h"
|
|
|
|
|
#include "tri2d_mesh.h"
|
|
|
|
|
|
|
|
|
|
void gctl::triangle_mesh::init(std::string in_name, std::string in_info, const array<vertex2dc> &in_nodes,
|
|
|
|
|
void gctl::triangle2d_mesh::init(std::string in_name, std::string in_info, const array<vertex2dc> &in_nodes,
|
|
|
|
|
const array<triangle2d> &in_triangles)
|
|
|
|
|
{
|
|
|
|
|
check_initiated(true); // 检查是否已经初始化
|
|
|
|
@ -56,14 +56,14 @@ void gctl::triangle_mesh::init(std::string in_name, std::string in_info, const a
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void gctl::triangle_mesh::show_mesh_dimension(std::ostream &os) const
|
|
|
|
|
void gctl::triangle2d_mesh::show_mesh_dimension(std::ostream &os) const
|
|
|
|
|
{
|
|
|
|
|
os << "node num: " << node_num_ << std::endl;
|
|
|
|
|
os << "elem num: " << ele_num_ << std::endl;
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void gctl::triangle_mesh::load_binary(std::string filename)
|
|
|
|
|
void gctl::triangle2d_mesh::load_binary(std::string filename)
|
|
|
|
|
{
|
|
|
|
|
check_initiated(true); // 检查是否已经初始化
|
|
|
|
|
|
|
|
|
@ -105,7 +105,7 @@ void gctl::triangle_mesh::load_binary(std::string filename)
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void gctl::triangle_mesh::save_binary(std::string filename)
|
|
|
|
|
void gctl::triangle2d_mesh::save_binary(std::string filename)
|
|
|
|
|
{
|
|
|
|
|
check_initiated(); // 检查是否已经初始化
|
|
|
|
|
|
|
|
|
@ -142,29 +142,29 @@ void gctl::triangle_mesh::save_binary(std::string filename)
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gctl::triangle_mesh::triangle_mesh() : base_mesh::base_mesh(){}
|
|
|
|
|
gctl::triangle2d_mesh::triangle2d_mesh() : base_mesh::base_mesh(){}
|
|
|
|
|
|
|
|
|
|
gctl::triangle_mesh::triangle_mesh(std::string in_name, std::string in_info, const array<vertex2dc> &in_nodes,
|
|
|
|
|
gctl::triangle2d_mesh::triangle2d_mesh(std::string in_name, std::string in_info, const array<vertex2dc> &in_nodes,
|
|
|
|
|
const array<triangle2d> &in_triangles)
|
|
|
|
|
{
|
|
|
|
|
init(in_name, in_info, in_nodes, in_triangles);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gctl::triangle_mesh::~triangle_mesh(){}
|
|
|
|
|
gctl::triangle2d_mesh::~triangle2d_mesh(){}
|
|
|
|
|
|
|
|
|
|
const gctl::array<gctl::vertex2dc> &gctl::triangle_mesh::get_nodes() const
|
|
|
|
|
const gctl::array<gctl::vertex2dc> &gctl::triangle2d_mesh::get_nodes() const
|
|
|
|
|
{
|
|
|
|
|
check_initiated(); // 检查是否已经初始化
|
|
|
|
|
return nodes;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const gctl::array<gctl::triangle2d> &gctl::triangle_mesh::get_elements() const
|
|
|
|
|
const gctl::array<gctl::triangle2d> &gctl::triangle2d_mesh::get_elements() const
|
|
|
|
|
{
|
|
|
|
|
check_initiated(); // 检查是否已经初始化
|
|
|
|
|
return elements;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void gctl::triangle_mesh::load_triangle(std::string filename, index_packed_e packed)
|
|
|
|
|
void gctl::triangle2d_mesh::load_triangle(std::string filename, index_packed_e packed)
|
|
|
|
|
{
|
|
|
|
|
gctl::read_Triangle_node(filename, nodes, packed);
|
|
|
|
|
gctl::read_Triangle_element(filename, elements, nodes, packed);
|
|
|
|
@ -177,7 +177,7 @@ void gctl::triangle_mesh::load_triangle(std::string filename, index_packed_e pac
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void gctl::triangle_mesh::load_gmsh(std::string filename, index_packed_e packed)
|
|
|
|
|
void gctl::triangle2d_mesh::load_gmsh(std::string filename, index_packed_e packed)
|
|
|
|
|
{
|
|
|
|
|
std::ifstream infile;
|
|
|
|
|
gctl::open_infile(infile, filename, ".msh");
|
|
|
|
@ -193,7 +193,7 @@ void gctl::triangle_mesh::load_gmsh(std::string filename, index_packed_e packed)
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void gctl::triangle_mesh::save_gmsh(std::string filename, index_packed_e packed)
|
|
|
|
|
void gctl::triangle2d_mesh::save_gmsh(std::string filename, index_packed_e packed)
|
|
|
|
|
{
|
|
|
|
|
std::ofstream outfile;
|
|
|
|
|
gctl::open_outfile(outfile, filename, ".msh");
|
|
|
|
@ -202,13 +202,13 @@ void gctl::triangle_mesh::save_gmsh(std::string filename, index_packed_e packed)
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void gctl::triangle_mesh::save_gmsh(std::string filename, output_type_e out_mode, index_packed_e packed)
|
|
|
|
|
void gctl::triangle2d_mesh::save_gmsh(std::string filename, output_type_e out_mode, index_packed_e packed)
|
|
|
|
|
{
|
|
|
|
|
base_mesh::save_gmsh_withdata(filename, out_mode, packed);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void gctl::triangle_mesh::save_gmsh(std::string filename, std::string datname, output_type_e out_mode, index_packed_e packed)
|
|
|
|
|
void gctl::triangle2d_mesh::save_gmsh(std::string filename, std::string datname, output_type_e out_mode, index_packed_e packed)
|
|
|
|
|
{
|
|
|
|
|
base_mesh::save_gmsh_withdata(filename, datname, out_mode, packed);
|
|
|
|
|
return;
|