Derniers sujets
» [ AUTRES LOGICIELS ] FlowScape : paysages pour le plaisir des yeux!par Pilou Aujourd'hui à 2:07
» [ SKETCHUP plugins ] Random Entity Generator
par Pilou Hier à 21:19
» [ SKETCHUP généralité ] Proxy
par rascal Hier à 20:30
» [ ARTLANTIS ]
par alexs643 Hier à 18:02
» [ ARCHICAD ] Ouvrants sur demi-niveau
par nono.lerat Hier à 11:49
» [ PRESENTATION ] Bonjour à tous
par Popmel Hier à 11:47
» [ ARCHICAD ] [ TUTO ] platelage bois et garde corps
par cestquoiladresse Lun 9 Déc 2019 - 22:34
» [ WIP_ANIMATIONS ] piscine intérieure - sketchup - Enscape
par tenrev Lun 9 Déc 2019 - 18:42
» [ WIP_ANIMATIONS ]Animation d'un intérieur réalisé avec Enscape
par tenrev Lun 9 Déc 2019 - 10:56
» [AUTRES LOGICIELS] Moi3D beta 4.0 - 64 bits Mac / PC 10 Octobre 2019
par Pilou Lun 9 Déc 2019 - 2:38
» [ SKETCHUP plugins ] skatter Zone d'herbe
par rascal Dim 8 Déc 2019 - 20:16
» [ SKETCHUP plugins ] Fredo Corner et Round corner
par rascal Dim 8 Déc 2019 - 9:34
» [ AUTRES LOGICIELS ] Sculptron Alpha free
par Pilou Sam 7 Déc 2019 - 2:47
» [ ARCHICAD ] [CORONA] Utilisation de l 'objet CoronaProxy
par Coulou Ven 6 Déc 2019 - 15:14
» [ PRESENTATION ] Bonjour Ev'rybody !
par Popmel Ven 6 Déc 2019 - 8:06
» [ SKETCHUP plugins ] Export VR avec Enscape (web et exe)
par rascal Jeu 5 Déc 2019 - 18:37
» [ WIP ] les travaux à Nono .....
par Fred0079 Jeu 5 Déc 2019 - 17:50
» [ AUTRES LOGICIELS ] Centileo Moteur de Rendu GPU
par Pilou Jeu 5 Déc 2019 - 15:50
» [ SKETCHUP PLUGIN ] SKimp : futur réducteur de Polys
par tenrev Mer 4 Déc 2019 - 23:18
» [ WIP ] Projets en cours youyou40
par youyou40 Mer 4 Déc 2019 - 11:55
» [ SKETCHUP généralité ] Comment inverser le sens d'ouverture d'une porte ?
par tenrev Mar 3 Déc 2019 - 18:12
» [ TWINMOTION ] Aperçu TM2020
par tenrev Mar 3 Déc 2019 - 10:25
» [ SKETCHUP ] Plugin PBR gratuit
par Samuel Tallet-Sabathé Lun 2 Déc 2019 - 18:48
» [ TWINMOTION ] Faces invisibles
par ogi Lun 2 Déc 2019 - 15:34
» [ AUTRES LOGICIELS ] Houdini 18 est sorti
par tenrev Lun 2 Déc 2019 - 13:22
biblio3d
biblio3d sur facebook
plugin pour assembler des composants
Page 2 sur 2 • Partagez
Page 2 sur 2 • 1, 2
correspondance bibliotheque avec fichier texte de construction
bien sur, si les composants ne sont pas dans la bibliothèque choisie, un message d'erreur sera le seul résultat du plugin.
comme la dernière bibliothèque ouverte sera proposée par défaut, ca ne devrait pas poser de problème a celui qui n'a qu'une bibliothèque...
comme la dernière bibliothèque ouverte sera proposée par défaut, ca ne devrait pas poser de problème a celui qui n'a qu'une bibliothèque...
Re: plugin pour assembler des composants
Voila une petite idée de ce que l'on peut faire, j'ai fait quelque chose de basique, sinon un plugin comme mover2 de Jim Foltz peut faire l'affaire pour modifier et deplacer ta plateforme.
Tu peux creer une plateforme avec la boite dialogue et la modifier avec la meme boite de dialogue.
Il suffit de selectionner la face à modifier et la boite reprend ses valeurs, si il n'y a pas de selection, le plugin crée un nouvelle plateforme
Tu peux utiliser des valeurs negatives pour la determination du point de depart (x,y,z)
Le code à inserer dans Webdialog
@+[list][*]
Tu peux creer une plateforme avec la boite dialogue et la modifier avec la meme boite de dialogue.
Il suffit de selectionner la face à modifier et la boite reprend ses valeurs, si il n'y a pas de selection, le plugin crée un nouvelle plateforme
Tu peux utiliser des valeurs negatives pour la determination du point de depart (x,y,z)
Le code à inserer dans Webdialog
- Code:
require "sketchup.rb"
model = Sketchup.active_model
entities = model.entities
selection = model.selection
bounds = model.bounds
if ! selection.empty?
ss=[]
selection.each {|x|
ss.push x.start.position if x.is_a? Sketchup::Edge
ss.push x.end.position if x.is_a? Sketchup::Edge
if x.is_a? Sketchup::Face
x.edges.each {|s|
ss.push s.start.position
ss.push s.end.position
}
end
}
ss.uniq!
bounds.clear
bounds.add ss
bc0 = bounds.corner 0
pt0 = bc0[0]
pt1 = bc0[1]
pt2 = bc0[2]
lg = bounds.width
pf = bounds.height
else
pt0 = 0.0.m
pt1 = 0.0.m
pt2 = 0.0.m
lg = 1.0.m
pf = 1.0.m
end
prompts = ["Point depart X en m : ","Point depart Y en m : ","Point depart Z en m : ","Largeur en m : ","Profondeur en m : "]
val_defaut = [pt0,pt1,pt2,lg,pf]
results = UI.inputbox prompts, val_defaut,("Reglage de la plateforme")
return if not results
x,y,z,l,p = results
selection.add selection[0].all_connected if !selection.empty?
selection.each {|ss| entities.erase_entities ss} if !selection.empty?
point_0 = Geom::Point3d.new(x,y,z)
point_1 = Geom::Point3d.new(x+l,y,z)
point_2 = Geom::Point3d.new(x+l,y+p,z)
point_3 = Geom::Point3d.new(x,y+p,z)
face = entities.add_face point_0, point_1, point_2, point_3
selection.clear
selection.add face.all_connected
ss=[]
selection.each {|x|
ss.push x.start.position if x.is_a? Sketchup::Edge
ss.push x.end.position if x.is_a? Sketchup::Edge
if x.is_a? Sketchup::Face
x.edges.each {|s|
ss.push s.start.position
ss.push s.end.position
}
end
}
ss.uniq!
bounds.clear
bounds.add ss
bc0 = bounds.corner 0
bcwidth = bounds.width
bcheight = bounds.height
UI.messagebox "Données a stocker dans un fichier" + "\n\n" +
"-"*35 + "\n" +
"Point de depart de la gémométrie " + "\n" +
" Axe x : " + bc0[0].to_s + "\n" +
" Axe y : " + bc0[1].to_s + "\n" +
" Axe z : " + bc0[2].to_s + "\n" +
"-"*35 + "\n" +
"Cotes " + "\n" +
"Larguer : " + bcwidth.to_s + "\n" +
"Profondeur : " + bcheight.to_s + "\n" +
"-"*35 + "\n"
@+[list][*]
Re: plugin pour assembler des composants
je n'ai pas encore avancé dans l'écriture du programme d'assemblage, mais un autre fil de discussion de fait réagir.
l'assemblage obtenu avec le plugin a partir du fichier texte est maintenant correct
[Vous devez être inscrit et connecté pour voir cette image]
tu as écrit:
"Personnellement je me suis interessé à SketchyPhysics, mais j'ai assez vite abandonné. L'utilisation était trop lourde pour ce que je voulais en faire.
Je prefere pour des mouvements simples et basiques, le programmer moi même..."
Moi aussi, je me suis interessé a sketchyphysics, comme simple utilisateur; et j'en ai retenu que pour creer des liens entre les composants, il fallait beaucoup cliquer...
il y aurait moyen de creer des liens automatiquement, en programmant? programmant avec quoi?
En gros, il faudrait creer une articulation a l'extremité des lisses et des diagonales, sur les poteaux...
l'assemblage obtenu avec le plugin a partir du fichier texte est maintenant correct
[Vous devez être inscrit et connecté pour voir cette image]
tu as écrit:
"Personnellement je me suis interessé à SketchyPhysics, mais j'ai assez vite abandonné. L'utilisation était trop lourde pour ce que je voulais en faire.
Je prefere pour des mouvements simples et basiques, le programmer moi même..."
Moi aussi, je me suis interessé a sketchyphysics, comme simple utilisateur; et j'en ai retenu que pour creer des liens entre les composants, il fallait beaucoup cliquer...
il y aurait moyen de creer des liens automatiquement, en programmant? programmant avec quoi?
En gros, il faudrait creer une articulation a l'extremité des lisses et des diagonales, sur les poteaux...
Re: plugin pour assembler des composants
Il faudrait que tu m'en dises un peu plus sur tes articulations, c'est pour l'assemblage automatique de tes éléments ou c'est pour après assemblage leur imprimer un mouvement.
Une chose simple à réaliser comme tu as pu le voir lors de nos essais, c'est d'utliser le point d'origine du composant que l'on peut aisement determiner à la création de ce dernier. Ce point sert évidemment à son insertion (mais pas nécessairement), mais il peut être aussi un point de rotation, devenir le point d'insertion d'un autre composant, etc...
Mais aussi par des calculs il peut être la base pour déterminer un deuxieme point pour le lier a un autre élément, etc...
@+
Une chose simple à réaliser comme tu as pu le voir lors de nos essais, c'est d'utliser le point d'origine du composant que l'on peut aisement determiner à la création de ce dernier. Ce point sert évidemment à son insertion (mais pas nécessairement), mais il peut être aussi un point de rotation, devenir le point d'insertion d'un autre composant, etc...
Mais aussi par des calculs il peut être la base pour déterminer un deuxieme point pour le lier a un autre élément, etc...
@+
creer desliens entre les composants
[Vous devez être inscrit et connecté pour voir ce lien] a écrit:Il faudrait que tu m'en dises un peu plus sur tes articulations, c'est pour l'assemblage automatique de tes éléments ou c'est pour après assemblage leur imprimer un mouvement.
Une chose simple à réaliser comme tu as pu le voir lors de nos essais, c'est d'utliser le point d'origine du composant que l'on peut aisement determiner à la création de ce dernier. Ce point sert évidemment à son insertion (mais pas nécessairement), mais il peut être aussi un point de rotation, devenir le point d'insertion d'un autre composant, etc...
Mais aussi par des calculs il peut être la base pour déterminer un deuxieme point pour le lier a un autre élément, etc...
@+
une articulation, c'est a dire une liaison qui empeche le composant assemblé de se detacher du composant sur le lequel il est assemblé
au point d'insertion, oui, c'est toujours un point d'asemblage, et au point correspondant a son autre extremité; par exemple, une barre horizontale (lisse) de 2 m: 2 m a partir du point d'insertion dans la direction de l'axe de la barre; pareil pour les barres inclinées (diagonales)
les disques sur les poteaux, tous les 50 cm, sont justement prévus pour la fixation des lisses et des diagonales
j'ai essayé de mettre a la main des liaisons entre les éléments de l'assemblage qui a servi d'exemple, avec sketchyphysics
mais j'obtiens un message d'erreur au demarrage de sketchup
"Erreur de chargement du fichier sketchyphysics.rb
undefined method `extend_object' for `Singleton'"
et un autre message d'erreur (plus long...) quand j'essaie de lancer la simulation de gravité
sketchyphysics me fait un peu l'impression d'une "usine a gaz", ce n'est peut être pas une bonne idée; et de toutes façons, je ne peux même pas faire un essai, ca ne marche pas chez moi avec sketchup 8
donc, on peut mettre ca en attente aussi...
Re: plugin pour assembler des composants
Pour ça, plusieurs méthodes, on verrouille le composant importé, il est donc indéplacable sauf en cas de déverrouillage par l'utlisateur ou alors plus judicieux on crée un groupe (voire un composant) des composants importés qui doivent rester liés, si tu déplaces le groupe tu déplaces l'ensemble des éléments liés. Tu peux meme envisager que ce groupe est un module et le dupliquer x fois et les empiler par exemple.
@+
creer des liens avec sketchyphysics
J'ai desinstallé la version 3.2 de sketchyphysics et installé la version 3.1
ca fonctionne maintenant...
je l'ai lancé, sans créer aucun lien entre les pièces: tout tombe en morceaux :
[Vous devez être inscrit et connecté pour voir ce lien]
ensuite, j'ai crée quelques liens, et les barres reliées le restent
[Vous devez être inscrit et connecté pour voir ce lien]
creer les liens prend du temps, c'est ca qu'il serait bien d'automatiser...
j'ai mis en ligne aussi un modele avec des liens
[Vous devez être inscrit et connecté pour voir ce lien]
4 liens par disque, sur 2 disques d'un poteau
je ne peux pas aller plus loin aujourd'hui, mais je suis curieux de voir jusqu'où on peut aller...
ca fonctionne maintenant...
je l'ai lancé, sans créer aucun lien entre les pièces: tout tombe en morceaux :
[Vous devez être inscrit et connecté pour voir ce lien]
ensuite, j'ai crée quelques liens, et les barres reliées le restent
[Vous devez être inscrit et connecté pour voir ce lien]
creer les liens prend du temps, c'est ca qu'il serait bien d'automatiser...
j'ai mis en ligne aussi un modele avec des liens
[Vous devez être inscrit et connecté pour voir ce lien]
4 liens par disque, sur 2 disques d'un poteau
je ne peux pas aller plus loin aujourd'hui, mais je suis curieux de voir jusqu'où on peut aller...
re
Salut, pourquoi utilises tu le joint ball pour faire tes jonctions avec sketchyphysics pour ton échaffaudage.
-------------------------------------------------------------------------------------------------------------------------
@+++ Eddy [Vous devez être inscrit et connecté pour voir cette image] [Vous devez être inscrit et connecté pour voir cette image] [Vous devez être inscrit et connecté pour voir cette image]
eddy- V.I.P.
-
Humeur : sa dépend
Date d'inscription : 28/10/2009
Nombre de messages : 1081
Points : 1292
Localisation : Chez les coucous
Emploi : attend sa retaite
joint balle
parce que c'est celui qui me semble le plus proche de la realité
[Vous devez être inscrit et connecté pour voir ce lien]
les lisses et diagonales sont equipées de clavette qui passent dans les trous du disque
il y a aussi un blocage en rotation mais la liaison du type balle suffit puisqu'il y a des diagonales sur les 4 faces
on peut ameliorer, c'etait un premier essai...
[Vous devez être inscrit et connecté pour voir ce lien]
les lisses et diagonales sont equipées de clavette qui passent dans les trous du disque
il y a aussi un blocage en rotation mais la liaison du type balle suffit puisqu'il y a des diagonales sur les 4 faces
on peut ameliorer, c'etait un premier essai...
Re: plugin pour assembler des composants
Pourquoi absolument vouloir utliser SkechyPhisics
Tu veux faire des tests de déformation de tes assemblages ?

re
Re, pourquoi veut tu absolument utiliser SkechyPhisics pour l'assemblage de tes échafaudages.
-------------------------------------------------------------------------------------------------------------------------
@+++ Eddy [Vous devez être inscrit et connecté pour voir cette image] [Vous devez être inscrit et connecté pour voir cette image] [Vous devez être inscrit et connecté pour voir cette image]
eddy- V.I.P.
-
Humeur : sa dépend
Date d'inscription : 28/10/2009
Nombre de messages : 1081
Points : 1292
Localisation : Chez les coucous
Emploi : attend sa retaite
Re: plugin pour assembler des composants
je ne veux pas absolument utiliser sketchyphysics; ca serait plutôt un plus, pour le coté pedagogique (qu'est-ce qui se passe si j'enlève cette barre, par exemple...? est-ce que ca tient toujours?... et celle la? ... un peu genre Mikado)
et aussi une porte ouverte: qui sait jusqu'où ira sketchyphysics? peut être que plus tard, il sera possible de quantifier des efforts, et de modéliser des forces autres que gravitaires...
Re: plugin pour assembler des composants
Je ne me sens pas capable de reécrire SketchyPhysics...
On peut éventuellement essayer de créer les composants de ta bibliothèques en incluant les joints.
Une fois ton mon modèle est assemblé, tu crées les liens

On peut éventuellement essayer de créer les composants de ta bibliothèques en incluant les joints.
Une fois ton mon modèle est assemblé, tu crées les liens

Re: plugin pour assembler des composants
oui, c'est a cette conclusion que je suis arrivé aussi
comme avec sketchyphysics, le lien doit appartenir a un composant d'un coté, et faire partie d'un groupe de l'autre coté, la logique, c'est de considerer que c'est le poteau qui a les liens, puisque c'est lui qui a les disques
donc ajouter 8 liens tous les 50 cm sur les poteaux de la bibliothèque, correspondant aux trous du disque, qui seront utilisés ou pas.
faire les groupes a la main ensuite, pour attacher les lisses et les diagonales, oui, c'est possible pour les échafaudages pas trop grands; en automatique, ca reviendrait a dire, pour les lisses et diagonales: faire un groupe automatiquement avec le lien qui se trouve a chacune des extrémités; possible? pas possible?
si pas possible, pas de problème, on s'est écarté du sujet, qui était: construire un échafaudage a partir de paramètres et d'une bibliothèque; j'essaie de faire une version simple du programme de composition ce weekend
Page 2 sur 2 • 1, 2
Page 2 sur 2
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum