Petite question rubiesque !
-
Bonjour !
Dans mon premier message, Didier Bur m'avait dit ceci :
@unknownuser said:
pas moyen de faire appel à l'interpreteur de commande, du genre (command "_line" p1 p2...). Les commandes de création d'objet se font par les méthodes "add": Sketchup.active_model.entities.add_line p1,p2....
C'est pénible car si tu veux utiliser une commande d'édition ou de modification, il faut l'écrire ou la re-écrire toi-même.Ok. Bon.. ya du boulot !!!
Voilà. J'aimerais pouvoir créer un icône (jusque là pas dur) qui permette de faire la même chose que l'outil "masquer le reste du modèle" dans le menu affichage/Modification du composant. Et là, plus dur !Dans Autocad (désolé pour ceux qui n'aiment pas, mais je ne peux que comparer avec ce logiciel...), tous les menus sont paramétrables. C'est bien. Mais c'est surtout pratique pour connaître les noms des commandes à exécuter pour pouvoir effectuer un travail. En face de la désignation de l'outil, on a le nom de la commande...
Exemple : "masquer le reste du modèle" -> { mask }Alors voilà : Comme le dit Didier, faut-il recréer l'outil ? Ou ya t'il un moyen de récupérer le nom de la commande Sketchup ?
Merci à vous !
A bientot.
Matt.PS : J'ai créé mon premier code RUBY ! une commande qui permet de rendre courant le calque de l'objet sélectionné. Deux versions : Une qui dit met un message d'erreur lorsqu'on sélectionne plus d'un objet, et l'uatre sans...
je vous montre, si ça peut vous servir :# Rend le calque de l'objet courant def laycou2 model = Sketchup.active_model ss = model.selection if ss.empty? UI.messagebox("Aucune selection.") else if ss.single_object? model.active_layer = ss[0].layer ss.clear else UI.messagebox("Veuillez ne sélectionner qu'un seul objet.") end end end #Rend le calque de l'objet courant def laycou model = Sketchup.active_model ss = model.selection if ss.empty? UI.messagebox("Aucune selection.") else model.active_layer = ss[0].layer ss.clear end end
Voilà !
-
Bonjour,
Bon essai pour ta fonction, mais elle est déjà dans mon gestionnaire de calque (premier icône de la barre d'outils).@unknownuser said:
ya t'il un moyen de récupérer le nom de la commande Sketchup
Oui, mais pas pour toutes. Va voir la méthode "send_action" du module "Sketchup". c'est assez limité, mais peut-être qu'avec "editHide", "editUnhide" tu pourras faire qqchose. En plus, quand tu fais appel à send_action dans un script, il perd la main je crois. Il faudra sûrement passer par un scan de la base de données du modèle (Sketchup.active_model.entities.each blablabla...) pour savoir quoi masquer et quoi montrer.
Tu peux regarder le code des scripts hideall;rb et unhideall.rb, et dans ceux dont le nom commence par "hide" sur mon site, c'est dans la section "Matériaux-Rendu".
Bonne journée, -
Bonjour Didier.
Raaah la la ! Il est fort !Génial, c'est ce que je voulais... C'est en quelque sorte une liste des variables internes de sketchup !! Merci !
Il ne me reste plus qu'à réusssir àforcer une des variables ! Le plus gros du boulot est fait !Merci encore !
A bientot.
Matt.
Advertisement