![]() |
![]() |
![]() |
![]() |
DVoffset
Synopsis
deform a mesh by data vector component at each node
module DVoffset {
Mesh+Node_Data+IPort2 ∈
int+IPort2 component;
float+IPort2 scale;
Grid+Xform out_grid {
nnodes => in.nnodes;
nspace => in.nspace;
&xform => in.xform;
int npoints => nnodes;
float points[nnodes][nspace];
coordinates {
values+nres => in.coordinates.values +
scale*in.node_data[component].values;
};
};
Mesh+Node_Data+OPort2 &out => merge(out_grid, in);
};Description
DVoffset "physically" deforms a mesh by the values of a 1, 2 or 3 vector component located at each node. The first element of the vector translates the node's X coordinate, the second (if present) translates the Y coordinate, and the third (again, if present) translates the Z coordinate. The magnitude of each translation is proportional to the values at the nodes multiplied by a scaling factor.
Input
Output
A reference to an object that is the merge of the new Grid, plus a reference to the remaining fields of the input mesh, plus a reference to the original Node_Data. Mesh --> Mesh. Mesh_Struct or Mesh_Unif or Mesh_Rect --> Mesh_Struct.
Example
File
v/dproc.c Utility DVM macros DVMoffset_param
See also
![]() |
![]() |
![]() |
![]() |