Forum Sketchup Artlantis Archicad
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Galerie


Demande de plug [Recharger tout] Empty
Ton bloc notes
Derniers sujets
» [ ARCHICAD ] Zone Internal/External - Nomenclatures
par Coulou Aujourd'hui à 9:04

» [ SKETCHUP tutos ] Extension TRUEBEND- Cintrer (Rouler) - Courber - Arrondir n'importe quelle forme
par jerryvento Hier à 17:13

» [AUTRES LOGICIELS] Moi3D beta 4.0 - 64 bits Mac / PC 27 Octobre 2020
par Pilou Dim 25 Juil 2021 - 23:13

» [ SKETCHUP plugins ] Material Browser
par JDD Sam 24 Juil 2021 - 19:47

» [ AUTRES LOGICIELS ] Sketchfab fait désormais partie d'Epic Games
par simjoubert Ven 23 Juil 2021 - 18:06

» [ SKETCHUP tutos ] Dessiner une Toiture, Toit, Pyramide + Fusionner des Groupes : Outil Enveloppe
par jerryvento Ven 23 Juil 2021 - 17:13

» [ SKETCHUP généralité ] Dessiner une Toiture, Toit, Pyramide + Fusionner des Groupes : Outil Enveloppe
par jerryvento Ven 23 Juil 2021 - 15:08

» [ SKETCHUP généralité ] Annonce 3D Warehouse
par jerryvento Ven 23 Juil 2021 - 15:06

» [ SKETCHUP généralité ] Disparition de Certaines Fonctions du menu contextuel
par tenrev Ven 23 Juil 2021 - 13:32

» [ SKETCHUP plugins/Extensions ] TRUEBEND- Cintrer (Rouler) - Courber - Arrondir n'importe quelle forme
par jerryvento Jeu 22 Juil 2021 - 11:26

» [ TWINMOTION ] Nouvelle version 2021.1.3
par Coulou Jeu 22 Juil 2021 - 9:42

» [ ARCHICAD ] Archicad 25
par Coulou Jeu 22 Juil 2021 - 9:30

» [ ENSCAPE ] sortie de la version 3.1
par simjoubert Jeu 22 Juil 2021 - 0:39

» [ AUTRES LOGICIELS ] Expresii : l'aquarelle digitale
par Pilou Lun 19 Juil 2021 - 11:19

» [ SKETCHUP tutos ] Dessiner des emboitures à onglet avec rainures ou languettes pour des portes, des tables...
par jerryvento Lun 19 Juil 2021 - 9:50

» [ SKETCHUP généralité ] Dessiner des emboitures à onglet avec rainures ou languettes pour des portes, tables...
par jerryvento Lun 19 Juil 2021 - 9:49

» [ AUTRES LOGICIELS ] 3D COAT 2021
par tenrev Jeu 15 Juil 2021 - 9:13

» [ ARCHICAD ] Ebrasement oblique sur fenetre ancienne
par Ben3d Mer 14 Juil 2021 - 11:33

» [ ARCHICAD ] Création d'étiquettes personnalisées
par Coulou Mer 14 Juil 2021 - 8:58

» [ SKETCHUP plugins ] Clipping Fix
par Samuel Tallet Mar 13 Juil 2021 - 13:32

» [ ARTLANTIS ] Probléme rendu matériaux
par freroil Mar 13 Juil 2021 - 11:19

» [ PRESENTATION ] Lolool Touraine
par freroil Lun 12 Juil 2021 - 15:24

» [AUTRES LOGICIELS] MagicaVoxel!
par Pilou Dim 11 Juil 2021 - 0:42

» [ SKETCHUP Layout ] Cotation des Cercles et Congés
par JDD Sam 10 Juil 2021 - 10:03

» [ SKETCHUP généralité ] Problème zoom
par Samuel Tallet Ven 9 Juil 2021 - 19:13

» [ PRESENTATION ] Ben du Luxembourg
par freroil Ven 9 Juil 2021 - 15:56

» [ AUTRES LOGICIELS ] PolyCad : Oh mon bateau! Nurbs (free)
par Pilou Ven 9 Juil 2021 - 1:36

» [ AUTRES LOGICIELS ] Windows 11 pour 2021 ?
par tenrev Jeu 8 Juil 2021 - 20:37

» [ SKETCHUP Layout ] formules automatiques "scènes"
par JDD Jeu 8 Juil 2021 - 14:37

» [SKETCHUP Généralité] Plier n'importe quoi (2ème tuto) avec Radial Bending de l'extension FredoScale de Fredo6
par jerryvento Mer 7 Juil 2021 - 10:32

» [ SKETCHUP tutos ] Plier n'importe quoi (2ème tuto) avec Radial Bending de l'extension FredoScale de Fredo6
par jerryvento Mar 6 Juil 2021 - 15:35

» [ WIP ]Mon petit labo...by ogi
par ogi Mar 6 Juil 2021 - 15:29

» [ SKETCHUP généralité ] Warehouse ne fonctione plus avec SKU 2017 et 2018
par jerryvento Lun 5 Juil 2021 - 11:08

» [ SKETCHUP plugins ] Elimination du Clipping (Ecrêtage) en projection Parallèle
par Pilou Jeu 1 Juil 2021 - 10:27

» [ AUTRES LOGICIELS ] 3D Coat "Learning" gratuit!
par Pilou Mer 30 Juin 2021 - 15:43

Demande de plug [Recharger tout]

Page 1 sur 2 1, 2  Suivant

Voir le sujet précédent Voir le sujet suivant Aller en bas

DVERGER
DVERGER
Bavard(e)
Bavard(e)
Masculin Date d'inscription : 11/12/2009
Nombre de messages : 198
Points : 280
Age : 51
Localisation : Quimper
Emploi : dessinateur avant-projet

MessageDVERGER Jeu 16 Sep 2010 - 9:20

Je ne sais pas si c'est possible de faire une demande particulière mais un plug qui pourrait être super utile c'est un "Recharger tout" : on selectionne les composants que l'on veut recharger puis procédure normale : on indique le chemin et c'est ok.
Pour l'instant on est obligé de le faire un par un et en plus il ne garde pas en mémoire la dernière fenêtre ouverte de "Ouvrir".

Merci d'avance si quelqu'un se penche la dessus.

vick
vick
V.I.P.
V.I.P.
Masculin Date d'inscription : 17/06/2008
Nombre de messages : 3865
Points : 5686
Age : 75
Localisation : bouche du rhône
Emploi : https://3dwarehouse.sketchup.com/search.html?q=vick&backendClass=both
http://www.artiste-creations.com/

Messagevick Jeu 16 Sep 2010 - 11:26

Je ne sais pas si j'ai bien compris,mais tes composants ils ont tous le même chemin?
DVERGER
DVERGER
Bavard(e)
Bavard(e)
Masculin Date d'inscription : 11/12/2009
Nombre de messages : 198
Points : 280
Age : 51
Localisation : Quimper
Emploi : dessinateur avant-projet

MessageDVERGER Jeu 16 Sep 2010 - 12:00

Pas tous, mais par exemple toutes mes menuiseries 3D sont dans un même dossier.

Qd je reprend un vieux dossier étant donné que depuis j'ai fait pas mal de chgt surtout au niveau des matières je suis obligé de faire recharger un par un pour tous les composants.
avatar
jojo2
modérateur
modérateur
Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170

Messagejojo2 Jeu 16 Sep 2010 - 17:08

Bonjour,

J'ai un peu négligé SU ces derniers temps mais il me semble difficile de faire de la multi-sélection surtout si les objets sélectionnés ne sont pas au même niveau hiérarchique (C'est faisable mais délicat à mettre au point).

Par contre, une mise à jour globale de tous les objets du modèle (visibles ou non) me semble raisonnablement réalisable...

Cordialement.
DVERGER
DVERGER
Bavard(e)
Bavard(e)
Masculin Date d'inscription : 11/12/2009
Nombre de messages : 198
Points : 280
Age : 51
Localisation : Quimper
Emploi : dessinateur avant-projet

MessageDVERGER Jeu 16 Sep 2010 - 17:45

Parfait bravo
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Jeu 16 Sep 2010 - 19:06

par contre ce qu'il est peut-être possible de faire (a verifier rigole )
c'est de balayer l'ensemble des composants du modele.
Les soumettre un à un a l'utilisateur pour rechargement si oui, proposer l'ancien chemin du chargement du composant considéré si le chemin à changer donner la main à l'utilisateur pour "browser" le composant Question saispas
avatar
jojo2
modérateur
modérateur
Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170

Messagejojo2 Jeu 16 Sep 2010 - 19:48

Tout à fait Christophe!

Mais valider un à un tous les composants d'un projet, ça ne deviendrait pas souvent aussi long que de modifier certains manuellement?

Peut-être laisser une option pour choisir l'ensemble ou la liste...
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Jeu 16 Sep 2010 - 20:14

Oui tu as raison
il est plus judicieux de créer un tableau des composants en explorant toute la hierarchie et l'utilisateur choisit dans une liste le ou les composants à recharger. le plugin recherche par l'ancien chemin, s'il n'existe plus il propose le browser saispas
avatar
jojo2
modérateur
modérateur
Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170

Messagejojo2 Ven 17 Sep 2010 - 10:22

Bien vu Christophe! Comme tu maitrises les WebDialog, je te laisse commencer? langue

@ DVERGER:
Pourrais-tu ouvrir un des fichiers qui t'intéressent et exécuter ce code sur la console ruby?
Code:
Sketchup.active_model.definitions.each { |d| puts "*> " + d.name + "\t\t : " + d.path + "\n" }
Et nous communiquer le résultat, STP!
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Ven 17 Sep 2010 - 14:43

Je me demande s'il ne faut pas plutot gerer par instance plutot que par definition ?
Si par exemple on a plusieurs instances dont on a modifié la définition et que l'on veut restaurer l'ancienne (ou la nouvelle) definition que pour une seule instance ?
Ou alors apres rechargement de la definition, on balaye les instances pour une même defintion et on demande si l'on veut appliquer le changement de definition saispas
avatar
jojo2
modérateur
modérateur
Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170

Messagejojo2 Ven 17 Sep 2010 - 17:36

Salut Christophe,
C'est justement pour cette raison que je demande la liste première des définitions à DVERGER.

Car seules les définitions du modèle conservent un chemin fichier.
Il faut donc avoir importé des composants fichiers pour pouvoir les mettre à jour et absolument JAMAIS avoir créé le composant dans le modèle actif.
Suis-je bien clair, là??? scratch
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Ven 17 Sep 2010 - 17:56

Oui tout à fait
Par contre le chemin existe lorsque tu crées ton composant dans le modèle si tu prends le soin de faire enregister sous (clic droit) bien
DVERGER
DVERGER
Bavard(e)
Bavard(e)
Masculin Date d'inscription : 11/12/2009
Nombre de messages : 198
Points : 280
Age : 51
Localisation : Quimper
Emploi : dessinateur avant-projet

MessageDVERGER Ven 17 Sep 2010 - 18:15

Désolé de ne répondre que maintenant. Nous étions aux Glénan (iles au large de Fouesnant) pour le boulot. Ouais sympa! C'était la grosse réunion de l'année avec tout le monde. Nous avons reçu les books pour lesquelles j'ai fait mes images présentées ici.
Je regarde ça dès lundi. Merci.


Dernière édition par DVERGER le Sam 18 Sep 2010 - 12:22, édité 1 fois
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Ven 17 Sep 2010 - 18:29

Oui sympa, il y a une école de voile réputée aux Glénans bien
DVERGER
DVERGER
Bavard(e)
Bavard(e)
Masculin Date d'inscription : 11/12/2009
Nombre de messages : 198
Points : 280
Age : 51
Localisation : Quimper
Emploi : dessinateur avant-projet

MessageDVERGER Sam 18 Sep 2010 - 12:27

J'ai bien écouté les explications de la dame : c'est les Glénan sans "S" puisque c'est d'origine celtique ou bretonne, ils ne savent pas trop.
Par contre quand on écrit avec un "S" on parle effectivement de l'école de voile.

Voila c'était la minute culturelle.

Autrement c'était magnifique. Le soleil était au rendez-vous donc du coup l'eau était d'un bleu turquoise transparent. On était presque dans l'hémisphère sud.
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Sam 18 Sep 2010 - 13:34

Alors c'est l'école des Glénans aux Glénan rigole
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Sam 18 Sep 2010 - 20:23

Voila un premiet jet Arrow

Code:


class Sketchup::ComponentInstance
  def entities
    self.definition.entities
  end
end

def reload_all
   model = Sketchup.active_model
   entities = model.entities
   selection = model.selection
   definitions = model.definitions
   model.start_operation "Recharger Composants"
   selection.clear
   tab_comp_group = []
   tab_comp = []
   tab_inst = []
   comp_path = Sketchup.find_support_file("Components")
   newpath = ""
   entities.each {|x|
   tab_comp_group.push x if ((x.is_a? Sketchup::Group) or (x.is_a? Sketchup::ComponentInstance))
      if (x.is_a? Sketchup::ComponentInstance)
         tab_comp.push x.definition.name
         tab_inst.push x
      end
   }
   while tab_comp_group.detect {|z| ((z.is_a? Sketchup::Group) or (z.is_a? Sketchup::ComponentInstance))}
      tab_comp_group.each {|x|
         x.entities.each {|y|
         tab_comp_group.push y if ((y.is_a? Sketchup::Group) or (y.is_a? Sketchup::ComponentInstance))
            if (y.is_a? Sketchup::ComponentInstance)
               tab_comp.push y.definition.name
               tab_inst.push y
            end 
         }
         tab_comp_group.delete x
      }
   end
   tab_comp.uniq!
   tab_comp.unshift("Tous")
   prompts = ["Choix du composant / definition ","Traitement instance","Forcer le chemin"]   
   val_defaut = ["Tous","Toutes","Non"]
   liste_val = [tab_comp.join('|'),"Toutes|Instance par Instance","Non|Oui"]
   results = UI.inputbox prompts, val_defaut, liste_val, "Composants"
   choix_comp, choix_inst, choix_path = results
   if choix_comp == "Tous" # Toutes les definitions
      tab_inst.each {|com|
         if com.definition.path != "" and choix_path == "Non" # controle si le chemin existe
            if choix_inst == "Toutes" # toutes les instances      
               com.definition = definitions.load com.definition.path
            else # instance par instance
               
                  selection.add com
                  result = UI.messagebox "Voulez-vous recharger l'instance selectionnee ?",MB_YESNO
                  com.definition = definitions.load com.definition.path if result == 6
                  selection.clear
            end
         else # recherche sans le chemin
                 selection.add com
            result = UI.messagebox "Attention a priori la definition (en surbrillance) n'a pas ete sauvegardee" + "\n\nNom de la definition : " + com.definition.name + "\n\nVous pouvez appliquer une autre definition", MB_OKCANCEL  if com.definition.path == ""
            selection.clear;next if result == 2                
            if choix_inst == "Toutes" # toutes les instances+
                    comp_path = newpath if newpath != ""
               chemin = UI.openpanel "Recherche de : " + com.definition.name ,comp_path, com.definition.name + ".skp"
               rechargement = definitions.load chemin
               newpath = rechargement.path
                     
               com.definition = rechargement
            else # instance par instance
               selection.add com
               result = UI.messagebox "Voulez-vous recharger l'instance selectionnee ?",MB_YESNO
               if result == 6
                  comp_path = newpath if newpath != ""
                  chemin = UI.openpanel "Recherche de : " + com.definition.name ,comp_path, com.definition.name + ".skp"
                  rechargement = definitions.load chemin
                  newpath = rechargement.path
                  
                  com.definition = rechargement
               end
               selection.clear
            end
       
         end         
      }
   else # Composant par composant
      tab_inst.each {|com|
      if com.definition.name == choix_comp # recherche la definition
         if com.definition.path != "" and choix_path == "Non" # controle si le chemin existe
            if choix_inst == "Toutes" # toutes les instances      
               com.definition = definitions.load com.definition.path
            else # instance par instance
               selection.add com
               result = UI.messagebox "Voulez-vous recharger l'instance selectionnee ?",MB_YESNO
               com.definition = definitions.load com.definition.path if result == 6
               selection.clear
            end
         else # recherche sans le chemin
                 selection.add com
            result = UI.messagebox "Attention a priori la definition (en surbrillance) n'a pas ete sauvegardee" + "\n\nNom de la definition : " + com.definition.name + "\n\nVous pouvez appliquer une autre definition", MB_OKCANCEL  if com.definition.path == ""
            selection.clear:next if result == 2         
            if choix_inst == "Toutes" # toutes les instances
               comp_path = newpath if newpath != ""
               chemin = UI.openpanel "Recherche de : " + com.definition.name ,comp_path, com.definition.name + ".skp"
               rechargement = definitions.load chemin
               newpath = rechargement.path      
               com.definition = rechargement
            else # instance par instance
               selection.add com
               result = UI.messagebox "Voulez-vous recharger l'instance selectionnee ?",MB_YESNO
               if result == 6
                  comp_path = newpath if newpath != ""
                  chemin = UI.openpanel "Recherche de : " + com.definition.name ,comp_path, com.definition.name + ".skp"
                  rechargement = definitions.load chemin
                  newpath = rechargement.path
                  
                  com.definition = rechargement
               end
               selection.clear
            end    
         end
   
      end
      }
   end
   model.commit_operation
end

if not file_loaded?("Recharge_tout")
   UI.add_context_menu_handler do |context_menu|
   context_menu.add_separator
   context_menu.add_item("Recharger tout") { reload_all }
   end
   file_loaded("Recharge_tout")
end

j'ai la flemme de faire un webdialog rigole
Jojo, tu reconnaitras ta classe modifiée... rigole
Cela fonctionne pour les composants imbriqués, sur les instances multiples et memorise le chemin de la dernière définition chargée
Peut permettre d'appliquer une nouvelle définition
Exécution par clic droit "Recharger tout" dans le menu contextuel

Il reste à l'amélorier ou à le refondre...

@+

Christophe


Dernière édition par c.plassais le Sam 18 Sep 2010 - 21:20, édité 2 fois
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Sam 18 Sep 2010 - 21:05

Un petit aperçu Arrow



@+


Dernière édition par c.plassais le Lun 20 Sep 2010 - 8:30, édité 1 fois
avatar
jojo2
modérateur
modérateur
Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170

Messagejojo2 Sam 18 Sep 2010 - 23:08

Beau boulot Christophe. bravo

Dans le raisonnement du problème initial, je n'avais pas compris un reload des composants modifiés dans un modèle mais plutôt mettre à jour tous les composants fichiers importés dans le modèle.

A tester par DVERGER.
++
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Dim 19 Sep 2010 - 8:48

Salut Jojo,

Ce qui est sympa, c'est notamment pour des composants tres lourds, c'est de les remplacer temporairement par une definition plus légére.

Sinon je peux peut-être rajouter un menu du type "Rechargement automatique" où le plugin ne recharge que les composants avec un chemin valide (le composant peut existé mais avoir été déplacé!!) et a la fin de l'execution établir la liste des composants non traités saispas

@+
avatar
jojo2
modérateur
modérateur
Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170

Messagejojo2 Dim 19 Sep 2010 - 10:20

Ou séparer en 2 outils distincts car les 2 fonctions me semblent distinctes?

La "mienne" pour la mise à jour de multiples projets utilisant des composants déja définis.
La "tienne" pour l'optimisation d'un projet en cours.

++
tenrev
tenrev
FONDATEUR DE BIBLIO3D
FONDATEUR DE BIBLIO3D
Masculin Humeur : excellente comme toujours
Date d'inscription : 19/01/2008
Nombre de messages : 17951
Points : 30390
Age : 58
Localisation : Dans la quatrieme dimension
Emploi : archi d'intérieur salarié
https://www.biblio3d.com

Messagetenrev Dim 19 Sep 2010 - 11:10

bravo en tout cas bravo à vous deux pour vos recherche et réflexions respect respect

-------------------------------------------------------------------------------------------------------------------------
je ne sais pas grand chose , mais le peu que je sache , je le partage 
1 PC fixe avec proc Rizen 9 3950X 32 threads - cg nvidia geforce RTX3080  - 64 go de ram DDssd 1To
1 PC portable MSI TITAN PRO écran 17''|win10 64 bits| i7 Quad core|ram 32go| CG GFORCE GTX1080 avec 8go
1 casque VR Occulus Rift - 1 vieux PC portable Dell sous Linux Ubuntu 18    1 vieux pc portable HP sous chromebook
Modélisation : Sketchup - Rhino - Pconplanner   Rendu: Enscape - Keyshot - Unreal Engine - Artlantis - Twinmotion   Autres: Photoshop - Illustrator - Indesign - Vidéostudio - After Effect - Première

[Vous devez être inscrit et connecté pour voir cette image]
avatar
jojo2
modérateur
modérateur
Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170

Messagejojo2 Dim 19 Sep 2010 - 11:36

Merci Jack,

C'est la première fois qu'on échange "tous nus" en public. rouge

D'habitude ça fait des dizaines de mails avant de tomber d'accord. siffle
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 59
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais Dim 19 Sep 2010 - 19:29

Voila où cela mène la pudeur fouet siffle

Il y a t-il une expression reguliere plus simple Arrow
"supprimer tous les caractères après le dernier \\" ==> (\\Cube vert.skp)
Code:
exemple = "C:\\Users\\ChrisP\\Documents\\Mes Composants\\Cube vert.skp"
nb = exemple.length
x = exemple.split("\\")
nb1 = x.last.to_s.length
exemple = exemple.slice(0,nb-nb1-2)


@+
avatar
jojo2
modérateur
modérateur
Date d'inscription : 14/11/2009
Nombre de messages : 135
Points : 170

Messagejojo2 Dim 19 Sep 2010 - 19:59

S'il s'agit d'un path fichier valide:
Code:
File.dirname Sketchup.active_model.path
que tu peux compléter avec ton séparateur

Sinon:
Code:
exemple = "C:\\Users\\ChrisP\\Documents\\Mes Composants\\Cube vert.skp"
sep = "\\"
arrDir = exemple.split(sep)
arrDir.pop
pathDir = arrDir.join(sep)
Mais \\ sera tronqué en \ (syntaxe Ruby)

Page 1 sur 2 1, 2  Suivant

Voir le sujet précédent Voir le sujet suivant Revenir en haut

Sujets similaires

Créer un compte ou se connecter pour répondre

Vous devez être membre pour répondre.

S'enregistrer

Rejoignez notre communauté ! C'est facile !


S'enregistrer

Connexion

Vous êtes déjà membre ? Aucun soucis, cliquez ici pour vous connecter.


Connexion

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum