ENH: construct axisAngleRotation from x/y/z axis enumeration (#863)

- can be helpful for handling rotations within global planes
This commit is contained in:
Mark Olesen 2019-04-15 09:55:43 +02:00 committed by Andrew Heather
parent b6161f413f
commit 53d01c8a0a
2 changed files with 22 additions and 3 deletions

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2018 OpenCFD Ltd.
\\ / A nd | Copyright (C) 2018-2019 OpenCFD Ltd.
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -106,6 +106,22 @@ Foam::coordinateRotations::axisAngle::axisAngle
}
Foam::coordinateRotations::axisAngle::axisAngle
(
const vector::components axis,
scalar angle,
bool degrees
)
:
coordinateRotation(),
axis_(Zero),
angle_(angle),
degrees_(degrees)
{
axis_[axis] = 1;
}
Foam::coordinateRotations::axisAngle::axisAngle(const dictionary& dict)
:
axisAngle

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2018 OpenCFD Ltd.
\\ / A nd | Copyright (C) 2018-2019 OpenCFD Ltd.
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -50,7 +50,7 @@ Note
The rotation axis will be normalized internally.
SourceFiles
axisAngle.C
axisAngleRotation.C
\*---------------------------------------------------------------------------*/
@ -111,6 +111,9 @@ public:
//- Construct from axis and angle
axisAngle(const vector& axis, scalar angle, bool degrees);
//- Construct from x/y/z axis enumeration and angle
axisAngle(const vector::components axis, scalar angle, bool degrees);
//- Construct from dictionary
explicit axisAngle(const dictionary& dict);