Ton bloc notes
Derniers sujets
» [ SKETCHUP généralité ] Problème avec le 3d warehouse
par tenrev Jeu 25 Juil 2024 - 11:35
» [ INTELLIGENCE ARTIFICIELLE ] quelques vidéo IA
par tenrev Mer 24 Juil 2024 - 13:37
» [ SKETCHUP généralité ] modélisation rapide d'un grand pouf style "fatboy"
par tenrev Mer 24 Juil 2024 - 13:30
» [ SKETCHUP généralité ] Retourner le long de
par vick Mar 23 Juil 2024 - 15:17
» [ ENSCAPE ] tuto rendu style "studio" et amélioration avec IA
par tenrev Mar 23 Juil 2024 - 13:43
» [ SKETCHUP généralité ] short sur youtube bien organiser les scénes
par tenrev Mar 23 Juil 2024 - 13:40
» [ SKETCHUP composants dynamiques ] un petit short youtube qui montre une utilisation de composants dynamiques
par tenrev Mar 23 Juil 2024 - 13:35
» [ SKETCHUP plugins ] Parametric Modeling
par Anar Mar 23 Juil 2024 - 10:11
» [ SKETCHUP plugins ] Universal Importer
par tenrev Sam 20 Juil 2024 - 19:55
» [ D5_RENDER ] Le Cull effect dans un scatter
par Gaspard Hauser Ven 19 Juil 2024 - 17:52
» [ LUMION ] mémorandum LUMION
par Lumion France Jeu 18 Juil 2024 - 11:36
» [ LUMION ] Lumion 2024
par Lumion France Jeu 18 Juil 2024 - 11:28
» [ SKETCHUP composants dynamiques ] Hidden avec formule IF et OR imbriqué
par simjoubert Lun 15 Juil 2024 - 23:05
» [ PRESENTATION ] Anar (Spacymen)
par simjoubert Jeu 11 Juil 2024 - 23:11
» [ CHALLENGES ] Ca vous intéresserait un challenge - je lance un sondage
par Gaspard Hauser Jeu 11 Juil 2024 - 14:13
» [ SKETCHUP généralité ] barre outils 2024
par JDD Mer 10 Juil 2024 - 11:52
» [ SKETCHUP plugins ] boolean
par Anar Mar 9 Juil 2024 - 17:30
» [ D5_RENDER ] Quelques Rendus D5 Render
par Gaspard Hauser Sam 6 Juil 2024 - 11:39
» [ SKETCHUP composants dynamiques ] Demande aide Composant dynamique
par tenrev Sam 6 Juil 2024 - 7:31
» [ ARCHICAD ] Alignement entre textures et hachures en façades
par eddyje Jeu 4 Juil 2024 - 17:01
» [ PRESENTATION ] Alpilles AMO
par tenrev Sam 29 Juin 2024 - 14:19
» [ SKETCHUP plugins ] JHS power bar
par vick Mer 19 Juin 2024 - 22:51
» [ SKETCHUP tutos ] Modéliser à partir d'1 image, d'1 photo
par jerryvento Lun 17 Juin 2024 - 8:38
» [ SKETCHUP généralité ] Modéliser à partir d'1 image, d'1 photo
par jerryvento Lun 17 Juin 2024 - 8:38
» [ SKETCHUP plugins ] plugin fredo 6 - réinstallation des licences
par vick Ven 14 Juin 2024 - 17:31
» [ SKETCHUP généralité ] export-import de scènes
par silic Mer 12 Juin 2024 - 18:18
» [ SKETCHUP plugins ] import nuages de points
par bruno Mar 11 Juin 2024 - 13:08
» [ SKETCHUP plugins ] layout sketchup et VBO LayOut Flattener
par JDD Mer 5 Juin 2024 - 19:42
» [ CHAINE TWITCH ] replay d'un mini live
par tenrev Mar 4 Juin 2024 - 9:35
» [ SKETCHUP Layout ] Texture en rendu vectoriel
par tenrev Mar 4 Juin 2024 - 8:30
» [ SKETCHUP objets ] tiroir cuisine
par JDD Dim 2 Juin 2024 - 10:43
» [ SKETCHUP composants dynamiques ]
par Miroslav Mar 28 Mai 2024 - 15:51
» [ SKETCHUP composants dynamiques ] Masquer valeur attribut
par Manutio Mar 21 Mai 2024 - 14:02
» [ TWINMOTION ] CONSEIL FORMATION
par tenrev Mar 21 Mai 2024 - 10:17
» [ AUTRES LOGICIELS ] LOGICIEL OFFERT
par jerryvento Ven 17 Mai 2024 - 8:36
par tenrev Jeu 25 Juil 2024 - 11:35
» [ INTELLIGENCE ARTIFICIELLE ] quelques vidéo IA
par tenrev Mer 24 Juil 2024 - 13:37
» [ SKETCHUP généralité ] modélisation rapide d'un grand pouf style "fatboy"
par tenrev Mer 24 Juil 2024 - 13:30
» [ SKETCHUP généralité ] Retourner le long de
par vick Mar 23 Juil 2024 - 15:17
» [ ENSCAPE ] tuto rendu style "studio" et amélioration avec IA
par tenrev Mar 23 Juil 2024 - 13:43
» [ SKETCHUP généralité ] short sur youtube bien organiser les scénes
par tenrev Mar 23 Juil 2024 - 13:40
» [ SKETCHUP composants dynamiques ] un petit short youtube qui montre une utilisation de composants dynamiques
par tenrev Mar 23 Juil 2024 - 13:35
» [ SKETCHUP plugins ] Parametric Modeling
par Anar Mar 23 Juil 2024 - 10:11
» [ SKETCHUP plugins ] Universal Importer
par tenrev Sam 20 Juil 2024 - 19:55
» [ D5_RENDER ] Le Cull effect dans un scatter
par Gaspard Hauser Ven 19 Juil 2024 - 17:52
» [ LUMION ] mémorandum LUMION
par Lumion France Jeu 18 Juil 2024 - 11:36
» [ LUMION ] Lumion 2024
par Lumion France Jeu 18 Juil 2024 - 11:28
» [ SKETCHUP composants dynamiques ] Hidden avec formule IF et OR imbriqué
par simjoubert Lun 15 Juil 2024 - 23:05
» [ PRESENTATION ] Anar (Spacymen)
par simjoubert Jeu 11 Juil 2024 - 23:11
» [ CHALLENGES ] Ca vous intéresserait un challenge - je lance un sondage
par Gaspard Hauser Jeu 11 Juil 2024 - 14:13
» [ SKETCHUP généralité ] barre outils 2024
par JDD Mer 10 Juil 2024 - 11:52
» [ SKETCHUP plugins ] boolean
par Anar Mar 9 Juil 2024 - 17:30
» [ D5_RENDER ] Quelques Rendus D5 Render
par Gaspard Hauser Sam 6 Juil 2024 - 11:39
» [ SKETCHUP composants dynamiques ] Demande aide Composant dynamique
par tenrev Sam 6 Juil 2024 - 7:31
» [ ARCHICAD ] Alignement entre textures et hachures en façades
par eddyje Jeu 4 Juil 2024 - 17:01
» [ PRESENTATION ] Alpilles AMO
par tenrev Sam 29 Juin 2024 - 14:19
» [ SKETCHUP plugins ] JHS power bar
par vick Mer 19 Juin 2024 - 22:51
» [ SKETCHUP tutos ] Modéliser à partir d'1 image, d'1 photo
par jerryvento Lun 17 Juin 2024 - 8:38
» [ SKETCHUP généralité ] Modéliser à partir d'1 image, d'1 photo
par jerryvento Lun 17 Juin 2024 - 8:38
» [ SKETCHUP plugins ] plugin fredo 6 - réinstallation des licences
par vick Ven 14 Juin 2024 - 17:31
» [ SKETCHUP généralité ] export-import de scènes
par silic Mer 12 Juin 2024 - 18:18
» [ SKETCHUP plugins ] import nuages de points
par bruno Mar 11 Juin 2024 - 13:08
» [ SKETCHUP plugins ] layout sketchup et VBO LayOut Flattener
par JDD Mer 5 Juin 2024 - 19:42
» [ CHAINE TWITCH ] replay d'un mini live
par tenrev Mar 4 Juin 2024 - 9:35
» [ SKETCHUP Layout ] Texture en rendu vectoriel
par tenrev Mar 4 Juin 2024 - 8:30
» [ SKETCHUP objets ] tiroir cuisine
par JDD Dim 2 Juin 2024 - 10:43
» [ SKETCHUP composants dynamiques ]
par Miroslav Mar 28 Mai 2024 - 15:51
» [ SKETCHUP composants dynamiques ] Masquer valeur attribut
par Manutio Mar 21 Mai 2024 - 14:02
» [ TWINMOTION ] CONSEIL FORMATION
par tenrev Mar 21 Mai 2024 - 10:17
» [ AUTRES LOGICIELS ] LOGICIEL OFFERT
par jerryvento Ven 17 Mai 2024 - 8:36
formulaire/diaporama
chaine sketchup.tv
Serveur Discord
[ SKETCHUP plugins ] sj_AddDCFunctions
Page 6 sur 13 • Partagez
Page 6 sur 13 • 1, 2, 3 ... 5, 6, 7 ... 11, 12, 13
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 !
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 !
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](/users/2813/51/05/40/smiles/2109956023.gif)
![lire](/users/2813/51/05/40/smiles/713613.gif)
![rage](/users/2813/51/05/40/smiles/217495535.gif)
![non](/users/2813/51/05/40/smiles/337824.gif)
![waah](/users/2813/51/05/40/smiles/2935080019.png)
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](/users/2813/51/05/40/smiles/363258.gif)
![mojito](/users/2813/51/05/40/smiles/192895103.gif)
tenrev et Samuel Tallet aiment ce message
- Samuel TalletV.I.P.
-
Date d'inscription : 15/04/2018
Nombre de messages : 872
Points : 2462
Age : 38
Localisation : Marseille, France
Emploi : Développeur Web
Avec plaisir Simon !simjoubert a écrit:Super @Samuel Tallet Mille mercis mon ami !
![sourire](/users/2813/51/05/40/smiles/2658351707.gif)
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](/users/2813/51/05/40/smiles/548757.gif)
-------------------------------------------------------------------------------------------------------------------------
Galerie | Plugins
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 !
TRANSLATE['Hello'] @Samuel Tallet
Merci pour ton énorme travail
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
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
Fichier sj_add_dc_functions_menu.rb
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.
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](https://i.servimg.com/u/f70/19/85/19/55/captu134.png)
Je continue d'explorer mais tout fonctionne
![content](/users/2813/51/05/40/smiles/640206893.gif)
Merci pour ton énorme travail
![bravo](/users/2813/51/05/40/smiles/383867.gif)
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](/users/2813/51/05/40/smiles/480286.gif)
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](https://i.servimg.com/u/f70/19/85/19/55/captu134.png)
Je continue d'explorer mais tout fonctionne
![bien](/users/2813/51/05/40/smiles/963465.gif)
![bravo](/users/2813/51/05/40/smiles/383867.gif)
![[ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 IPB_917](https://2img.net/h/www.smileys.lu/repository/-Selection_IPB-/IPB_917.gif)
- JDDV.I.P.
-
Humeur : Cool, œil de lynx à pattes de velours
Date d'inscription : 21/05/2021
Nombre de messages : 1002
Points : 2335
Age : 75
Localisation : Nord (59)
Emploi : Director of Myself
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
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
hello les amis
du coup après relecture , petite faute
![[ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Image_23](https://i.servimg.com/u/f58/19/65/32/06/image_23.png)
a+
du coup après relecture , petite faute
![[ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Image_23](https://i.servimg.com/u/f58/19/65/32/06/image_23.png)
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](https://2img.net/r/hpimg15/pics/575088biblio3d.gif)
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](https://i.servimg.com/u/f70/19/85/19/55/captu136.png)
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
- Samuel TalletV.I.P.
-
Date d'inscription : 15/04/2018
Nombre de messages : 872
Points : 2462
Age : 38
Localisation : Marseille, France
Emploi : Développeur Web
Bonjour @simjoubert ![sourire](/users/2813/51/05/40/smiles/2658351707.gif)
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 :
![sourire](/users/2813/51/05/40/smiles/2658351707.gif)
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
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 !
il faut que que comprenne !
Donc ne part pas trop loin !
je regarde des que possible
Merci Samuel
j'ai regardé rapido le fichier js qui a fait une cure d'amaigrissement !
![woah](/users/2813/51/05/40/smiles/2109956023.gif)
Donc ne part pas trop loin !
![mojito](/users/2813/51/05/40/smiles/192895103.gif)
tenrev et Samuel Tallet aiment ce message
MISE A JOUR
Derniè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](/users/2813/51/05/40/smiles/383867.gif)
![copains](/users/2813/51/05/40/smiles/363258.gif)
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
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 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](https://2img.net/r/hpimg15/pics/575088biblio3d.gif)
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 ?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
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](https://i.servimg.com/u/f70/19/85/19/55/captu143.png)
@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](https://i.servimg.com/u/f58/19/65/32/06/captu336.jpg)
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](https://i.servimg.com/u/f58/19/65/32/06/captu335.jpg)
a+ mon ami
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](https://i.servimg.com/u/f58/19/65/32/06/captu336.jpg)
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](https://i.servimg.com/u/f58/19/65/32/06/captu335.jpg)
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](https://2img.net/r/hpimg15/pics/575088biblio3d.gif)
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
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
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](/users/2813/51/05/40/smiles/980648.gif)
![aie](/users/2813/51/05/40/smiles/2494970772.gif)
![hmm](/users/2813/51/05/40/smiles/212924.gif)
![siffle](/users/2813/51/05/40/smiles/966726.gif)
![gne](/users/2813/51/05/40/smiles/1238539265.gif)
![mdr3](/users/2813/51/05/40/smiles/209909.gif)
-------------------------------------------------------------------------------------------------------------------------
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](https://2img.net/r/hpimg15/pics/575088biblio3d.gif)
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)
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)
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](https://2img.net/r/hpimg15/pics/575088biblio3d.gif)
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](https://i.servimg.com/u/f70/19/85/19/55/dunut_10.png)
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](/users/2813/51/05/40/smiles/192895103.gif)
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](https://i.servimg.com/u/f70/19/85/19/55/dunut_10.png)
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](/users/2813/51/05/40/smiles/192895103.gif)
Dernière édition par simjoubert le Sam 22 Jan 2022 - 19:27, édité 1 fois
tenrev, JDD et Samuel Tallet aiment ce message
MISE A JOUR
Derniè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
Merci @simjoubert Simon
C est cool ces nouvelles fonction , je fais la mise à jour , encore merci pour ton travail
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](https://2img.net/r/hpimg15/pics/575088biblio3d.gif)
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](https://2img.net/r/hpimg15/pics/575088biblio3d.gif)
Hello Jack
Pour modéliser le sous-composant Donut qui sera répliqué.
![[ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Sous_c10](https://i.servimg.com/u/f70/19/85/19/55/sous_c10.png)
É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](https://i.servimg.com/u/f70/19/85/19/55/donut_10.png)
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.
![[ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Donut_11](https://i.servimg.com/u/f70/19/85/19/55/donut_11.png)
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](https://i.servimg.com/u/f70/19/85/19/55/donut_12.png)
Etape 5 modifier la formule Donut_ini en saisissant le chemin souhaité.
![[ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Donut_13](https://i.servimg.com/u/f70/19/85/19/55/donut_13.png)
Les attributs se mettent à jour !
Voilou rien de sorcier
Bon Donuts !
Pour modéliser le sous-composant Donut qui sera répliqué.
![[ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Sous_c10](https://i.servimg.com/u/f70/19/85/19/55/sous_c10.png)
É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](https://i.servimg.com/u/f70/19/85/19/55/donut_10.png)
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](https://i.servimg.com/u/f70/19/85/19/55/donut_11.png)
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](https://i.servimg.com/u/f70/19/85/19/55/donut_12.png)
Etape 5 modifier la formule Donut_ini en saisissant le chemin souhaité.
![[ SKETCHUP plugins ] sj_AddDCFunctions - Page 6 Donut_13](https://i.servimg.com/u/f70/19/85/19/55/donut_13.png)
Les attributs se mettent à jour !
Voilou rien de sorcier
![mojito](/users/2813/51/05/40/smiles/192895103.gif)
Bon Donuts !
tenrev aime ce message
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
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é
Page 6 sur 13 • 1, 2, 3 ... 5, 6, 7 ... 11, 12, 13
Sujets similaires
» [ SKETCHUP plugins ] Oob plugins - Plugins top pour le bâtiment réalisés par un français
» [ SKETCHUP plugins ] tutos en plusieurs parties sur la généralité des plugins sketchup
» [ SKETCHUP plugins ] Black friday -30 % à - 50% sur des plugins sketchup
» [ SKETCHUP plugins ] les plugins sketchup que vous utilisez
» [ SKETCHUP plugins ] Certains Plugins de Fredo vont devenir payants!
» [ SKETCHUP plugins ] tutos en plusieurs parties sur la généralité des plugins sketchup
» [ SKETCHUP plugins ] Black friday -30 % à - 50% sur des plugins sketchup
» [ SKETCHUP plugins ] les plugins sketchup que vous utilisez
» [ SKETCHUP plugins ] Certains Plugins de Fredo vont devenir payants!
Créer un compte ou se connecter pour répondre
Vous devez être membre pour répondre.
Page 6 sur 13
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum