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 14834 topics pour un total de : 175872 posts - le record de membres connectés simultanément :853
Galerie


 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Empty
Ton bloc notes
Derniers sujets
» [ SKETCHUP généralité ] Tête de pilastre
par jerryvento Aujourd'hui à 8:52

» [ CHALLENGE 2024 ] résultats du challenge
par Allansens Aujourd'hui à 8:42

» [ ARCHICAD ] Paramétrage des coupes sur Archicad
par AK40Cess Hier à 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

» [ TWINMOTION ] Unreal Engine déménage sur Fab - DataSmith & Archicad
par Coulou Jeu 10 Oct 2024 - 9:03

» [ 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

» [ CHALLENGE ARCHITECTURE EXTERIEURE OU PAYSAGISTE ] Démarrage du challenge 2024 - les régles
par tenrev Jeu 3 Oct 2024 - 14:58

Sondage

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

 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c1015% [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c10 15% [ 2 ]
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c1031% [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c10 31% [ 4 ]
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c1046% [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c10 46% [ 6 ]
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c108% [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c10 8% [ 1 ]
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c100% [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c10 0% [ 0 ]
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Poll_c100% [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 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 plugins ] sj_AddDCFunctions

Page 6 sur 13 Précédent  1, 2, 3 ... 5, 6, 7 ... 11, 12, 13  Suivant

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

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

Messagesimjoubert Mar 14 Déc 2021 - 22:52

Super @Samuel Tallet Mille mercis mon ami !
Je suis en pleine clôture des comptes de la copro je ne regarderai cela que demain soir malheureusement.
Je vais décortiquer tout ça et essayer de comprendre chaque termes ! woah lire rage non waah

pour la boîte de dialogue l'astuce réside dans la variable SESSION pour éviter quelle ne se referme toute seule!

Malgré le Covid je te claque une grosse bise ! copains mojito

tenrev et Samuel Tallet aiment ce message

Samuel Tallet
Samuel Tallet
V.I.P.
V.I.P.
Masculin Date d'inscription : 15/04/2018
Nombre de messages : 873
Points : 2465
Age : 38
Localisation : Marseille, France
Emploi : Développeur Web

MessageSamuel Tallet Mer 15 Déc 2021 - 14:06

simjoubert a écrit:Super @Samuel Tallet  Mille mercis mon ami !
Avec plaisir Simon ! sourire

simjoubert a écrit:
[...] pour la boîte de dialogue l'astuce réside dans la variable SESSION pour éviter quelle ne se referme toute seule!

Ah, je croyais que cette variable ne servait à rien ! mdr5 Ca va, alors ! Je te laisse la remettre dans le fichier "help.rb".

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

Messagesimjoubert Mer 15 Déc 2021 - 15:23

C'etait une astuce que j'avais chiner sur un forum pour éviter que la boite se referme immédiatement sinon en soi elle ne sert a rien !
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2917
Points : 6425
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Mer 15 Déc 2021 - 19:35

TRANSLATE['Hello'] @Samuel Tallet   content

Merci pour ton énorme travail  bravo
J'ai remis la variable SESSION et remis le test sur la variable la dialogue ne se ferme que si la variable est vide
SESSION[:webkey] = nil
Code:
 # Affiche le dialogue HTML d'aide.
      def self.show_html_dialog
        SESSION[:webkey] = "Aide"
        dialog = UI::HtmlDialog.new(
          dialog_title: NAME,
          preferences_key: 'sj_AddDCFunctions_Help',
          scrollable: true,
          width: 600,
          height: 400
        )
        # On remplit le dialogue HTML avec le fichier HTML écrit sur le disque par la méthode `Help.rewrite_html_file`.
        dialog.set_url(File.join(DIALOGS_DIR, 'help.html'))
        dialog.set_can_close { SESSION[:webkey] == nil }
            SESSION[:webkey] = nil
        dialog.center
        dialog.show
      end

Pour éviter d'avoir plusieurs sous dossier pugin>Simjoubert je me suis pencher sur le code des plugins de Chris Fulmer qui partagent un même sous dossier Chris Fulmer Tools sans être dupliquer.
La méthode consiste à déplacer la création du menu et de la barre d'outils du module vers l'espace de nom et de tester l'existence dudit sous dossier.
son code n'utilisait pas de de fichier load.rb mais uniquement  menu.rb qui fusionnait les 2. Sur mon ancienne version j'avais réussit mais avec ta version j'ai peur de tout casser.
Voici le code

fichier racine sj_add_dc_function.rb
Code:

module SimJoubert
module SJ_ADD_DC_FUNCTIONS
   #Creer une constante de module qui permet de communiquer entre sous module)
   
  
  # Inscrit et charge l'extension.
    require 'sketchup.rb'
    require 'extensions.rb'
    require "su_dynamiccomponents"
    
    NAME = "sj_add_dc_functions"        #EDIT NOM DU DOSSIER PLUGIN ET PREFIS FICHIER (SANS ESPACE EN MINUSCULE)
    UNAME = "sj Add DC Functions"       #EDIT NOM DU PLUGIN ESPACES AUTORISES
    MENU_NAME = "Add DC Functions - Liste des fonctions"       #EDIT NON DU SOUS MENU
    SESSION = Hash.new
    version = "0.9.7"           #EDIT
    desc = "Ajoute des fonctions de clacul pour les formules des attributs des composants dynamiques. Volume, Aire, ChildrenSumAttribut, ChildrenSumSiAtrribut, ParentAttribut."
    copy_year = "2021"
    author = "Simon Joubert"
    
    
  #------edit above---------------------------------------------------------------

    
    extension = SketchupExtension.new UNAME, NAME+"/"+NAME+"_menus.rb"

    #The name= method sets the name which appears for an extension inside the Extensions Manager dialog.
    extension.name = UNAME

    # The description= method sets the long description which appears beneath an extension inside the Extensions Manager dialog.
    extension.description = desc + "  Access it via Plugins > Simon Joubert Tools > "+MENU_NAME

    # The version method sets the version which appears beneath an extension inside the Extensions Manager dialog.
    extension.version = version

    # Create an entry in the Extension list that loads a script called
    # stairTools.rb.
    extension.copyright = copy_year
      
    # The creator= method sets the creator string which appears beneath an extension inside the Extensions Manager dialog.
    extension.creator = author

    # The register_extension method is used to register an extension with SketchUp's extension manager (in SketchUp preferences).
    Sketchup.register_extension( extension, true )
    
  end

    

end


Fichier sj_add_dc_functions_menu.rb

Code:

module SimJoubert
   module SJ_ADD_DC_FUNCTIONS
        require 'sketchup.rb'
      require NAME+'/'+'FonctionsDefinition.rb'
      require NAME+'/'+'FonctionsTexte.rb'
      require NAME+'/'+'FonctionsRotation.rb'
      require NAME+'/'+'FonctionsMatiere.rb'
      require NAME+'/'+'FonctionsNested.rb'
      require NAME+'/'+'FonctionsEnscape.rb'
      require NAME+'/'+'FonctionsBooleennes.rb'
      require NAME+'/'+'FonctionsAirVolume.rb'
      require NAME+'/'+'FonctionsLayerTags.rb'
      require NAME+'/'+'FonctionsTexte3D.rb'
      require NAME+'/'+ NAME+'_aide.rb'

    end #fin module

    #***********************************************
    #CODE DANS L'ESPACE DE NOM Simjoubert
    #***********************************************

    def self.icon_extension
        Sketchup.platform == :platform_osx ? '.pdf' : '.svg'
    end
  
    if !file_loaded?('sj_menu2_loader') then
        @@sj_tools_menu = UI.menu("Plugins").add_submenu("Simon Joubert Tools")
    end
    
   #------New menu Items---------------------------
   if !file_loaded?('sj_ew_loader')
      @@sj_ew_menu = @@sj_tools_menu.add_submenu("-=My plugins=-")
      @@sj_ew_menu.add_item("Discovers my plugins"){UI.openURL "https://www.sketchup.simjoubert.com/my-plugins.html"}
        @@sj_tools_menu.add_separator
        @@sj_ew_menu.add_separator
   end
     @@sj_ew_menu.add_item(SJ_ADD_DC_FUNCTIONS::MENU_NAME+" Page"){UI.openURL "https://www.sketchup.simjoubert.com/my-plugins/1-plugins/3-sj-redrawcollection.html"}
   #------------------------------------------------
    if !file_loaded?(__FILE__)
        toolbar = UI::Toolbar.new "Add DC Function - Aide"
      cmd1 = UI::Command.new(SJ_ADD_DC_FUNCTIONS::MENU_NAME) {SJ_ADD_DC_FUNCTIONS.aide_cmd()}
      @@sj_tools_menu.add_item cmd1
      cmd1.small_icon = cmd1.large_icon = "./Toolbar Icons/help2" + icon_extension
      cmd1.tooltip = "Affiche une boite de dialogue avec la liste des fonctions ajoutées par le plugin"
      toolbar = toolbar.add_item cmd1
    
        state = toolbar.get_last_state
        if (state == TB_VISIBLE)
            toolbar.restore
            # Per bug 2902434, adding a timer call to restore the toolbar. This
            # fixes a toolbar resizing regression on PC as the restore() call
            # does not seem to work as the script is first loading.
            UI.start_timer(0.1, false) {
            toolbar.restore
            }
        end
    
    
    
    end

    file_loaded('sj_ew_loader')    
    file_loaded('sj_menu2_loader')
    file_loaded(__FILE__)

end

comment faire pour transformer le fichier load/ toolbar et menu de ta version pour faire la même chose Car tu as découper les appels avec une méthode menu et tu as ajouter les require . il y a une chronologie des appels à respecter mais je n'arrive pas à bien décrypter.
et je ne sais pas comment de l’espace de nom on appel une méthode d'un sous module.

Bref j'ai besoin encore d'un coupe de main.  gentleman

J'ai modifier sur le même concept sj_addDCAttribut et sj_redraw_Collection et c'est plus pro comme hierarchie
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Captu134

Je continue d'explorer mais tout fonctionne  bien  bravo  [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 IPB_917
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 Jeu 16 Déc 2021 - 9:32

Bonjour  @simjoubert

Juste 2 observations mineures à la lecture de ta conversation :

Que vient faire dans ton code le script "StairTools.rb" ?
Dans la description de l'extension, la coquille "clacul " toujours pas corrigée et signalée en page 3 ci-avant.
Pour le reste, c'est-à-dire pour l'essentiel, Maître  @Samuel Tallet, ne devrait pas tarder à nous éclairer.

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 Jeu 16 Déc 2021 - 11:27

hello les amis

du coup après relecture , petite faute

 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Image_23

a+

-------------------------------------------------------------------------------------------------------------------------
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 plugins ] sj_AddDCFunctions - Page 6 575088biblio3d
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2917
Points : 6425
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Jeu 16 Déc 2021 - 11:42

JDD a écrit:Bonjour  @simjoubert

Juste 2 observations mineures à la lecture de ta conversation :

Que vient faire dans ton code le script "StairTools.rb" ?
Dans la description de l'extension, la coquille "clacul " toujours pas corrigée et signalée en page 3 ci-avant.
Pour le reste, c'est-à-dire pour l'essentiel, Maître  @Samuel Tallet, ne devrait pas tarder à nous éclairer.

JDD

StairTools.rb est préfixé avec un # c'est donc une ligne commentée! c'est un vestige du fichier source que j'avais pris pour modèle donc pas de panique !
pour la description de l'extension il y a un todo de Samuel dans sa version pour insérer le Translate et c'est pas encore fait et la dyslexie à la vie longue !
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Captu136

Je regarde si la coquille trouvée par Jack persiste dans le fichier translate de Samuel


Dernière édition par simjoubert le Jeu 16 Déc 2021 - 11:49, édité 1 fois
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2917
Points : 6425
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Jeu 16 Déc 2021 - 11:47

dans le fichier lang de Samuel pas de coquille
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Captu135
Samuel Tallet
Samuel Tallet
V.I.P.
V.I.P.
Masculin Date d'inscription : 15/04/2018
Nombre de messages : 873
Points : 2465
Age : 38
Localisation : Marseille, France
Emploi : Développeur Web

MessageSamuel Tallet Jeu 16 Déc 2021 - 13:03

Bonjour @simjoubert sourire

Pour empêcher la duplication du sous-menu "Sim Joubert", il suffit de modifier uniquement le fichier "menu.rb" de chacun de tes plugins comme suit :

Code:

require 'sketchup'
require 'sj_AddDCFunctions/help'

# Espace de noms de l'auteur.
module SimJoubert
  # S'il n'est pas déjà défini :
  unless const_defined?('AUTHOR_MENU')
    # Ajoute le sous-menu de l'auteur dans le menu des extensions SketchUp.
    AUTHOR_MENU = UI.menu('Plugins').add_submenu('Sim Joubert')
    AUTHOR_MENU.add_item('Discover my plugins') do
      UI.openURL('https://www.sketchup.simjoubert.com/my-plugins')
    end
  end
  # Espace de noms du plugin.
  module AddDCFunctions
    # Menu.
    module Menu
      # Ajoute le sous-menu du plugin dans le sous-menu de l'auteur.
      def self.add
        plugin_menu = AUTHOR_MENU.add_submenu(NAME)
        plugin_menu.add_item(TRANSLATE['Functions list']) { Help.show_html_dialog }
      end
    end
  end
end

-------------------------------------------------------------------------------------------------------------------------
Galerie | Plugins

tenrev, JDD 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 : 2917
Points : 6425
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Jeu 16 Déc 2021 - 13:10

Je suis encore dans ma compta mais j'arrive presque au bout !
je regarde des que possible
Merci Samuel

j'ai regardé rapido le fichier js qui a fait une cure d'amaigrissement ! woah il faut que que comprenne !
Donc ne part pas trop loin !
mojito

tenrev et Samuel Tallet aiment ce message

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

Messagesimjoubert Ven 17 Déc 2021 - 23:44





MISE A JOUR

 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Help2Dernière version sj Add DC Functions 0.9.6 MAJ du 17/12/2021
Lien de téléchargement : sj-add-dc-functions



DÉSINSTALLER L'ANCIENNE VERSION AU PRÉALABLE

### NOTES VERSIONS:

v.9.6 2021/12/17
   Un énorme travail de restructuration du code a été opéré par Samuel Tallet pour faciliter la maintenance du code et de sa traduction.
   Mille mercis  @Samuel Tallet  !  bravo  copains
   Harmonisation du plugin dans la collection SJ_DC_TOOLS (sj_add_dc_functions, sj_add_attribute, sj_redraw_dc_collection)
   Fusion des menus SimJoubert qui se dupliquaien en SimJoubert Tools.
   Fusion de la barre d'outil avec les autre plugins de la collection
   L'ensemble du plugin est traduit automatiquement selon la langue de Sketchup
   Fichier langue dispo Anglais, Français
Le clic sur le bouton sélectionne la fonction avec sa liste et les copie dans le presse-papier.


Dernière édition par simjoubert le Mer 23 Mar 2022 - 18:58, édité 1 fois

Samuel Tallet aime ce message

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 Lun 17 Jan 2022 - 9:49

salut Simon @simjoubert

je pense ne pas me tromper en disant qu'il n'existe pas de moyen pour l'instant pour changer le point d'insertion d'un sous composant dans un composant dynamique selon une condition donnée

par exemple un sous composant qui se copie en translation et au bout de la x copies il pivote selon un angle et selon une nouvelle position de sont point de pivot ?

donc je poste ici car peut être la possibilité d'avoir une fonction qui pourrait le faire ?

a+ mon ami


-------------------------------------------------------------------------------------------------------------------------
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 plugins ] sj_AddDCFunctions - Page 6 575088biblio3d
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2917
Points : 6425
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Lun 17 Jan 2022 - 19:40

tenrev a écrit:salut Simon   @simjoubert

je pense ne pas me tromper en disant qu'il n'existe pas de moyen pour l'instant pour changer le point d'insertion d'un sous composant dans un composant dynamique selon une condition donnée

par exemple un sous composant qui se copie en translation et au bout de la x copies il pivote selon un angle et selon une nouvelle position de sont point de pivot ?

donc je poste ici car peut être la possibilité d'avoir une fonction qui pourrait le faire ?

a+ mon ami

Hello Jack J'ai un peu de mal à visualiser, la journée à été physique et j'ai un peu de mal à me câbler. Aurais-tu une petite capture d'un exemple de ce que tu voudrais ?
Un sous composant peut combiner une translation et une rotation selon une condition, mais je ne pense pas que ce soit ta question ?
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Captu143
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 Mar 18 Jan 2022 - 8:47

@simjoubert

oui ca je sais faire , mon ami , une translation et une rotation d'un composant lors d'une copie

ce que je pensais , c'est de pouvoir changer l'axe d'une copie , par exemple dans mon cas (voir capture écran) pour la copie 3 , il change sont point de pivot , ce qui pourrait permettre une rotation  complétement différente à une partie des composants dupliqués

 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Captu336

pour l'instant si je fais des composants qui se dupliquent selon plusieurs courbes , je n'ai trouvé que la solution d'avoir plusieurs fois le même composant masqué  et de ne révéler le composant que lorsque je change de direction dans ma courbure (voir ma capture) je suis obligé d'avoir plusieurs composants car le point de pivot change

 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Captu335

a+ mon ami

-------------------------------------------------------------------------------------------------------------------------
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 plugins ] sj_AddDCFunctions - Page 6 575088biblio3d
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2917
Points : 6425
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Mar 18 Jan 2022 - 9:11

Ok jack
Changer la défini d’un composant sans le rendre unique modifie toutes instances !
Il fAut que tu places les géométries de ton sous composant dans un sous sous composant que tu Déplacera de manière conditionnel sur le numéro de copy de son parent pour simuler le changement d’axes
Je reprends la discussion plus tard je dois filer

tenrev aime ce message

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 Mar 18 Jan 2022 - 9:16

simjoubert a écrit:Ok jack
Changer la défini d’un composant sans le rendre unique modifie toutes instances !
Il fAut que tu places les géométries de ton sous composant dans un sous sous composant que tu Déplacera de manière conditionnel sur le numéro de copy de son parent pour simuler le changement d’axes
Je reprends la discussion plus tard je dois filer

fou aie hmm pas d'urgence camarade , mais moi pas tout comprendre siffle gne mdr3

-------------------------------------------------------------------------------------------------------------------------
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 plugins ] sj_AddDCFunctions - Page 6 575088biblio3d
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2917
Points : 6425
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Mar 18 Jan 2022 - 11:28

J'ai une grosse demi-heure après je repars !

Actuellement tu as ton composant linéaire d'étagères dans lequel tu as un sous composant module courbe qui est copié ! On a une hiérarchie à 2 niveaux

Dans ton cas présent avec un peu de calcul trigonométrique on doit pouvoir sans sortir finalement ton sous composant subit simplement une translation en X et en Y et une rotation, quel que soit son numéro de copy

Pour alléger les calculs, tu peux aussi insérer ton module courbe dans un composant vide que l'on nommera module_axe. On a une hiérarchie à 3 niveaux

C'est ce nouveau composant qui serait copié dans le composant linéaire d'étagères. Avec une translation simple et selon son numéro de copy le sous-sou-composant module subirait une rotation de 180°-angle des segments de courbe. Et une translation. Ainsi tu simules le changement d'axes.

Pour le sous composant module axe il peuvent en x être soit en x1 ou en x2
en y si serie 1 y=y1 si serie 2 y = y2 ...
ou y2 = nbr module serie 1 * rayon externe*sin(angle_segment)

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 Mar 18 Jan 2022 - 14:31

simjoubert a écrit:J'ai une grosse demi-heure après je repars !

Actuellement tu as ton composant linéaire d'étagères dans lequel tu as un sous composant module courbe qui est copié  ! On a une hiérarchie à 2 niveaux

Dans ton cas présent avec un peu de calcul trigonométrique on doit pouvoir sans sortir finalement ton sous composant subit simplement une translation en X et en Y et une rotation, quel que soit son numéro de copy

Pour alléger les calculs, tu peux aussi insérer ton module courbe dans un composant vide que l'on nommera module_axe. On a une hiérarchie à 3 niveaux

C'est ce nouveau composant qui serait copié dans le composant linéaire d'étagères. Avec une translation simple et selon son numéro de copy le sous-sou-composant module subirait une rotation de 180°-angle des segments de courbe. Et une translation. Ainsi tu simules le changement d'axes.

Pour le sous composant module axe il peuvent en x être soit en x1 ou en x2
en y si serie 1 y=y1 si serie 2 y = y2 ...
ou y2 = nbr module serie 1 * rayon externe*sin(angle_segment)



hello Simon

oui tu as complétement raison et c'est ce que j'ai déja fait du coup , sauf que j'ai pas donné la condition : à partir de la x copie je pars dans l'autre sens

pour simplifier j'ai fait 3 composants , mais pour les formules ca revient au même pour les translations il faut retrouver avec la trigo le nouveau centre de rotation c 'est ce que j'ai fait
mais je vais adopter ta méthode ca me permettra d'avoir un seul module de base

merci camarade a +



-------------------------------------------------------------------------------------------------------------------------
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 plugins ] sj_AddDCFunctions - Page 6 575088biblio3d
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2917
Points : 6425
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Mar 18 Jan 2022 - 14:55

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

Messagesimjoubert Sam 22 Jan 2022 - 19:07

Hello les amis !

J'ai ajouté une nouvelle famille de fonction dans la version 9.7 du plugin sj Add DCFunctions
La famille ARRAY (tableau en français).

Un array est un type de donnée en code qui liste des valeurs, qui peuvent être du texte, des nombres ou des sous tableaux. L'avantage des arrays c'est qu'ils ont ordonnés. Et on peut facilement récupérer une valeur depuis sont index.

Dans les fonctions natives de Su il y a la fonction liste qui s'en rapproche, elle permet de définir une valeur selon son index dans la liste, mais vous êtes obligé d'écrire à chaque fois la liste, calcule inclus. Mon approche est de définir la liste dans un array puis vous pourrez faire les calculs dessus, connaitre sa longueur, une valeur depuis son index et la somme cumulée jusqu'à  l'index défini. Il n'y a qu'une liste à mettre à jour.

Pour répondre à  Jack @tenrev  et ses linéaires d'étagères courbes j'ai créé la fonction DONUT_ARRAY
Elle permet de créer 3 arrays avec les coordonnées en X, Y et la rotation Z pour chaque copie d'un chemin courbe. et un attribut nombres de copy.

Une fois les arrays crées, il n'y plus qu'a utilisé dans les formules du sous composant courbe la fonction ARRAY_VALUE (Nom de l'array, l'index de la copy) et on récupère la valeur correspondante dans le tableau.

L'origine du sous composant doit-être le sommet de l'angle décrit par la courbure.

En image cela donne :
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Dunut_10

Encore merci à  @Samuel Tallet  car l'ajout d'une nouvelle famille et de fonctions est super simple !

Si œil de lynx  @JDD veux bien vérifier l'orthographe et la traduction ?

Il me reste à mettre en ligne la nouvelle version.

mojito


Dernière édition par simjoubert le Sam 22 Jan 2022 - 19:27, édité 1 fois

tenrev, JDD et Samuel Tallet aiment ce message

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

Messagesimjoubert Sam 22 Jan 2022 - 19:21





MISE A JOUR

 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Help2Dernière version sj Add DC Functions 0.9.7 MAJ du 22/01/2022
Lien de téléchargement : sj-add-dc-functions



DÉSINSTALLER L'ANCIENNE VERSION AU PRÉALABLE si vous faites une mise à jour d'une version inférieure à 9.6

### NOTES VERSIONS :

v.9.7 2022/01/22
   Ajoute la famille de fonction Array/tableau

   ARRAY(name,valeurs séparées par des virgules) créer 1 attribut array au format array avec la liste des valeurs passées en paramètre.

   ARRAY_LENGTH(Array_name) retourne la longueur du tableau (nombre de valeurs)

   ARRAY_VALUE(Array_name, Numero_index) retourne la valeur correspondant à l'index.

   ARRAY_SUM (Array_name, Numéro_index) retourne la somme cumulée jusqua l'inex inclus.

   DONNUT_ARRAY (rayon_interne, rayon_externe, angle, prefix, chemin) retourne 3 attributs array correspondant aux coordonnées X, Y et de rotation Z. Et un attribut nombre de copies.
   Les attributs créés décrivent les coordonnées pour chaque copie d'un tronçon de donut.
   Le chemin est représenté par une liste de 1 ou -1 séparés par des virgules. Indiquant le sens du tronçon courbe vers la droite ou vers la gauche.


Dernière édition par simjoubert le Mer 23 Mar 2022 - 18:59, édité 1 fois

tenrev et JDD aiment ce message

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 Dim 23 Jan 2022 - 21:54

Merci @simjoubert Simon

C est cool ces nouvelles fonction , je fais la mise à jour , encore merci pour ton travail

-------------------------------------------------------------------------------------------------------------------------
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 plugins ] sj_AddDCFunctions - Page 6 575088biblio3d
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 Lun 24 Jan 2022 - 9:50

simjoubert a écrit:Pour répondre à  Jack @tenrev  et ses linéaires d'étagères courbes j'ai créé la fonction DONUT_ARRAY
Elle permet de créer 3 arrays avec les coordonnées en X, Y et la rotation Z pour chaque copie d'un chemin courbe. et un attribut nombres de copy.

Une fois les arrays crées, il n'y plus qu'a utilisé dans les formules du sous composant courbe la fonction ARRAY_VALUE (Nom de l'array, l'index de la copy) et on récupère la valeur correspondante dans le tableau.

L'origine du sous composant doit-être le sommet de l'angle décrit par la courbure.

salut Simon @simjoubert
pour que je comprenne bien ...je manque de neurones , peux tu poster le fichier sketchup du composant dynamique de tes courbes qui suivent leur chemin en serpentin

merci par avance mon ami

a+

-------------------------------------------------------------------------------------------------------------------------
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 plugins ] sj_AddDCFunctions - Page 6 575088biblio3d
simjoubert
simjoubert
Administrateurs
Administrateurs
Masculin Humeur : Des racines et des rêves !!!
Date d'inscription : 05/08/2012
Nombre de messages : 2917
Points : 6425
Age : 49
Localisation : Val de Marne
Emploi : Paysagiste
https://www.sketchup.simjoubert.com/

Messagesimjoubert Lun 24 Jan 2022 - 10:56

Hello Jack
Pour modéliser le sous-composant Donut qui sera répliqué.

 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Sous_c10

Étape 2
Le sous-composant donut est encapsulé dans un composant donut.
On crée 4 attributs 1 pour la formule (voire étape 3, et 3 autres avec les valeurs de rayon interne, rayon externe et angle su sous-composant donut (scd).
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Donut_10

Etape 3
On saisit la formule qui va générer 4 attributs dont les noms sont préfixés par le 4ᵉ paramètre de la formule.
Code:
donut_ini = DONUT_PATH(Rayon_interne, Rayon_Externe, Angle, Préfix, 1 ou -1, 1ou-1, 1 ou -1 ....)
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Donut_11
L'orientation de chaque copy ajusté à la précédente, elles sont soit 1 le sdc tourne vers la gauche et -1 il tourne vers la droite)

Les attributs arrays sont les valeurs attendues en x y, et en rotation z pour chaque copy du scd.

Étape 4

Formule dans le sous composant sdc

On utilise la fonction ARRAY_VALUE(Nom de l'attribut array , index valeur recherchée dans le tableau array)

Il faudra taper le nom de l'attribut, car le clic sur l'attribut pour l'insérer dans la formule ne fonctionne pas complètement.

 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Donut_12

Etape 5 modifier la formule Donut_ini en saisissant le chemin souhaité.
 [ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Donut_13

Les attributs se mettent à jour !

Voilou rien de sorcier mojito
Bon Donuts !


tenrev aime ce message

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

Messagesimjoubert Lun 24 Jan 2022 - 11:30

Voici le lien vers le fichier Sketchup Test Function  DONUT_PATH au format SU 2017
https://www.sketchup.simjoubert.com/1-plugins/4-sj-add-dc-functions/6-plugins-sj-add-dc-functions-ressources/7-function-donut-path.html


Dernière édition par simjoubert le Lun 24 Jan 2022 - 12:10, édité 1 fois
Contenu sponsorisé

MessageContenu sponsorisé

Page 6 sur 13 Précédent  1, 2, 3 ... 5, 6, 7 ... 11, 12, 13  Suivant

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