METRAGE DANS AUTOCAD V2

PatDeLaYaute Messages postés 133 Date d'inscription dimanche 28 avril 2002 Statut Membre Dernière intervention 15 janvier 2009 - 22 août 2003 à 21:15
sam30sks Messages postés 1 Date d'inscription mercredi 30 novembre 2011 Statut Membre Dernière intervention 30 novembre 2011 - 30 nov. 2011 à 19:51
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/8313-metrage-dans-autocad-v2

sam30sks Messages postés 1 Date d'inscription mercredi 30 novembre 2011 Statut Membre Dernière intervention 30 novembre 2011
30 nov. 2011 à 19:51
Bonjour,

je débute dans la vba, car je pense que ça peut me faire gagner beaucoup de temps mais je ne comprends pas tout!!
Je souhaiterai savoir ou avoir des pistes pour intégrer les fichiers sous extensions .frm, .frx, .bas, .vdp, .vbw dans autocad. Faut-il simplement faire un copier coller et les déposer dans un dossier défini ou est-ce plus compliqué ? comment ensuite se servir de ce module ? le charger à partir d'un onglet sous AUTOCAD ?

Merci
karlmagicben Messages postés 1 Date d'inscription jeudi 4 novembre 2004 Statut Membre Dernière intervention 9 décembre 2009
9 déc. 2009 à 22:34
bonjour
as tu finis le prog afin de déterminer les polylignes ?
Merci
cs_ALPS Messages postés 6 Date d'inscription mardi 19 août 2003 Statut Membre Dernière intervention 8 mars 2004
4 avril 2008 à 18:58
Il faut visual basic 6
Pour le trouver il faut l'acheter, même si c'est idiot puisqu'il n'est plus supporté par microsoft depuis le mois dernier. à moins qu'il ne soit maintenant disponible gratuitement.

il permet de totaliser séparément le nombre de blocs par calque, les longueurs de lignes par calques, et les longueurs de polyligne par calque (pour les polylignes il ne calcule pas la longueur d'un arc, il le considère comme une droite)
je pense donc qu'il fait ce dont tu as besoin.
il est relativement facile à modifier pour en changer les fonctions, j'ai essayé de bien le commenter pour cela.
Mais comme depuis, Autocad est devenu MDI (il ouvre plusieurs dessins dans la même instance) il y a peut être beaucoup de choses a modifier pour choisir le dessin actif parmi plusieurs
Evilprog Messages postés 3 Date d'inscription mercredi 31 octobre 2007 Statut Membre Dernière intervention 23 décembre 2008
4 avril 2008 à 11:50
Salut c'est encore moi.

J'aimerai savoir ce qu'il faut pour utiliser ce programe (Visual Basic Editor ?) ou puis-je le trouver, et comment faire fonctionner ce programme.

Pourra-t-il me servir à connaître les longueures totales de mes Polyligne sur chaque calques ? (la longueur d'une polyligne est disponible avec une liste sous autocad : y a-t-il moyen d'adapter ce programme a cette fonction ?)


Merci de vos réponses.
cs_guani Messages postés 2 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 21 février 2008
21 févr. 2008 à 08:05
Voilà j'ai compilé avec Microsoft Visual Basic 2008.
J'ai résolu un maximum d'erreurs afin d'adapter ton programme.
Cependant, il reste encore des erreurs que je n'arrive pas à résoudre.
L'erreur récurente se trouve sur les lignes de code contenant l'expression:
"Acad.activedocument".
En fait, il arrive à compiler, mais le compilateur me met un exeption s'est produite de type 0x25d2454...
Aurais-tu une idée d'où cela peut venir?

Merci

A+
cs_ALPS Messages postés 6 Date d'inscription mardi 19 août 2003 Statut Membre Dernière intervention 8 mars 2004
20 févr. 2008 à 22:42
il te faut visual basic pour compiler le programme. Je nepense pas que cela fonctionne dans l'état avec le vbe intégré a autocad. Ce doit même être plus simple au niveau de la manipulation des objet.
Malheureusement j'ai changé de travail depuis que j'ai fait ce programme, et je n'ai plus les mêmes moyens. juste un petit autocad light dont je n'ai mpême pas besoin de me servir.

il ne te reste qu'a lire l'aide VB d'autocad et a voir comment modifier le source pour qu'il s'adapte.

Bon courage
cs_guani Messages postés 2 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 21 février 2008
14 févr. 2008 à 08:46
Bonjour tout le monde. J'ai le même problème que BLANCHERM. Je dispose d'Autocad 2005.
Apparemment je dirais que ce sont certaines lignes de code de "Form1" qui ne sont pas prises en compte par le VBE (par exemple la 1ère ligne object= "...." et Begin VB.Form Form1).
Est ce que quelqu'un a une solution???

PS: je ne suis qu'un petit débutant dans le monde d'Autocad et de la programmation VB.
sperwer Messages postés 3 Date d'inscription jeudi 29 septembre 2005 Statut Membre Dernière intervention 21 avril 2006
21 avril 2006 à 10:19
Salut à tous. Ca marche sous Autocad 2005. Il faut juste mettre à jour les références.
cs_LeVoleur Messages postés 15 Date d'inscription mardi 9 novembre 2004 Statut Membre Dernière intervention 11 juillet 2005
28 juin 2005 à 15:27
Salut, ça fonctionne avec la 2002. C'est interessant
a+
le voleur
blancherm Messages postés 1 Date d'inscription vendredi 19 décembre 2003 Statut Membre Dernière intervention 1 septembre 2004
1 sept. 2004 à 02:10
Bonjour, j'ai un petit problème pour charger le projet, impossible de charger les fichiers frm, le message d'erreur dit que la classe de feuille contenue dans le fichier n'est pas géré par VBE. quelqu'un a une solution ? merci
fgansoinat Messages postés 10 Date d'inscription samedi 23 août 2003 Statut Membre Dernière intervention 4 août 2005
25 août 2003 à 20:27
Pour aller plus vite, il te suffit de passer par les selctionset....
avec des filtres sur le datatype :

Option Explicit
Public EntitéCodeDXF As String
Public groupCode As Variant, dataCode As Variant
Public NameSelSet As String
Public appCad As AcadApplication
Public drw As AcadDocument


Sub TrouverBloc()
Dim SelSet As AcadSelectionSet
'Initialisation
NewSelSet ("Test")
Set SelSet = drw.SelectionSets.Item("Test")
SelSet.Clear
GSelset.FiltrerEntité "line"
SelSet.Select acSelectionSetAll, , , groupCode, dataCode
Dim i As Integer
MsgBox "Nombre de lignes : " & SelSet.Count, vbInformation, "Test FG"
For i = 0 To SelSet.Count - 1
Set returnObj = SelSet.Item(i)
returnObj.Color = acRed
returnObj.Update
Next i
End Sub

Function NewSelSet(NameSelSet)
Dim k As Integer
Dim ssetObj As AcadSelectionSet
For k = 0 To drw.SelectionSets.Count - 1
If drw.SelectionSets(k).Name = NameSelSet Then
'le jeu de selection existe deja
Set ssetObj = drw.SelectionSets.Item(NameSelSet)
drw.SelectionSets.Item(NameSelSet).Clear
k = drw.SelectionSets.Count - 1 'sort de la boucle
Exit Function
Else
'le jeu de selection n'existe pas... reste a le créer
Set ssetObj = drw.SelectionSets.Add(NameSelSet)
End If
Next k
End Function
Sub FiltrerEntité(EntitéCodeDXF As String)
Dim gpCode(0) As Integer
Dim dataValue(0) As Variant
gpCode(0) = 0
dataValue(0) = EntitéCodeDXF
groupCode = gpCode
dataCode = dataValue
End Sub
fgansoinat Messages postés 10 Date d'inscription samedi 23 août 2003 Statut Membre Dernière intervention 4 août 2005
23 août 2003 à 14:33
Le code est propre ... reste a le completer en remontant par exemple les valeurs d'attribut des blocs (avec choix etc...)
Ceci dit, pour les blocs, l'extracteur d'attributs inté"gré à AutoCAD te permet de faire ces manip facilement....
PatDeLaYaute Messages postés 133 Date d'inscription dimanche 28 avril 2002 Statut Membre Dernière intervention 15 janvier 2009 3
22 août 2003 à 21:15
Salut, je n'ai pas tester ton code car j'en ai pas l'utiliter, mais en ce qui concerne l'ouverture de fichier DWG tu peux aller a cette adresse : http://www.opendwg.org si tu ne connais pas, il y a en telechargement des outils pour developper en C ou C++ et peut etre en VB je crois.

@+ et bon courage ;-)
Rejoignez-nous