forum d'entraide Sketchup Artlantis Archicad et bien d'autres
Bonjour sunny

Bonjour et bienvenue sur biblio3d, forum destiné à l'entraide concernant plus particulièrement les logiciels

SKETCHUP - ARTLANTIS - ARCHICAD - PIRANESI
Basketball

Attention : concernant les nouveaux venus, l'inscription est obligatoire pour accéder à la totalité du forum. Après inscription, veuillez vous présenter dans la section adéquate. Nous serons ravis de vous souhaiter la bienvenue dans la communauté ! sourire
Galerie


plugin pour assembler des composants Empty
addthis
Derniers sujets
» [AUTRES LOGICIELS] Moi3D 4.0 - 64 bits Mac / PC 26 Février 2019
par Pilou Aujourd'hui à 2:18

» [ SKETCHUP composants dynamiques ] recherche d'un texte dans un autre texte
par tenrev Hier à 15:07

» [ CINEMA4D ] Gelée de Tetris
par chapichapo Hier à 15:06

» [ AUTRES LOGICIELS ]Adobe va arrêter Fuse, son logiciel gratuit de génération de personnages en 3D
par tenrev Hier à 9:55

» [ ARTLANTIS ] AVIS sur images
par AK40Cess Hier à 6:41

» [ WIP ]Mon petit labo...by ogi
par ogi Jeu 19 Sep 2019 - 16:05

» [ ARTLANTIS ] Création de billboards
par AK40Cess Mer 18 Sep 2019 - 17:08

» [ SKETCHUP généralité ] Mauvaise surprise...
par youyou40 Mar 17 Sep 2019 - 14:32

» [AUTRES LOGICIELS] Rocket 3F
par Pilou Mar 17 Sep 2019 - 1:25

» [AUTRES LOGICIELS] MagicaVoxel!
par Pilou Mar 17 Sep 2019 - 0:00

» [ SKETCHUP plugins ] Fredo et les pentes en Couleurs!
par Pilou Ven 13 Sep 2019 - 11:02

» [ PRESENTATION ] Bonjour d'un petit jeune
par cestquoiladresse Jeu 12 Sep 2019 - 14:44

» [ ARCHICAD ] Tubage (forme)
par Coulou Jeu 12 Sep 2019 - 11:19

» [ ARTLANTIS ] Félicitations et merci Abvent
par Fred0079 Jeu 12 Sep 2019 - 10:05

» [ AUTRES LOGICIELS ] Verve sous le sapin de Noël!
par Pilou Mer 11 Sep 2019 - 19:44

» [ TWINMOTION ] premiere impression!!!
par tariq73 Mer 11 Sep 2019 - 19:00

» [ TWINMOTION ] Tuto : faire ses arbres!
par simjoubert Mer 11 Sep 2019 - 18:16

» [ ARCHICAD-IMPORT/EXPORT ] Ouvrir un fichier Revit (.rvt) sur Archicad
par cestquoiladresse Mer 11 Sep 2019 - 10:03

» [ SKETCHUP tutos ] Faire un proxy dans Sketchup pour Enscape
par ogi Mar 10 Sep 2019 - 23:50

» [ UNREAL ENGINE ] nouvelle mise à jour 4.23
par Coulou Mar 10 Sep 2019 - 17:03

» [ PRESENTATION ] bonjour d'un debutant accro a sketchup
par tenrev Mar 10 Sep 2019 - 13:55

» [ SKETCHUP plugins ] Les fondations
par rascal Lun 9 Sep 2019 - 15:55

» [ SKETCHUP ] Enscape rendu temps réel
par odrik Dim 8 Sep 2019 - 22:04

» [ MATOS INFORM. ] sortie du Raspberry Pi 4B/4GB
par tenrev Dim 8 Sep 2019 - 16:01

» [ ARCHICAD ] [TUTO] Créer une rampe avec l'outil escalier
par thomasroisin Dim 8 Sep 2019 - 0:27

biblio3d
biblio3d sur facebook
biblio3d sur Linkedin
pinterest
upload



Uploader ici vos fichiers
à partager sur le forum

livre doh Sketchup


plugin pour assembler des composants

Page 1 sur 2 1, 2  Suivant

Aller en bas

plugin pour assembler des composants Empty plugin pour assembler des composants

Message par glro le Ven 31 Déc 2010 - 10:05

l'idee, ce serait de constituer un assemblage de composants a partir d'un fichier texte qui contiendrait :

> le nom du bloc (composant)
> les coordonnées de son point d'insertion
> la rotation qu'il faut donner au bloc autour d'un axe vertical passant par son point d'insertion (parce que les composants sketchup n'ont qu'un seul point d'insertion)

3 lignes par bloc
autant de triplets de lignes que de blocs

Les composants se trouveraient dans la bibliothèque de composants de sketchup, le fichier texte n'importe ou sur le disque dur, une boite de dialogue permettrait d'aller le chercher

Le but final: faire du dessin 3d paramétré (restent a écrire la logique d'assemblage des composants, et une boite de dialogue pour entrer les paramètres...)

voici le lien pour télécharger les composants et le fichier texte d'assemblage

[Vous devez être inscrit et connecté pour voir ce lien]

glro
posteur
posteur

Masculin Bélier
Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 62
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages

http://georgesleroux.blogspot.com/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Ven 31 Déc 2010 - 12:01

Voila un premier jet

[Vous devez être inscrit et connecté pour voir ce lien]

A dezippé dans le répertoire Plugins de SU, tu dois retrouver le plugin à proprement dit ChrisP_Import_Component_to_fileTXT.rb (que tu peux éditer et modifier) et un répertoire ChrisP_Import_Component (dans le lequel tu colles tes composants et tes fichiers textes)
J’ai ajouté un menu d’importation pour les fichiers textes plus souple à l’utilisation et qui te permet de stocker différents modules
On peut envisager la création d’un groupe voir d’un nouveau composant à chaque importation => 1 fichier = 1 importation= 1 groupe ou 1 composant
Par commodité pour l'instant j'ai installé les composants dans un repertoire de Plugins

Code:
# Designed December 2010 by ChrisP & G.LE ROUX

# Permission to use this software for any purpose and without fee is hereby granted
# Distribution of this software for commercial purpose is forbidden:

# THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#-----------------------------------------------------------------------------
# Name            :  ChrisP_Import_Component_to_fileTXT.rb
# Original Date  :  31 December 2010 version 0.0
# Thanks          : 
# Type            :  Plugin only SU8
# Description    :  Import Component to file txt
# Usage          :  By menu Plugins
# Version        :  0.1.0 Beta
#

require "sketchup.rb"
 
module Import_element_echaufaudage

  def self.import_comp
    # intialisation des variables
    model = Sketchup.active_model
    selection = model.selection
    entities = model.entities
    definitions = model.definitions
    separateur = Sketchup.parse_length("9.9")
    axe_rotation = [0, 0,1]
    increment = 0
    table_01 = []
    mpath = Sketchup.find_support_file("Plugins")
   
    # importation du fichier
    mpath.gsub!(/Plugins/,'Plugins/ChrisP_Import_Component/')
    nom_fichier = UI.openpanel "Choix du fichier a traiter ", mpath, "*.txt"
    (IO.readlines(nom_fichier)).each {|x| table_01.push x.gsub(/\n/,"")}
   
        if not separateur
           table_01.collect {|x| x.gsub(/[.]/,',\1')}
        else
           table_01.collect {|x| x.gsub(/[,]/,'.\1')}
        end
       
    table_01.compact!
    lgt_01= table_01.length
   
    # traitement du fichier
    model.start_operation "Echafaudage",true
   
        while increment<lgt_01 do
            #importation du composant
            nom_comp = table_01[increment] + ".skp"
            chemin_comp = Sketchup.find_support_file nom_comp, "Plugins/ChrisP_Import_Component/"
            comp = definitions.load chemin_comp   
            y = table_01[increment + 1].split(" ")
            point_insert = [y[0].to_f, y[1].to_f, y[2].to_f]
            entities.add_cpoint point_insert
            point_trans = Geom::Transformation.new point_insert
            inst = entities.add_instance comp, point_trans
           
            #rotation du composant
            point_rotation = table_01[increment + 2].to_f.degrees
            trans_rotation = Geom::Transformation.rotation point_insert, axe_rotation, point_rotation
            inst.transform!(trans_rotation)
           
            #passage au bloc suivant
            increment = increment + 3
        end
   
    model.commit_operation
  end # fin import_comp
end # fin du module

unless file_loaded?("ChrisP_Import_Component_to_fileTXT.rb")
        UI.menu("Plugins").add_item("Creation Echafaudage"){Import_element_echaufaudage::import_comp}
       
  file_loaded "ChrisP_Import_Component_to_fileTXT.rb"
end

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

@+

Christophe
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty plugin pour assembler des composants

Message par glro le Ven 31 Déc 2010 - 12:39

Je suis impressionné par ta réactivité... Merci

Cette première version permet de valider le principe du plugin

J'ai ajouté au dossier le modèle 3d dont je suis parti pour écrire le fichier texte:

][Vous devez être inscrit et connecté pour voir ce lien]

Comme tu peux le constater, il y a des différences... est-ce qu'elles viennent de mon fichier texte, ou de ton plugin sketchup, je ne sais pas; je vais reprendre chaque composant un a un pour essayer de comprendre.

En attendant, voici quelques suggestions:

dans le menu déroulant "plugin>creation echafaudage", est-ce qu'on ne pourrait pas être plus général, en écrivant "plugin>assemblage composants", parce que ca pourrait être utile pour n'importe quels composants, pas seulement ceux d'un échafaudage

les composants sont dans un dossier "ChrisP_Import_Component"; est-ce qu'on pourrait plutôt les mettre dans un sous-dossier du répertoire "components" de sketchup, par exemple: "C:\Archivos de programa\Google\Google SketchUp 8\Components\echafaudage", de telle façon a pouvoir utiliser le plugin pour d'autres types de composants
L'idéal serait même d'avoir une boite de dialogue qui demande a l'utilisateur d'indiquer ou se trouvent les composants a assembler, comme celle qui demande ou se trouve le fichier texte


glro
posteur
posteur

Masculin Bélier
Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 62
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages

http://georgesleroux.blogspot.com/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Ven 31 Déc 2010 - 13:50

Je peux t'envoyer un fichier avec un point de construction au niveau du point d'insertion de chaque composant pour que tu puisses controler
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Ven 31 Déc 2010 - 14:40

Une question bête tes coordonnées sont bien dans l'ordre x,y, z ?
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Ven 31 Déc 2010 - 14:50

J'ai un bout d'explication, si on met tes composants en mode edition en se rend compte que le point d'origine n'est pas dans l'angle bas avant gauche.
Les points d'insertion de ton fichier texte correspondent à quels points de ton composant?
il y a aussi un problème d'unité, tes valeurs sont en metre et en degre pour les rotations?
@+


Dernière édition par c.plassais le Ven 31 Déc 2010 - 18:03, édité 2 fois
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty seulement le calage

Message par glro le Ven 31 Déc 2010 - 14:53

J'ai simplifié le montage: juste les cales bois

le fichier texte et le fichier sketchup sont sur google document

j'ai aussi modifié le composant AMX1, qui n'etait pas bien orienté

[Vous devez être inscrit et connecté pour voir ce lien]

cette fois, le fichier texte est compréhensible simplement en le lisant: il y a 4 cales implantées sur un carre de coté 2 m

les données sont cohérentes (même si je m'aperçois d'une inversion des axes y et z); mais il ne semble pas y avoir d'autre problème dans le fichier texte.

je me demande si ca ne vient des unités... les composants ont la bonne taille, mais ils sont très proches les un des autres (5.1 cm centimètres au lieu de 2 m...)


glro
posteur
posteur

Masculin Bélier
Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 62
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages

http://georgesleroux.blogspot.com/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par glro le Ven 31 Déc 2010 - 15:01

[Vous devez être inscrit et connecté pour voir ce lien] a écrit:J'ai un bout d'explication, si on met tes composants en mode edition en se rend compte que le point d'origine n'est pas dans l'angle bas avant gauche.
Les points d'insertion de ton fichier texte correspondent à quels point de ton composant?
il y a aussi un problème d'unité, tes valeurs sont en metre et en degre pour les rotations?
@+

oui, effectivement, le point d'insertion n'est pas toujours en bas a gauche; les points d'insertion en tiennent compte; est-ce qu'il faut que le point d'insertion soit toujours en bas a gauche?

oui, les distances sont en mètre et les angles en degré: ca pose un problème? en quelle unité il faudrait les mettre?

glro
posteur
posteur

Masculin Bélier
Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 62
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages

http://georgesleroux.blogspot.com/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Ven 31 Déc 2010 - 15:26

C'est bon cela fonctionne.
J'ai modifié le composant, effectivement par convention le point d'origine du composant est toujours le coin 0
Pour l'unité cela ne pose aucun problème, il suffit de le prende en compte
Il y a bien une inversion entre l'axe y et l'axe z, tu peux y remedier ou c'est l'export qui se fait de cette maniere. Sinon ce n'est pas un probleme il suffit de poser le decor et d'etablir une regle définitive, pour l'instant j'ai inversé les deux axes
Je modifie les quelques points que tu m'as demande et je t'envois les elements corrigés

A tout de suite...
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty j'ai corrigé le fichier texte

Message par glro le Ven 31 Déc 2010 - 16:03

designcad met y en z et z en y

j'ai corrigé le fichier texte


[Vous devez être inscrit et connecté pour voir ce lien]

glro
posteur
posteur

Masculin Bélier
Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 62
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages

http://georgesleroux.blogspot.com/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Ven 31 Déc 2010 - 16:31

Tu peux essayer cette version, decompresser le repertoire Echafaudage dans le repertoire Components de SU8, ecraser l'ancien plugin par le nouveau et supprimer les anciens fichiers.
j'ai modifier ton composant AMX1

J'ai vu des points de guidage dans tes composants, c'est normal?. Ce sont des points de centrage?

[Vous devez être inscrit et connecté pour voir ce lien]

@+
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par glro le Ven 31 Déc 2010 - 17:20

[Vous devez être inscrit et connecté pour voir ce lien] a écrit:Tu peux essayer cette version, decompresser le repertoire Echafaudage dans le repertoire Components de SU8, ecraser l'ancien plugin par le nouveau et supprimer les anciens fichiers.
j'ai modifier ton composant AMX1

J'ai vu des points de guidage dans tes composants, c'est normal?. Ce sont des points de centrage?

[Vous devez être inscrit et connecté pour voir ce lien]

@+

j'ai cliqué sur ce lien , mais j'ai l'impression que c'est exactement le même fichier que la version précédente (v 0.1.0 beta?)

oui, les points servent au placement des composants, qu'on on le fait avec la souris


glro
posteur
posteur

Masculin Bélier
Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 62
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages

http://georgesleroux.blogspot.com/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Ven 31 Déc 2010 - 17:38

Oui c'est le même lien, mais j'ai uploader les fichiers

On peut tout a fait se servir d'un point guide comme point d'insertion
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par glro le Ven 31 Déc 2010 - 19:43

oui, la derniere version s'approche de l'objectif...

mais on s'est croisé:

> Quand je me suis apercu de l'inversion des coordonnées, j'ai modifié l'ordre pour que ce soit XYZ, traditionnellement Z vers le haut, et simultanement, tu as modifié ton plugin, pour faire XZY, comme ca sort de designcad
Mais pour des raisons pratiques, je crois qu'il faudrait que le Z soit a la fin; parce que plus tard, il va falloir ecrire les programmes pour generer les fichiers textes, et intuitivement, c'est vrai que c'est le Z qui est vertical, pas le Y

Est-ce que tu pourrais revenir a cet ordre pour les coordonnées (XYZ, Z vertical)?

> La boite de dialogue pour chercher les composants s'ouvre directement sur "echafaudage"; est-ce qu'elle pourrait s'ouvrir plutot un niveau au dessus, sur "components", de telle facon que chacun puisse se creer sa bibliotheque de composant et l'utiliser a sa facon

> la boite de dialogue pour chercher le fichier texte, s'ouvre toujours au meme endroit sur le repertoire "C:\Archivos de programa\Google\Google SketchUp 8\Components\Echafaudage"
mais les fichiers textes seront placés n'importe ou sur le disque dur; est-ce qu'il serait possible d'ouvrir la boite de dialogue de recherche du fichier texte, la ou il a été cherché la derniere fois que le plugin a été utilisé; de cette facon, la recherche s'adapte automatiquement aux habitudes de chacun

> les diagonales suivant l'axe rouge (X), ne sont pas leur place, mais je crois que c'est un probleme d'ecriture de l'angle, designcad travaille entre -90 et 90 degrés, et la, on est a 180...
Il n'y a rien a faire sur le plugin, c'est moi qui doit trouver la solution
je vais regarder ca demain

Bonne soirée, et bonne année .....


glro
posteur
posteur

Masculin Bélier
Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 62
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages

http://georgesleroux.blogspot.com/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Ven 31 Déc 2010 - 19:53

Il suffit pour le probleme des axes x,y,z de modifier la ligne 58 de la manière suivante (juste le 1 et le 2 a inverser)
Code:
point_insert = [y[0].to_f.m, y[1].to_f.m, y[2].to_f.m]

Pour l'ensemble des points que tu as evoqué, il n'y pas à priori de problème je vois ça également demain soir

Passes un bon reveillon

@+
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty interface d'entree

Message par glro le Sam 1 Jan 2011 - 18:13

ca y est, j'ai eu un peu de mal avec l'orientation des diagonales, mais on obtient le même résultat avec ton plugin sur ce fichier

[Vous devez être inscrit et connecté pour voir ce lien]

qu'en important directement le modèle depuis mon programme designcad vers sketchup.

l'étape suivante, c'est d'introduire les dimensions qui permettront d'écrire le fichier texte d'assemblage des composants, que le plugin que tu as écrit saura utiliser pour construire l'échafaudage.

je commence par un exemple simple:

[url=[Vous devez être inscrit et connecté pour voir cette image]]

une plateforme de coté a suivant l'axe rouge; b suivant l'axe vert; et a une distance h du sol

J'imagine une boite de dialogue demandant d'entrer ces 3 paramètres, et cette image a coté pour expliquer la demande. L'essentiel étant de pouvoir écrire en sortie de sketchup, un fichier texte "plateforme_simple.txt", par exemple, dans lequel se trouveraient les valeurs de a, b, et c.

Si tu as d'autres idées pour introduire les valeurs de a, b et c ...
J'avais aussi pensé partir d'un proforma sketchup (l'original de l'image "parametres plancher.jpg"), avec des cotes reelles, mais est-ce qu'il est possible de récupérer les cotes dans un fichier sketchup, pour les mettre dans un fichier texte?

Je ferai le programme en basic qui écrit le fichier texte de description de l'assemblage, et qui passera la main de nouveau a sketchup, au plugin ruby que tu viens d'écrire.



glro
posteur
posteur

Masculin Bélier
Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 62
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages

http://georgesleroux.blogspot.com/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Sam 1 Jan 2011 - 21:39

Je viens de tester cela fonctionne bien (tu as modifié les composants ?). J'ai juste pour l'instant un petit probleme de compatibilté avec MAC.
Maintenant que j'ai un beau Imac tout neuf je peux faire des essais rigole
Pour en revenir à ta question, pour ruby il n'y a aucun probleme pour ecrire un fichier texte du style de celui que tu as ecris.
Concernant la maniere de proceder, il est possible de rentrer les données via une boite de dialogue, par contre cela peut-être un peu fastidieux.
Avec Ruby on peut tout à fait mesurer les cotes (x,y,z) d'une entité, le tout est de bien identifier l'element à mesurer ou par selection, par click, par le nom du composant etc....
Ce que tu veux obtenir ce sont les coordonnées de départ de l'assemblage de ton echafaudage?
Si j'ai bien compris tu veux ecrire ton fichier txt via Sketchup pour le reutiliser ensuite pour assembler tes composants, si c'est bien cela il n'est pas necessaire que je perde trop de temps à creer un menu de recherche de ton fichier texte, le plugin saura le recuperer dans la mesure ou c'est lui qui l'aura archivé saispas
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Dim 2 Jan 2011 - 10:40

Il fonctionne maintenant avec Mac et le chemin du fichier texte est sauvegardé entre les sessions.
Par defaut s'il n'y pas de fichier il propose la racine du disque dur c:\ pour windows et 'Hard Drive'/ pour Mac

@+

[Vous devez être inscrit et connecté pour voir ce lien]
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par glro le Dim 2 Jan 2011 - 12:16

[Vous devez être inscrit et connecté pour voir ce lien] a écrit:Je viens de tester cela fonctionne bien (tu as modifié les composants ?).
...
Ce que tu veux obtenir ce sont les coordonnées de départ de l'assemblage de ton echafaudage?
Si j'ai bien compris tu veux ecrire ton fichier txt via Sketchup pour le reutiliser ensuite pour assembler tes composants... saispas

L'idee, c'est d'utiliser sketchup comme interface d'entrée et de sortie, avec au milieu, un programme écrit en basic, parce que c'est le seul langage de programmation que je connaisse, et qu'il faut savoir comment organiser les composants entre eux pour l'ecrire, c'est moins de l'informatique que de l'echafaudage....

Le lien entre les interfaces sketchup et le programme basic, se ferait par des fichiers texte:
> en entrée un fichier texte pour les paramètres d'entrée (dimensions, hauteur...)
> en sortie un fichier texte pour le placement des composant dans l'espace (du genre de celui que je t'ai transmis déjà)

Tu as fait l'interface de sortie.
Le programme en basic, je dois l'écrire, mais on est déjà le 2 janvier, la léthargie de la fin d'année va disparaitre, et je vais devoir revenir a mes affaires courantes... ca va aller moins vite de mon coté.

Pour l'interface d'entrée, la boite de dialogue est la manière la plus simple d'entrer les paramètres; pour un plancher rectangulaire a une certaine hauteur du sol, il n'y a pas de problème pour se faire une image mentale de l'échafaudage a construire, et on pourrait entrer les paramètres dans la boite de dialogue sans difficulté.

Mais pour des cas plus compliqués, le problème de la boite de dialogue, c'est qu'il faut décrire par des mots la valeur a entrer, et plus c'est complexe, plus il faut de mots...

D'où l'idée de partir d'un modèle sketchup représentant les données d'entrée seulement:

[Vous devez être inscrit et connecté pour voir ce lien]

en sélectionnant le plancher, et avec les outils de déplacement et déformation de sketchup, on voit que les cotes s'adaptent. Si le plugin pouvait lire les cotes, et les mettre dans un fichier texte, ca serait bien...

Mais la difficulté, c'est de déformer ou déplacer précisément, et le chiffre écrit dans la boite de dialogue "mesure" donne:
> la valeur du déplacement, pas la valeur absolue de la hauteur
> le rapport entre la dimension finale et la dimension de depart, pas la dimension finale
donc on ne peut pas s'en servir comme aide a la modification non plus

J'avais pensé au plugin driving dimension:
[Vous devez être inscrit et connecté pour voir ce lien]

mais c'est peut être trop sophistiqué par rapport au besoin.

L'idéal serait d'avoir les 2: une boite de dialogue, et un modèle simplifié dans un fichier sketchup: on entrerait une valeur dans la boite de dialogue, et ca mettrait a jour automatiquement la dimension du modèle simplifié

un peu comme driving dimension, mais simplifié, parce qu'il n'y a pas de problème lié a la compatibilité des dimensions entre elles...

un peu aussi comme le plugin Moveit de TBD
[Vous devez être inscrit et connecté pour voir ce lien]
sauf que ce n'est pas le deplacement qu'il faudrait entrer, mais la valeur finale de la dimension

Et avec cette interface d'entrée, on ne pourrait plus partir d'un espace vide dans sketchup, il faudrait partir d'un fichier ou serait stocké le modèle simplifié; a moins que le plugin puisse aussi écrire le modèle simplifié dans l'espace vide...

Je vais commencer le programme pour écrire le fichier texte de placement des composants.

PS: je n'ai pas modifié les composants, j'ai seulement repris le calcul de l'angle de rotation du composant; avec designcad, on peut associer 3 points d'insertion a un composant, mais avec sketchup, un seul; il m'a donc fallu remplacer les 3 points par un seul, plus un angle (que j'ai eu du mal a calculer dans toutes les positions....)




glro
posteur
posteur

Masculin Bélier
Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 62
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages

http://georgesleroux.blogspot.com/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Dim 2 Jan 2011 - 12:59

Ce que tu veux, c'est dessiner grapiquement ta "plateforme" de depart et transferer les données de cette "plateforme" dans un fichier texte

Voila un premier exemple pour etre plus demonstratif le fichier texte s'affiche dans une boite de dialogue.
Tu selectionnes la face et/ou les aretes de la "plateforme", tu exécutes le code suivant dans webdialog
Code:
model = Sketchup.active_model
entities = model.entities
selection = model.selection
bounds = model.bounds
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
UI.messagebox "Coordonnees à stocker dans un fichier" + "\n\n" +
              " Axe x :  " + bc0[0].to_s + "\n" +
              " Axe y :  " + bc0[1].to_s + "\n" +
              " Axe z :  " + bc0[2].to_s + "\n"

[Vous devez être inscrit et connecté pour voir cette image]

@+
c.plassais
c.plassais
modérateur
modérateur

Masculin Gémeaux
Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2478
Age : 57
Localisation : Chambéry
Emploi : Responsable Gestion Atelier

http://bande.village.free.fr/

Revenir en haut Aller en bas

plugin pour assembler des composants Empty Re: plugin pour assembler des composants

Message par c.plassais le Dim 2 Jan 2011 - 14:23

Voila ce que cela peut donner avec le niveau d'interactivité le plus faible, il suffit de lancer le plugin après modification et selection de la géométrie