etienne.leb-appac Posté(e) le 16 janvier 2009 Posté(e) le 16 janvier 2009 bonjour,je souhaiterai savoir s'il est possible, avec une macro en VAB, d'additionner les longueurs de cylindre en fonction de leurs diamètre! merci d'avance [Edité le 16/1/2009 par etienne.leb-appac] « J'ai claqué beaucoup d'argent dans l'alcool, les filles et les voitures de sport - le reste, je l'ai gaspillé » http://www.appac-caen.com
sechanbask Posté(e) le 16 janvier 2009 Posté(e) le 16 janvier 2009 tu pourrais envoyer un fichier sur le site de ci-joint par exemple pour que je fasse un test ? Je pense que c'est possible mais en fonction de la taille de ton fichier, ça peut prendre un peu de temps P.S. tu pourrais envoyer le fichier dans le format dwg 2004 et 2007. Car en fonction du poste sur lequel je travaille, je ne pourrais pas le lire. P.S.S. Il y a un forum pour les macro VBA, les routines etc... [Edité le 17/1/2009 par sechanbask] ATEGIE - Bureau d'Études Fluideshttp://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.pngExécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffragewww.ategie.fr
etienne.leb-appac Posté(e) le 19 janvier 2009 Auteur Posté(e) le 19 janvier 2009 salut,en fait je n'ai pas d'exemple concret sous la main mais je peux faire quelque chose rapidement qui ressemblera au dessin ou je souhaite appliquer ce programme. ou dois-je l'envoyer?on peut mettre des pièces jointes sur les sujet ??? « J'ai claqué beaucoup d'argent dans l'alcool, les filles et les voitures de sport - le reste, je l'ai gaspillé » http://www.appac-caen.com
sechanbask Posté(e) le 20 janvier 2009 Posté(e) le 20 janvier 2009 tu ne peux pas mettre de pièce jointe à un message, mais tu peux mettre dans ton message un lien vers un site de stockage où tu aura déposé ton fichier. Les lecteurs pourront le récupéré via le lien... ATEGIE - Bureau d'Études Fluideshttp://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.pngExécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffragewww.ategie.fr
etienne.leb-appac Posté(e) le 20 janvier 2009 Auteur Posté(e) le 20 janvier 2009 salut, voici le lien pour le plan en version 2004 : http://cjoint.com/?bwjWQCU5S2 et voici le lien pour le plan en version 2007 : http://cjoint.com/?bwjZbWJMyN dans le plan j'ai mis les calques en fonction de l'utilité de la tuyauterie et du diamètre, mais il m'arrive d'avoir plusieurs diamètres dans le même calque. merci a+ « J'ai claqué beaucoup d'argent dans l'alcool, les filles et les voitures de sport - le reste, je l'ai gaspillé » http://www.appac-caen.com
sechanbask Posté(e) le 22 janvier 2009 Posté(e) le 22 janvier 2009 pas de problème j'y regarde ce soir ATEGIE - Bureau d'Études Fluideshttp://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.pngExécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffragewww.ategie.fr
etienne.leb-appac Posté(e) le 3 février 2009 Auteur Posté(e) le 3 février 2009 Salut ! aurais-tu rencontré un problème ?si c'est en LISP ça me va aussi! sinon y'a pas moyen de faire un truck avec les échelles?du genre faire un cylindre de Ø1 de longueur 1 que l'on insert et à chaque insertion, il y aurait une modification de l'échelle du genre :x=y et une boite de dialogue (ou autre)qui demande le Ø et qui régit l'échelle en x donc en y aussi (pour garde le cylindre rond), et pour la longueur une boite de dialogue (ou autre) qui fait une mise à l'échelle par référence comme ça la longueur est définit par rapport à la longueur souhaité. voila le fruit de ma réflexion et comme je ne connait ni le LISP ni le VBA je ne peut pousser plus loin... :casstet: « J'ai claqué beaucoup d'argent dans l'alcool, les filles et les voitures de sport - le reste, je l'ai gaspillé » http://www.appac-caen.com
sechanbask Posté(e) le 3 février 2009 Posté(e) le 3 février 2009 ben si tu ne connais pas le lisp ou le VBA, lève les manches, prends de bonnes baskettes et cours charger un bon ouvrage sur la programmation sous autocad et écume les forums developpez.com, augi etc... Rien de compliquer, tout est histoire de temps, de bon sens et de fourberies ! j'ai la méthode : elle vaut ce qu'elle vaut. Les programmateur d'autocad n'ont pas jugé utile de faire des sous "object" pour lire les définitions des cylindres de manière simple et toujours vérifié avec VBA. Donc le plus simple comme le DWG est un format non libre et donc illisible, c'est de transformer ton fichier en dxf. puis de lire les lignes une à une pour trouver les réponses à tes questions. Je suis prêt à t'aider mais, comme je n'ai pas le temps et encore moins le besoin de faire cette application (je ne dessine pas en 3D), je n'ai pas de temps à consacrer à cette application. Néanmoins, comme j'aime les défi, je suis prêt à t'épauler lorsque tu auras appris les prémices du VBA ou du lisp (je pense qu'ici tu auras plus d'aide des lispeurs et le brassage des données des drapeaux DXF doit être plus facile sous lisp (sans passer pas la case exportation de ton fichier en dxf)) Mon code est libre et le restera ainsi que les dérivés Sub Recuperation_des_longueurstest() 'Debug.Print "on rentre dans lecture" 'initialisation des variables contenues dans fichiers Dim MyString As String Dim MyString2 As String Dim strfin As String Dim dblongueur As String Dim n As Integer Dim IntN As Integer Dim strChemFichdxf As String 'le chemin du fichier DXF que l'on doit lire strChemFichdxf = "D:\Add on\dessin2.dxf" booBoucle = False 'rechercher ce qu'il y a dans le fichier... 20 Close #1 40 Open strChemFichdxf For Input As #1 'initialise le nombre de ligne du fichier IntN = 1 50 n = 0 60 Do While Not EOF(1) ' Effectue la boucle jusqu'à la fin du fichier. 70 Line Input #1, MyString 'incrémente le nombre de ligne 80 n = n + 1 If MyString = "AcDbShCylinder" Then 'DP MyString booBoucle = True IntN = n Else End If 'ici faut faire une boucle avec un tableau à 2 directions redimensionnable à chaque passage pour récupérer les longueur en fonction du diamètre If IntN <> n And booBoucle = True Then 'DP MyString Select Case n Case IntN + 6 'DP MyString 'dblLongueur = MyString Case IntN + 8 DP MyString 'dblLongueur = MyString 'strfin = strfin + MyString End Select End If Loop 'Debug.Print dblongueur End Sub ta fourberie de faire des échelles sur tes objets pourrait être une bonne idée, après il faudrait voir si on peut récupérer les échelles simplement sur un objet 3D... affaire à voir [Edité le 3/2/2009 par sechanbask] [Edité le 3/2/2009 par sechanbask] ATEGIE - Bureau d'Études Fluideshttp://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.pngExécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffragewww.ategie.fr
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant