iEPolyMod.h File Reference
 
 
 
iEPolyMod.h File Reference

This reference page is linked to from the following overview topics: SDK Change Details.


#include "iFnPub.h"
#include "mnmesh.h"

Classes

class   EPolyMod
  This class is the published interface for Edit Poly modifiers. More...
class   EPolyMod13
  This new class extends EPolyMode, in particular adds a more efficient way for setting several vertex positions, and the ability for EPolyMod to support manipulate grips. More...

Defines

#define  EPOLY_MOD_INTERFACE   Interface_ID(0x405e217d, 0x49c2abc)
#define  GetEPolyModInterface(cd)   (EPolyMod *)(cd)->GetInterface(EPOLY_MOD_INTERFACE)
#define  EPOLY_MOD13_INTERFACE   Interface_ID(0x1a4cc8f2, 0x71682518)
#define  GetEPolyMod13Interface(cd)   (EPolyMod13 *)(cd)->GetInterface(EPOLY_MOD13_INTERFACE)
#define  epm_edge_chamfer_segments   epm_reserved1
#define  EDIT_POLY_DISABLE_IN_ANIMATE

Enumerations

enum   ePolyModSelLevel {
  EPM_SL_OBJECT, EPM_SL_VERTEX, EPM_SL_EDGE, EPM_SL_BORDER,
  EPM_SL_FACE, EPM_SL_ELEMENT, EPM_SL_CURRENT
}
enum   epolyModParameters {
  epm_animation_mode, epm_show_cage, epm_by_vertex, epm_ignore_backfacing,
  epm_stack_selection, epm_ss_use, epm_ss_edist_use, epm_ss_edist,
  epm_ss_affect_back, epm_ss_falloff, epm_ss_pinch, epm_ss_bubble,
  epm_current_operation, epm_world_to_object_transform, epm_constrain_type, epm_split,
  epm_ms_smoothness, epm_ms_sep_smooth, epm_ms_sep_mat, epm_tess_type,
  epm_tess_tension, epm_bridge_taper, epm_bridge_bias, epm_align_type,
  epm_align_plane_normal, epm_align_plane_offset, epm_delete_isolated_verts, epm_weld_vertex_threshold,
  epm_chamfer_vertex, epm_extrude_vertex_width, epm_extrude_vertex_height, epm_connect_edge_segments,
  epm_weld_edge_threshold, epm_extrude_edge_height, epm_extrude_edge_width, epm_chamfer_edge,
  epm_extrude_face_type, epm_extrude_face_height, epm_bevel_type, epm_bevel_height,
  epm_bevel_outline, epm_inset_type, epm_inset, epm_outline,
  epm_hinge_angle, epm_hinge_base, epm_hinge_dir, epm_hinge_segments,
  epm_extrude_spline_node, epm_extrude_spline_segments, epm_extrude_spline_taper, epm_extrude_spline_taper_curve,
  epm_extrude_spline_twist, epm_extrude_spline_rotation, epm_extrude_spline_align, epm_autosmooth_threshold,
  epm_smooth_group_set, epm_smooth_group_clear, epm_material, epm_material_selby,
  epm_material_selby_clear, epm_smoother_selby, epm_smoother_selby_clear, epm_clone_to_element,
  epm_bridge_segments, epm_bridge_smooth_thresh, epm_bridge_target_1, epm_bridge_target_2,
  epm_bridge_twist_1, epm_bridge_twist_2, epm_bridge_selected, epm_preserve_maps,
  epm_relax_amount, epm_relax_iters, epm_relax_hold_boundary, epm_relax_hold_outer,
  epm_select_by_angle, epm_select_angle, epm_ss_lock, epm_paintsel_value,
  epm_paintsel_size, epm_paintsel_strength, epm_paintdeform_value, epm_paintdeform_size,
  epm_paintdeform_strength, epm_paintdeform_axis, epm_reserved1, epm_reserved2,
  epm_reserved3, epm_reserved4, epm_reserved5, epm_connect_edge_pinch,
  epm_connect_edge_slide, epm_loop_edge_sel, epm_ring_edge_sel, epm_remove_edge_ctrl,
  epm_cage_color, epm_selected_cage_color, epm_cage_color_changed, epm_selected_cage_color_changed,
  epm_chamfer_vertex_open, epm_chamfer_edge_open, epm_bridge_adjacent, epm_bridge_reverse_triangle,
  epm_break_vertex_distance, epm_paintsel_mode, epm_paintdeform_mode, epm_select_mode
}
enum   epolyModButtonOp {
  ep_op_null, ep_op_hide_vertex, ep_op_hide_face, ep_op_unhide_vertex,
  ep_op_unhide_face, ep_op_hide_unsel_vertex, ep_op_hide_unsel_face, ep_op_ns_copy,
  ep_op_ns_paste, ep_op_cap, ep_op_delete_vertex, ep_op_delete_face,
  ep_op_detach_vertex, ep_op_detach_face, ep_op_split, ep_op_break,
  ep_op_collapse_vertex, ep_op_collapse_edge, ep_op_collapse_face, ep_op_reset_plane,
  ep_op_slice, ep_op_slice_face, ep_op_weld_vertex, ep_op_weld_edge,
  ep_op_create_shape, ep_op_make_planar, ep_op_remove_iso_verts, ep_op_meshsmooth,
  ep_op_tessellate, ep_op_retriangulate, ep_op_flip_face, ep_op_flip_element,
  ep_op_bevel, ep_op_chamfer_vertex, ep_op_chamfer_edge, ep_op_cut,
  ep_op_sel_grow, ep_op_sel_shrink, ep_op_inset, ep_op_extrude_vertex,
  ep_op_extrude_edge, ep_op_extrude_face, ep_op_extrude_along_spline, ep_op_connect_edge,
  ep_op_connect_vertex, ep_op_hinge_from_edge, ep_op_select_ring, ep_op_select_loop,
  ep_op_remove_iso_map_verts, ep_op_remove_vertex, ep_op_remove_edge, ep_op_outline,
  ep_op_toggle_shaded_faces, ep_op_transform, ep_op_delete_edge, ep_op_unused,
  ep_op_create, ep_op_align, ep_op_attach, ep_op_target_weld_vertex,
  ep_op_target_weld_edge, ep_op_edit_triangulation, ep_op_create_edge, ep_op_clone_vertex,
  ep_op_clone_edge, ep_op_clone_face, ep_op_insert_vertex_edge, ep_op_insert_vertex_face,
  ep_op_autosmooth, ep_op_smooth, ep_op_set_material, ep_op_select_by_smooth,
  ep_op_select_by_material, ep_op_get_stack_selection, ep_op_bridge_border, ep_op_bridge_polygon,
  ep_op_make_planar_x, ep_op_make_planar_y, ep_op_make_planar_z, ep_op_turn_edge,
  ep_op_relax, ep_op_paint_deform, ep_op_bridge_edge, ep_op_preserve_uv_settings,
  ep_op_remove_edge_remove_verts
}
enum   epolyModCommandMode {
  ep_mode_create_vertex, ep_mode_create_edge, ep_mode_create_face, ep_mode_divide_edge,
  ep_mode_divide_face, ep_mode_extrude_vertex, ep_mode_extrude_edge, ep_mode_extrude_face,
  ep_mode_chamfer_vertex, ep_mode_chamfer_edge, ep_mode_bevel, ep_mode_sliceplane,
  ep_mode_cut, ep_mode_weld, ep_mode_edit_tri, ep_mode_inset_face,
  ep_mode_quickslice, ep_mode_hinge_from_edge, ep_mode_pick_hinge, ep_mode_outline,
  ep_mode_bridge_border, ep_mode_bridge_polygon, ep_mode_pick_bridge_1, ep_mode_pick_bridge_2,
  ep_mode_turn_edge, ep_mode_bridge_edge, ep_mode_edit_ss
}
enum   epolyModPickMode { ep_mode_attach, ep_mode_pick_shape }
enum   epolyModMethods {
  epmod_get_sel_level, epmod_get_mn_sel_level, epmod_set_sel_level, epmod_get_operation,
  epmod_set_operation, epmod_local_data_changed, epmod_refresh_screen, epmod_commit,
  epmod_commit_unless_animating, epmod_commit_and_repeat, epmod_cancel_operation, epmod_convert_selection,
  epmod_get_selection, epmod_set_selection, epmod_select, epmod_set_primary_node,
  epmod_toggle_command_mode, epmod_enter_command_mode, epmod_enter_pick_mode, epmod_get_command_mode,
  epmod_get_pick_mode, epmod_popup_dialog, epmod_button_op, epmod_repeat_last,
  epmod_in_slice_mode, epmod_reset_slice_plane, epmod_get_slice_plane_tm, epmod_get_slice_plane,
  epmod_set_slice_plane, epmod_create_vertex, epmod_create_face, epmod_create_edge,
  epmod_set_diagonal, epmod_cut, epmod_target_weld_vertex, epmod_target_weld_edge,
  epmod_attach_node, epmod_attach_nodes, epmod_detach_to_object, epmod_create_shape,
  epmod_bridge_borders, epmod_bridge_polygons, epmod_set_bridge_node, epmod_get_bridge_node,
  epmod_ready_to_bridge_selected, epmod_get_preserve_map, epmod_set_preserve_map, epmod_turn_diagonal,
  epmod_get_num_vertices, epmod_get_vertex, epmod_get_vertex_face_count, epmod_get_vertex_face,
  epmod_get_vertex_edge_count, epmod_get_vertex_edge, epmod_get_num_edges, epmod_get_edge_vertex,
  epmod_get_edge_face, epmod_get_num_faces, epmod_get_face_degree, epmod_get_face_vertex,
  epmod_get_face_edge, epmod_get_face_diagonal, epmod_get_face_material, epmod_get_face_smoothing_group,
  epmod_get_num_map_channels, epmod_get_map_channel_active, epmod_get_num_map_vertices, epmod_get_map_vertex,
  epmod_get_map_face_vertex, epmod_get_face_normal, epmod_get_face_center, epmod_get_face_area,
  epmod_get_open_edges, epmod_get_verts_by_flag, epmod_get_edges_by_flag, epmod_get_faces_by_flag,
  epmod_set_vertex_flags, epmod_set_edge_flags, epmod_set_face_flags, epmod_get_vertex_flags,
  epmod_get_edge_flags, epmod_get_face_flags, epmod_get_verts_using_edge, epmod_get_edges_using_vert,
  epmod_get_faces_using_edge, epmod_get_elements_using_face, epmod_get_faces_using_vert, epmod_get_verts_using_face,
  epmod_set_vert, epmod_move_selection, epmod_move_slicer, epmod_rotate_selection,
  epmod_rotate_slicer, epmod_scale_selection, epmod_scale_slicer, epmod_list_operations,
  epmod_set_hinge_edge, epmod_get_hinge_edge, epmod_bridge_edges, epmod_in_slice,
  epmod_show_operation_dialog, epmod_showing_operation_dialog, epmod_close_operation_dialog, epmod_get_primary_node,
  epmod_get_node_tm, epmod_set_cut_end, epmod_get_last_cut_end, epmod_clear_last_cut_end,
  epmod_cut_cancel, epmod_divide_edge, epmod_divide_face, epmod_ring_sel,
  epmod_loop_sel, epmod_convert_selection_to_border, epmod_paintdeform_commit, epmod_paintdeform_cancel,
  epmod_matid_floater, epmod_matid_floatervisible, epmod_smgrp_floater, epmod_smgrp_floatervisible
}

Variables

const int  meshSelLevel []

Define Documentation

#define EPOLY_MOD_INTERFACE   Interface_ID(0x405e217d, 0x49c2abc)
#define GetEPolyModInterface (   cd )    (EPolyMod *)(cd)->GetInterface(EPOLY_MOD_INTERFACE)
#define EPOLY_MOD13_INTERFACE   Interface_ID(0x1a4cc8f2, 0x71682518)
#define GetEPolyMod13Interface (   cd )    (EPolyMod13 *)(cd)->GetInterface(EPOLY_MOD13_INTERFACE)
#define epm_edge_chamfer_segments   epm_reserved1
#define EDIT_POLY_DISABLE_IN_ANIMATE

Enumeration Type Documentation

Enumerator:
epm_animation_mode 
epm_show_cage 
epm_by_vertex 
epm_ignore_backfacing 
epm_stack_selection 
epm_ss_use 
epm_ss_edist_use 
epm_ss_edist 
epm_ss_affect_back 
epm_ss_falloff 
epm_ss_pinch 
epm_ss_bubble 
epm_current_operation 
epm_world_to_object_transform 
epm_constrain_type 
epm_split 
epm_ms_smoothness 
epm_ms_sep_smooth 
epm_ms_sep_mat 
epm_tess_type 
epm_tess_tension 
epm_bridge_taper 
epm_bridge_bias 
epm_align_type 
epm_align_plane_normal 
epm_align_plane_offset 
epm_delete_isolated_verts 
epm_weld_vertex_threshold 
epm_chamfer_vertex 
epm_extrude_vertex_width 
epm_extrude_vertex_height 
epm_connect_edge_segments 
epm_weld_edge_threshold 
epm_extrude_edge_height 
epm_extrude_edge_width 
epm_chamfer_edge 
epm_extrude_face_type 
epm_extrude_face_height 
epm_bevel_type 
epm_bevel_height 
epm_bevel_outline 
epm_inset_type 
epm_inset 
epm_outline 
epm_hinge_angle 
epm_hinge_base 
epm_hinge_dir 
epm_hinge_segments 
epm_extrude_spline_node 
epm_extrude_spline_segments 
epm_extrude_spline_taper 
epm_extrude_spline_taper_curve 
epm_extrude_spline_twist 
epm_extrude_spline_rotation 
epm_extrude_spline_align 
epm_autosmooth_threshold 
epm_smooth_group_set 
epm_smooth_group_clear 
epm_material 
epm_material_selby 
epm_material_selby_clear 
epm_smoother_selby 
epm_smoother_selby_clear 
epm_clone_to_element 
epm_bridge_segments 
epm_bridge_smooth_thresh 
epm_bridge_target_1 
epm_bridge_target_2 
epm_bridge_twist_1 
epm_bridge_twist_2 
epm_bridge_selected 
epm_preserve_maps 
epm_relax_amount 
epm_relax_iters 
epm_relax_hold_boundary 
epm_relax_hold_outer 
epm_select_by_angle 
epm_select_angle 
epm_ss_lock 
epm_paintsel_value 
epm_paintsel_size 
epm_paintsel_strength 
epm_paintdeform_value 
epm_paintdeform_size 
epm_paintdeform_strength 
epm_paintdeform_axis 
epm_reserved1 
epm_reserved2 
epm_reserved3 
epm_reserved4 
epm_reserved5 
epm_connect_edge_pinch 
epm_connect_edge_slide 
epm_loop_edge_sel 
epm_ring_edge_sel 
epm_remove_edge_ctrl 
epm_cage_color 
epm_selected_cage_color 
epm_cage_color_changed 
epm_selected_cage_color_changed 
epm_chamfer_vertex_open 
epm_chamfer_edge_open 
epm_bridge_adjacent 
epm_bridge_reverse_triangle 
epm_break_vertex_distance 
epm_paintsel_mode 
epm_paintdeform_mode 
epm_select_mode 
                        {

        epm_animation_mode,             // int - is the Edit Poly in modeling mode (0) or animation mode (1)
        epm_show_cage,                  // BOOL - indicates if the Edit Poly is set to display the cage

        epm_by_vertex,                  // BOOL - indicates if the Edit Poly is selecting by vertex.
        epm_ignore_backfacing,  // BOOL - indicates if the Edit Poly is ignoring backfacing when the user selects subobjects.
        epm_stack_selection,    // BOOL - indicates whether or not the Edit Poly is using the subobject selection from the stack below it.

        epm_ss_use,                             // BOOL - Is the Edit Poly using soft selection?
        epm_ss_edist_use,               // BOOL - Is the Edit Poly soft selection using edge distances or not?
        epm_ss_edist,                   // int - How many edges do we traverse in determining soft selection?  (Ignored if epm_ss_edist_use is set to false.)
        epm_ss_affect_back,             // BOOL - Should soft selection affect backfacing?
        epm_ss_falloff,                 // float - soft selection falloff value
        epm_ss_pinch,                   // float - soft selection pinch value
        epm_ss_bubble,                  // float - soft selection bubble value

        epm_current_operation,  // int - indicates current operation, which should be one of the epolyModButtonOp enums.

        epm_world_to_object_transform, // Matrix3 - Worldspace to common Objectspace transform.  Used in combination with the local mod context tms, this can give us relative WS-to-OS transforms for each modifier instance.  See Edit Poly source for examples of use.

        epm_constrain_type,             // int - Represents the current vertex constraints.  0 for no constraints, 1 for constrain-to-edge, 2 for constrain-to-face, 3 for constrain-to-normal.

        epm_split,                              // BOOL - indicates whether Cut and Slice (ep_op_cut, ep_op_slice, ep_op_slice_face) operations should split the mesh, or merely refine it.

        epm_ms_smoothness,              // float - Smoothness parameter for MeshSmooth operation (ep_op_meshsmooth)
        epm_ms_sep_smooth,              // BOOL - Separate-by-smoothing-groups parameter for MeshSmooth operation (ep_op_meshsmooth)
        epm_ms_sep_mat,                 // BOOL - Separate-by-materials parameter for MeshSmooth operation (ep_op_meshsmooth)

        epm_tess_type,                  // int - Type of Tessellation (ep_op_tessellate) - 0 for 
        epm_tess_tension,               // float - tension parameter for Tessellation operation (ep_op_tessellate)

        epm_bridge_taper,               // float - Taper parameter for Bridge operation (ep_op_bridge_border, ep_op_bridge_polygon)
        epm_bridge_bias,                // float - Bias parameter for Bridge operation (ep_op_bridge_border, ep_op_bridge_polygon)

        epm_align_type,                 // int - whether to align to view (0) or construction plane (1) in future uses of ep_op_align
        epm_align_plane_normal, // Point3 - describes the plane normal currently used for alignment.
        epm_align_plane_offset, // float - describes the plane offset currently used for alignment.  (The normal and offset together describe a plane.)

        epm_delete_isolated_verts,      // BOOL - Indicates whether the Edit Poly deletes freshly isolated vertices when deleting faces.

        epm_weld_vertex_threshold,      // float - The threshold used when welding selected vertices (ep_op_weld_vertex)

        epm_chamfer_vertex,                     // float - the "amount" parameter for the Chamfer Vertex operation (ep_op_chamfer_vertex)

        epm_extrude_vertex_width,       // float - the width of the extrusion for the Extrude Vertex operation (ep_op_extrude_vertex)
        epm_extrude_vertex_height,      // float - the height of the extrusion for the Extrude Vertex operation (ep_op_extrude_vertex)

        epm_connect_edge_segments,      // int - the number of segments to use when connecting edges (ep_op_conect_edge)

        epm_weld_edge_threshold,        // float - The threshold used when welding selected edges (ep_op_weld_edge)

        epm_extrude_edge_height,        // float - the height of the extrusion for the Extrude Edge operation (ep_op_extrude_edge)
        epm_extrude_edge_width,         // float - the width of the extrusion for the Extrude Edge operation (ep_op_extrude_edge)

        epm_chamfer_edge,                       // float - the "amount" parameter for the Chamfer Edge operation (ep_op_chamfer_edge)

        epm_extrude_face_type,          // int - indicates the type of face extrusion - 0 for Group Normals, 1 for Local Normals, 2 for By Polygon (ep_op_extrude_face)
        epm_extrude_face_height,        // float - indicates the height of the face extrusion (ep_op_extrude_face)

        epm_bevel_type,                         // int - indicates the type of face extrusion used in beveling - 0 for Group Normals, 1 for Local Normals, 2 for By Polygon (ep_op_bevel)
        epm_bevel_height,                       // float - height of the face bevel (ep_op_bevel)
        epm_bevel_outline,                      // float - "outline" amount (amount to move vertices in or out) in the Bevel operation (ep_op_bevel)

        epm_inset_type,                         // int - indicates the type of face extrusion used in insetting - 0 for Group Normals, 1 for Local Normals, 2 for By Polygon (ep_op_inset)
        epm_inset,                                      // float - the amount of the inset (ep_op_inset)

        epm_outline,                            // float - the amount of outlining (ep_op_outline)

        epm_hinge_angle,                        // float - the angle to use in Hinge from Edge (ep_op_hinge_from_edge)
        epm_hinge_base,                         // Point3 - the base of the hinge (ep_op_hinge_from_edge)
        epm_hinge_dir,                          // Point3 - the direction of the hinge - combine with epm_hinge_base to get a complete ray for the hinge (ep_op_hinge_from_edge)
        epm_hinge_segments,                     // int - the number of segments to use on the sides of the Hinge from Edge extrusion (ep_op_hinge_from_edge)

        epm_extrude_spline_node,                // INode - the node of the spline to use in Extrude along Spline (ep_op_extrude_along_spline)
        epm_extrude_spline_segments,    // int - the number of segments in Extrude along Spline (ep_op_extrude_along_spline)
        epm_extrude_spline_taper,               // float - the amount of tapering to use in Extrude along Spline (ep_op_extrude_along_spline)
        epm_extrude_spline_taper_curve, // float - the taper curve for Extrude along Spline (ep_op_extrude_along_spline)
        epm_extrude_spline_twist,               // float - the amount of twist (in radians) for Extrude along Spline (ep_op_extrude_along_spline)
        epm_extrude_spline_rotation,    // float - the rotation (in radians) around the face normal for Extrude along Spline (ep_op_extrude_along_spline)
        epm_extrude_spline_align,               // BOOL - whether or not to try to align the extrusion spline to match the face normal (ep_op_extrude_along_spline)

        epm_autosmooth_threshold,       // float - the threshold for autosmoothing across edges, in radians (ep_op_autosmooth)
        epm_smooth_group_set,           // DWORD cast as an int - the set of smoothing groups to set (ep_op_smooth)
        epm_smooth_group_clear,         // DWORD cast as an int - the set of smoothing groups to clear (ep_op_smooth)

        epm_material,                           // int - the material ID to set on selected faces (ep_op_set_material)

        epm_material_selby,                     // int - the material ID to select faces by (ep_op_select_by_material)
        epm_material_selby_clear,       // BOOL - whether or not to clear the previous selection before selecting by material (ep_op_select_by_material)

        epm_smoother_selby,                     // DWORD cast as an int - the set of smoothing groups to select faces by (ep_op_select_by_smooth)
        epm_smoother_selby_clear,       // BOOL - whether or not to clear the previous selection before selecting faces by smoothing group (ep_op_select_by_smooth)

        epm_clone_to_element,           // BOOL - whether to clone to an element or to a separate object.

        epm_bridge_segments,            // int - the number of segments for bridge operations
        epm_bridge_smooth_thresh,       // float - the smoothing threshold for successive bridge columns (in radians)
        epm_bridge_target_1,            // int - the first edge or face we're bridging between, in 1-based indexing.  (Value of 0 indicates not set yet.)
        epm_bridge_target_2,            // int - the second edge or face we're bridging between, in 1-based indexing.  (Value of 0 indicates not set yet.)
        epm_bridge_twist_1,                     // int - the Twist amount for the first end of the bridge.
        epm_bridge_twist_2,                     // int - the Twist amount for the second end of the bridge
        epm_bridge_selected,            // BOOL - false indicates we should bridge between the specific targets given in epm_bridge_target_1 and _2, true indicates we should bridge selected borders or polgyons.

        epm_preserve_maps,                      // BOOL - Indicates whether map values should be "preserved" in geometric deformations such as subobject transforms.

        epm_relax_amount,                       // float - the relax Amount parameter - range of 0 (no relaxing) to 1 (maximum relaxing), default of .5
        epm_relax_iters,                        // int - the number of iterations of the relax algorithm to apply.
        epm_relax_hold_boundary,        // BOOL - Indicates whether or not to fix boundary points in place when relaxing
        epm_relax_hold_outer,           // BOOL - Indicates whether or not to fix "outer" points in place when relaxing.  (See the MNMeshUtilities::Relax declaration in MNMesh.h for further explanation.)

        epm_select_by_angle,            // BOOL - Indicates whether Polygon selections should be expanded depending on edge angles.
        epm_select_angle,                       // float - Indicates the maximum angle used in expanding polygon selections.  (Ignored if epm_select_by_angle is false.)

        // Paint tools
        epm_ss_lock,
        epm_paintsel_value, epm_paintsel_size, epm_paintsel_strength,
        epm_paintdeform_value, epm_paintdeform_size, epm_paintdeform_strength,
        epm_paintdeform_axis,

        epm_reserved1,                                  // obsolete -- SEE the #define epm_edge_chamfer_segments epm_reserved1
                                        // beneath this enum!
        epm_reserved2,                                  // obsolete
        epm_reserved3,                                  // obsolete
        epm_reserved4,                                  // obsolete
        epm_reserved5,                                  // obsolete
        
        epm_connect_edge_pinch,                 // float        - distance between new edges created when connecting edges
        epm_connect_edge_slide,                 // float        - start position for edge connection
        epm_loop_edge_sel,                              // int          - loop spinner value
        epm_ring_edge_sel,                              // int          - ring spinner value
        epm_remove_edge_ctrl,                   // BOOOL        - is control key pressed when removing edges ? 
        epm_cage_color,                                 // Point3       - the user supplied cage color 
        epm_selected_cage_color,                // Point3       - the user supplied cage color for selected objects
        epm_cage_color_changed,                 // int          - has the cage color been changed 
        epm_selected_cage_color_changed,// int          - has the selected cage color been changed 
        epm_chamfer_vertex_open,                // BOOL         - is a vertex chamfer creating a hole ? 
        epm_chamfer_edge_open,                  // BOOL         - is an edge chamfer creating a hole ? 
        epm_bridge_adjacent,                    // float        - the angle limit used for bridging adjacent edges 
        epm_bridge_reverse_triangle,    // BOOL         - is a triangle to be reversed when bridging edges ?
        epm_break_vertex_distance,              // float        - the distance used for opening vertices

        epm_paintsel_mode,
        epm_paintdeform_mode,

        epm_select_mode,                                // BOOL         -  the select mode that we are in, none, sub object, or multi.

        // new for 9.5
        //epm_edge_chamfer_segments  // int - the number of new edges to create per selected edge (ep_edge_chamfer_segments)
                                     // SEE #define BELOW!
};
Enumerator:
ep_op_null 
ep_op_hide_vertex 
ep_op_hide_face 
ep_op_unhide_vertex 
ep_op_unhide_face 
ep_op_hide_unsel_vertex 
ep_op_hide_unsel_face 
ep_op_ns_copy 
ep_op_ns_paste 
ep_op_cap 
ep_op_delete_vertex 
ep_op_delete_face 
ep_op_detach_vertex 
ep_op_detach_face 
ep_op_split 
ep_op_break 
ep_op_collapse_vertex 
ep_op_collapse_edge 
ep_op_collapse_face 
ep_op_reset_plane 
ep_op_slice 
ep_op_slice_face 
ep_op_weld_vertex 
ep_op_weld_edge 
ep_op_create_shape 
ep_op_make_planar 
ep_op_remove_iso_verts 
ep_op_meshsmooth 
ep_op_tessellate 
ep_op_retriangulate 
ep_op_flip_face 
ep_op_flip_element 
ep_op_bevel 
ep_op_chamfer_vertex 
ep_op_chamfer_edge 
ep_op_cut 
ep_op_sel_grow 
ep_op_sel_shrink 
ep_op_inset 
ep_op_extrude_vertex 
ep_op_extrude_edge 
ep_op_extrude_face 
ep_op_extrude_along_spline 
ep_op_connect_edge 
ep_op_connect_vertex 
ep_op_hinge_from_edge 
ep_op_select_ring 
ep_op_select_loop 
ep_op_remove_iso_map_verts 
ep_op_remove_vertex 
ep_op_remove_edge 
ep_op_outline 
ep_op_toggle_shaded_faces 
ep_op_transform 
ep_op_delete_edge 
ep_op_unused 
ep_op_create 
ep_op_align 
ep_op_attach 
ep_op_target_weld_vertex 
ep_op_target_weld_edge 
ep_op_edit_triangulation 
ep_op_create_edge 
ep_op_clone_vertex 
ep_op_clone_edge 
ep_op_clone_face 
ep_op_insert_vertex_edge 
ep_op_insert_vertex_face 
ep_op_autosmooth 
ep_op_smooth 
ep_op_set_material 
ep_op_select_by_smooth 
ep_op_select_by_material 
ep_op_get_stack_selection 
ep_op_bridge_border 
ep_op_bridge_polygon 
ep_op_make_planar_x 
ep_op_make_planar_y 
ep_op_make_planar_z 
ep_op_turn_edge 
ep_op_relax 
ep_op_paint_deform 
ep_op_bridge_edge 
ep_op_preserve_uv_settings 
ep_op_remove_edge_remove_verts 
                      { ep_op_null,
        ep_op_hide_vertex, ep_op_hide_face,
        ep_op_unhide_vertex, ep_op_unhide_face,
        ep_op_hide_unsel_vertex, ep_op_hide_unsel_face,
        ep_op_ns_copy, ep_op_ns_paste, ep_op_cap,
        ep_op_delete_vertex, ep_op_delete_face, ep_op_detach_vertex, ep_op_detach_face,
        ep_op_split, ep_op_break, ep_op_collapse_vertex, ep_op_collapse_edge,
        ep_op_collapse_face, ep_op_reset_plane, ep_op_slice, ep_op_slice_face,
        ep_op_weld_vertex, ep_op_weld_edge, ep_op_create_shape, ep_op_make_planar, ep_op_remove_iso_verts,
        ep_op_meshsmooth, ep_op_tessellate, ep_op_retriangulate,
        ep_op_flip_face, ep_op_flip_element, ep_op_bevel, ep_op_chamfer_vertex,
        ep_op_chamfer_edge, ep_op_cut,
        ep_op_sel_grow, ep_op_sel_shrink, ep_op_inset, ep_op_extrude_vertex,
        ep_op_extrude_edge, ep_op_extrude_face,
        ep_op_extrude_along_spline, ep_op_connect_edge, ep_op_connect_vertex,
        ep_op_hinge_from_edge, ep_op_select_ring, ep_op_select_loop,
        ep_op_remove_iso_map_verts, ep_op_remove_vertex, ep_op_remove_edge, ep_op_outline,
        ep_op_toggle_shaded_faces,
        ep_op_transform, ep_op_delete_edge, ep_op_unused,
        ep_op_create, ep_op_align,
        ep_op_attach, ep_op_target_weld_vertex, ep_op_target_weld_edge,
        ep_op_edit_triangulation, ep_op_create_edge,
        ep_op_clone_vertex, ep_op_clone_edge, ep_op_clone_face,
        ep_op_insert_vertex_edge, ep_op_insert_vertex_face,
        ep_op_autosmooth, ep_op_smooth, ep_op_set_material,
        ep_op_select_by_smooth, ep_op_select_by_material, ep_op_get_stack_selection,
        ep_op_bridge_border, ep_op_bridge_polygon, ep_op_make_planar_x, ep_op_make_planar_y,
        ep_op_make_planar_z, ep_op_turn_edge, ep_op_relax, ep_op_paint_deform,
        ep_op_bridge_edge, ep_op_preserve_uv_settings, ep_op_remove_edge_remove_verts
};
Enumerator:
ep_mode_create_vertex 
ep_mode_create_edge 
ep_mode_create_face 
ep_mode_divide_edge 
ep_mode_divide_face 
ep_mode_extrude_vertex 
ep_mode_extrude_edge 
ep_mode_extrude_face 
ep_mode_chamfer_vertex 
ep_mode_chamfer_edge 
ep_mode_bevel 
ep_mode_sliceplane 
ep_mode_cut 
ep_mode_weld 
ep_mode_edit_tri 
ep_mode_inset_face 
ep_mode_quickslice 
ep_mode_hinge_from_edge 
ep_mode_pick_hinge 
ep_mode_outline 
ep_mode_bridge_border 
ep_mode_bridge_polygon 
ep_mode_pick_bridge_1 
ep_mode_pick_bridge_2 
ep_mode_turn_edge 
ep_mode_bridge_edge 
ep_mode_edit_ss 

New edit soft selection command mode for 3ds max2009.

Enumerator:
epmod_get_sel_level 
epmod_get_mn_sel_level 
epmod_set_sel_level 
epmod_get_operation 
epmod_set_operation 
epmod_local_data_changed 
epmod_refresh_screen 
epmod_commit 
epmod_commit_unless_animating 
epmod_commit_and_repeat 
epmod_cancel_operation 
epmod_convert_selection 
epmod_get_selection 
epmod_set_selection 
epmod_select 
epmod_set_primary_node 
epmod_toggle_command_mode 
epmod_enter_command_mode 
epmod_enter_pick_mode 
epmod_get_command_mode 
epmod_get_pick_mode 
epmod_popup_dialog 
epmod_button_op 
epmod_repeat_last 
epmod_in_slice_mode 
epmod_reset_slice_plane 
epmod_get_slice_plane_tm 
epmod_get_slice_plane 
epmod_set_slice_plane 
epmod_create_vertex 
epmod_create_face 
epmod_create_edge 
epmod_set_diagonal 
epmod_cut 
epmod_target_weld_vertex 
epmod_target_weld_edge 
epmod_attach_node 
epmod_attach_nodes 
epmod_detach_to_object 
epmod_create_shape 
epmod_bridge_borders 
epmod_bridge_polygons 
epmod_set_bridge_node 
epmod_get_bridge_node 
epmod_ready_to_bridge_selected 
epmod_get_preserve_map 
epmod_set_preserve_map 
epmod_turn_diagonal 
epmod_get_num_vertices 
epmod_get_vertex 
epmod_get_vertex_face_count 
epmod_get_vertex_face 
epmod_get_vertex_edge_count 
epmod_get_vertex_edge 
epmod_get_num_edges 
epmod_get_edge_vertex 
epmod_get_edge_face 
epmod_get_num_faces 
epmod_get_face_degree 
epmod_get_face_vertex 
epmod_get_face_edge 
epmod_get_face_diagonal 
epmod_get_face_material 
epmod_get_face_smoothing_group 
epmod_get_num_map_channels 
epmod_get_map_channel_active 
epmod_get_num_map_vertices 
epmod_get_map_vertex 
epmod_get_map_face_vertex 
epmod_get_face_normal 
epmod_get_face_center 
epmod_get_face_area 
epmod_get_open_edges 
epmod_get_verts_by_flag 
epmod_get_edges_by_flag 
epmod_get_faces_by_flag 
epmod_set_vertex_flags 
epmod_set_edge_flags 
epmod_set_face_flags 
epmod_get_vertex_flags 
epmod_get_edge_flags 
epmod_get_face_flags 
epmod_get_verts_using_edge 
epmod_get_edges_using_vert 
epmod_get_faces_using_edge 
epmod_get_elements_using_face 
epmod_get_faces_using_vert 
epmod_get_verts_using_face 
epmod_set_vert 
epmod_move_selection 
epmod_move_slicer 
epmod_rotate_selection 
epmod_rotate_slicer 
epmod_scale_selection 
epmod_scale_slicer 
epmod_list_operations 
epmod_set_hinge_edge 
epmod_get_hinge_edge 
epmod_bridge_edges 
epmod_in_slice 
epmod_show_operation_dialog 
epmod_showing_operation_dialog 
epmod_close_operation_dialog 
epmod_get_primary_node 
epmod_get_node_tm 
epmod_set_cut_end 
epmod_get_last_cut_end 
epmod_clear_last_cut_end 
epmod_cut_cancel 
epmod_divide_edge 
epmod_divide_face 
epmod_ring_sel 
epmod_loop_sel 
epmod_convert_selection_to_border 
epmod_paintdeform_commit 
epmod_paintdeform_cancel 
epmod_matid_floater 
epmod_matid_floatervisible 
epmod_smgrp_floater 
epmod_smgrp_floatervisible 
                     {
        epmod_get_sel_level, epmod_get_mn_sel_level, epmod_set_sel_level,
        epmod_get_operation, epmod_set_operation, epmod_local_data_changed,
        epmod_refresh_screen, epmod_commit, epmod_commit_unless_animating,
        epmod_commit_and_repeat, epmod_cancel_operation, epmod_convert_selection, epmod_get_selection,
        epmod_set_selection, epmod_select, epmod_set_primary_node,
        epmod_toggle_command_mode, epmod_enter_command_mode, epmod_enter_pick_mode,
        epmod_get_command_mode, epmod_get_pick_mode,
        epmod_popup_dialog, epmod_button_op, epmod_repeat_last, epmod_in_slice_mode,
        epmod_reset_slice_plane, epmod_get_slice_plane_tm, epmod_get_slice_plane, epmod_set_slice_plane,
        epmod_create_vertex, epmod_create_face, epmod_create_edge, epmod_set_diagonal,
        epmod_cut, epmod_target_weld_vertex, epmod_target_weld_edge, epmod_attach_node,
        epmod_attach_nodes, epmod_detach_to_object, epmod_create_shape,
        epmod_bridge_borders, epmod_bridge_polygons, epmod_set_bridge_node, epmod_get_bridge_node,
        epmod_ready_to_bridge_selected,epmod_get_preserve_map, epmod_set_preserve_map,
        epmod_turn_diagonal,

        // Access to information about mesh:
        epmod_get_num_vertices, epmod_get_vertex, epmod_get_vertex_face_count, epmod_get_vertex_face,
        epmod_get_vertex_edge_count, epmod_get_vertex_edge, epmod_get_num_edges, epmod_get_edge_vertex,
        epmod_get_edge_face, epmod_get_num_faces, epmod_get_face_degree, epmod_get_face_vertex,
        epmod_get_face_edge, epmod_get_face_diagonal, epmod_get_face_material, epmod_get_face_smoothing_group,
        epmod_get_num_map_channels, epmod_get_map_channel_active,
        epmod_get_num_map_vertices, epmod_get_map_vertex, epmod_get_map_face_vertex,

        epmod_get_face_normal, epmod_get_face_center, epmod_get_face_area, epmod_get_open_edges,
        epmod_get_verts_by_flag, epmod_get_edges_by_flag, epmod_get_faces_by_flag,
        epmod_set_vertex_flags, epmod_set_edge_flags, epmod_set_face_flags,
        epmod_get_vertex_flags, epmod_get_edge_flags, epmod_get_face_flags,
        epmod_get_verts_using_edge, epmod_get_edges_using_vert, epmod_get_faces_using_edge,
        epmod_get_elements_using_face, epmod_get_faces_using_vert, epmod_get_verts_using_face,
        epmod_set_vert,

        epmod_move_selection, epmod_move_slicer, epmod_rotate_selection, epmod_rotate_slicer,
        epmod_scale_selection, epmod_scale_slicer,

        epmod_list_operations, epmod_set_hinge_edge, epmod_get_hinge_edge,
        epmod_bridge_edges,

        epmod_in_slice, epmod_show_operation_dialog, epmod_showing_operation_dialog, 
        epmod_close_operation_dialog, epmod_get_primary_node, epmod_get_node_tm, epmod_set_cut_end, 
        epmod_get_last_cut_end, epmod_clear_last_cut_end, epmod_cut_cancel, epmod_divide_edge, 
        epmod_divide_face,epmod_ring_sel, epmod_loop_sel,epmod_convert_selection_to_border,
        epmod_paintdeform_commit, epmod_paintdeform_cancel,

        epmod_matid_floater,epmod_matid_floatervisible,
        epmod_smgrp_floater,epmod_smgrp_floatervisible

};

Variable Documentation