Triple Squid Software Design
6729 25th Avenue NW
Seattle, Washington 98117
USA
web: http://moi3d.com ¦ http://moi3d.com/wiki
forum: http://moi3d.com/forum
e-mail: [email protected]
La page originale de Petr: http://kyticka.webzdarma.cz/3d/moi/
6729 25th Avenue NW
Seattle, Washington 98117
USA
web: http://moi3d.com ¦ http://moi3d.com/wiki
forum: http://moi3d.com/forum
e-mail: [email protected]
La page originale de Petr: http://kyticka.webzdarma.cz/3d/moi/
Page augmentée depuis, dont les plugins ajoutés se retrouvent dans les menus de ce présent site!
Documentation & autres (cette section "Doc & autres" est en anglais! )
Notes sur les Bétas: V1 ¦ V2 new Tutoriels Vidéo Mentions Programmes Liens
Notes sur les Bétas: V1 ¦ V2 new Tutoriels Vidéo Mentions Programmes Liens
Scripts pour l'écran (cette section et le reste de la page est en français)
Déplacer la Vue
|
Afficher
|
Lignes d'Aide
|
Sélection
|
Cacher
|
Autres
|
Commandes particulières
Auto Rotation
|
Sélection Cycle
|
Interface
Utilitaires
Sript en Ligne de Commande
Vous pouvez mettre les scripts suivants comme raccourcis clavier. Pour les définir Ouvrir l'icône Options, allez à la section Raccourcis cliquez le bouton "Ajoute" qui créera une nouvelle zone libre pour un raccourci; cliquez dans la colonne "Key" et ajoutez la touche que vous voulez utiliser pour l'activer; comme "H" par exemple, puis cliquez dans la colonne "Command" et coller dedans le script line _or_ open le fichier moi.ini. (C:\Documents and Settings\[your user name] \Application Data\Moi\moi.ini) et éditez directement la section[Shortcut Keys] . Assigner juste quelques touches comme (K,Espace) des combinaisons (Ctrl+U, Alt+E) ou des fonctions(F5). Le code d'un raccourci doit être sur une seule longue ligne. De simples raccourcis peuvent être trouvés ici.
Note: pour les raccourcis clavier qui ont du code, vous pouvez mettre un commentaire avec une note à l'intérieur. Vous mettez un texte entouré de /* */ , juste après le script: - voir Forum Moi par exemple.
Vous pouvez mettre les scripts suivants comme raccourcis clavier. Pour les définir Ouvrir l'icône Options, allez à la section Raccourcis cliquez le bouton "Ajoute" qui créera une nouvelle zone libre pour un raccourci; cliquez dans la colonne "Key" et ajoutez la touche que vous voulez utiliser pour l'activer; comme "H" par exemple, puis cliquez dans la colonne "Command" et coller dedans le script line _or_ open le fichier moi.ini. (C:\Documents and Settings\[your user name] \Application Data\Moi\moi.ini) et éditez directement la section[Shortcut Keys] . Assigner juste quelques touches comme (K,Espace) des combinaisons (Ctrl+U, Alt+E) ou des fonctions(F5). Le code d'un raccourci doit être sur une seule longue ligne. De simples raccourcis peuvent être trouvés ici.
Note: pour les raccourcis clavier qui ont du code, vous pouvez mettre un commentaire avec une note à l'intérieur. Vous mettez un texte entouré de /* */ , juste après le script: - voir Forum Moi par exemple.
Zoom & Mvt - La façon de marcher de cette version correspond au passage de la souris au-dessus d'une fenêtre. Si la souris n'est pas au-dessus d'une fenêtre, le dernier clic de celle-ci au-dessus d'une fenêtre sera utilisé. Ou si une seule fenêtre est maximisée, celle-ci sera utilisée. (Proposition de combinaison de flèches! )
script:moi.ui.getActiveViewport().Pan( -1, 0 );
|
script:moi.ui.getActiveViewport().Pan( 1, 0 );
|
script:moi.ui.getActiveViewport().Pan( 0, 1 );
|
script:moi.ui.getActiveViewport().Pan( 0, -1 );
|
script:moi.ui.getActiveViewport().Zoom( 0.9 );
|
script:moi.ui.getActiveViewport().Zoom( 1.1 );
|
Zoom Zone - Ouvre la Zone de Zoom sur laquelle se trouve la souris.
script:var v = moi.ui.getActiveViewport(); if ( v ) v.interactiveViewChange('zoomarea');
script:var v = moi.ui.getActiveViewport(); if ( v ) v.interactiveViewChange('zoomarea');
Zoom Etendu: Fonctionne de la même manière que le bouton Centrer. Cela fera un zoom sur l'objet choisi au premier clic et sur l'ensemble au deuxième clic.
script:moi.view.resetAll(); #1 pour Zoomer sur toute la vue.
script:moi.view.resetAll(); #2 pour un zoom étendu sur une seule fenêtre ou sur toute la vue dépendant de la position de la souris ou de son dernier clic.
script:moi.ui.getActiveViewport().reset(); #3 pour un zoom étendu sur une seule fenêtre ou se trouve la souris ou sur toutes les vues si la souris n'est pas sur une vue .
script:var viewport = moi.ui.getViewportUnderMouse(); if ( viewport ) { viewport.reset(); } else { moi.view.resetAll(); }
script:moi.view.resetAll(); #1 pour Zoomer sur toute la vue.
script:moi.view.resetAll(); #2 pour un zoom étendu sur une seule fenêtre ou sur toute la vue dépendant de la position de la souris ou de son dernier clic.
script:moi.ui.getActiveViewport().reset(); #3 pour un zoom étendu sur une seule fenêtre ou se trouve la souris ou sur toutes les vues si la souris n'est pas sur une vue .
script:var viewport = moi.ui.getViewportUnderMouse(); if ( viewport ) { viewport.reset(); } else { moi.view.resetAll(); }
Rotation Vue - Permet la rotation de la vue 3D avec les touches de direction.
Pour ce faire, utilisez les raccourcis clavier:
Pour ce faire, utilisez les raccourcis clavier:
script:moi.ui.mainWindow.viewpanel.getViewport('3D').rotate( 'up', 6.0 );
|
script:moi.ui.mainWindow.viewpanel.getViewport('3D').rotate( 'down', 6.0 );
|
script:moi.ui.mainWindow.viewpanel.getViewport('3D').rotate( 'left', 6.0 );
|
script:moi.ui.mainWindow.viewpanel.getViewport('3D').rotate( 'right', 6.0 );
|
Inverser Ecran/Ecran Maximum - Bascule les écrans de vue étant sous la souris Haut (Bas) / Face (Dos) / Droite (Gauche) / Vue 3D.
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; }
Inverser Ecran - Inverse tous les écrans de vue (Haut-Bas, Face-Dos, Droite-Gauche) et vis-versa.
script:var viewport = new Array( 'Top', 'Front', 'Right' ); for ( a in viewport ) { moi.ui.mainWindow.viewpanel.reverseView( viewport[a] ) }
Vous pouvez également configurer ce script en place pour inverser une vue spécifique, utiliser le paramètre 'Haut', 'Face', ou 'Droit': ('Top','Face' ou 'Right')
script:moi.ui.mainWindow.viewpanel.reverseView( 'Top' );
Ou si vous voulez inverser la vue sous la souris, celui-ci le fera:
script:moi.ui.mainWindow.viewpanel.reverseView( moi.ui.getActiveViewport().name );
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; }
Inverser Ecran - Inverse tous les écrans de vue (Haut-Bas, Face-Dos, Droite-Gauche) et vis-versa.
script:var viewport = new Array( 'Top', 'Front', 'Right' ); for ( a in viewport ) { moi.ui.mainWindow.viewpanel.reverseView( viewport[a] ) }
Vous pouvez également configurer ce script en place pour inverser une vue spécifique, utiliser le paramètre 'Haut', 'Face', ou 'Droit': ('Top','Face' ou 'Right')
script:moi.ui.mainWindow.viewpanel.reverseView( 'Top' );
Ou si vous voulez inverser la vue sous la souris, celui-ci le fera:
script:moi.ui.mainWindow.viewpanel.reverseView( moi.ui.getActiveViewport().name );
Angle de Vue - Fixe des angles de vue par une touche de raccourci:
Up/Down contrôle de l'angle vertical, est au sommet vue plongeante.
Gauche / Droite contrôles d'angle horizontal, 0 est à plat, 90 est le droit, etc.
Roulis à gauche ou à droite le long de la vue actuelle direction.
script:var v = moi.ui.mainWindow.viewpanel.getViewport('3D'); v.leftRightAngle = 45; v.upDownAngle = 90; v.tiltAngle = 0;
Up/Down contrôle de l'angle vertical, est au sommet vue plongeante.
Gauche / Droite contrôles d'angle horizontal, 0 est à plat, 90 est le droit, etc.
Roulis à gauche ou à droite le long de la vue actuelle direction.
script:var v = moi.ui.mainWindow.viewpanel.getViewport('3D'); v.leftRightAngle = 45; v.upDownAngle = 90; v.tiltAngle = 0;
Sélection des Arêtes Libres (V2) - Désactive tous les objets et met en surbrillance tous les côtés qui ne sont pas joints de sorte que cela peut aider à vous montrer les parties d'un objet qui ne délimite pas un solide fermé (objet étanche).
script: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 );
script: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 );
Selection Visible (V2) - Lorsque vous appuyez sur la touche que vous avez attribuée au raccourci, cela sélectionne les objets visibles. Ce sont tous les objets visibles sur toute la fenêtre - ce sont tous les objets qui auraient été accessibles par un clic de type sélection. Voir forum.
script:moi.geometryDatabase.selectVisible();
script:moi.geometryDatabase.selectVisible();
Sélection Parents - Si vous avez sélectionné un objet, il passe la sélection à tous les parents qui ont servi à la réalisation de cet objet. Ainsi, par exemple, si vous sélectionnez un surface tendue, après que vous exécutiez le script original les courbes ayant générées la surface tendue seront sélectionnées.
script:var gd = moi.geometryDatabase; var objs = gd.getSelectedObjects(); gd.deselectAll(); for ( var i = 0; i < objs.length; ++i ) { var parents = objs.item(i).getHistoryParents(); parents.setProperty( 'selected', true ); }
script:var gd = moi.geometryDatabase; var objs = gd.getSelectedObjects(); gd.deselectAll(); for ( var i = 0; i < objs.length; ++i ) { var parents = objs.item(i).getHistoryParents(); parents.setProperty( 'selected', true ); }
Sélection Enfants - Si vous avez sélectionné un objet, il passe à la sélection des enfants qui ont été générés grâce à cet objet. Ainsi, par exemple, si vous sélectionnez l'une des première courbe d'une surface tendue, après avoir exécuté ce script, la surface sera sélectionnée.
script:var gd = moi.geometryDatabase; var objs = gd.getSelectedObjects(); gd.deselectAll(); for ( var i = 0; i < objs.length; ++i ) { var children = objs.item(i).getHistoryChildren(); children.setProperty( 'selected', true ); }
script:var gd = moi.geometryDatabase; var objs = gd.getSelectedObjects(); gd.deselectAll(); for ( var i = 0; i < objs.length; ++i ) { var children = objs.item(i).getHistoryChildren(); children.setProperty( 'selected', true ); }
Sélectionner Dernière Commande Créée - Sélectionne tous les objets qui ont été générés par la dernière commande. Ainsi Par exemple, après la fonction Trame vous pouvez frapper la touche de raccourci avec ce script, et tous les résultats de Trame seront affichés.
script:var a = moi.command.lastCommandRevisionStart; var b = moi.command.lastCommandRevisionEnd; var objects = moi.geometryDatabase.getObjects(); for ( var i = 0; i < objects.length; ++i ) { var obj = objects.item(i); if ( obj.databaseRevision > a && obj.databaseRevision <= b ) obj.selected = true; }
Si vous voulez avoir toujours les objets créés sélectionnés (avec tout le reste désélectionné) au lieu d'être ajoutés à la sélection courante, utilisez ce script :
script:moi.geometryDatabase.deselectAll(); var a = moi.command.lastCommandRevisionStart; var b = moi.command.lastCommandRevisionEnd; var objects = moi.geometryDatabase.getObjects(); for ( var i = 0; i < objects.length; ++i ) { var obj = objects.item(i); if ( obj.databaseRevision > a && obj.databaseRevision <= b ) obj.selected = true; }
script:var a = moi.command.lastCommandRevisionStart; var b = moi.command.lastCommandRevisionEnd; var objects = moi.geometryDatabase.getObjects(); for ( var i = 0; i < objects.length; ++i ) { var obj = objects.item(i); if ( obj.databaseRevision > a && obj.databaseRevision <= b ) obj.selected = true; }
Si vous voulez avoir toujours les objets créés sélectionnés (avec tout le reste désélectionné) au lieu d'être ajoutés à la sélection courante, utilisez ce script :
script:moi.geometryDatabase.deselectAll(); var a = moi.command.lastCommandRevisionStart; var b = moi.command.lastCommandRevisionEnd; var objects = moi.geometryDatabase.getObjects(); for ( var i = 0; i < objects.length; ++i ) { var obj = objects.item(i); if ( obj.databaseRevision > a && obj.databaseRevision <= b ) obj.selected = true; }
Sélectionner Courbes - Sélectionne toutes les courbes.
script:moi.geometryDatabase.getObjects().getCurves().setProperty( 'selected', true );
script:moi.geometryDatabase.getObjects().getCurves().setProperty( 'selected', true );
Sélectionner Courbes Fermées - Sélectionne toutes les courbes fermées.
Qscript:var curves = moi.geometryDatabase.getObjects().getCurves(); for ( var i = 0; i < curves.length; ++i ) if ( curves.item(i).isClosed ) curves.item(i).selected = true;
Qscript:var curves = moi.geometryDatabase.getObjects().getCurves(); for ( var i = 0; i < curves.length; ++i ) if ( curves.item(i).isClosed ) curves.item(i).selected = true;
Sélectionner Courbes Ouvertes - Sélectionne toutes les courbes ouvertes.
script:var curves = moi.geometryDatabase.getObjects().getCurves(); for ( var i = 0; i < curves.length; ++i ) if ( !curves.item(i).isClosed ) curves.item(i).selected = true;
script:var curves = moi.geometryDatabase.getObjects().getCurves(); for ( var i = 0; i < curves.length; ++i ) if ( !curves.item(i).isClosed ) curves.item(i).selected = true;
Sélectionner Breps Fermés - Sélectionne toutes les surfaces fermées ou les polysurfaces.
script:moi.geometryDatabase.getObjects().getSolids().setProperty( 'selected', true );
script:moi.geometryDatabase.getObjects().getSolids().setProperty( 'selected', true );
Capture Ecran vers Fichier - Vous pouvez utiliser ce script pour enregistrer une capture d'écran vers un fichier à l'aide d'un raccourci clavier, sans avoir besoin de lancer tout autre programme.
script:var img = moi.view.screenshot( 'viewpanel', false ); var name = img.getSaveFileName(); if ( name != '' ) img.save( name );
script:var img = moi.view.screenshot( 'viewpanel', false ); var name = img.getSaveFileName(); if ( name != '' ) img.save( name );
Capture Vue vers Presse-Papiers - Cela rend une image et la copie dans le presse-papiers; vous avez la possibilité d'ajuster la résolution et la longueur de ligne, voir MoI forum.
script:var v = moi.ui.getActiveViewport(); if ( v != null ) { moi.view.lineWidth = 4; v.renderToClipboard( 2560, 2560 ); moi.view.lineWidth = 1; }
script:var v = moi.ui.getActiveViewport(); if ( v != null ) { moi.view.lineWidth = 4; v.renderToClipboard( 2560, 2560 ); moi.view.lineWidth = 1; }
Bascule Direction de la Lumière - Bascule la direction de la lumière, entre la standard et l'alternative.
script:var dir = moi.view.lightDirection; if ( dir.x == 1 && dir.y == 1 && dir.z == -1 ) { dir.set(-0.5,1,0); } else { dir.set(1,1,-1); } moi.view.lightDirection = dir;
script:var dir = moi.view.lightDirection; if ( dir.x == 1 && dir.y == 1 && dir.z == -1 ) { dir.set(-0.5,1,0); } else { dir.set(1,1,-1); } moi.view.lightDirection = dir;
Bascule Ligne Cachée - Pour basculer rapidement Ligne Cachée On/Off.
script:moi.view.showHiddenLineCurves = !moi.view.showHiddenLineCurves; moi.view.showHiddenLineEdges = !moi.view.showHiddenLineEdges; Pour Basculer Ligne Cachée pour la V2 utiliser ceci.
script:moi.view.showHiddenLines =! moi.view.showHiddenLines;
script:moi.view.showHiddenLineCurves = !moi.view.showHiddenLineCurves; moi.view.showHiddenLineEdges = !moi.view.showHiddenLineEdges; Pour Basculer Ligne Cachée pour la V2 utiliser ceci.
script:moi.view.showHiddenLines =! moi.view.showHiddenLines;
Mode Temporaire Ombré (sans les côtés) - pour basculer le mode Côtés visibles On/Off.
script: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 ); }
script: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 ); }
Mode Fil de Fer Temporaire - pour basculer le mode Faces visibles On/Off.
script:var breps = moi.geometryDatabase.getObjects().getBReps(); var hide = true; for ( var i = 0; i < breps.length; ++i ) { var faces = breps.item(i).getFaces(); if ( i == 0 ) hide = !faces.item(0).hidden; faces.setProperty( 'hidden', hide ); }
script:var breps = moi.geometryDatabase.getObjects().getBReps(); var hide = true; for ( var i = 0; i < breps.length; ++i ) { var faces = breps.item(i).getFaces(); if ( i == 0 ) hide = !faces.item(0).hidden; faces.setProperty( 'hidden', hide ); }
Cacher Image Arrière-Plan - Cacher tout ce qui est visible / montrer les images de l'arrière-plan invisible.
script:var images = moi.view.getBackgroundImages(); for ( var i = 0; i < images.length; ++i ) images.item(i).hidden = !images.item(i).hidden;
script:var images = moi.view.getBackgroundImages(); for ( var i = 0; i < images.length; ++i ) images.item(i).hidden = !images.item(i).hidden;
Cacher Inverse - Cacher tous les objets visibles et montrer tous les objets invisibles cachés précedemment.
script:var gd = moi.geometryDatabase; gd.deselectAll(); gd.hide( true ); gd.invertSelection(); gd.hide( true );
script:var gd = moi.geometryDatabase; gd.deselectAll(); gd.hide( true ); gd.invertSelection(); gd.hide( true );
Cacher Non Sélectionné - Cacher tous les objets visibles non sélectionnés.
script:moi.geometryDatabase.invertSelection(); moi.geometryDatabase.hide( true );
script:moi.geometryDatabase.invertSelection(); moi.geometryDatabase.hide( true );
Cacher Courbes - Cacher toutes les courbes.
script:moi.geometryDatabase.getObjects().getCurves().setProperty( 'hidden', true );
script:moi.geometryDatabase.getObjects().getCurves().setProperty( 'hidden', true );
Cacher Surfaces - Cacher toutes les surfaces.
script:moi.geometryDatabase.getObjects().getBReps().setProperty( 'hidden', true );
script:moi.geometryDatabase.getObjects().getBReps().setProperty( 'hidden', true );
Cacher Solides - Cacher toutes les (poly)surfaces fermées.
Shift+Qscript:moi.geometryDatabase.getObjects().getSolids().setProperty( 'hidden', true );
Shift+Qscript:moi.geometryDatabase.getObjects().getSolids().setProperty( 'hidden', true );
Garder Lignes de Construction - Aussi ne seront-elles pas effacées à la fin de la commande courante.
script:moi.geometryDatabase.getObjects().getConstructionLines().setProperty( "isTemporary", false );
script:moi.geometryDatabase.getObjects().getConstructionLines().setProperty( "isTemporary", false );
Effacer Lignes de Construction - Effacer toutes les lignes de construction.
script:var gd = moi.geometryDatabase; gd.removeObjects( gd.getObjects().getConstructionLines() );
script:var gd = moi.geometryDatabase; gd.removeObjects( gd.getObjects().getConstructionLines() );
Effacer Dernière Ligne de Construction - vous pouvez mettre en place ce raccourci clavier qui permettra d'éliminer la dernière ligne de construction ajoutée.
script:var gd = moi.geometryDatabase; var clines = gd.getObjects().getConstructionLines(); if ( clines.length > 0 ) gd.removeObject( clines.item(clines.length-1) );
script:var gd = moi.geometryDatabase; var clines = gd.getObjects().getConstructionLines(); if ( clines.length > 0 ) gd.removeObject( clines.item(clines.length-1) );
Vous pouvez aussi installer la commande Ligne de Construction de Paul pour manipuler les opérations du dessus. Voir forum.
Verrouillage des Points de Contrôle - Ce script permet de montrer les points de contrôle pour les objets sélectionnés puis à son tour sur la sélection de verrouillage pour chaque objet qui n'a pas de points activés. Lorsque, dans ce mode, d'autres objets ne sont pas sélectionnables, de sorte que vous pouvez sélectionner et faire glisser les différents points, sans obtenir d'autres objets en cours de route. Appuyez sur Echap deux fois pour quitter ce mode (en fait, il fonctionne comme si rien n'était sélectionné lorsque vous appuyez sur Echap, il va chercher à voir s'il y a une sélection sélection verrouillée ).
script:moi.geometryDatabase.showPoints(); var objs = moi.geometryDatabase.getObjects(), locked = moi.geometryDatabase.createObjectList(); for ( var i = 0; i < objs.length; ++i ) { var obj = objs.item(i); if ( !obj.showPoints ) locked.addObject( obj ); } locked.lockSelection();
Verrouiller non Sélectionné - Verrouille tous les objets qui ne sont pas sélectionnés. Pressez Echap deux fois pour sortir de ce mode.
script:var objs = moi.geometryDatabase.getObjects(), locked = moi.geometryDatabase.createObjectList(); for ( var i = 0; i < objs.length; ++i ) { var obj = objs.item(i); if ( !obj.selected ) locked.addObject( obj ); } locked.lockSelection(); Voir aussi la discussion sur le mécanisme de bloquage.
script:moi.geometryDatabase.showPoints(); var objs = moi.geometryDatabase.getObjects(), locked = moi.geometryDatabase.createObjectList(); for ( var i = 0; i < objs.length; ++i ) { var obj = objs.item(i); if ( !obj.showPoints ) locked.addObject( obj ); } locked.lockSelection();
Verrouiller non Sélectionné - Verrouille tous les objets qui ne sont pas sélectionnés. Pressez Echap deux fois pour sortir de ce mode.
script:var objs = moi.geometryDatabase.getObjects(), locked = moi.geometryDatabase.createObjectList(); for ( var i = 0; i < objs.length; ++i ) { var obj = objs.item(i); if ( !obj.selected ) locked.addObject( obj ); } locked.lockSelection(); Voir aussi la discussion sur le mécanisme de bloquage.
Repéter Dernière Commande - Un clic Droit dans la vue répète la dernière commande. Vous pouvez aussi assigner un raccourci à une touche du clavier comme ceci:
script:moi.command.repeatLastCommand();
script:moi.command.repeatLastCommand();
Bascule Axe Snap - -Cela bascule le Snap ON / OFF sur les grands axes des lignes de la grille dans toute la fenêtre, comme si il y avait une construction permanente de ligne.
script:moi.drawingAids.objectSnapAxis = !moi.drawingAids.objectSnapAxis;
script:moi.drawingAids.objectSnapAxis = !moi.drawingAids.objectSnapAxis;
Dupliquer Bords - Ce script pourrait être utile pour certains transfert de données - cela double chaque bord de chaque surface solide ou de la scène comme un objet ayant des courbes indépendantes régulières . Ces objets courbes peuvent alors être transformés en utilisant l' utilitaire DXF 3dmCurves2DXF.
script:var breps = moi.geometryDatabase.getObjects().getBReps(); for ( var iBrep = 0; iBrep < breps.length; ++iBrep ) { var brep = breps.item(iBrep); var edges = brep.getEdges(); for ( var iEdge = 0; iEdge < edges.length; ++iEdge ) { var newedge = edges.item(iEdge).clone(); moi.geometryDatabase.addObject( newedge ); newedge.selected = true; } }
script:var breps = moi.geometryDatabase.getObjects().getBReps(); for ( var iBrep = 0; iBrep < breps.length; ++iBrep ) { var brep = breps.item(iBrep); var edges = brep.getEdges(); for ( var iEdge = 0; iEdge < edges.length; ++iEdge ) { var newedge = edges.item(iEdge).clone(); moi.geometryDatabase.addObject( newedge ); newedge.selected = true; } }
Effacer Points
script:var gd = moi.geometryDatabase; var pts = gd.getObjects().getPoints(); gd.removeObjects( pts );
script:var gd = moi.geometryDatabase; var pts = gd.getObjects().getPoints(); gd.removeObjects( pts );
Contraintes - Etablit un raccourci pour une distance spécifique ou un angle de contrainte.
Il y a une méthode moi.ui.getActivePointPicker() qui retourne le point cliqué attendu, ou 0 si rien n'est attendu.
Il y a aussi setDistanceConstraint() et setAngleConstraint() valables sur un point cliqué.
Ainsi le script suivant, par exemple, met en place une distance de contrainte de 10 unités.
Créer une polyligne avec un lot de 10 segments unité, appuyez sur le raccourci après la récolte chaque point.
script:var pointpicker = moi.ui.getActivePointPicker(); if ( pointpicker != null ) pointpicker.setDistanceConstraint(10.0); Appuyez sur le raccourci pour un angle de contrainte.
script:var pointpicker = moi.ui.getActivePointPicker(); if ( pointpicker != null ) pointpicker.setAngleConstraint(20.0);
Il y a une méthode moi.ui.getActivePointPicker() qui retourne le point cliqué attendu, ou 0 si rien n'est attendu.
Il y a aussi setDistanceConstraint() et setAngleConstraint() valables sur un point cliqué.
Ainsi le script suivant, par exemple, met en place une distance de contrainte de 10 unités.
Créer une polyligne avec un lot de 10 segments unité, appuyez sur le raccourci après la récolte chaque point.
script:var pointpicker = moi.ui.getActivePointPicker(); if ( pointpicker != null ) pointpicker.setDistanceConstraint(10.0); Appuyez sur le raccourci pour un angle de contrainte.
script:var pointpicker = moi.ui.getActivePointPicker(); if ( pointpicker != null ) pointpicker.setAngleConstraint(20.0);
Bascule Paramètres de Maillage - Basculer maillage permet de passer d'un maillage rugueux à un maillage lissé et et vis-versa, de sorte que vous pouvez gérer un modèle complexe sans heurts.
script:moi.view.meshAngle = ( Math.abs( moi.view.meshAngle - 40 ));
script:moi.view.meshAngle = ( Math.abs( moi.view.meshAngle - 40 ));
Bascule Angle Snap - Bascule l'angle de Snap entre 90° par défaut et 45° et vis-versa.
script:moi.drawingAids.straightSnapAngle = Math.abs( moi.drawingAids.straightSnapAngle - 135 );
script:moi.drawingAids.straightSnapAngle = Math.abs( moi.drawingAids.straightSnapAngle - 135 );
Snap Grille - Cela vous permet de mettre en place rapidement des Snap d'unités de 10.0 ou 100.0, raccourci clavier que vous pouvez activer ou désactiver dans le milieu du dessin.
En tapant "G" (tapez relacher) permet une grille de 10,0 unités. Si vous entrez "H" une grille de 100.0 unités. Vous pouvez type "G" ou "H" à la suite pour annuler le Snap. (les 2 lettres mises ici pour les scripts)
Gscript:var da = moi.drawingAids; var grid = moi.grid; if ( da.gridSnap && grid.snapSize == 10.0 ) { grid.snapSize = 1.0; da.gridSnap = false; } else { grid.snapSize = 10.0; da.gridSnap = true; }
Hscript:var da = moi.drawingAids; var grid = moi.grid; if ( da.gridSnap && grid.snapSize == 100.0 ) { grid.snapSize = 1.0; da.gridSnap = false; } else { grid.snapSize = 100.0; da.gridSnap = true; }
Grille Etendue - Etend la grille 2 fois.
Alt+Gscript:moi.grid.Sections += moi.grid.Sections;
En tapant "G" (tapez relacher) permet une grille de 10,0 unités. Si vous entrez "H" une grille de 100.0 unités. Vous pouvez type "G" ou "H" à la suite pour annuler le Snap. (les 2 lettres mises ici pour les scripts)
Gscript:var da = moi.drawingAids; var grid = moi.grid; if ( da.gridSnap && grid.snapSize == 10.0 ) { grid.snapSize = 1.0; da.gridSnap = false; } else { grid.snapSize = 10.0; da.gridSnap = true; }
Hscript:var da = moi.drawingAids; var grid = moi.grid; if ( da.gridSnap && grid.snapSize == 100.0 ) { grid.snapSize = 1.0; da.gridSnap = false; } else { grid.snapSize = 100.0; da.gridSnap = true; }
Grille Etendue - Etend la grille 2 fois.
Alt+Gscript:moi.grid.Sections += moi.grid.Sections;
Poignées de Grille Espacée - Scripts de Paul. Voir Forum.
script:moi.grid.size = (moi.grid.size) / 2; moi.grid.snapSize = moi.grid.size; if (moi.grid.size < 1) {moi.grid.accentedLineFrequency = 1 / (moi.grid.size) } else {moi.grid.accentedLineFrequency = 12 / moi.grid.size};
script:moi.grid.size = (moi.grid.size) * 2; moi.grid.snapSize = moi.grid.size; if (moi.grid.size < 1) {moi.grid.accentedLineFrequency = 1 / (moi.grid.size) } else {moi.grid.accentedLineFrequency = 12 / moi.grid.size};
Voir la Grille et Activer le Snap en même temps:
script:moi.grid.display = true; moi.drawingAids.gridSnap = true;
script:moi.grid.size = (moi.grid.size) / 2; moi.grid.snapSize = moi.grid.size; if (moi.grid.size < 1) {moi.grid.accentedLineFrequency = 1 / (moi.grid.size) } else {moi.grid.accentedLineFrequency = 12 / moi.grid.size};
script:moi.grid.size = (moi.grid.size) * 2; moi.grid.snapSize = moi.grid.size; if (moi.grid.size < 1) {moi.grid.accentedLineFrequency = 1 / (moi.grid.size) } else {moi.grid.accentedLineFrequency = 12 / moi.grid.size};
Voir la Grille et Activer le Snap en même temps:
script:moi.grid.display = true; moi.drawingAids.gridSnap = true;
Plein Ecran sans Interface Ce script vous permet de cacher l'Interface dans tous les écrans.
Premièrement créer un nouveau répertoire scripts dans le répertoire général de Moi (à un niveau équivalent à \commands ou \ui).
Dézipper le fichier FullScreen.zip et mettez-le dans le dossier scripts. Vous devriez avoir un chemin comme celui-ci: C:\Program Files\MoI beta Dec-1-2006\scripts\FullScreen.js
Ajouter un raccourci par exemple: F11 (Colonne de gauche) FullScreen.js (Colonne de droite)
Maintenant presser F11 bascule l'Interface visible ou non.
Premièrement créer un nouveau répertoire scripts dans le répertoire général de Moi (à un niveau équivalent à \commands ou \ui).
Dézipper le fichier FullScreen.zip et mettez-le dans le dossier scripts. Vous devriez avoir un chemin comme celui-ci: C:\Program Files\MoI beta Dec-1-2006\scripts\FullScreen.js
Ajouter un raccourci par exemple: F11 (Colonne de gauche) FullScreen.js (Colonne de droite)
Maintenant presser F11 bascule l'Interface visible ou non.
Horloge Ce script permet de voir l'horloge, bien que Moi cache la barre de tâches. Vous connaissiez la petite double flêche à droite du bouton Aide qui permet à Moi d'afficher en plein écran? héhé
Dézipper le fichier Clock.zip dans le répertoire \ui. (le fichier MainWindowLayout.xml doit être écrasé - actuellement, une seule ligne ajoutée existe (<UIPanel dock="bottom" src="moi://ui/CommandBarClock.htm" />) - aussi pas besoin de lui.
Dézipper le fichier Clock.zip dans le répertoire \ui. (le fichier MainWindowLayout.xml doit être écrasé - actuellement, une seule ligne ajoutée existe (<UIPanel dock="bottom" src="moi://ui/CommandBarClock.htm" />) - aussi pas besoin de lui.
Galerie de plugins Comment faire un tableau Pop up avec boutons réactifs pour chaque scripts? Fils de discussion légèrement chaotiques :) - voir:
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.28
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.36
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.45
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.47
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.51
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.28
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.36
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.45
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.47
http://moi3d.com/forum/index.php?webtag=MOI&msg=1519.51
Cercle rapide (V2 only) Cette commande trace un cercle d'un rayon particulier, place le cercle avec juste un simple clic de son point central. Le cercle s'aligne sur les surfaces si l'endroit que vous avez choisi se trouve sur une surface.
Dezziper QuickCircle.zip On obtient 2 fichier (un .htm et un .js ) - copier ceux-ci dans le répertoire \commands , et aller à Options / Raccourcis et créer un nouveau raccourci pour la commande QuickCircle. Vous pouvez lancer la commande en appuyant sur le nouveau raccourci.
Par défaut 1.0, si vous voulez 0.1 par défaut, editez default="1.0" dans le fichier QuickCircle.htm. Mais vous pouvez changer le rayon dans la boîte de modification.
Également si après vous prenez un point, cette commande fonctionne de telle sorte que vous pouvez cliquez sur plusieurs points supplémentaires à la place pour créer des cercles à l'intérieur de la même commande.
Voir ici pour plus d'infos.
Dezziper QuickCircle.zip On obtient 2 fichier (un .htm et un .js ) - copier ceux-ci dans le répertoire \commands , et aller à Options / Raccourcis et créer un nouveau raccourci pour la commande QuickCircle. Vous pouvez lancer la commande en appuyant sur le nouveau raccourci.
Par défaut 1.0, si vous voulez 0.1 par défaut, editez default="1.0" dans le fichier QuickCircle.htm. Mais vous pouvez changer le rayon dans la boîte de modification.
Également si après vous prenez un point, cette commande fonctionne de telle sorte que vous pouvez cliquez sur plusieurs points supplémentaires à la place pour créer des cercles à l'intérieur de la même commande.
Voir ici pour plus d'infos.
Déplacer Script permettant de bouger les objets sélectionnés, par points ou points de contrôles par petits incréments.
Dezipper le fichier Nudge.zip dans le répertoire \commands du répertoire général de Moi. Puis allez Options/ raccourcis et ajouter une nouvelle entrée. Pour la commande, mettez un espace après Nudge, donc 2 mots comme "Nudge Left". La commande Déplacement devra ressembler à cela avec ces paramètres.
LeftArrowNudge Left RightArrowNudge Right UpArrowNudge Up DownArrowNudge Down Il est aussi possible par exemple de mettre, PageUp and PageDown pour un déplacement en 'z', comme:
PageUpNudge zup PageDownNudge zdown
et vous pouvez mettre un pas plus ou moins grand, comme:
Ctrl+LeftArrowNudge Left Large Alt+LeftArrowNudge Left Small C'est une variation du script de Paul - NudgeViewAxis.zip - Ce dernier utilise un écran d'axe imaginaire XY comme axe du monde pour déplacer les objets dans une direction donnée. La syntaxe est la même que celle donnée au-dessus excepté que cela n'a pas de sens de définir un déplacement 'z'. Pour plus d'infos.
Dezipper le fichier Nudge.zip dans le répertoire \commands du répertoire général de Moi. Puis allez Options/ raccourcis et ajouter une nouvelle entrée. Pour la commande, mettez un espace après Nudge, donc 2 mots comme "Nudge Left". La commande Déplacement devra ressembler à cela avec ces paramètres.
LeftArrowNudge Left RightArrowNudge Right UpArrowNudge Up DownArrowNudge Down Il est aussi possible par exemple de mettre, PageUp and PageDown pour un déplacement en 'z', comme:
PageUpNudge zup PageDownNudge zdown
et vous pouvez mettre un pas plus ou moins grand, comme:
Ctrl+LeftArrowNudge Left Large Alt+LeftArrowNudge Left Small C'est une variation du script de Paul - NudgeViewAxis.zip - Ce dernier utilise un écran d'axe imaginaire XY comme axe du monde pour déplacer les objets dans une direction donnée. La syntaxe est la même que celle donnée au-dessus excepté que cela n'a pas de sens de définir un déplacement 'z'. Pour plus d'infos.
Section Croisée Permet de créer des sections d'un volume comme la fonction Rhino's CSec.
Dezipper le fichier CSec.zip dans le répertoire \commands du répertoire général de Moi. Puis allez Options/ raccourci et ajouter une nouvelle entrée.
Par exemple:
Alt+CCSec Pour utiliser la commande CSec, vous sélectionnez les courbes CSec l'une après l'autre dans l'ordre circulaire de la première à la dernière, puis appuyez Alt+C, pour effectuer la découpe. Plus d'infos.
Dezipper le fichier CSec.zip dans le répertoire \commands du répertoire général de Moi. Puis allez Options/ raccourci et ajouter une nouvelle entrée.
Par exemple:
Alt+CCSec Pour utiliser la commande CSec, vous sélectionnez les courbes CSec l'une après l'autre dans l'ordre circulaire de la première à la dernière, puis appuyez Alt+C, pour effectuer la découpe. Plus d'infos.
Echelle par Trames Ce script vous permet appliquer une échelle variable sur les résultats d'une Trame comme ici.
Dézipper le fichier ScaleArray.zip dans le répertoire \commands, puis ajouter un raccourci; aller au fichier moi.ini:
Ajouter un raccourci, par exemple:
Alt+SScaleArray Pour utiliser la commande ScaleArray, assurez-vous d'inclure un point unique dans chaque objet qui va être "tramé". Le point de l'objet deviendra le centre de l'échelle pour chaque copie.
Après avoir fait une opération de Trame, sélectionner les objets "tramés" et seulement eux, si par exemple vous aviez fait une Trame suivant une courbe, il ne faut pas sélectionner cette courbe, puis faire Alt+S (ou votre raccourci choisi).
Dézipper le fichier ScaleArray.zip dans le répertoire \commands, puis ajouter un raccourci; aller au fichier moi.ini:
Ajouter un raccourci, par exemple:
Alt+SScaleArray Pour utiliser la commande ScaleArray, assurez-vous d'inclure un point unique dans chaque objet qui va être "tramé". Le point de l'objet deviendra le centre de l'échelle pour chaque copie.
Après avoir fait une opération de Trame, sélectionner les objets "tramés" et seulement eux, si par exemple vous aviez fait une Trame suivant une courbe, il ne faut pas sélectionner cette courbe, puis faire Alt+S (ou votre raccourci choisi).
|
Version VF du CustomDistanceXY2 !
Plus récent et plus compact! |
Dézipper le fichier CustomDistance.zip ou le CustomDistanceXYZ2.zip de Michael (qui montre des valeurs delta pour x, y, z individuellement aussi bien qu'une distance totale) dans le répertoire \commands.
Ajouter un raccourci, par exemple:
Ctrl+PCustomDistance Alt+D lancer la commande Distance.
Message original: forum moi.
Ajouter un raccourci, par exemple:
Ctrl+PCustomDistance Alt+D lancer la commande Distance.
Message original: forum moi.
Contraindre Polyligne Ce script permet de garder la même distance ou/et imposer un angle de contrainte pendant le dessin d'une polyligne.
Dézipper le fichier ConstraintPolyline.zip dans le répertoire \commands.
Ajouter un raccourci, par exemple:
Alt+PConstraintPolyline Maintenant presser Alt+P permettra de lancer la commande ConstraintPolyline. Après avoir appelé cette nouvelle commande vous pouvez choisir entre trois modes de contrainte pour le dessin une polyligne: contrainte à distance, angle de la contrainte ou les deux. Si vous ne voulez pas utiliser l'un d'entre eux, il vous suffit de tapez 0 (zéro) ou supprimer une valeur.
Dézipper le fichier ConstraintPolyline.zip dans le répertoire \commands.
Ajouter un raccourci, par exemple:
Alt+PConstraintPolyline Maintenant presser Alt+P permettra de lancer la commande ConstraintPolyline. Après avoir appelé cette nouvelle commande vous pouvez choisir entre trois modes de contrainte pour le dessin une polyligne: contrainte à distance, angle de la contrainte ou les deux. Si vous ne voulez pas utiliser l'un d'entre eux, il vous suffit de tapez 0 (zéro) ou supprimer une valeur.
Copie vers Points Ce script permet de copier un objet vers un lot de points.
Dézipper le fichier CopyToPoints.zip dans le répertoire \commands.
Ajouter un raccourci, par exemple:
Ctrl+PCopyToPoints Maintenant presser Alt+P permettra de lancer la commande CopyToPoints. Il n'y a qu'une seule différence par rapport à la commande copie normale. Vous devez sélectionner des points cibles au lieu de choisir les autres. Si vous cochez la case option "Supprimer points ", les points cibles seront supprimés. Pour la sélection d'une cible de points, vous pouvez définir un raccourci clavier pour sélectionner tous les points de la la scène:
Ctrl+Pscript:moi.geometryDatabase.getObjects().getPoints().setProperty( 'selected', true );
Dézipper le fichier CopyToPoints.zip dans le répertoire \commands.
Ajouter un raccourci, par exemple:
Ctrl+PCopyToPoints Maintenant presser Alt+P permettra de lancer la commande CopyToPoints. Il n'y a qu'une seule différence par rapport à la commande copie normale. Vous devez sélectionner des points cibles au lieu de choisir les autres. Si vous cochez la case option "Supprimer points ", les points cibles seront supprimés. Pour la sélection d'une cible de points, vous pouvez définir un raccourci clavier pour sélectionner tous les points de la la scène:
Ctrl+Pscript:moi.geometryDatabase.getObjects().getPoints().setProperty( 'selected', true );
Importer Fichier de Points Ce script permet d'importer un fichier de points, de polylignes ou de courbes de formes libres. Les Points dans le fichier doivent être dans le format X, Y, Z (vous pouvez choisir un délimiteur de coordonnées), sans commentaires ou une section d'en-tête.
Dézipper le fichier ImportPointFile.zip dans le répertoire \commands.
Ajouter un raccourci, par exemple:
Alt+I ImportPointFile
Dézipper le fichier ImportPointFile.zip dans le répertoire \commands.
Ajouter un raccourci, par exemple:
Alt+I ImportPointFile
Sauver Fichiers de Points Ce script permet de sauver des coordonnées de points d'objets sous la forme de fichier texte X,Y,Z.
Pour sauver des points, lancer la commande et sélectionnez les points des objets. Choisissez le délimiteur et le nombre de chiffres significatifs de précision dans la commande option et pressez le bouton. Dans la boîte de dialogue, tapez un nom pour le fichier, y compris comme extension. txt,. csv,. xyz; par exemple outline.txt
Dézipper le fichier SavePointFile.zip dans le répertoire \commands.
Ajouter un raccourci, par exemple:
Alt+E SavePointFile
Pour sauver des points, lancer la commande et sélectionnez les points des objets. Choisissez le délimiteur et le nombre de chiffres significatifs de précision dans la commande option et pressez le bouton. Dans la boîte de dialogue, tapez un nom pour le fichier, y compris comme extension. txt,. csv,. xyz; par exemple outline.txt
Dézipper le fichier SavePointFile.zip dans le répertoire \commands.
Ajouter un raccourci, par exemple:
Alt+E SavePointFile
Selection d'Objects par Type Cette commande personnalisée vous permet de sélectionner tous les objets visibles d'un type donné. La commande ne désélectionne pas les objets sélectionnés, cela signifie que la commande les ajoute seulement à la sélection courante.
Vous pouvez sélectionner l'objet qui va définir le type d'objet à sélectionner avant que la commande commence. Dans ce cas, lorsque l'un et un seul objet est sélectionné, la commande se déroulera sans aucune intervention de l'utilisateur et en conformité avec l'état du sous-type de case cochée, les objets du même type seront sélectionné. L'objet que vous pouvez pré-sélectionner:
Si il y a plus d'un objet sélectionné avant de lancer la commande, comme décrit ci-dessus ils deviennent des objets temporairement désélectionnés
Cela semble quelque peu compliqué, mais c'est tout à fait intuitif.
Dézipper le fichier SelectByType.zip dans le répertoire \commands. Puis aller à l'Options/raccourcis, et ajouter quelques entrées, comme: SSelectByType
Voir aussi le forum Moi.
Vous pouvez sélectionner l'objet qui va définir le type d'objet à sélectionner avant que la commande commence. Dans ce cas, lorsque l'un et un seul objet est sélectionné, la commande se déroulera sans aucune intervention de l'utilisateur et en conformité avec l'état du sous-type de case cochée, les objets du même type seront sélectionné. L'objet que vous pouvez pré-sélectionner:
- point
- courbe (avec le sous-type coché les courbes ouvertes ou fermées seront sélectionnées )
- surface (avec le sous-type coché les faces ouvertes ou fermées seront sélectionnées )
- côté
- face
Si il y a plus d'un objet sélectionné avant de lancer la commande, comme décrit ci-dessus ils deviennent des objets temporairement désélectionnés
Cela semble quelque peu compliqué, mais c'est tout à fait intuitif.
Dézipper le fichier SelectByType.zip dans le répertoire \commands. Puis aller à l'Options/raccourcis, et ajouter quelques entrées, comme: SSelectByType
Voir aussi le forum Moi.
Profil d'Engrenage Cette commande personnalisée crée un Profil d'Engrenage. C'est aussi simple que possible - Vous pouvez spécifier l'équipement par le nombre de dents et de son module ou par diamètre (cela dépend des paramètres d'unité actuelle). Ensuite, vous pouvez l'utiliser comme . courbe à faire un engrenage.
Quelques définitions:
GSpurGearProfile
Quelques définitions:
- Module: taille du diamètre par dent, en millimètres
- Diamètre Intérieur: nombre de dents par longueur de diamètre
- Diamètre total: diamètre du cercle commande terminée
- Equation: Diamètre intérieur * Module = 25.4
GSpurGearProfile
Importer Répertoire C'est une commande pour l'importation de tous les fichiers IGES l'intérieur d'un dossier que vous choisissez. (Notez qu'il peut être facilement modifié pour faire l'importation de tous les fichiers AI ou 3DM.)
Pour installer la nouvelle commande, dézipper le fichier ImportFolder.zip, puis copier ImportFolder.js dans le répertoire /command.
Cela vous donnera une nouvelle commande nommée "ImportFolder".
Pour déclencher la commande, vous devez créer un raccourci clavier - aller à Options / Raccourci, et ajouter une nouvelle entrée. Mettez ce que vous voulez pour la touche, par exemple Ctrl + I, puis pour la commande mettez ImportFolder.
Voir forum
Pour installer la nouvelle commande, dézipper le fichier ImportFolder.zip, puis copier ImportFolder.js dans le répertoire /command.
Cela vous donnera une nouvelle commande nommée "ImportFolder".
Pour déclencher la commande, vous devez créer un raccourci clavier - aller à Options / Raccourci, et ajouter une nouvelle entrée. Mettez ce que vous voulez pour la touche, par exemple Ctrl + I, puis pour la commande mettez ImportFolder.
Voir forum
Batch Processing Moi permet le type de traitement automatique par lot.
Le premier pas est que vous devez passer le nom d'un fichier script comme une ligne de commande paramétrée à Moi.exe. S'il ya des espaces dans le nom du fichier de script, l'ensemble du nom de fichier doit être entre guillemets, comme:
MoI.exe "c:\path with spaces\script.js" Le script sera exécuté dès que la fenêtre principale est affichée, si le script décide de sortir de Moi l'interface ne sera plus montrée.
Michael fait un exemple pour vous aider à démarrer. Ce BatchConvert.zip script montre comment convertir un fichier IGS vers le format OBJ.
BatchConvert.js est le fichier que vous devrez écraser avec votre propre script, avant de lancer Moi.exe. Vous ajoutez juste une ligne pour appeler Convert() pour chaque fichier IGES (extension igs ou iges) à convertir en OBJ.
La fonction Convert() est définie dans le fichier de librairie Convert.js qui est inclue dans BatchConvert.js.
Convert() gère les appels basiques dans Moi pour les fonctions ouvrir et sauvegarder les fichiers. Il y a certains commentaires sur la façon dont il contrôle les paramètres de maillage. Cela se fait par une chaîne d'option, vous pouvez passer SaveAs () function. Si vous passez NoUI = true, le maillage de dialogue ne sera pas affiché.
Voir plus d'infos.
Le premier pas est que vous devez passer le nom d'un fichier script comme une ligne de commande paramétrée à Moi.exe. S'il ya des espaces dans le nom du fichier de script, l'ensemble du nom de fichier doit être entre guillemets, comme:
MoI.exe "c:\path with spaces\script.js" Le script sera exécuté dès que la fenêtre principale est affichée, si le script décide de sortir de Moi l'interface ne sera plus montrée.
Michael fait un exemple pour vous aider à démarrer. Ce BatchConvert.zip script montre comment convertir un fichier IGS vers le format OBJ.
BatchConvert.js est le fichier que vous devrez écraser avec votre propre script, avant de lancer Moi.exe. Vous ajoutez juste une ligne pour appeler Convert() pour chaque fichier IGES (extension igs ou iges) à convertir en OBJ.
La fonction Convert() est définie dans le fichier de librairie Convert.js qui est inclue dans BatchConvert.js.
Convert() gère les appels basiques dans Moi pour les fonctions ouvrir et sauvegarder les fichiers. Il y a certains commentaires sur la façon dont il contrôle les paramètres de maillage. Cela se fait par une chaîne d'option, vous pouvez passer SaveAs () function. Si vous passez NoUI = true, le maillage de dialogue ne sera pas affiché.
Voir plus d'infos.
Tubes (Michael Gibson) Avec cette commande il est plus rapide de créer des tubes creux autour de nombreuses courbes d'un coup. (Notez qu'il n'est que pour la V2!)mode"auto place" Tubage rend facile de créer un tube avec une forme différente de profil, même sans l'aide de cette commande personnalisée. De plus, Michael va améliorer la commande de tubage régulier pour traiter d'autres apects pour la V2!
Toutefois, cela ne fonctionnera correctement que sur une bonne courbe, vous devrez attendre la version 2.0 de Moi avant de traiter correctement angles aigus.
Pour installer cette nouvelle commande, téléchargez le fichier Pipe.zip. Copier les 2 fichiers inclus (Pipe.htm, Pipe.js) dans le sous-répertoire \commands de Moi.
Cela va installer la nouvelle commande, mais vous avez aussi besoin d'ajouter un nouveau raccourci. Pour ce faire, allez dans Options / touches de raccourci, et pousser le bouton "Ajouter", et mettez ce que vous voulez pour touche (par exemple P), et ensuite pour la commande à mettre "Pipe".
Désormais, lorsque vous appuyez sur cette touche la nouvelle commande de tubage sera lancée.
Sélectionnez les rails courbes de votre tubage, puis lancer la commande. Ensuite, vous aurez les options pour rayon intérieur et extérieur que vous pouvez définir dans la zone d'options de la commande dans le coin supérieur droit de la fenêtre de Moi.
Cela devrait accélérer la création d'un large nombre de tubes et tuyaux.
Voir post original.
Vous pouvez aussi charger une version modifiée (Pipe2.zip) qui vous permet de spécifier différents rayons extérieur et intérieur aux valeurs appliquées à la fin de la flèche. La commande pour celui-ci est Pipe2, vous pouvez renommer les fichiers si vous le souhaitez remplacer la précédent commande Pipe.
Note ; cette version n'est pas automatiquement mise à jour lorsque vous entrez les valeurs des tuyaux , vous avez besoin de pousser le bouton Mettre à jour pour voir vos modifications prendre effet pour cette version. Il en est ainsi, vous pouvez plus facilement entrer de multiples valeurs, car Pipe n'a pas le même type d'interruption.
Voir forum.
Pipe2Thickness Version VF Tubage par épaisseur (Traduction VF Zooen)
Pipe, Pipe2 et Pipe2Thickness : 3 variantes du même outil! (Traduction VF Zooen)
Créateur de Bague (Michael & Jesse) Michael a eu la gentillesse de construire un outil Moi pour les designers de bijoux pour dessiner des tailles spécifiques de bagues que Jesse a rempli avec des tailles spécifiques à chaque pays, des tailles trouvées sur le Net.
Pour installer cette nouvelle commande, dézipper le fichier RingCircle.zip, placer ensemble les fichiers RingCircle files (html et jscript) dans le répertoire "commands" de Moi.
Vous devez faire un raccourci pour ce nouvel outil.
Voir Forum Moi pour plus d'info.
Pour installer cette nouvelle commande, dézipper le fichier RingCircle.zip, placer ensemble les fichiers RingCircle files (html et jscript) dans le répertoire "commands" de Moi.
Vous devez faire un raccourci pour ce nouvel outil.
Voir Forum Moi pour plus d'info.
Stand Alone!
Convertisseur Obj23dmWireframe (Michael Gibson)
C'est un convertisseur de maillage polygonal vers un format 3dm. Il est capable de transfomer les strutures de data OBJ en lignes guides de construction pour les nurbs de Moi. Charger le fichier Obj23dmWireframe.zip. Décompressez ce dossier dans un répertoire, et vous pouvez alors exécuter le programme Obj23dmWireframe.exe Il vous invite à entrer le nom d'un fichier OBJ, et après le le nom d'un fichier 3DM. Il va lire toutes les données polygonales du fichier OBJ et convertir les côtés des polygones en segments, et de mettre les segments en fichiers 3DM au nom que vous avez spécifié. Vous pouvez ensuite charger le fichier 3DM dans Moi et utiliser ces segments comme guides et accroches.
Voir le forum Moi pour plus d'infos.
Convertisseur Obj23dmWireframe (Michael Gibson)
C'est un convertisseur de maillage polygonal vers un format 3dm. Il est capable de transfomer les strutures de data OBJ en lignes guides de construction pour les nurbs de Moi. Charger le fichier Obj23dmWireframe.zip. Décompressez ce dossier dans un répertoire, et vous pouvez alors exécuter le programme Obj23dmWireframe.exe Il vous invite à entrer le nom d'un fichier OBJ, et après le le nom d'un fichier 3DM. Il va lire toutes les données polygonales du fichier OBJ et convertir les côtés des polygones en segments, et de mettre les segments en fichiers 3DM au nom que vous avez spécifié. Vous pouvez ensuite charger le fichier 3DM dans Moi et utiliser ces segments comme guides et accroches.
Voir le forum Moi pour plus d'infos.
Convertisseur 3dmCurves2DXF 1ère mise à jour (Michael Gibson)
Charger le fichier 3dmCurves2DXF.zip, Décompressez ce dossier dans un répertoire, puis exécutez le programme 3dmCurves2DXF.exe. Il vous demandera le nom d'une entrée de fichier 3dm, puis le nom de sortie d'un fichier DXF. Sera lu à l'entrée le fichier 3dm et convertira n'importe quelle courbe d'objets qu'il trouve en entités Spline pour le fichier DXF.
Voir le forum Moi pour plus d'infos.
Charger le fichier 3dmCurves2DXF.zip, Décompressez ce dossier dans un répertoire, puis exécutez le programme 3dmCurves2DXF.exe. Il vous demandera le nom d'une entrée de fichier 3dm, puis le nom de sortie d'un fichier DXF. Sera lu à l'entrée le fichier 3dm et convertira n'importe quelle courbe d'objets qu'il trouve en entités Spline pour le fichier DXF.
Voir le forum Moi pour plus d'infos.
Editeur fichier OBJ 1ère mise à jour (Michael Gibson)
Utilitaire qui modifie le fichier OBJ pour extraire de gros objets et les transformer en plus petits - voir Moi forum et aussi les matériaux émissifs IDs - voir ici.
Charger le fichier SeparateOBJ.zip.
Utilitaire qui modifie le fichier OBJ pour extraire de gros objets et les transformer en plus petits - voir Moi forum et aussi les matériaux émissifs IDs - voir ici.
Charger le fichier SeparateOBJ.zip.
Assembleur OBJ (Michael Gibson)
MergeOBJ.exe Utilitaire - qui remplace les groupes et labels de matériaux d'un fichier OBJ pour qu'il apparaissent comme une seule entité de maillage - voir le forum Moi.
MergeOBJ.exe Utilitaire - qui remplace les groupes et labels de matériaux d'un fichier OBJ pour qu'il apparaissent comme une seule entité de maillage - voir le forum Moi.
Renommeur de label OBJ (Michael Gibson)
Si vous lancez RelabelOBJ.exe (voir le forum Moi) il vous demandera un nom de fichier, puis il passera et remplacera tous les noms des objets basé sur le fichier du nom OBJ par celui demandé.
Ainsi, par exemple, si vous avez un fichier nommé my_file.obj, si vous exécutez la programme RelabelOBJ.exe sur lui, tous les noms des objets seront changés à partir de "objet1", "objet2",etc .. en "my_file1", "my_file2", etc ..
Eh bien, vous pourriez faire la même chose comme la recherche et le remplacement dans votre éditeur de texte favori pour modifier le nom etc.
Si vous lancez RelabelOBJ.exe (voir le forum Moi) il vous demandera un nom de fichier, puis il passera et remplacera tous les noms des objets basé sur le fichier du nom OBJ par celui demandé.
Ainsi, par exemple, si vous avez un fichier nommé my_file.obj, si vous exécutez la programme RelabelOBJ.exe sur lui, tous les noms des objets seront changés à partir de "objet1", "objet2",etc .. en "my_file1", "my_file2", etc ..
Eh bien, vous pourriez faire la même chose comme la recherche et le remplacement dans votre éditeur de texte favori pour modifier le nom etc.
Importer Blender (Anthony D'Agostino)
Anthony a écrit un script d'importation Blender qui gère les vraies normales et en temps réel des Coordonnées UV. Il ajoute également quelques très cool points de couleurs simulant l'éclairage global d'un hémisphère. La lumière est la valeur calculée à partir de la véritable normale et pas la moyenne des normales qui entourent un sommet.
Anthony recommande fortement l'usage de son script Blender d'importation, en utilisant Blender et Moi. Il lit UVs et normales de LWO les fichiers exportés à partir de Moi3D (note: l'exportation avec l'option de soudure de sommets désactivée). Vous pouvez le télécharger gratuitement ici:
http://home.comcast.net/~gamma-ray/moi/import_moi.py ou une copie Zippée.
Le GIF animé cette page du forum Moi montre les différences entre le Script d'Antony et l'import standard qui ignore les vraies normales de Moi.
Anthony a écrit un script d'importation Blender qui gère les vraies normales et en temps réel des Coordonnées UV. Il ajoute également quelques très cool points de couleurs simulant l'éclairage global d'un hémisphère. La lumière est la valeur calculée à partir de la véritable normale et pas la moyenne des normales qui entourent un sommet.
Anthony recommande fortement l'usage de son script Blender d'importation, en utilisant Blender et Moi. Il lit UVs et normales de LWO les fichiers exportés à partir de Moi3D (note: l'exportation avec l'option de soudure de sommets désactivée). Vous pouvez le télécharger gratuitement ici:
http://home.comcast.net/~gamma-ray/moi/import_moi.py ou une copie Zippée.
Le GIF animé cette page du forum Moi montre les différences entre le Script d'Antony et l'import standard qui ignore les vraies normales de Moi.
Autres...
Convertisseur 3dm2sculpt
Vous pouvez obtenir un convertisseur 3dm2sculpt depuis ici: http://wiki.secondlife.com/wiki/3dm2sculpt - il permettra la conversion d'un fichier 3Dm de Moi de fichier qui enregistre dans un fichier .tga le fichier de la carte de texture (également consulter la discussion pour plus de détails).
Convertisseur iges2step Note: la V2 est capable de gérer Import Export IGES!
Ou vous pouvez utiliser iges2step comme convetisseur/visualisateur; voir http://iges2step.narod.ru/. Après avoir terminé l'installation, vous devez redémarrer votre ordinateur avant le premier lancement de ce convertisseur!
IGES2STEP est un logiciel CAD dossier pour Windows XP/2000/NT. Il permet de visualiser les formats IGES et STEP et la traduction de fichiers entre eux.
Les versions des formats:
IGES: up to 5.3
STEP AP203: Design Mécanique(General 3D CAD)
STEP AP214: Design Automobile
STEP AP209: Analysise des éléments finis(support initial)
Convertisseur obj2jot
JOT est un projet académique de rendereur temps réel non photoréaliste, voir http://www.cs.princeton.edu/gfx/software.php.
Charger le fichier obj2jot.zip et supp.zip, décompresser et utiliser
Convertisseur stl2dxf
Ce convertisseur utilise ADMesh, voir http://www.varlog.com/products/admesh/.
Charger le fichier stl2dxf.zip, décompressez et utilisez
Pour plus d'infos forum Moi.
Vous pouvez obtenir un convertisseur 3dm2sculpt depuis ici: http://wiki.secondlife.com/wiki/3dm2sculpt - il permettra la conversion d'un fichier 3Dm de Moi de fichier qui enregistre dans un fichier .tga le fichier de la carte de texture (également consulter la discussion pour plus de détails).
Convertisseur iges2step Note: la V2 est capable de gérer Import Export IGES!
Ou vous pouvez utiliser iges2step comme convetisseur/visualisateur; voir http://iges2step.narod.ru/. Après avoir terminé l'installation, vous devez redémarrer votre ordinateur avant le premier lancement de ce convertisseur!
IGES2STEP est un logiciel CAD dossier pour Windows XP/2000/NT. Il permet de visualiser les formats IGES et STEP et la traduction de fichiers entre eux.
Les versions des formats:
IGES: up to 5.3
STEP AP203: Design Mécanique(General 3D CAD)
STEP AP214: Design Automobile
STEP AP209: Analysise des éléments finis(support initial)
Convertisseur obj2jot
JOT est un projet académique de rendereur temps réel non photoréaliste, voir http://www.cs.princeton.edu/gfx/software.php.
Charger le fichier obj2jot.zip et supp.zip, décompresser et utiliser
Convertisseur stl2dxf
Ce convertisseur utilise ADMesh, voir http://www.varlog.com/products/admesh/.
Charger le fichier stl2dxf.zip, décompressez et utilisez
Pour plus d'infos forum Moi.