OpenFOAM: API Guide
v2012
The open source CFD toolbox
transformBox.H
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration |
5
\\ / A nd | www.openfoam.com
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
Copyright (C) 2020 PCOpt/NTUA
9
Copyright (C) 2020 FOSS GP
10
-------------------------------------------------------------------------------
11
License
12
This file is part of OpenFOAM.
13
14
OpenFOAM is free software: you can redistribute it and/or modify it
15
under the terms of the GNU General Public License as published by
16
the Free Software Foundation, either version 3 of the License, or
17
(at your option) any later version.
18
19
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22
for more details.
23
24
You should have received a copy of the GNU General Public License
25
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26
27
28
Class
29
Foam::transformBox
30
31
Description
32
Defines control points based on given lower and upper boundaries for the
33
box and additional translation, rotation and scaling vectors.
34
The latter can be copied over from the Paraview clip or transform filters,
35
to facilitate the definition of a more general box.
36
37
SourceFiles
38
transformBox.C
39
40
\*---------------------------------------------------------------------------*/
41
42
#ifndef transformBox_H
43
#define transformBox_H
44
45
#include "
controlPointsDefinition.H
"
46
47
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
48
49
namespace
Foam
50
{
51
52
/*---------------------------------------------------------------------------*\
53
Class transformBox Declaration
54
\*---------------------------------------------------------------------------*/
55
56
class
transformBox
57
:
58
public
controlPointsDefinition
59
{
60
61
protected
:
62
63
// Protected Member Functions
64
65
//- Compute control points
66
virtual
void
computeControlPoints
();
67
68
69
private
:
70
71
// Private Member Functions
72
73
//- No copy construct
74
transformBox
(
const
transformBox
&) =
delete
;
75
76
//- No copy assignment
77
void
operator=(
const
transformBox
&) =
delete
;
78
79
80
public
:
81
82
//- Runtime type information
83
TypeName
(
"transformBox"
);
84
85
86
// Constructors
87
88
//- Construct from components
89
transformBox
(
NURBS3DVolume
& box);
90
91
92
//- Destructor
93
virtual
~transformBox
() =
default
;
94
};
95
96
97
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
98
99
}
// End namespace Foam
100
101
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
102
103
#endif
104
105
// ************************************************************************* //
Foam::NURBS3DVolume
NURBS3DVolume morpher. Includes support functions for gradient computations Base class providing supp...
Definition:
NURBS3DVolume.H:72
Foam::transformBox::computeControlPoints
virtual void computeControlPoints()
Compute control points.
Definition:
transformBox.C:50
Foam::transformBox::~transformBox
virtual ~transformBox()=default
Destructor.
controlPointsDefinition.H
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.C:33
Foam::controlPointsDefinition
Abstract base for selecting how to construct the control points of a volumetric B-Splines morpher.
Definition:
controlPointsDefinition.H:52
Foam::transformBox::TypeName
TypeName("transformBox")
Runtime type information.
Foam::transformBox
Defines control points based on given lower and upper boundaries for the box and additional translati...
Definition:
transformBox.H:55
src
optimisation
adjointOptimisation
adjoint
parameterization
NURBS
NURBS3DVolume
controlPointsDefinition
transformBox
transformBox.H
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.