DOLFIN
DOLFIN C++ interface
MeshTransformation.h
1 // Copyright (C) 2012-2016 Anders Logg
2 //
3 // This file is part of DOLFIN.
4 //
5 // DOLFIN is free software: you can redistribute it and/or modify
6 // it under the terms of the GNU Lesser General Public License as published by
7 // the Free Software Foundation, either version 3 of the License, or
8 // (at your option) any later version.
9 //
10 // DOLFIN is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU Lesser General Public License for more details.
14 //
15 // You should have received a copy of the GNU Lesser General Public License
16 // along with DOLFIN. If not, see <http://www.gnu.org/licenses/>.
17 //
18 // First added: 2012-01-16
19 // Last changed: 2016-05-03
20 
21 #ifndef __MESH_TRANSFORMATION_H
22 #define __MESH_TRANSFORMATION_H
23 
24 namespace dolfin
25 {
26 
27  class Mesh;
28  class Point;
29 
32 
34 {
35 public:
36 
44  static void scale(Mesh& mesh, double factor);
45 
52  static void translate(Mesh& mesh, const Point& point);
53 
63  static void rescale(Mesh& mesh, const double scale, const Point& center);
64 
74  static void rotate(Mesh& mesh, double angle, std::size_t axis);
75 
86  static void rotate(Mesh& mesh, double angle, std::size_t axis,
87  const Point& p);
88 
89 };
90 
91 }
92 
93 #endif
static void scale(Mesh &mesh, double factor)
Definition: MeshTransformation.cpp:28
static void translate(Mesh &mesh, const Point &point)
Definition: MeshTransformation.cpp:44
static void rescale(Mesh &mesh, const double scale, const Point &center)
Definition: MeshTransformation.cpp:64
Definition: adapt.h:29
Definition: Point.h:40
static void rotate(Mesh &mesh, double angle, std::size_t axis)
Definition: MeshTransformation.cpp:89
Definition: Mesh.h:82
Definition: MeshTransformation.h:33