Forum Sketchup Artlantis Archicad
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Annonces
Bonjour Invité Bienvenue sur le forum biblio3d - le forum a été créé le Sam 19 Jan 2008 - 14:26- Nous avons enregistrés 14835 topics pour un total de : 175875 posts - le record de membres connectés simultanément :853
Galerie


 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Empty
Ton bloc notes
Derniers sujets
» [ SKETCHUP plugins ] Les bon plans Black Friday 2024
par simjoubert Ven 22 Nov 2024 - 16:19

» [ TWINMOTION ] Unreal Engine déménage sur Fab - DataSmith & Archicad
par simjoubert Ven 22 Nov 2024 - 16:04

» [ SKETCHUP généralité ] Tête de pilastre
par jerryvento Ven 22 Nov 2024 - 8:52

» [ CHALLENGE 2024 ] résultats du challenge
par Allansens Ven 22 Nov 2024 - 8:42

» [ ARCHICAD ] Paramétrage des coupes sur Archicad
par AK40Cess Jeu 21 Nov 2024 - 14:12

» [ FORUM ] astuce pour insérer facilement un tableau sur le forum
par tenrev Mer 20 Nov 2024 - 9:12

» [ SKETCHUP plugins ] une barre d’outils perso
par tenrev Lun 18 Nov 2024 - 15:05

» [ SKETCHUP généralité ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:47

» [ SKETCHUP généralité ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:47

» [ SKETCHUP généralité ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:46

» [ SKETCHUP tutos ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:45

» [ SKETCHUP tutos ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:44

» [ SKETCHUP tutos ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:43

» ColorMaker par Didier Bur[ SKETCHUP plugins ]
par JDD Dim 17 Nov 2024 - 20:56

» [ ARCHICAD ] Plus de format *atl dans Archicad
par Coulou Jeu 14 Nov 2024 - 8:26

» [ SKETCHUP tutos ] Créer des Bibliothèques et des livres aléatoires Facilement (2 Méthodes!)
par tenrev Mar 12 Nov 2024 - 11:31

» [ CHALLENGE 2024 ] les images finales du challenge
par tenrev Lun 11 Nov 2024 - 15:35

» [ SKETCHUP composants dynamiques ] Formule IF
par Samuel MATHIEU Jeu 7 Nov 2024 - 21:12

» [ Challenge 2024] cHallenge archjtexture exterieur ou paysagiste-vick-sketchup-enscape
par vick Jeu 7 Nov 2024 - 10:23

» [ SKETCHUP vray ]
par tenrev Mar 5 Nov 2024 - 21:19

» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste- Gaspard Hauser - Sketchup - D5 render
par tenrev Mar 5 Nov 2024 - 10:22

» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - JDD - SketchUp - Enscape
par tenrev Mar 5 Nov 2024 - 10:10

» [ ARCHICAD ] Murs paramétriques
par Coulou Lun 28 Oct 2024 - 10:28

» [ SKETCHUP généralité ] Aide pour SKP 2017
par PEGASE Sam 26 Oct 2024 - 18:36

» [ ARCHICAD ] Ajouter du lambris sur un mur
par Coulou Jeu 24 Oct 2024 - 10:43

» [ SKETCHUP généralité ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:13

» [ SKETCHUP tutos ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:11

» [ D5_RENDER] Petit exemple "hors sujet" ... D5
par Gaspard Hauser Mar 22 Oct 2024 - 19:59

» [ MATOS INFORM. ] [WINDOWS] Miniatures de prévisualisation pour les fichiers de modèle 3D au format .OBJ, .FBX, .STL, .3DS et +
par Gaspard Hauser Mar 22 Oct 2024 - 19:49

» [ SKETCHUP Layout ] Symboles Électriques sur Layout
par JDD Jeu 17 Oct 2024 - 9:44

» [ ARCHICAD ] gardes corps et profils complexe ?
par Christophe Fortineau Lun 14 Oct 2024 - 12:10

» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - allansens - cinema 4D
par Allansens Sam 12 Oct 2024 - 13:53

» [ ARTLANTIS ] Ca donne envie !
par Gaspard Hauser Jeu 10 Oct 2024 - 10:00

» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - AK40Cess - Archicad-Twinmotion
par Coulou Mar 8 Oct 2024 - 11:53

» [ TWINMOTION ] Unreal Engine déménage sur Fab - Assets de Megascan
par JDD Lun 7 Oct 2024 - 21:52

Sondage

êtes vous intéressé et prêt à participer à un challenge ?

 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c1015% [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c10 15% [ 2 ]
 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c1031% [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c10 31% [ 4 ]
 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c1046% [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c10 46% [ 6 ]
 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c108% [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c10 8% [ 1 ]
 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c100% [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c10 0% [ 0 ]
 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c100% [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Poll_c10 0% [ 0 ]

Total des votes : 13

chaine sketchup.tv
Serveur Discord
Le Deal du moment : -20%
Drone Dji DJI Mini 4K (EU)
Voir le deal
239 €

[ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes

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

JDD
JDD
V.I.P.
V.I.P.
Masculin Humeur : Cool, œil de lynx à pattes de velours
Date d'inscription : 21/05/2021
Nombre de messages : 1143
Points : 2493
Age : 75
Localisation : Nord (59)
Emploi : Director of Myself

MessageJDD Sam 16 Avr 2022 - 11:31

Bonjour,

Est-il possible de récupérer dans un fichier unique (image ou pdf), dans l'ordre chronologique des onglets de scènes du modèle, avec leur titre, toutes les vignettes de rendu des scènes dans sketchUp ?

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

Messagetenrev Sam 16 Avr 2022 - 14:56

JDD a écrit:Bonjour,

Est-il possible de récupérer dans un fichier unique (image ou pdf), dans l'ordre chronologique des onglets de scènes du modèle, avec leur titre, toutes les vignettes de rendu des scènes dans sketchUp ?

JDD

Salut JDD
je ne comprend pas trop ta question ? et ce que tu veux récupérer  ?  et surtout sous la forme d'une image ? et dans la section ruby ? moi y en a rien comprendre mdr5

-------------------------------------------------------------------------------------------------------------------------
je ne sais pas grand chose , mais le peu que je sache , je le partage/Salut Invité merci de consulter mon profil/PC fixe Rizen 9 3950 cg RTX3080-64 go de ram DDssd 1To/1 PC portable Lenovo  16'' w11 i7 32go-CG  RTX3070 8go/1casque meta Quest 3/1 casque VR Occulus Rift /1 PC portable Dell sous Linux Ubuntu-1 pc portable HP sous chromebook/Raspberry Pi - Arduino /  Modélisation :Sketchup-Rhino-Pconplanner-Rendu:Enscape-Keyshot-Unreal Engine-Twinmotion-Autres:Photoshop-Indesign-After Effect-Première pro-Intelligence artificielle -Chatgpt+-Midjourney-Suno-Elevenlabs-Canva
 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes 575088biblio3d
JDD
JDD
V.I.P.
V.I.P.
Masculin Humeur : Cool, œil de lynx à pattes de velours
Date d'inscription : 21/05/2021
Nombre de messages : 1143
Points : 2493
Age : 75
Localisation : Nord (59)
Emploi : Director of Myself

MessageJDD Sam 16 Avr 2022 - 17:37

Bonjour,

Lorsque des scènes sont créées dans sketchUp, dans la palette gérant les scènes, des vignettes (images réduites) sont générées par SketchUp

Je souhaite connaitre s'il existe soit dans les API de SketchUp, soit par le biais de quelques lignes de code Ruby, un moyen de récupérer ces vignettes dans un fichier. (d'où la section Ruby, mais peut-être pas la bonne ?)

Ce fichier pourrait être un fichier au format PDF, soit un fichier au format de type PNG, JPG, etc.. (que j'ai appelé peut-être à tort, image)

Je voudrais quelque chose qui ressemble à une planche de contact que l'on peut par exemple élaborer dans Photoshop.

J'ai trouvé cet AM, un plugin nommé Export_scenes codé par Tho Extension, qui génère automatiquement une image de chaque scène, mais si 20 scènes il génère 20 images PNG, alors que moi je souhaite que toutes ces images soient groupées dans un unique fichier (tel les planches de contact)

Ce plugin, qui fonctionne très bien, ne permet pas de choisir la taille des images produites. Il est par ailleurs crypté et donc non modifiable.

En espérant avoir clarifié ma demande.

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

Messagetenrev Sam 16 Avr 2022 - 18:20

hello

ok tu veux une planche contact , je comprend mieux , j'aurais plutôt mis cela dans la section "plugin" , plutôt que "Ruby" , si cela ne te dérange pas je déplace ?

juste pour ma curiosité mdr3 mdr5 , quel est le but ? faire un planche contact de tout tes composants ?
je l'ai déjà fait , en mettant les composants dans le projet et avec le plugin qui permet d'avoir un composant par scène et ensuite avec un plugin qui permet d'exporter chaque scène et ensuite la planche contact dans Photoshop


-------------------------------------------------------------------------------------------------------------------------
je ne sais pas grand chose , mais le peu que je sache , je le partage/Salut Invité merci de consulter mon profil/PC fixe Rizen 9 3950 cg RTX3080-64 go de ram DDssd 1To/1 PC portable Lenovo  16'' w11 i7 32go-CG  RTX3070 8go/1casque meta Quest 3/1 casque VR Occulus Rift /1 PC portable Dell sous Linux Ubuntu-1 pc portable HP sous chromebook/Raspberry Pi - Arduino /  Modélisation :Sketchup-Rhino-Pconplanner-Rendu:Enscape-Keyshot-Unreal Engine-Twinmotion-Autres:Photoshop-Indesign-After Effect-Première pro-Intelligence artificielle -Chatgpt+-Midjourney-Suno-Elevenlabs-Canva
 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes 575088biblio3d
JDD
JDD
V.I.P.
V.I.P.
Masculin Humeur : Cool, œil de lynx à pattes de velours
Date d'inscription : 21/05/2021
Nombre de messages : 1143
Points : 2493
Age : 75
Localisation : Nord (59)
Emploi : Director of Myself

MessageJDD Sam 16 Avr 2022 - 19:08

Ok pour déplacement vers la section "plugin", pas de soucis

Ce que tu décris, je l'ai également déjà réalisé.
Je sélectionne tous mes composants, et avec simplement  ces quelques lignes de code que je colle dans la console Ruby de ShetchUp, je produis automatiquement les vignettes de chaque composant.

Code:
mod = Sketchup.active_model
sel = mod.selection
path = mod.path
mypath = File.dirname(path)

sel.each do |sel|          # Il faut sélectionner un, plusieur ou tous les composants du modèle
  compname = sel.definition.name
  thumbnailname =  File.join(mypath, compname + '.png') # vignette au format png à l'emplacement du fichier SKP du modèle
  sel.definition.save_thumbnail thumbnailname
end

Ensuite, avec Photoshop, je génère la planche de contacts à partir de ces vignettes.

Avec le plugin Export_scenes cité ci-avant, de la même manière, je pourrais aussi réaliser la planche de contact de toutes les vignettes de mes scènes, mais ce plugin ne permet pas de modifier la taille des images produites.

Quel est le but recherché ?

Je dispose d'un modèle avec un très grand nombre de scènes qui ont été créées à la volée, ou ajoutées à divers moments, et qui finalement ne sont pas disposés dans l'ordre que je souhaite les avoir.
Pour reclasser mes nombreux onglets de scènes, j'aimerais créer cette planche de contact, qui me servirait de support visuel, pour faciliter le classement.

JDD
JDD
JDD
V.I.P.
V.I.P.
Masculin Humeur : Cool, œil de lynx à pattes de velours
Date d'inscription : 21/05/2021
Nombre de messages : 1143
Points : 2493
Age : 75
Localisation : Nord (59)
Emploi : Director of Myself

MessageJDD Sam 16 Avr 2022 - 19:45

Bonsoir,

J'ai peut-être trouvé une autre solution pour réaliser les vignettes qui seront ensuite disposées dans une planche de contact générée dans Photoshop.

Dans Info sur le modèle, dans l'onglet Animation :

Je décoche "Activer les transitions entre scène" et passe à Zéro le délai entre scènes

Puis dans menu Fichier > Exporter > Animation

Je fixe l'emplacement de sauvegarde, je fixe le format de sortie en PNG et dans les Options, je passe la résolution au mini admis qui est de 320 pixels en largeur d'image.

On clique sur le bouton Exporter et toutes les vignettes des scènes sont alors générées dans le dossier retenu.

Inconvénient : Le nom original donné aux onglets de scènes n'est pas conservé.

Reste à lancer le script dans Photoshop pour générer la planche de contact souhaité.

JDD
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2920
Points : 6434
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Sam 16 Avr 2022 - 21:32

Hello JDD
Voici un code pour faire un batch export des scènes de façon paramétrable.

Code:

# Batch export scènes to images
# Enregistrement dans un dossier portant le même nom que le model dans le dossier du modèle
# Auteur Simon Joubert
# Version 1
# 2022/04/16

#A coller dans la console ruby

model = Sketchup.active_model
pages = model.pages

unless pages.length == 0

  prompts = [
    "Largeur",
    "Hauteur",
    "Anti Aliazing",
    "Compression",
    "Transparent",
    "Extension"
    ]
 
  defaults = [
    640,
    480,
    false,
    0.9,
    true,
    "png"
    ]
 
  listes = [
    "",
    "",
    "true|false",
    "",
    "true|false",
    "png|jpg"
    ]
 
  titre = "Paramètres export"

  input = UI.inputbox(prompts, defaults, listes, titre)

  unless input == false

    # Paramètre chemin enregistrement fichier
    mpath = model.path.gsub(".skp","\\")

    options = {
      :width => input[0],
      :height => input[1],
      :antialias => (input[2]=="false" ? false : true),
      :compression => input[3],
      :transparent => (input[4]=="false" ? false : true)
    }
    extension  = input[5]


 
    pages.each do |page|
 
      name = "#{page.name}.#{extension}"
      page_active = pages.selected_page=page
      view = model.active_view
      url = File.join(mpath, name)
      options[:filename] = url
      view.write_image(options)
    end
  end
end

On peut améliorer les paramètres !
mojito
Bonne soirée

tenrev et JDD aiment ce message

JDD
JDD
V.I.P.
V.I.P.
Masculin Humeur : Cool, œil de lynx à pattes de velours
Date d'inscription : 21/05/2021
Nombre de messages : 1143
Points : 2493
Age : 75
Localisation : Nord (59)
Emploi : Director of Myself

MessageJDD Sam 16 Avr 2022 - 22:38

Bonsoir @simjoubert,

Super ! Merci beaucoup pour ce code.
Je teste demain.

JDD
JDD
JDD
V.I.P.
V.I.P.
Masculin Humeur : Cool, œil de lynx à pattes de velours
Date d'inscription : 21/05/2021
Nombre de messages : 1143
Points : 2493
Age : 75
Localisation : Nord (59)
Emploi : Director of Myself

MessageJDD Dim 17 Avr 2022 - 11:25

Bonjour  @simjoubert ,

J'ai lancé un test ce matin avec ton code.
Le sous_dossier n'est pas créé, et si des images sont créées je ne sais où elles ont été placées.

Il semble que l'instruction view.write_image(options) ne soit pas correctement renseignée (dans les options).

Une demande particulière :
Dans la boite de dialogue des options, peut-on ajouter "Taille de la vue" et avoir la possibilité de conserver le rapport H/L de cette vue pour les dimensions personnalisées.

JDD
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2920
Points : 6434
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Dim 17 Avr 2022 - 11:34

Hello il faut d’abord enregistrer ton modèle 
Car le code utilisé son emplacement pour créer le sous dossier.
Pour le ratio je regarde
JDD
JDD
V.I.P.
V.I.P.
Masculin Humeur : Cool, œil de lynx à pattes de velours
Date d'inscription : 21/05/2021
Nombre de messages : 1143
Points : 2493
Age : 75
Localisation : Nord (59)
Emploi : Director of Myself

MessageJDD Dim 17 Avr 2022 - 11:37

J'avais bien enregistré mon modèle avant de lancer le script.
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2920
Points : 6434
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Dim 17 Avr 2022 - 22:36

Bonsoir les amis
Après l'orgie traditionnelle familiale de Pâques, j'ai digéré sur ce code.
j'ai testé sur un modèle de 70 scènes

Il inclut la vérification de l'existence des sous dossier. Et les créer le cas échéant ! (cause de l'erreur du code précédent)

La modification et la restauration des paramètres de transition des scènes du modèle et ceux des pages s'il en avait des spéciaux.

Une vérification en amont si le modèle a été enregistré, s'il existe des scènes !
Un message de succès à la fin !
Ajout d'une option pour conserver les proportions, la taille par défaut dans la boite de dialogue correspond aux dimensions de la 1re scène.
La hauteur de l'image exportée est recalculée selon un produit en croix (la hauteur de scène * largeur définit boite de dialogue / largeur de la scène.)

Code:

 
# Batch export scènes to images
# Enregistrement dans un dossier portant le même nom que le model dans le dossier du modèle puis un sous dossier "Export_Scenes"
# Auteur Simon Joubert
# Version 2
# 2022/04/16

#A coller dans la console ruby
require 'fileutils'
model = Sketchup.active_model

mpath = model.path # chemin du modele SU sauvegardé
mpath_directory = File.dirname(mpath) # Uniquement le chemin de dossier
sub_directory = File.basename(mpath,".skp") # On récupère le nom du fichier sans l'extension
new_sub_directory = File.absolute_path(File.join(mpath_directory,sub_directory)) #On ajoute le dossier portant le nom du fichier
sub_sub_directory =  "ExportScenes" # Nom d'un sous dossier qui contiendra les images exportées
new_directory = File.absolute_path(File.join(new_sub_directory, sub_sub_directory)) #Chemin complet avec les sous dossier

pages = model.pages # on récupère le tableau des scènes du modèle

if  mpath == "" # Le modèle n'est pas enregistré
  message_texte = "Votre modèle n'a pas été encore sauvegardé au moins une fois !\nEnregistrez le et recommencez.\nOpération annulée"
  message  = UI.messagebox(message_texte, MB_OK)

elsif pages.length == 0 # Le modèle ne contient pas de scènes
  message_texte = "Votre modèle ne contient aucune scène !\nOpération annulée"
  message  = UI.messagebox(message_texte, MB_OK)

else
  # on désactive les transitions entre les scènes et une duree de scène à 0
  showtransition = model.options.to_a[1]["ShowTransition"]
  model.options.to_a[1]["ShowTransition"] = false
  slidetime = model.options.to_a[2]["SlideTime"]
  model.options.to_a[2]["SlideTime"] = 0.0
  

  # On test l'existance du dossier portant le même nom que le fichier du modele
  if File.directory?(new_sub_directory) == false
    #on creer le répertoire avec le nom du modèle s'il n'éxiste pas
    FileUtils.mkdir new_sub_directory
  end
  # On test l'existance du sous dossier qui recevra les images exportées
  if File.directory?(new_directory) == false
    #on creer le répertoire s'il n'éxiste pas
    FileUtils.mkdir new_directory
  end

  # On récupère les dimensions de la premiere scène pour renseigner la boite de dialogue
  page_0 = pages.selected_page = pages[0]
  view_0 = model.active_view
  largeur_0 = view_0.vpwidth
  hauteur_0 = view_0.vpheight

  # Initialisation de la boite de dialogue
  prompts = [
    "Conserver les proportions de la vue",
    "Largeur de la vue",
    "Hauteur de la vue",
    "Anti Aliazing",
    "Compression JPG",
    "Transparent",
    "Extension"
    ]
  
  defaults = [
    true,
    largeur_0,
    hauteur_0,
    false,
    0.9,
    true,
    "png"
    ]
  
  listes = [
    "true|false",
    "",
    "",
    "true|false",
    "",
    "true|false",
    "png|jpg"
    ]
  
  titre = "Paramètres export"

  input = UI.inputbox(prompts, defaults, listes, titre)

  unless input == false # sauf si clic sur annuler

    # On récupère les valeurs saisies dans la boite de dialogue
    proportion_verou =  (input[0]=="false" ? false : true)
    width = input[1].to_i
    height = input[2].to_i  

    options = {
      :width => width,
      :antialias => (input[3]=="false" ? false : true),
      :compression => input[4],
      :transparent => (input[5]=="false" ? false : true)
    }
    extension  = input[6]
    
    # Boucle sur chaque scène
    pages.each do |page|
      # On récupère les paramètres de durée et de transition de la page et on les reinitialises à 0
      page_transition = page.transition_time
      page.transition_time = -1.0
      time = page.delay_time
      page.delay_time = 0.0

      # On active la scène
      page_active = pages.selected_page=page
      view = model.active_view

      # Hauteur de l'image selon le paramètre de proportion
      if proportion_verou == true
        view_i = model.active_view
        largeur_i = view_0.vpwidth.to_i
        hauteur_i = view_0.vpheight.to_i
        options[:height] = hauteur_i * width / largeur_i
      else
        options[:height] = height.to_i
      end
      
      # Construction de l'url d'enregistrement
      name = "#{page.name}.#{extension}"
      url = File.absolute_path(File.join(new_directory, name))    
      options[:filename] = url

      # On enregistre l'image de la scène
      image = view.write_image(options)

      #On restaure le paramètre de durée et de transition de la page
      page.transition_time = page_transition
      page.delay_time = time
    
    end # Fin de la boucle
    message_texte = "Les scènes ont été exportées au format #{extension} dans le dossier\n#{new_directory}"
    message  = UI.messagebox(message_texte, MB_OK)

    # On restaure les paramètres de durees et de transition de l'annimation du modèle
    model.options.to_a[1]["ShowTransition"] = showtransition
    model.options.to_a[2]["SlideTime"] = slidetime

  end # Fin unless input == false
end # Fin if

J'attends vos retours !
Si c'est bon, on lui ajoutera une icône et une entrée de menu sous forme de plugin.
Pour le nom je pense à "SJ Batch Export Scenes"
mojito

tenrev aime ce message

JDD
JDD
V.I.P.
V.I.P.
Masculin Humeur : Cool, œil de lynx à pattes de velours
Date d'inscription : 21/05/2021
Nombre de messages : 1143
Points : 2493
Age : 75
Localisation : Nord (59)
Emploi : Director of Myself

MessageJDD Lun 18 Avr 2022 - 10:29

Bonjour  @simjoubert ,

Le code fonctionne NICKEL. Un grand merci pour avoir pris en compte mon dernier souhait.
Et encore Bravo pour cette réalisation.

Je ne voudrais pas trop abuser, mais un petit point de détail pourrait être amélioré. Je m'explique :

Dans la boite de dialogue, si l'utilisateur souhaite maintenir les proportions de l'écran pour la résolution de sortie, et qu'il modifie une des dimensions (largeur ou hauteur) dans la boite de dialogue avant de valider l'opération, il faudrait que l'autre valeur soit automatiquement affecté par la mise à l'échelle de la première valeur modifiée.
Actuellement si on change une valeur (L ou H) l'autre n'est pas modifiée, mais si on valide après la modification d'une seule de ces valeurs, la mise à l'échelle est bien respectée en sortie.

Pour le titre du plugin, on te laisse le choix.

Perso, je trouve que ce titre  "SJ Batch Export Scenes" ne fait pas mention aux vignettes qu'il produit.
Peut-être un titre comme "SJ_BatchExport2Thumbnail" pourrait être une suggestion ??

Note : je n'ai pas vérifié si le script acceptait les noms et accentuations "exotiques" pour les noms des scènes et les noms des fichiers SKP, pour la création des dossiers et sous-dossiers.
Je suppose que c'est OK.

Edit: Dans la version française, Dans la boite de dialogue, pour Conservation proportion et Antialising, "true et false" pourraient être remplacé par "Oui et Non"

JDD

tenrev et simjoubert aiment ce message

simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2920
Points : 6434
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Sam 30 Avr 2022 - 10:59

Hello les amis,
Hello @JDD

J'ai mis en ligne le plugin qui se nommera
SJ Batch Export Scenes To Thumbnails
 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes Batch_export
voici le lien vers la présentation sur un post dédié :
https://www.biblio3d.com/t14295-sketchup-plugins-sj-batch-export-scenes-to-thumbnails#170691

 [ SKETCHUP ruby ] Récupération des vignettes de rendu de scènes IPB_917

JDD aime ce message

Contenu sponsorisé

MessageContenu sponsorisé

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

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