Masquer dans les autres scènes

Masquer dans les autres scènes

Postby Matt666 » Thu Jan 03, 2008 1:27 pm

Bonjour !
Je ne sais pas si ce sujet a déjà été évoqué en français...

Je trouve juste que le masque d'objets n'est pas développé à son potentiel maximal dans sketchup... Mais je ne m'y connais pas en ruby... en autolisp si !

Avec les masques, on pourrait :
- Masquer les entités sélectionnées dans la scène active (c'est ce que existe déjà)
- Masquer les entités sélectionnées dans les autres scènes, mais pas la scène active
- Masquer les entités sélectionnées toutes les scènes
- Tout afficher dans la scène active
- Tout afficher, dans toutes les scènes
- Isoler la sélection dans la scène courante (masquer les autres entités de la scène)
- Isoler la sélection dans les autres scènes (masquer les autres entités), mais pas la scène active

Etc, etc...
Ce qui m'intéresserais serait :
- Masquer les entités sélectionnées dans les autres scènes, mais pas la scène active

1) Existe t'il une routine RUBY qui ferait cela ?

Le 1 sert parce que j'ai une autre question...
2) Comment fait-on pour accèder (et afficher dans la console) aux popriétés d'un objet ??

Je n'arrive pas du tout à faire cela... Par exemple de voir que l'objet sélectionné est une ligne, une face, etc...

Voilà...

Merci d'avance et bon courage !

A bientot.
Matt.
0
Frenglish at its best !
My scripts

Matt666 
 

Re: Masquer dans les autres scènes

Postby Didier Bur » Thu Jan 03, 2008 6:57 pm

Bonjour,

Comment fait-on pour accèder (et afficher dans la console) aux popriétés d'un objet ??

Sélectionnes un objet et tapes dans la console:

Code: Select all
Sketchup.active_model.selection[0].typename


Si tu veux aller plus loin il faut fouiller la doc Ruby (qui est très mal faite et bourrée d'erreurs :D )
0
Didier Bur
Ecole Nationale Supérieure d'Architecture de Nancy (F)
User avatar
Didier Bur 
 

Re: Masquer dans les autres scènes

Postby Matt666 » Fri Jan 04, 2008 7:56 am

Salut !

Ok merci ! Ceci dit ce n'est pas très encourageant :shock: !!!

Je crois qu'on ne peut pas faire comme en lisp, cad d'afficher TOUTES les propriétés d'une entité sous forme de liste... Par exemple, si on fait le même genre de procédé (cliquer sur une ligne et taper un code dans la ligne de commande), on arrive à une liste de tout ce qui a attrait à cette ligne
Code: Select all
((-1 . <Entity name: 9c2d698>) (0 . "LINE") (5 . "36") (67 . 0) (8 . "0") (62 . 256) (6 . "BYLAYER") (370 . -1) (48 . 1.00000) (60 . 0) (39 . 0.000000) (10 0.138862 3.58955 0.000000) (11 9.45230 7.76866 0.000000) (210 0.000000 0.000000 1.00000))

Mais je doute que ce soit la même chose en ruby...
la base est Sketchup.active_model.selection[0]
puis on rajoute la propriété que l'on veut afficher.
Ok je comprends mieux...

Désolé d'être demandeur d'explications comme cela, mais si je veux afficher le nom du calque de l'entité ?
Code: Select all
Sketchup.active_model.selection[0]. ?????


Je vais tacher de regarder la doc ruby (d'ailleurs je ne vois pas de quelle doc il s'agit :D ... Serait-ce celle-ci ?) sans trop la regarder !!

Merci !

A bientot.
Matt.
0
Frenglish at its best !
My scripts

Matt666 
 

Re: Masquer dans les autres scènes

Postby Didier Bur » Fri Jan 04, 2008 9:18 pm

Bonjour,
si je veux afficher le nom du calque de l'entité ?


Si tu as tapé avant:
objet = Sketchup.active_model.selection[0]
alors
objet.layer te donnera l'identifiant du layer (son objet ruby, pas son nom, car en Ruby, tout est objet).
objet.layer.name te donnera le nom du layer.

Il n'y a pas de "entget" comme en Lisp. Autolisp est d'ailleurs bien plus puissant que Ruby, puisqu'en Ruby, 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 par exemple.
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.
Pour la doc, c'est bien celle-là... Y'a pas mieux pour l'instant :cry:
0
Didier Bur
Ecole Nationale Supérieure d'Architecture de Nancy (F)
User avatar
Didier Bur 
 

Re: Masquer dans les autres scènes

Postby Bert » Fri Jan 04, 2008 11:41 pm

Bonjour,

Il existe un script pour cacher un élément sur les autres scènes qui s'appelle "hidden_layer.rb".

Je l'utilise souvent vers la fin de mon projet lorsque j'ajoute un élément, lequel se rerouve forcément sur toutes les autres scènes.

Pour l'utiliser, tu sélectionne le ou les éléments à cacher et tu active le script.

La première question te demande si et tu répond non à la première question est "Prompt at every scène? si tu répond non, alors il masque le ou les éléments sur toutes les autres sc`nes, sinon, il te le demande pourtoutes les scènes
0
Salutations (Best regards) Bert

Bert 
 

Re: Masquer dans les autres scènes

Postby Didier Bur » Sat Jan 05, 2008 12:10 pm

Bonjour,
Il est en français sur mon site:
Page française, cliques sur Plugins métriques, puis va dans la section "selection-calque", c'est le premier de la liste: fr_add_hidden_layer.rb

Voilà le lien direct:

http://www.crai.archi.fr/RubyLibraryDepot/Ruby/fr_add_hidden_layer.rb
0
Didier Bur
Ecole Nationale Supérieure d'Architecture de Nancy (F)
User avatar
Didier Bur 
 

Re: Masquer dans les autres scènes

Postby Matt666 » Mon Jan 07, 2008 7:58 am

Bonjour !!!

Didier Bur,

objet.layer te donnera l'identifiant du layer (son objet ruby, pas son nom, car en Ruby, tout est objet).

Oui, comme un ename en lisp...

objet.layer.name te donnera le nom du layer.

Ok. Il faut vraiment regarder les classes dans l'aide... Je commence à saisir ! C'est un peu comme du VB...

Par contre ça, je ne comprends pas...
selection[0]

C'est quoi le [0], s'il te plait ? Si je t'embête avec mes questions, n'hésite pas à me le faire savoir...

Autolisp est d'ailleurs bien plus puissant que Ruby

Ah ok... Merci pour cette info !

il faut l'écrire ou la re-écrire toi-même.

Aille...

Il est en français sur mon site:

Je ne suis pas sur que Bert parle de celui-ci...

Merci pour toutes ces infos !!

Bert,
Il existe un script pour cacher un élément sur les autres scènes qui s'appelle "hidden_layer.rb".

D'accord... Donc il faut mettre les entités dans le bon calque. Ce n'est pas tout à fait ce que je cherche, mais ce code va pouvoir me montrer comment cacher dans les autres scènes... Très intéressant !
Merci !

A bientot.
Matt.
0
Frenglish at its best !
My scripts

Matt666 
 

SketchUcation One-Liner Adverts

by Ad Machine » 5 minutes ago



Ad Machine 
Robot
 



 

Return to Français

cron

Who is online

Users browsing this forum: Google Bot and 2 guests

Visit our sponsors: