Plugins
coordinate_transform_tools.h File Reference

Go to the source code of this file.

Namespaces

 ug
 
 ug::promesh
 

Macros

#define TOOLTIP_APPLY_HEIGHT_FIELD   "Calculates z-values of all nodes in terms of their x and y values."
 
#define TOOLTIP_CONE_TRANSFORM   "Transforms the vertices with the given cone transformation"
 
#define TOOLTIP_COORDINATES   "Coordinates of the center of the current selection"
 
#define TOOLTIP_FLATTEN_BENT_QUADRILATERALS   "Flattens bent quadrilaterals using an iterative flattening scheme"
 
#define TOOLTIP_GET_SELECTION_CENTER   ""
 
#define TOOLTIP_LAPLACIAN_SMOOTH   "Smoothes vertices in a grid."
 
#define TOOLTIP_MIRROR   "Mirrors the geometry at the given point along the given axis"
 
#define TOOLTIP_MOVE   "Moves selected vertices."
 
#define TOOLTIP_MOVE_ALONG_NORMAL   "Moves selected vertices along their normal by the specified offset."
 
#define TOOLTIP_MOVE_MESH_TO   "Moves the active mesh and its pivot, so that the pivot will be located on the specified position."
 
#define TOOLTIP_MOVE_SELECTION_TO   "Moves the selected elements so that the new selection center will lie at the specified position."
 
#define TOOLTIP_MOVE_VERTICES_ALONG_EDGES   "Moves selected vertices along selected edges by an offset relative to those selected edges. If a selected vertex is connected to multiple selected edges, the new position will be averaged between the individual offsets."
 
#define TOOLTIP_MOVE_VERTICES_TO_EDGE_LENGTH   "Moves selected vertices along selected edges so that those edges obtain the specified length. If a selected vertex is connected to multiple selected edges, the new position will be averaged between the individual new positions."
 
#define TOOLTIP_MOVE_VERTICES_TO_PROJECTED_EDGE_LENGTH   "Moves selected vertices along selected edges so that the projection of those edges into the plain with the specified normal obtain the specified length. If a selected vertex is connected to multiple selected edges, the new position will be averaged between the individual new positions."
 
#define TOOLTIP_NORMAL_MOVE   "Moves selected vertices along their normal."
 
#define TOOLTIP_PROJECT_TO_LIMIT_PLOOP   "Projects all vertices in the grid to their limit positions as defined by the piecewise loop scheme."
 
#define TOOLTIP_PROJECT_TO_LIMIT_SMOOTH_BOUNDARY   "Projects all boundary-vertices in the grid to their limit positions as defined by the b-spline subdivision scheme."
 
#define TOOLTIP_ROTATE   "Rotates the geometry by the given degrees around its center."
 
#define TOOLTIP_ROTATE_AROUND_CENTER   "Rotates the selected elements around the center of the current selection."
 
#define TOOLTIP_ROTATE_AROUND_PIVOT   "Rotates the selected elements around the pivot of the mesh."
 
#define TOOLTIP_RPOJECT_TO_PLANE   "Projects all selected elements to the specified plane"
 
#define TOOLTIP_SCALE   "Scales the coordinates of the selected vertices around their center."
 
#define TOOLTIP_SCALE_AROUND_CENTER   "Scales the selected elements around the center of the current selection."
 
#define TOOLTIP_SCALE_AROUND_PIVOT   "Scales the selected elements around the pivot of the mesh."
 
#define TOOLTIP_SCALE_AROUND_POINT   "Scales the selected geometry around the given point"
 
#define TOOLTIP_SET_PIVOT   "Sets the pivot point of the selected object."
 
#define TOOLTIP_SET_PIVOT_TO_MESH_CENTER   "Sets the pivot to the center of the active mesh."
 
#define TOOLTIP_SET_PIVOT_TO_SELECTION_CENTER   "Sets the pivot to the center of the current selection."
 
#define TOOLTIP_SLOPE_SMOOTH   "Smoothes the grid so that the geometry is linearized along the path of steepest descent."
 
#define TOOLTIP_SNAP_VERTICES_TO_VERTICES   "Snaps the selected vertices of the specified mesh to the selected vertices of the target mesh"
 
#define TOOLTIP_TANGENTIAL_SMOOTH   "Smoothes vertices on a manifold."
 
#define TOOLTIP_TRANSFORM   "Transforms the vertices with the given matrix"
 
#define TOOLTIP_WEIGHTED_EDGE_SMOOTH   "Smoothes vertices along edges in a grid with special weights for non-smoothed vertices."
 
#define TOOLTIP_WEIGHTED_FACE_SMOOTH   "Smoothes vertices across faces in a grid with special weights for non-smoothed vertices."
 
#define TOOLTIP_WEIGHTED_NORMAL_SMOOTH   "The higher the dot-product between an outgoing edge and the vertex normal, the higher the influence of that edge during smoothing of that vertex."
 

Functions

void ug::promesh::ConeTransform (Mesh *obj, const vector3 &base, const vector3 &axis, number scaleAtTip)
 
void ug::promesh::FlattenBentQuadrilaterals (Mesh *obj, number stepSize, int numIterations)
 
bool ug::promesh::GetSelectionCenter (Mesh *obj, vector3 &centerOut)
 
void ug::promesh::LaplacianSmooth (Mesh *obj, number alpha, int numIterations)
 
void ug::promesh::Mirror (Mesh *obj, const vector3 &axisOrig, const vector3 &origin)
 
void ug::promesh::Move (Mesh *obj, const vector3 &offset)
 
void ug::promesh::MoveAlongNormal (Mesh *obj, number offset)
 
void ug::promesh::MoveMeshTo (Mesh *obj, const vector3 &newPos)
 
bool ug::promesh::MoveSelectionTo (Mesh *obj, const vector3 &center)
 
void ug::promesh::MoveVerticesAlongEdges (Mesh *obj, number relVal)
 
void ug::promesh::MoveVerticesToEdgeLength (Mesh *obj, number edgeLen)
 
void ug::promesh::MoveVerticesToProjectedEdgeLength (Mesh *obj, number projEdgeLen, const vector3 &projNormal)
 
void ug::promesh::ProjectToLimitPLoop (Mesh *obj)
 
void ug::promesh::ProjectToLimitSmoothBoundary (Mesh *obj)
 
void ug::promesh::ProjectToPlane (Mesh *obj, const vector3 &planeCenter, const vector3 &planeNormal)
 
void ug::promesh::RotateAroundCenter (Mesh *obj, const vector3 &rotRad)
 
void ug::promesh::RotateAroundPivot (Mesh *obj, const vector3 &rotRad)
 
void ug::promesh::ScaleAroundCenter (Mesh *obj, const vector3 &scale)
 
void ug::promesh::ScaleAroundPivot (Mesh *obj, const vector3 &scale)
 
void ug::promesh::ScaleAroundPoint (Mesh *obj, const vector3 &scale, const vector3 &point)
 
void ug::promesh::SetPivot (Mesh *obj, const vector3 &pos)
 
void ug::promesh::SetPivotToMeshCenter (Mesh *obj)
 
void ug::promesh::SetPivotToSelectionCenter (Mesh *obj)
 
void ug::promesh::SlopeSmooth (Mesh *obj, number alpha, int numIterations)
 
void ug::promesh::SnapVerticesToVertices (Mesh *obj, Mesh *targetMesh)
 
void ug::promesh::TangentialSmooth (Mesh *obj, number alpha, int numIterations)
 
void ug::promesh::WeightedEdgeSmooth (Mesh *obj, number alpha, int numIterations)
 
void ug::promesh::WeightedFaceSmooth (Mesh *obj, number alpha, int numIterations)
 
void ug::promesh::WeightedNormalSmooth (Mesh *obj, number alpha, number dotThreshold, int numIterations)
 

Macro Definition Documentation

◆ TOOLTIP_APPLY_HEIGHT_FIELD

#define TOOLTIP_APPLY_HEIGHT_FIELD   "Calculates z-values of all nodes in terms of their x and y values."

◆ TOOLTIP_CONE_TRANSFORM

#define TOOLTIP_CONE_TRANSFORM   "Transforms the vertices with the given cone transformation"

◆ TOOLTIP_COORDINATES

#define TOOLTIP_COORDINATES   "Coordinates of the center of the current selection"

◆ TOOLTIP_FLATTEN_BENT_QUADRILATERALS

#define TOOLTIP_FLATTEN_BENT_QUADRILATERALS   "Flattens bent quadrilaterals using an iterative flattening scheme"

◆ TOOLTIP_GET_SELECTION_CENTER

#define TOOLTIP_GET_SELECTION_CENTER   ""

◆ TOOLTIP_LAPLACIAN_SMOOTH

#define TOOLTIP_LAPLACIAN_SMOOTH   "Smoothes vertices in a grid."

◆ TOOLTIP_MIRROR

#define TOOLTIP_MIRROR   "Mirrors the geometry at the given point along the given axis"

◆ TOOLTIP_MOVE

#define TOOLTIP_MOVE   "Moves selected vertices."

◆ TOOLTIP_MOVE_ALONG_NORMAL

#define TOOLTIP_MOVE_ALONG_NORMAL   "Moves selected vertices along their normal by the specified offset."

◆ TOOLTIP_MOVE_MESH_TO

#define TOOLTIP_MOVE_MESH_TO   "Moves the active mesh and its pivot, so that the pivot will be located on the specified position."

◆ TOOLTIP_MOVE_SELECTION_TO

#define TOOLTIP_MOVE_SELECTION_TO   "Moves the selected elements so that the new selection center will lie at the specified position."

◆ TOOLTIP_MOVE_VERTICES_ALONG_EDGES

#define TOOLTIP_MOVE_VERTICES_ALONG_EDGES   "Moves selected vertices along selected edges by an offset relative to those selected edges. If a selected vertex is connected to multiple selected edges, the new position will be averaged between the individual offsets."

◆ TOOLTIP_MOVE_VERTICES_TO_EDGE_LENGTH

#define TOOLTIP_MOVE_VERTICES_TO_EDGE_LENGTH   "Moves selected vertices along selected edges so that those edges obtain the specified length. If a selected vertex is connected to multiple selected edges, the new position will be averaged between the individual new positions."

◆ TOOLTIP_MOVE_VERTICES_TO_PROJECTED_EDGE_LENGTH

#define TOOLTIP_MOVE_VERTICES_TO_PROJECTED_EDGE_LENGTH   "Moves selected vertices along selected edges so that the projection of those edges into the plain with the specified normal obtain the specified length. If a selected vertex is connected to multiple selected edges, the new position will be averaged between the individual new positions."

◆ TOOLTIP_NORMAL_MOVE

#define TOOLTIP_NORMAL_MOVE   "Moves selected vertices along their normal."

◆ TOOLTIP_PROJECT_TO_LIMIT_PLOOP

#define TOOLTIP_PROJECT_TO_LIMIT_PLOOP   "Projects all vertices in the grid to their limit positions as defined by the piecewise loop scheme."

◆ TOOLTIP_PROJECT_TO_LIMIT_SMOOTH_BOUNDARY

#define TOOLTIP_PROJECT_TO_LIMIT_SMOOTH_BOUNDARY   "Projects all boundary-vertices in the grid to their limit positions as defined by the b-spline subdivision scheme."

◆ TOOLTIP_ROTATE

#define TOOLTIP_ROTATE   "Rotates the geometry by the given degrees around its center."

◆ TOOLTIP_ROTATE_AROUND_CENTER

#define TOOLTIP_ROTATE_AROUND_CENTER   "Rotates the selected elements around the center of the current selection."

◆ TOOLTIP_ROTATE_AROUND_PIVOT

#define TOOLTIP_ROTATE_AROUND_PIVOT   "Rotates the selected elements around the pivot of the mesh."

◆ TOOLTIP_RPOJECT_TO_PLANE

#define TOOLTIP_RPOJECT_TO_PLANE   "Projects all selected elements to the specified plane"

◆ TOOLTIP_SCALE

#define TOOLTIP_SCALE   "Scales the coordinates of the selected vertices around their center."

◆ TOOLTIP_SCALE_AROUND_CENTER

#define TOOLTIP_SCALE_AROUND_CENTER   "Scales the selected elements around the center of the current selection."

◆ TOOLTIP_SCALE_AROUND_PIVOT

#define TOOLTIP_SCALE_AROUND_PIVOT   "Scales the selected elements around the pivot of the mesh."

◆ TOOLTIP_SCALE_AROUND_POINT

#define TOOLTIP_SCALE_AROUND_POINT   "Scales the selected geometry around the given point"

◆ TOOLTIP_SET_PIVOT

#define TOOLTIP_SET_PIVOT   "Sets the pivot point of the selected object."

◆ TOOLTIP_SET_PIVOT_TO_MESH_CENTER

#define TOOLTIP_SET_PIVOT_TO_MESH_CENTER   "Sets the pivot to the center of the active mesh."

◆ TOOLTIP_SET_PIVOT_TO_SELECTION_CENTER

#define TOOLTIP_SET_PIVOT_TO_SELECTION_CENTER   "Sets the pivot to the center of the current selection."

◆ TOOLTIP_SLOPE_SMOOTH

#define TOOLTIP_SLOPE_SMOOTH   "Smoothes the grid so that the geometry is linearized along the path of steepest descent."

◆ TOOLTIP_SNAP_VERTICES_TO_VERTICES

#define TOOLTIP_SNAP_VERTICES_TO_VERTICES   "Snaps the selected vertices of the specified mesh to the selected vertices of the target mesh"

◆ TOOLTIP_TANGENTIAL_SMOOTH

#define TOOLTIP_TANGENTIAL_SMOOTH   "Smoothes vertices on a manifold."

◆ TOOLTIP_TRANSFORM

#define TOOLTIP_TRANSFORM   "Transforms the vertices with the given matrix"

◆ TOOLTIP_WEIGHTED_EDGE_SMOOTH

#define TOOLTIP_WEIGHTED_EDGE_SMOOTH   "Smoothes vertices along edges in a grid with special weights for non-smoothed vertices."

◆ TOOLTIP_WEIGHTED_FACE_SMOOTH

#define TOOLTIP_WEIGHTED_FACE_SMOOTH   "Smoothes vertices across faces in a grid with special weights for non-smoothed vertices."

◆ TOOLTIP_WEIGHTED_NORMAL_SMOOTH

#define TOOLTIP_WEIGHTED_NORMAL_SMOOTH   "The higher the dot-product between an outgoing edge and the vertex normal, the higher the influence of that edge during smoothing of that vertex."