A
Alt+A = ArrayDir
Ctrl+A = script:moi.geometryDatabase.selectAll();
Shift+A = script:moi.view.resetAll();
Shift+Alt+A = ArrayCurve
Ctrl+Shift+A = ArrayCircular
B
B = Fillet
Alt+B = sBridge
C
C = Rebuild
Ctrl+C = CopyClipboard
Ctrl+Alt+C = ODCopyToExternal
Alt+C = script: moi.view.setCPlaneInteractive();
Ctrl+Shift+C = CopyClipboardWithOrigin
Shift+Alt+C = script: /* Align CPlane with 3D view 1.0 */ var cp = moi.view.getCPlane(), tp = moi.ui.mainWindow.viewpanel.getViewport('3D').targetFrame, tl = moi.VectorMath.pointsWithinTolerance; if (tl(cp.origin,tp.origin) && tl(cp.zaxis,tp.zaxis)) { moi.view.resetCPlane() } else {moi.view.setCPlane(tp, false)}
Shift+C = script: /* Toggle visibility of all curves */ var objs = moi.geometryDatabase.getObjects().getCurves(); var ishidden = objs.length > 0 ? objs.item(0).hidden : false; objs.setProperty( 'hidden', !ishidden );
D
D = DelCorners
Alt+D = Distribute
Ctrl+D = script: /* Duplicate selected objects */ var gd = moi.geometryDatabase; var objs = gd.getSelectedObjects(); if ( objs.length ! = 0 ) gd.copyToClipboard( objs ); moi.command.execCommand( 'paste' );
E
E = Rotate
Ctrl+E = Export
Ctrl+Shift+E = _sScale
F
F = Chamfer
Alt+F = Flow
G
G = script: /* Toggle Grid Snap */ moi.drawingAids.gridSnap = !moi.drawingAids.gridSnap;
Shift+G = script: /* Toggle grid and axis lines */ moi.grid.display = !moi.grid.display; moi.grid.showXYAxes = moi.grid.display;
H
H = script: /* Hide selection */ moi.geometryDatabase.hide();
Alt+H = script: /* Toggle using hidden edge display for selected objects only */ moi.view.hiddenLinesSelectedOnly = !moi.view.hiddenLinesSelectedOnly;
I
I = script: /* Isolate selection */ moi.geometryDatabase.isolate();
Alt+I = script:moi.geometryDatabase.invertSelection(); /Invert/
J
J = Join
Shift+J = script: /* Show naked edges */ var gd = moi.geometryDatabase; gd.deselectAll(); var breps = gd.getObjects().getBreps(); for ( var i = 0; i < breps.length; ++i ) breps.item(i).getNakedEdges().setProperty( 'selected', true );
L
L = Polyline
Shift+L = Loft
Alt+L = script: /* Select edges v1.4 */ var gd = moi.geometryDatabase, so = gd.getSelectedObjects(); function ss(o,v){o.setProperty("selected",v)} function sl(o){ for ( var i = 0; i<o.length; ++i ) o.item(i).getEdges().invertProperty("selected");} gd.selectLoop(); sl(so.getFaces()); sl(so.getSolids()); sl(so.getOpenBReps()); sl(so.getSingleFaceBReps()); ss(so.getBReps(),0); ss(so.getFaces(),0);
Ctrl+Alt+L = script: /* Loop selection */ moi.geometryDatabase.selectLoop();
Ctrl+Shift+L = script: /*! Show-hide edges on selected objects */var breps = moi.geometryDatabase.getSelectedObjects().getBreps(); for ( var i = 0; i < breps.length; ++i ) {var brep = breps.item(i);brep.getEdges().invertProperty( 'hidden');}
Shift+Alt+L = script: /* Highlight naked edges */ var gd = moi.geometryDatabase; gd.deselectAll(); var breps = gd.getObjects().getBreps(); for ( var i = 0; i < breps.length; ++i ) breps.item(i).getNakedEdges().setProperty( 'selected', true );
M
M = Mirror
Ctrl+M = Merge
Alt+M = unwrapcurve
N
Ctrl+N = New
Alt+N = orient
O
O = Offset
Ctrl+O = Open
P
P = PlanarSrf
Q
Alt+Q = script:moi.ui.mainWindow.viewpanel.reverseView( moi.ui.getActiveViewport().name );
R
R = Scale
Alt+R = Scale2d
Ctrl+Alt+R = Scale1d
Ctrl+R = RailRevolve
Ctrl+Shift+R = Revolve
Shift+R = ScaleIndividual
S
S = script: /* Scale, switch between center and regular */ var didcenter = false; try { didcenter = moi.command.getOption( 'scale_center' ); } catch(e){} if ( didcenter ) { moi.command.execCommand( 'Scale' ); } else { moi.command.execCommand( 'Scale BoundingBoxCenter' ); } moi.command.setOption( 'scale_center', !didcenter );
Ctrl+Shift+S = SaveAs
Ctrl+S = Save
Ctrl+Alt+S = IncrementalSave
Shift+S = Sweep
T
T = Trim
Ctrl+Shift+T = _sSplit
Alt+T = script: /* Toggle both sides for offset or extrude */ if ( moi.command.currentCommandName ) { if ( moi.ui.commandUI.curvebothsides ) moi.ui.commandUI.curvebothsides.click(); if ( moi.ui.commandUI.bothsides ) moi.ui.commandUI.bothsides.click(); }
Ctrl+T = script: /* Toggle cap ends for offset or extrude */ if ( moi.command.currentCommandName ) { if ( moi.ui.commandUI.curvecapends ) moi.ui.commandUI.curvecapends.click(); if ( moi.ui.commandUI.capends ) moi.ui.commandUI.capends.click(); }
U
U = script:var gd = moi.geometryDatabase; gd.deselectAll(); var objects = gd.getObjects(); for ( var i = 0; i < objects.length; ++i ) { var obj = objects.item(i); if ( obj.name = = '' ) { obj.selected = true; } }
V
Ctrl+V = Paste
Ctrl+Alt+V = ODPasteFromExternal
Ctrl+Shift+V = PastePart
W
Alt+W = script:/* Wireframe v1.0 */ var gd = moi.geometryDatabase, so = gd.getSelectedObjects(); if (so.length>0) { so.setProperty( 'displayMode',1); so.setProperty( 'selected', 0); } else { gd.getObjects().setProperty( 'displayMode',0); }
Shift+W = move boundingboxcenter
W = script: /* Move, switch between center and regular */ var didcenter = false; try { didcenter = moi.command.getOption( 'move_center' ); } catch(e){} if ( didcenter ) { moi.command.execCommand( 'Move' ); } else { moi.command.execCommand( 'Move BoundingBoxCenter' ); } moi.command.setOption( 'move_center', !didcenter );
X
X = Extrude
Ctrl+Shift+X = ExplodeMove
Ctrl+X = Cut
Y
Ctrl+Y = script:moi.command.redo();
Z
Ctrl+Z = script:moi.command.undo();
Shift+Z = script: /* Toggle edge display */ var breps = moi.geometryDatabase.getObjects().getBReps(); var hide = true; for ( var i = 0; i < breps.length; ++i ) { var edges = breps.item(i).getEdges(); if ( i = = 0 ) hide = !edges.item(0).hidden; edges.setProperty( 'hidden', hide ); }
Ctrl+Shift+Z = script:moi.command.redo();
Numbers
5 = script:/* Wireframe v1.0 */ var gd = moi.geometryDatabase, so = gd.getSelectedObjects(); if (so.length>0) { so.setProperty( 'displayMode',1); so.setProperty( 'selected', 0); } else { gd.getObjects().setProperty( 'displayMode',0); }
Numpad
Numpad- = BooleanDifference
Numpad* = BooleanUnion
Numpad/ = BooleanIntersection
Numpad+ = BooleanMerge
Numpad5 = script: /* Toggle between Parallel and Perspective view */ var vp = moi.ui.mainWindow.viewpanel.getViewport('3D'); vp.projection = (vp.projection == 'Perspective' ? 'Parallel': 'Perspective');
Numpad7 = script: /* Top view */ var vname = 'Top'; var vp = moi.ui.mainWindow.viewpanel; vp.mode = vname; if ( vp.getViewport(vname).name != vname ) vp.reverseView( vname );
Alt+Numpad1 = script: /* Top view */ var vname = 'Top'; var vp = moi.ui.mainWindow.viewpanel; vp.mode = vname; if ( vp.getViewport(vname).name ! = vname ) vp.reverseView( vname );
Alt+Numpad2 = script: /* Front view */ var vname = 'Front'; var vp = moi.ui.mainWindow.viewpanel; vp.mode = vname; if ( vp.getViewport(vname).name ! = vname ) vp.reverseView( vname );
Alt+Numpad3 = script: /* Right view */ var vname = 'Right'; var vp = moi.ui.mainWindow.viewpanel; vp.mode = vname; if ( vp.getViewport(vname).name ! = vname ) vp.reverseView( vname );
Ctrl+Numpad- = script:/* Shrink selection 1.0 */ function es(edg){ var i,f; for (i = 0; i<edg.length; i++) {f = edg.item(i).getFacesOfEdge(); f.setProperty('selected',0);}} var gd = moi.geometryDatabase; gd.invertSelection(); var so = gd.getSelectedObjects(), sf = so.getFaces(), i; gd.invertSelection(); for ( i = 0; i<sf.length;i++) es(sf.item(i).getEdges());
Ctrl+Numpad+ = script:/* Expand selection 1.0 */ function es(edg){ var i,f; for (i = 0; i<edg.length; i++) {f = edg.item(i).getFacesOfEdge(); f.setProperty('selected',1);}} var so = moi.geometryDatabase.getSelectedObjects(), sf = so.getFaces(), i; for ( i = 0; i<sf.length;i++) es(sf.item(i).getEdges()); es(so.getEdges());
Function
F1 = script:moi.launchHelp();
Alt+F1 = script: moi.ui.createDialog( 'Options.htm', 'resizeable,defaultWidth:43em,defaultHeight:32em' );
F2 = script: /* Edit object name */ var pp = moi.ui.propertiesPanel; if (pp.show && pp.numSelectedObjects > 0) { pp.editName(); }
F3 = script:/* Object Library Dialog*/ moi.ui.createDialog( 'moi://appdata/customui/ObjLibrary.menu.htm' );
F10 = script: /* Untrim the selected surface */ var gd = moi.geometryDatabase; srfs = gd.getSelectedObjects().getSingleFaceBReps(); gd.deselectAll(); for ( var i = 0; i < srfs.length; ++i ) srfs.item(i).getEdges().setProperty( 'selected', true ); moi.command.execCommand( 'delete' );
F11 = script: /* Open Add New Style dialog */ var gd = moi.geometryDatabase; gd.styleEditorOpened(); var dialog = moi.ui.createDialog( 'EditStyleDialog.htm?titleid = Add style dialog title&index = -1', '', moi.ui.mainWindow ); if ( dialog.window.doModal() ! = -1 ) { var styles = gd.getObjectStyles(); if ( styles.length> 0 ) moi.ui.propertiesPanel.editStyleIndex( styles.length - 1 ); } gd.styleEditorClosed();
F12 = var p = moi.ui.getUIPanel( 'moi://ui/BrowserPane.htm' ); if ( p ) { var w = p.document.body.style.width; if ( w = = '' || w = = '15em' ) { w = '20em'; } else if ( w = = '20em' ) { w = '30em' } else { w = '15em' } p.document.body.style.width = w; }
Punctuation
- = script:/* Calculate length of selected curves and copy to the clipboard as text */ var crvs = moi.geometryDatabase.getSelectedObjects().getCurves(); var len = 0.0; for ( var i = 0; i < crvs.length; ++i ) len + = crvs.item(i).getLength(); moi.copyTextToClipboard( len );
`= script: /* 3D view (perspective or isometric) */ moi.ui.mainWindow.viewpanel.mode = '3D';
Alt+. = ShowPoints
Ctrl+. = AddPoint
Backspace = Delete
Delete = Delete
Space = script:if ( moi.ui.mainWindow.viewpanel.mode ! = 'split' ) { moi.ui.mainWindow.viewpanel.mode = 'split' } else { var viewport = moi.ui.getViewportUnderMouse(); if ( viewport ) viewport.viewpanel.mode = viewport.name; }
Arrows
Alt+RightArrow = script:moi.view.setCPlane( moi.vectorMath.createRightFrame() );
Alt+UpArrow = script:moi.view.resetCPlane();
Alt+DownArrow = script:moi.view.setCPlane( moi.vectorMath.createFrontFrame() );
Alt+LeftArrow = script: /* Align CPlane with 3D view 1.0 */ var cp = moi.view.getCPlane(), tp = moi.ui.mainWindow.viewpanel.getViewport('3D').targetFrame, tl = moi.VectorMath.pointsWithinTolerance; if (tl(cp.origin,tp.origin) && tl(cp.zaxis,tp.zaxis)) { moi.view.resetCPlane() } else {moi.view.setCPlane(tp, false)}
DownArrow = Nudge Down
LeftArrow = Nudge Left
RightArrow = Nudge Right
UpArrow = Nudge Up
Shift+LeftArrow = Nudge Left Small
Shift+RightArrow = Nudge Right Small
Shift+UpArrow = Nudge Up Small
Shift+DownArrow = Nudge Down Small
PageDown = Nudge ZDown
PageUp = Nudge ZUP
Shift+PageUp = Nudge ZUp Small
Shift+PageDown = Nudge ZDown Small
MacBook
Ctr+Alt+D = BooleanDifference
Ctr+Alt+U = BooleanUnion
Ctr+Alt+I = BooleanIntersection