# IRiMeshModifiers Interface Reference

Inherits IDispatch.

List of all members.

## Public Member Functions
HRESULT | BuildNormalmap ([in] BSTR bszSelection)
HRESULT | SimplifyMesh ([in] BSTR bszSelection)
HRESULT | ChangeSSLevel ([in] int iDiff)
HRESULT | ShowMeshEditSettings ([in] BSTR WinID)
HRESULT | TipSelection ([in] BSTR bszSelection)
HRESULT | NormalSweepSelection ([in] BSTR bszSelection,[in] VARIANT vSegments,[in] VARIANT vRegions,[in] VARIANT vMode,[in] VARIANT vAvgNrm,[in] VARIANT vStep)
HRESULT | WeldSelection ([in] BSTR bszSelection)
HRESULT | DeleteElements ([in] BSTR bszSelection)
HRESULT | FlipFacesNormals ([in] BSTR bszSelection)
HRESULT | SplitPolygons ([in] BSTR bszSelection)
HRESULT | MergePolygons ([in] BSTR bszSelection)
HRESULT | ExtrudeSelection ([in] BSTR bszSelection)
HRESULT | DuplicateSelection ([in] BSTR bszSelection)
HRESULT | MirrorSelection ([in] BSTR bszSelection)
HRESULT | Subdivide ([in] BSTR bszSelection)
HRESULT | Smoothdivide ([in] BSTR bszSelection)
HRESULT | AddFace ([in] BSTR bszSelection)
HRESULT | WeldPairs ([in] BSTR bszSelection)
HRESULT | CancelSelectionBasedTool ()
HRESULT | ActivateSelectionTool ()
HRESULT | GrowPointEditSelection ([in] BSTR bszSelection)
HRESULT | ShrinkPointEditSelection ([in] BSTR bszSelection)
HRESULT | SmoothPointEditSelection ([in] BSTR bszSelection)
HRESULT | OutlinePointEditSelection ([in] BSTR bszSelection)
HRESULT | SelectConnected ([in] BSTR bszSelection)
HRESULT | InvertConnected ([in] BSTR bszSelection)
HRESULT | PeDeselect ([in] BSTR bszSelection)
HRESULT | InvertSelection ([in] BSTR bszSelection)
HRESULT | ConvertSelection ([in] BSTR bszSelection,[in] BSTR bszSelectionType)
HRESULT | SetLockSelection ([in] BSTR bszNode,[in] BSTR bszSelection)
HRESULT | ResetLockSelection ([in] BSTR bszNode)
HRESULT | ShrinkWrap ([in] BSTR bszSelection)
HRESULT | Scissors ([in] BSTR bszSelection)
HRESULT | DisplacementMapping ([in] BSTR bszSelection)
HRESULT | EndDisplacementMapping ([in] BSTR bszSelection)
HRESULT | AddSdsVertexWeight ([in] BSTR bszSelection,[in] VARIANT vWeight)
HRESULT | AddSdsEdgeWeight ([in] BSTR bszSelection,[in] VARIANT vWeight)
HRESULT | ActivatePointEditWidget ([in] BSTR szGroup,[in] BSTR szWidget,[in] BSTR szAspect)
HRESULT | EnableDisplacementBrush ()
HRESULT | BevelTool ([in] BSTR bszSelection,[in] VARIANT vQuads,[in] VARIANT vUpdate,[in] VARIANT vOffset,[in] VARIANT vHeight)
HRESULT | AddMirrorModeler ([in] BSTR bszSelection)
HRESULT | RemoveMirrorPlane ([in] BSTR bszSelection)
HRESULT | ShowMirrorProperties ([in] BSTR bszSelection)
HRESULT | UpdateMirrorPlane ([in] BSTR bszSelection)
HRESULT | CreateHair ([in] BSTR bszSelection)
HRESULT | EnableHairBrush ([in] BSTR bszTool)
HRESULT | TogglePeTool ([in] BSTR szToolName,[in] BSTR szSelection)
HRESULT | HairPreset ([in] BSTR bszNode,[in] BSTR bszPreset)
HRESULT | FlattenNodes ([in] BSTR bszSelection)
HRESULT | SmoothNormals ([in] BSTR bszSelection)
HRESULT | FacetedNormals ([in] BSTR bszSelection)
HRESULT | AutofacetNormals ([in] BSTR bszSelection,[in] VARIANT vAngle)
HRESULT | HealVertices ([in] BSTR bszSelection,[in] VARIANT vRadius)
HRESULT | UpdateMirrorPosition ([in] BSTR bszSelection)
HRESULT | UpdateMirrorNormal ([in] BSTR bszSelection)
HRESULT | SelectMaterial ([in] BSTR bszSelection)
HRESULT | ApplySelectionTool ([in] BSTR szWidget,[in] BSTR szCommand)
HRESULT | FlipEdge ([in] BSTR bszSelection)
HRESULT | OptimizeTriangulation ([in] BSTR bszSelection)
HRESULT | SeparateSelected ([in] BSTR bszSelection)
HRESULT | SelectPath ([in] BSTR bszSelection)
HRESULT | CollapseLoop ([in] BSTR bszSelection)
HRESULT | HideSelected ([in] BSTR bszSelection)
HRESULT | ShowHiddenPeGeometry ([in] BSTR bszSelection)
HRESULT | OpenMaterialEditor ()
HRESULT | ToggleTool (BSTR szToolName)
HRESULT | StartPaintFaceTool ()
HRESULT | RepaintMaterial (BSTR szSelection, RtUlong dwMaterialIndex)
HRESULT | SetMaterial (BSTR szSelection)
HRESULT | ResetSds (BSTR szSelection, VARIANT vEdgeWeights, VARIANT vVertexWeights, VARIANT vSsLevel)
HRESULT | ActivateBooleansTool (BSTR szOperation, BSTR szSelection)
HRESULT | Quadrify ([in] BSTR bszSelection)
HRESULT | OpenMeshEditorPanel ([in] BSTR szPanel,[in] RtUlong dwGroupId,[in] RtUlong dwAspect,[in] RtUlong dwAllowAspects)
HRESULT | FlattenAxes ([in] BSTR bszSelection)

## Detailed Description

The IRiMeshModifiers interface provides methods to perform various mesh modifications.
Root-level name in the scripting engine's name space: MeshModifiers

## Member Function Documentation

HRESULT IRiMeshModifiers::BuildNormalmap | ( | [in] BSTR | bszSelection | ) |

Build normal map.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.BuildNormalmap('');

HRESULT IRiMeshModifiers::SimplifyMesh | ( | [in] BSTR | bszSelection | ) |

Simplify mesh.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.SimplifyMesh('');

HRESULT IRiMeshModifiers::ChangeSSLevel | ( | [in] int | iDiff | ) |

Change subdivision surface level.

Parameters:

  | iDiff | [in] Specify +1 to "add" or -1 to "remove".

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.ChangeSSLevel(+1);

HRESULT IRiMeshModifiers::ShowMeshEditSettings | ( | [in] BSTR | WinID | ) |

Show mesh editor settings panel.

Parameters:

  | WinID | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.ShowMeshEditSettings('');

HRESULT IRiMeshModifiers::TipSelection | ( | [in] BSTR | bszSelection | ) |

Tip selection. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.TipSelection('');

HRESULT IRiMeshModifiers::NormalSweepSelection | ( | [in] BSTR | bszSelection,
|  | [in] VARIANT | vSegments,
|  | [in] VARIANT | vRegions,
|  | [in] VARIANT | vMode,
|  | [in] VARIANT | vAvgNrm,
|  | [in] VARIANT | vStep |
| ) |  |  |

Normal sweep selection. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.
  | vSegments | [in] Number of segments.
  | vRegions | [in] Sweep neighboring regions together: boolean true/false.
  | vMode | [in] Boolean mode 0=disabled, 1,2=boolean, 3=shell
  | vAvgNrm | [in] Average region normals.
  | vStep | [in] Specifies step for sweeping.

Returns:
  standard HRESULT processing can be applied to returned value

        MeshModifiers.NormalSweepSelection('', 3, false, 3, true, 3.5);

HRESULT IRiMeshModifiers::WeldSelection | ( | [in] BSTR | bszSelection | ) |

Weld selection. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.WeldSelection('');

HRESULT IRiMeshModifiers::DeleteElements | ( | [in] BSTR | bszSelection | ) |

Delete elements. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.DeleteElements('');

HRESULT IRiMeshModifiers::FlipFacesNormals | ( | [in] BSTR | bszSelection | ) |

Flip faces normals. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.FlipFacesNormals('');

HRESULT IRiMeshModifiers::SplitPolygons | ( | [in] BSTR | bszSelection | ) |

Split polygons (triangulate). Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.SplitPolygons('');

HRESULT IRiMeshModifiers::MergePolygons | ( | [in] BSTR | bszSelection | ) |

Merge polygons. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.MergePolygons('');

HRESULT IRiMeshModifiers::ExtrudeSelection | ( | [in] BSTR | bszSelection | ) |

Extrude selection. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.ExtrudeSelection('');

HRESULT IRiMeshModifiers::DuplicateSelection | ( | [in] BSTR | bszSelection | ) |

Duplicate selection. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.DuplicateSelection('');

HRESULT IRiMeshModifiers::MirrorSelection | ( | [in] BSTR | bszSelection | ) |

Mirror selection. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.MirrorSelection('');

HRESULT IRiMeshModifiers::Subdivide | ( | [in] BSTR | bszSelection | ) |

Subdivide selection. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.Subdivide('');

HRESULT IRiMeshModifiers::Smoothdivide | ( | [in] BSTR | bszSelection | ) |

Smooth divide selection. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.Smoothdivide('');

HRESULT IRiMeshModifiers::AddFace | ( | [in] BSTR | bszSelection | ) |

Add face. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.AddFace('');

HRESULT IRiMeshModifiers::WeldPairs | ( | [in] BSTR | bszSelection | ) |

Weld selection pairs. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.WeldPairs('');

HRESULT IRiMeshModifiers::CancelSelectionBasedTool | ( |  | ) |

Call this function to cancel selection based widget tool.
Function resets selection and activates default selection.

Returns:
  standard HRESULT processing can be applied to returned value

        MeshModifiers.CancelSelectionBasedTool();

HRESULT IRiMeshModifiers::ActivateSelectionTool | ( |  | ) |

Call this function to activate default selection tool.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.ActivateSelectionTool();

HRESULT IRiMeshModifiers::GrowPointEditSelection | ( | [in] BSTR | bszSelection | ) |

Convert selection to points and grow selection to include neighbors.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.GrowPointEditSelection('');

HRESULT IRiMeshModifiers::ShrinkPointEditSelection | ( | [in] BSTR | bszSelection | ) |

Convert selection to points and shrink selection away from neighbors.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.ShrinkPointEditSelection('');

HRESULT IRiMeshModifiers::SmoothPointEditSelection | ( | [in] BSTR | bszSelection | ) |

Convert selection to points and smooth the resulting selection.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.SmoothPointEditSelection('');

HRESULT IRiMeshModifiers::OutlinePointEditSelection | ( | [in] BSTR | bszSelection | ) |

Convert selection to points and get an outline from it.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.OutlinePointEditSelection('');

HRESULT IRiMeshModifiers::SelectConnected | ( | [in] BSTR | bszSelection | ) |

Select all connected elements.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.SelectConnected('');

HRESULT IRiMeshModifiers::InvertConnected | ( | [in] BSTR | bszSelection | ) |

Invert selection constrained to connected elements.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.InvertConnected('');

HRESULT IRiMeshModifiers::PeDeselect | ( | [in] BSTR | bszSelection | ) |

De-select/clear point edit selection.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.PeDeselect('');

HRESULT IRiMeshModifiers::InvertSelection | ( | [in] BSTR | bszSelection | ) |

Invert selection.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.InvertSelection('');

HRESULT IRiMeshModifiers::ConvertSelection | ( | [in] BSTR | bszSelection,
|  | [in] BSTR | bszSelectionType |
| ) |  |  |

Transform current point edit selection, to selection specified by parameter.
Types are:

- Vertex
- Face Edge
- Triangle Edge
- Edge Loop
- Face
- Triangle
- Face Loop

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.
  | bszSelectionType | [in] Selection type, specify '' to use current point edit selection mode.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.ConvertSelection('', 'triangle');

HRESULT IRiMeshModifiers::SetLockSelection | ( | [in] BSTR | bszNode,
|  | [in] BSTR | bszSelection |
| ) |  |  |

Activate mesh edit selection to calculate axis lock constraints.

- Used to apply Axes-Lock restrictions on point-edit selection.
- Refers to use of the snapping panel (r-click Grid Snapping tool/icon, "Axis Lock" aspect on panel in stack).
- "Tool node" is considered static in location: /Preferences/Snapping/Point edit snapping/Selection movement lock.
- Selection movement lock "node" has an on/off checkbox; "Lock to selection".

Parameters:

  | bszNode | [in] Tool node (/Preferences/Snapping/Point edit snapping/Selection movement lock).
  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        var ToolNode = "/Preferences/Snapping/Point edit snapping/Selection movement lock";
        MeshModifiers.SetLockSelection(ToolNode, '');

Remarks:
  Notice after using this method, Point Edit controller shows slim red-arrows, indicating state of axis lock.
  - absence of red-arrow in axis indicates no movement allowed.

HRESULT IRiMeshModifiers::ResetLockSelection | ( | [in] BSTR | bszNode | ) |

Deactivate mesh edit selection to calculate axis lock constraints.

Parameters:

  | bszNode | [in] Tool node (/Preferences/Snapping/Point edit snapping/Selection movement lock).

Returns:
  standard HRESULT processing can be applied to returned value.

        var ToolNode = "/Preferences/Snapping/Point edit snapping/Selection movement lock";
        MeshModifiers.ResetLockSelection(ToolNode);

HRESULT IRiMeshModifiers::ShrinkWrap | ( | [in] BSTR | bszSelection | ) |

Apply shrink-wrap uv mapping, on selection specified by parameter

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.ShrinkWrap('');

HRESULT IRiMeshModifiers::Scissors | ( | [in] BSTR | bszSelection | ) |

Cut the mesh in PE mode through selected edges.

- Cut selected edges tool.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.Scissors('');

HRESULT IRiMeshModifiers::DisplacementMapping | ( | [in] BSTR | bszSelection | ) |

Starts displacement mapping tool.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.DisplacementMapping('');

HRESULT IRiMeshModifiers::EndDisplacementMapping | ( | [in] BSTR | bszSelection | ) |

Ends the displacement mapping tool, by discarding the displacement mapper and preserving the result.

- When displacement mapping is started, a node is created inside the selected object being edited.
- Refer to this Displacement Mapper node for bszSelection.

Parameters:

  | bszSelection | [in] Specify displacement mapper node to be affected.

Returns:
  standard HRESULT processing can be applied to returned value.

        var target = Node.FirstSelected();
        var dMapper = target + '/Displacement Mapper';
        MeshModifiers.EndDisplacementMapping(dMapper);

HRESULT IRiMeshModifiers::AddSdsVertexWeight | ( | [in] BSTR | bszSelection,
|  | [in] VARIANT | vWeight |
| ) |  |  |

Add vertex weight for SDS mesh. If SDS not active, E_FAIL will be returned.

- Reasonable values are between -1.0 and +1.0 and suggested increments of +/- .01 should be used.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.
  | vWeight | [in] Weight to add to vertex weight.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.AddSdsVertexWeight('', 1.0);

HRESULT IRiMeshModifiers::AddSdsEdgeWeight | ( | [in] BSTR | bszSelection,
|  | [in] VARIANT | vWeight |
| ) |  |  |

Add edge weight for SDS mesh. If SDS not active, E_FAIL will be returned.

- Reasonable values are between -1.0 and +1.0 and suggested increments of 0.1 in either direction.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.
  | vWeight | [in] Weight to add to edge weight.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.AddSdsEdgeWeight('', -0.10);

HRESULT IRiMeshModifiers::ActivatePointEditWidget | ( | [in] BSTR | szGroup,
|  | [in] BSTR | szWidget,
|  | [in] BSTR | szAspect |
| ) |  |  |

Check if current selection is in point edit mode. If not, activate it.

- Then activate specified widget with default selection.

Parameters:

  | szGroup | [in] Widget group to activate (location: /Widgets/Tools).
  | szWidget | [in] Point edit widget to activate (location ie: /Widgets/Tools/Mesh editor/PE rect select).
  | szAspect | [in] Widget initial aspect. Check this location: /Widgets/Tools/Mesh editor/PE rect select/Default. In this case "Default" is string to use.

        var wGroup = '/Widgets/Tools';
        var widget = '/Widgets/Tools/Mesh editor/PE rect select';
        var aspect = 'Default';
        MeshModifiers.ActivatePointEditWidget(wGroup, widget, aspect);

HRESULT IRiMeshModifiers::EnableDisplacementBrush | ( |  | ) |

Show/hide displacement brush in PE mode.

        MeshModifiers.EnableDisplacementBrush();

HRESULT IRiMeshModifiers::BevelTool | ( | [in] BSTR | bszSelection,
|  | [in] VARIANT | vQuads,
|  | [in] VARIANT | vUpdate,
|  | [in] VARIANT | vOffset,
|  | [in] VARIANT | vHeight |
| ) |  |  |

Bevel polygons. Selected nodes must be in point edit mode.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.
  | vQuads | [in] Boolean true/false: Specifies whether to connect outer and inner polygon with edges.
  | vUpdate | [in] Boolean true/false to update selection.
  | vOffset | [in] Specifies offset for bevel.
  | vHeight | [in] Specifies height for bevel.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.BevelTool('', false, true, .1, .1);

HRESULT IRiMeshModifiers::AddMirrorModeler | ( | [in] BSTR | bszSelection | ) |

Add mirror modeler to selected nodes.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.AddMirrorModeler('');

HRESULT IRiMeshModifiers::RemoveMirrorPlane | ( | [in] BSTR | bszSelection | ) |

Remove mirror plane (and mirror modeler node if there are no more planes) from selected nodes.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.RemoveMirrorPlane('');

HRESULT IRiMeshModifiers::ShowMirrorProperties | ( | [in] BSTR | bszSelection | ) |

Show mirror modeler properties panels for selected nodes.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.ShowMirrorProperties('');

HRESULT IRiMeshModifiers::UpdateMirrorPlane | ( | [in] BSTR | bszSelection | ) |

Update mirror modeler active plane.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.UpdateMirrorPlane('');

HRESULT IRiMeshModifiers::CreateHair | ( | [in] BSTR | bszSelection | ) |

Create hair on an object(s).

Parameters:

  | bszSelection | [in] Specify nodes or '' for current selected object.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.CreateHair('');

HRESULT IRiMeshModifiers::EnableHairBrush | ( | [in] BSTR | bszTool | ) |

Enable hair brush.

Parameters:

  | bszTool | [in] Tool to enable.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.EnableHairBrush('');

HRESULT IRiMeshModifiers::TogglePeTool | ( | [in] BSTR | szToolName,
|  | [in] BSTR | szSelection |
| ) |  |  |

Check if specified tool is active.
If yes, deactivate it by calling default selection widget.
If not, then activate it.

Parameters:

  | szToolName | [in] Widget path.
  | szSelection | [in] Selection. '' to use default selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.TogglePeTool('/Widgets/Tools/Mesh editor/PE Add loop','');

HRESULT IRiMeshModifiers::HairPreset | ( | [in] BSTR | bszNode,
|  | [in] BSTR | bszPreset |
| ) |  |  |

Sets the hair preset for specified hair node. Used internally by preset buttons.

- Two presets exist; Hair and Plants.

Parameters:

  | bszNode | [in] Node for applying the preset.
  | bszPreset | [in] Preset identification.

        MeshModifiers.HairPreset('/Project/Space 3D/Cube, 2', 'Hair');

HRESULT IRiMeshModifiers::FlattenNodes | ( | [in] BSTR | bszSelection | ) |

Flatten specified mesh nodes to Shape and remove unnecessary nodes.

Parameters:

  | bszSelection | [in] List of nodes to flatten. List of nodes are separated by semi-colon ";".
          MeshModifiers.FlattenNodes('/Project/Space 3D/Cube;/Project/Space 3D/Sphere');

also: for current selected object(s).

        MeshModifiers.FlattenNodes('');

HRESULT IRiMeshModifiers::SmoothNormals | ( | [in] BSTR | bszSelection | ) |

Generate smooth vertex normals.

Parameters:

  | bszSelection | [in] Specify nodes or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.SmoothNormals('');

HRESULT IRiMeshModifiers::FacetedNormals | ( | [in] BSTR | bszSelection | ) |

Generate faceted vertex normals (uses face normals for vertices).

Parameters:

  | bszSelection | [in] Specify nodes or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.FacetedNormals('');

HRESULT IRiMeshModifiers::AutofacetNormals | ( | [in] BSTR | bszSelection,
|  | [in] VARIANT | vAngle |
| ) |  |  |

Generate auto-facet vertex normals (based on auto-facet angle).

Parameters:

  | bszSelection | [in] Specify nodes or '' for current selection.
  | vAngle | [in] Check: /Preferences/Mesh Editor Settings location for this setting: Autofacitize aspect/tab. Default value is 30.0

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.AutofacetNormals('', 35.0);

HRESULT IRiMeshModifiers::HealVertices | ( | [in] BSTR | bszSelection,
|  | [in] VARIANT | vRadius |
| ) |  |  |

Heal vertices (radius setting).

Parameters:

  | bszSelection | [in] Specify selection or '' for current selection.
  | vRadius | [in] Radius for healing, -1 to use settings panel value (0.05 is default).

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.HealVertices('', -1);

HRESULT IRiMeshModifiers::UpdateMirrorPosition | ( | [in] BSTR | bszSelection | ) |

Update position for the manual mode mirror tool from info panel.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.UpdateMirrorPosition('');

HRESULT IRiMeshModifiers::UpdateMirrorNormal | ( | [in] BSTR | bszSelection | ) |

Update normal for the manual mode mirror tool from info panel.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.UpdateMirrorNormal('');

HRESULT IRiMeshModifiers::SelectMaterial | ( | [in] BSTR | bszSelection | ) |

Select all faces containing selected material.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.SelectMaterial('');

HRESULT IRiMeshModifiers::ApplySelectionTool | ( | [in] BSTR | szWidget,
|  | [in] BSTR | szCommand |
| ) |  |  |

Check if current selection is in point edit mode. If not, then activate point-edit mode. Once it is activated, activate specified widget with default selection.

- RsCmdDoc.xml file is reference for these type commands.

Parameters:

  | szWidget | [in] Path to widget: /Widgets/Tools/Mesh editor/PE Select tool
  | szCommand | [in] apply_cmd:{7DBD4078-6AC7-48f4-A52D-C4A65CAB0C51};select_invselect

        MeshModifiers.ApplySelectionTool('/Widgets/Tools/Mesh editor/PE Select tool','apply_cmd:{7DBD4078-6AC7-48f4-A52D-C4A65CAB0C51};select_invselect');

HRESULT IRiMeshModifiers::FlipEdge | ( | [in] BSTR | bszSelection | ) |

Flip inner edge.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.FlipEdge('');

HRESULT IRiMeshModifiers::OptimizeTriangulation | ( | [in] BSTR | bszSelection | ) |

Delaunay triangulation optimize of selected geometry. When no selection done, whole mesh is optimized. http://en.wikipedia.org/wiki/Delaunay_triangulation

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.OptimizeTriangulation('');

HRESULT IRiMeshModifiers::SeparateSelected | ( | [in] BSTR | bszSelection | ) |

Separate selected geometry from original object and create a new one with selection.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.SeparateSelected('');

HRESULT IRiMeshModifiers::SelectPath | ( | [in] BSTR | bszSelection | ) |

Select the shortest path between two selected elements.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.SelectPath('');

HRESULT IRiMeshModifiers::CollapseLoop | ( | [in] BSTR | bszSelection | ) |

Collapse edge/face selection, forming a loop.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.CollapseLoop('');

HRESULT IRiMeshModifiers::HideSelected | ( | [in] BSTR | bszSelection | ) |

Hide selected geometry, by removing it from control mesh and adding it to editable-shape-hidden connector.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.HideSelected('');

HRESULT IRiMeshModifiers::ShowHiddenPeGeometry | ( | [in] BSTR | bszSelection | ) |

Show hidden geometry, hidden by the HideSelected tool.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.ShowHiddenPeGeometry('');

HRESULT IRiMeshModifiers::OpenMaterialEditor | ( |  | ) |

Show material editor with current active material.

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.OpenMaterialEditor();

HRESULT IRiMeshModifiers::ToggleTool | ( | BSTR | szToolName | ) |

Toggles mesh editor helper widget.

Parameters:

  | szToolName | [in] Tool to toggle on/off.

Example:

     MeshModifiers.ToggleTool('/Widgets/Tools/Material editor/Inspect');

Returns:
  standard HRESULT processing can be applied to returned value.

HRESULT IRiMeshModifiers::StartPaintFaceTool | ( |  | ) |

Toggles paint face tool.

Returns:
  standard HRESULT processing can be applied to returned value.

Example:

     MeshModifiers.StartPaintFaceTool();

HRESULT IRiMeshModifiers::RepaintMaterial | ( | BSTR | szSelection,
|  | RtUlong | dwMaterialIndex |
| ) |  |  |

Repaint material specified by index.

- Check inside the object in Link Editor. You should see a Material List object, with internal Material 0, Material 1 etc.
- These Material 0 and Material 1 are index values 0,1 etc.

Parameters:

  | szSelection | List of nodes to repaint.
  | dwMaterialIndex | Material index to prepaint with current material.

Returns:
  standard HRESULT processing can be applied to returned value.

     MeshModifiers.RepaintMaterial('', 0);

HRESULT IRiMeshModifiers::SetMaterial | ( | BSTR | szSelection | ) |

Set material to object.

Parameters:

  | szSelection | List of nodes to repaint.

Returns:
  standard HRESULT processing can be applied to returned value.

     MeshModifiers.SetMaterial('/Project/Space 3D/Cube, 2');

HRESULT IRiMeshModifiers::ResetSds | ( | BSTR | szSelection,
|  | VARIANT | vEdgeWeights,
|  | VARIANT | vVertexWeights,
|  | VARIANT | vSsLevel |
| ) |  |  |

Reset SDS properties.

Parameters:

  | szSelection | [in] List of nodes to reset sds on.
  | vEdgeWeights | [in] Value for Edge Weights
  | vVertexWeights | [in] Value for Vertex Weight.
  | vSsLevel | [in] SDS level.

Returns:
  standard HRESULT processing can be applied to returned value.

     MeshModifiers.ResetSds('/Project/Space 3D/Cube, 2', -1, -1, -1);

HRESULT IRiMeshModifiers::ActivateBooleansTool | ( | BSTR | szOperation,
|  | BSTR | szSelection |
| ) |  |  |

Activate booleans tool.

Parameters:

  | szSelection | List of nodes which will be used as booleans source.
  | szOperation | Booleaning operation name. Union, Intersection, Cut, Merge, Subtraction, Symdif.

Returns:
  standard HRESULT processing can be applied to returned value.

     MeshModifiers.ActivateBooleansTool('/Project/Space 3D/Sphere;/Project/Space 3D/Cube', 'Union');

HRESULT IRiMeshModifiers::Quadrify | ( | [in] BSTR | bszSelection | ) |

Quadrify selected polygons (or whole model if no selection is made).

Parameters:

  | bszSelection | [in] Specify node or '' for current selection.

Returns:
  standard HRESULT processing can be applied to returned value.

     MeshModifiers.Quadrify('');

HRESULT IRiMeshModifiers::OpenMeshEditorPanel | ( | [in] BSTR | szPanel,
|  | [in] RtUlong | dwGroupId,
|  | [in] RtUlong | dwAspect,
|  | [in] RtUlong | dwAllowAspects |
| ) |  |  |

Add panel to mesh editor tool panels.

Parameters:

  | szNode | [in] Specify panel to display.
  | dwGroupId | [in] Panel priority. All panels with higher priority will be removed.
  | dwAspect | [in] Predefined aspect ID
  | dwAllowAspects | [in] Allow changing aspects

Returns:
  standard HRESULT processing can be applied to returned value.

        MeshModifiers.OpenMeshEditorPanel('%s',1,3,1);

HRESULT IRiMeshModifiers::FlattenAxes | ( | [in] BSTR | bszSelection | ) |

Flatten axes. Store pivot transformation into mesh and reset pivot to identity.

Parameters:

  | bszSelection | [in] Specify node or '' for current selection

Returns:
  standard HRESULT processing can be applied to returned value.