Forum Sketchup Artlantis Archicad
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Galerie


plugin pour assembler des composants Empty
Ton bloc notes
Derniers sujets
» [ SKETCHUP plugins ] Attribut_rapport : Rapport quantitatif et estimatif d'un modèle dans Excel
par simjoubert Aujourd'hui à 10:19

» [ TWINMOTION ] tutos pour débuter sur Twin
par Coulou Aujourd'hui à 9:49

» [ AUTRES LOGICIELS ] Mise à jour majeure de Clarisse 5 , super logiciel de composition et de rendu
par tenrev Aujourd'hui à 7:55

» [ TWINMOTION ] rotation d'un cube
par Pilou Aujourd'hui à 0:45

» [ MATOS INFORM. ] Impression 3D
par VertiKal Hier à 11:11

» [AUTRES LOGICIELS] MagicaVoxel!
par Pilou Mar 4 Mai 2021 - 21:21

» [ SKETCHUP plugins ] Parametric Modeling
par Samuel Tallet-Sabathé Mar 4 Mai 2021 - 20:44

» [ TWINMOTION ] Decals et plus !
par tenrev Mar 4 Mai 2021 - 8:56

» [ UNREAL ENGINE ] Asset de chez megascan - paysage médiéval free pour unreal
par Coulou Lun 3 Mai 2021 - 11:23

» [ ARCHICAD ] Définition étage d'encrage ascenseur AC24
par Wutxo Lun 3 Mai 2021 - 9:22

» [ PRESENTATION ]
par Samuel Tallet-Sabathé Lun 3 Mai 2021 - 8:11

» [ ENSCAPE ] Composant supprimé apparaît encore dans Enscape
par kevinb Sam 1 Mai 2021 - 9:38

» [ AUTRES LOGICIELS ] Quixel mixer 2021 vient de sortir
par tenrev Ven 30 Avr 2021 - 11:59

» [ SKETCHUP Layout ] Petit problème dans l'export
par lionel Claude Ven 30 Avr 2021 - 8:17

» [ TWINMOTION ] Section Cube
par Coulou Jeu 29 Avr 2021 - 15:28

» [ SKETCHUP généralité ] insertion paysagère imparfaite
par tenrev Jeu 29 Avr 2021 - 12:47

» [ ARCHICAD ] Bug verrouillage axe Archicad 24
par Coulou Jeu 29 Avr 2021 - 11:01

» [ UNREAL ENGINE ] Essai de config de voiture et rendu d'une animation
par AK40Cess Mar 27 Avr 2021 - 18:01

» [ SKETCHUP tutos ] Extension TRUEBEND- Cintrer (Rouler) - Courber - Arrondir n'importe quelle forme
par Rascal Mar 27 Avr 2021 - 12:21

» [ FORUM ] Petite astuce sur le fonctionnement du forum
par Coulou Mar 27 Avr 2021 - 10:03

» [ UNREAL ENGINE ] Essai en mode game play
par Coulou Mar 27 Avr 2021 - 9:43

» [ AUTRES LOGICIELS ] Deepmotion : Transformez des vidéos en animations 3D en ligne c'est gratuit
par Pilou Lun 26 Avr 2021 - 19:17

» [ SKETCHUP plugins/Extensions ] TRUEBEND- Cintrer (Rouler) - Courber - Arrondir n'importe quelle forme
par jerryvento Lun 26 Avr 2021 - 18:20

» [ SKETCHUP généralité ] Sketchup Oh snap! fr/js/app.soy.js failed to load!
par tenrev Sam 24 Avr 2021 - 18:03

» [ MATOS INFORM. ] Scanner 3D
par nashura Ven 23 Avr 2021 - 17:13

» [ UNREAL ENGINE ] Asset free - Rural Australia
par REGIS Ven 23 Avr 2021 - 17:06

» [ AUTRES LOGICIELS ] Quixel Mixer 2020 - mise à jour mai 2020
par Pilou Ven 23 Avr 2021 - 11:39

» [ MATOS INFORM. ] Comment Faire un Choix Nouvelle Tour
par tenrev Jeu 22 Avr 2021 - 17:46

» [ Autres Logiciels ] PolyBrush
par Pilou Jeu 22 Avr 2021 - 1:12

» [ SKETCHUP généralité ] Import STEP & 3DS
par Lionscov Mer 21 Avr 2021 - 17:29

» [ ARCHICAD ] Peut-on réduire le poids d'un PDF sans altérer sa qualité ?
par freroil Mar 20 Avr 2021 - 14:50

» [ TWINMOTION ] la version 2021.1 est arrivée :)
par tenrev Lun 19 Avr 2021 - 16:55

» [ ARCHICAD ] Je veux un maillage qui m'aille ....
par freroil Lun 19 Avr 2021 - 14:04

» [ ARCHICAD ] Fenêtre démarrage
par Christophe Fortineau Lun 19 Avr 2021 - 11:49

» [ ARCHICAD ] Archicad 24
par Coulou Lun 19 Avr 2021 - 9:08

plugin pour assembler des composants

Page 1 sur 2 1, 2  Suivant

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

avatar
glro
Timide
Timide
Masculin Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 64
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages
http://georgesleroux.blogspot.com/

Messageglro 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]
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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
avatar
glro
Timide
Timide
Masculin Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 64
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages
http://georgesleroux.blogspot.com/

Messageglro 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

c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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 Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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 Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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
avatar
glro
Timide
Timide
Masculin Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 64
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages
http://georgesleroux.blogspot.com/

Messageglro 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...)

avatar
glro
Timide
Timide
Masculin Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 64
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages
http://georgesleroux.blogspot.com/

Messageglro 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?
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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...
avatar
glro
Timide
Timide
Masculin Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 64
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages
http://georgesleroux.blogspot.com/

Messageglro 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]
c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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]

@+
avatar
glro
Timide
Timide
Masculin Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 64
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages
http://georgesleroux.blogspot.com/

Messageglro 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

c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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
avatar
glro
Timide
Timide
Masculin Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 64
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages
http://georgesleroux.blogspot.com/

Messageglro 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 .....

c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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

@+
avatar
glro
Timide
Timide
Masculin Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 64
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages
http://georgesleroux.blogspot.com/

Messageglro 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.


c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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 Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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]
avatar
glro
Timide
Timide
Masculin Date d'inscription : 20/12/2010
Nombre de messages : 26
Points : 42
Age : 64
Localisation : Espagne
Emploi : dessin et calcul d'echafaudages
http://georgesleroux.blogspot.com/

Messageglro 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....)



c.plassais
c.plassais
modérateur
modérateur
Masculin Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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 Date d'inscription : 19/07/2009
Nombre de messages : 2058
Points : 2479
Age : 58
Localisation : Chambéry
Emploi : Responsable Gestion Atelier
http://bande.village.free.fr/

Messagec.plassais 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




Uploader ici vos fichiers
à partager sur le forum

Marque-page social
Marque-page social reddit  Marque-page social google      

Conservez et partagez l'adresse de Forum Sketchup Artlantis Archicad sur votre site de social bookmarking

Flux RSS

Netvibes 


addthis
pinterest