Table of Contents
Geometry/Mesh Operators
Introduction
These kinds of operators are used to move/deform a geometry and its associated mesh from one configuration to another. The generic syntax is as follow:
op = XXXOperator(arg1, arg2, ...) target.move(op)
where target
is a geometrical entity (e.g. sideset(1)
, curveset(2)
)
As can be seen, the operator op
must first be created. It takes several arguments, which can be values of Metafor objects (see below for specific operators). Then, the operator is applied to the target
object (e.g. Side #1 or Curve #2).
Translation Operator
This operator translates a geometry, meshed or not. The displacement is defined by a Vect3
:
op = TranslationOperator(disp)
where
disp | Vect3 | displacement vector |
Rotation Operator
This operator is used to rotate a geometry, meshed or not, along an axis. The rotation is defined by and angle (in radian) and an Axis
:
op = RotationOperator(axis, angle)
where
axis | Axis | rotation axis |
angle | float | angle (in radian) |
Alignment Operator
This operator is used to apply a rigid body motion (translation + rotation), to a geometric entity, meshed or not. This rigid body mode is defined by two Trihedra
:
op = AlignmentOperator(trihedronRef, trihedronMesh)
trihedronRef
is the trihedron to which the target must be moved, when trihedronMesh
is a trihedron modelling a local frame of the side to be moved.
Point-Reflection Operator
This operator is used to apply a point reflection (with or without a translation) to a geometric entity, meshed or not. This point reflection is defined by an Axis
and an amplitude ampl
:
op = RadialOperator(axe, ampl) op.setDisplacement(disp)
where
axe | Axis | reflection axis which indicates the direction of the point reflection |
ampl | float | amplitude |
disp | Vect3 | displacement vector |
Reflection/Symmetry Operator
This operator is used to apply a reflection symmetry to a geometric entity, meshed or not:
op = OrthogonalSymmetryOperator(plane)
where
plane | Plane | reflection plane |
Scaling Operator
This operator is used to apply a scaling to a geometric entity, meshed or not.
op = ScalingOperator(pt0, fact)
where
pt0 | Point | homothetic centre |
fact | float | scaling factor |