Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

 

je suis nouveau sur le forum et je suis tres impressionné par la qualité des routines,

 

je suis a la recherche d'une ou plusieurs routine qui me permettrai de faire:

 

1: créer des points yxz avec une croix sur un plan comme symbole et numéroté

2 Ensuite pouvoir fire une extraction de ces points en fichier pont-virgule pour ensuite les implanters

 

je pense que cela ne devrais pas etre trop difficle pour des as comme vous

 

peut etre qu'il exsite deja un produit du genre mais je ne le trouve pas

 

merci d'avance

Posté(e)

Hello

 

+1 avec Bryce !

 

1) Un Bloc (Symbole) avec un Attribut (pour le No de Point)

 

2) L'Extraction des donnees fera tres bien l'affaire ...

pour generer un fichier CSV ou XLS ou MDB

 

lecrabe

Autodesk Expert Elite Team

Posté(e)

Bonjour

 

Voici un petit bout de code qui peut te servir je pense.

Il n'est certes pas parfait mais ca marche sur Acad2010.

 

(defun c:imp1 (/ i file pt)
(princ "\nEXPORTATION DE POINTS D'IMPLANTATION")

(setvar "CMDECHO" 0)
(setvar "ATTREQ" 1)
(setvar "ATTDIA" 0)
(command "SCU" "G")
(setvar "INSUNITS" 0)
(setvar "OSMODE" 65)
(setvar "PDSIZE" 0.5)
(setvar "PDMODE" 3)

(if (not (tblsearch "LAYER" "PT_IMP")) (command "_layer" "_N" "PT_IMP" "_CO" "3" "PT_IMP" ""))
(if (not (tblsearch "LAYER" "NUM_IMP")) (command "_layer" "_N" "NUM_IMP" "_CO" "2" "NUM_IMP" ""))
(if (not (tblsearch "STYLE" "Garamond")) (command "-style" "Garamond" "Garamond" 0 1 0 "N" "N"))
(setvar "TEXTSTYLE" "Garamond")
(setvar "CLAYER" "PT_IMP")
(setvar "CECOLOR" "DUCALQUE")

(if (not (tblsearch "BLOCK" "PT_IMP")) 
(progn
(entmake '((0 . "BLOCK") (2 . "PT_IMP") (70 . 2) (10 0.0 0.0 0.0)))
(entmake '((0 . "ATTDEF")
(67 . 0)
(8 . "NUM_IMP")
(10 1 1 0.0)
(40 . 2)
(1 . "")
(50 . 0.0)
(41 . 1.0)
(51 . 0.0)
(7 . "Garamond")
(71 . 0)
(72 . 0)
(11 0.0 0.0 0.0)
(210 0.0 0.0 1.0)
(3 . "Matricule")
(2 . "MAT")
(70 . 0)
(73 . 0)
(74 . 0)
)
)
(entmake '((0 . "POINT")
(67 . 0)
(8 . "PT_IMP")
(10 0.0 0.0 0.0)
(50 . 0.0)
(210 0.0 0.0 1.0)
)
)
(entmake '((0 . "ENDBLK")))
)
)

(setq file (open "C:\\TMP\\IMPLANTATION.txt" "w")) 
(princ "\nChoisissez les points d'implantation à exporter")

(setq i 1)
(while (setq pt (getpoint "\nIndiquer le point à implanter <Entrée pour terminer> : "))
(setvar "OSMODE" 0)
(command "_.insert" "PT_IMP" pt 1 1 0 (strcat "P" (rtos i 2 0)))
(write-line (strcat "P" (rtos i 2 0) "," (rtos (car pt) 2 5) "," (rtos (cadr pt) 2 5) "," (rtos (caddr pt) 2 5)) file)
(setq i (1+ i))
(setvar "OSMODE" 65)
)

(close file)
(command "_.shell" "start notepad C:\\TMP\\IMPLANTATION.txt")
(princ (strcat "\n" (itoa (1- i)) " objets exportés"))
(setvar "CMDECHO" 1)
(prin1)
)

  • 3 semaines après...
Posté(e)

Je vous remercie infiniment pour ces codes, savez comment je pourrai creer une liste d'extraction en ascii ?

 

Bonjour

 

Voici un petit bout de code qui peut te servir je pense.

Il n'est certes pas parfait mais ca marche sur Acad2010.

 

(defun c:imp1 (/ i file pt)
(princ "\nEXPORTATION DE POINTS D'IMPLANTATION")

(setvar "CMDECHO" 0)
(setvar "ATTREQ" 1)
(setvar "ATTDIA" 0)
(command "SCU" "G")
(setvar "INSUNITS" 0)
(setvar "OSMODE" 65)
(setvar "PDSIZE" 0.5)
(setvar "PDMODE" 3)

(if (not (tblsearch "LAYER" "PT_IMP")) (command "_layer" "_N" "PT_IMP" "_CO" "3" "PT_IMP" ""))
(if (not (tblsearch "LAYER" "NUM_IMP")) (command "_layer" "_N" "NUM_IMP" "_CO" "2" "NUM_IMP" ""))
(if (not (tblsearch "STYLE" "Garamond")) (command "-style" "Garamond" "Garamond" 0 1 0 "N" "N"))
(setvar "TEXTSTYLE" "Garamond")
(setvar "CLAYER" "PT_IMP")
(setvar "CECOLOR" "DUCALQUE")

(if (not (tblsearch "BLOCK" "PT_IMP")) 
(progn
(entmake '((0 . "BLOCK") (2 . "PT_IMP") (70 . 2) (10 0.0 0.0 0.0)))
(entmake '((0 . "ATTDEF")
(67 . 0)
(8 . "NUM_IMP")
(10 1 1 0.0)
(40 . 2)
(1 . "")
(50 . 0.0)
(41 . 1.0)
(51 . 0.0)
(7 . "Garamond")
(71 . 0)
(72 . 0)
(11 0.0 0.0 0.0)
(210 0.0 0.0 1.0)
(3 . "Matricule")
(2 . "MAT")
(70 . 0)
(73 . 0)
(74 . 0)
)
)
(entmake '((0 . "POINT")
(67 . 0)
(8 . "PT_IMP")
(10 0.0 0.0 0.0)
(50 . 0.0)
(210 0.0 0.0 1.0)
)
)
(entmake '((0 . "ENDBLK")))
)
)

(setq file (open "C:\\TMP\\IMPLANTATION.txt" "w")) 
(princ "\nChoisissez les points d'implantation à exporter")

(setq i 1)
(while (setq pt (getpoint "\nIndiquer le point à implanter <Entrée pour terminer> : "))
(setvar "OSMODE" 0)
(command "_.insert" "PT_IMP" pt 1 1 0 (strcat "P" (rtos i 2 0)))
(write-line (strcat "P" (rtos i 2 0) "," (rtos (car pt) 2 5) "," (rtos (cadr pt) 2 5) "," (rtos (caddr pt) 2 5)) file)
(setq i (1+ i))
(setvar "OSMODE" 65)
)

(close file)
(command "_.shell" "start notepad C:\\TMP\\IMPLANTATION.txt")
(princ (strcat "\n" (itoa (1- i)) " objets exportés"))
(setvar "CMDECHO" 1)
(prin1)
)

Posté(e)

Bonjour, je vous remercie mais je n'arrive pas a avoir une liste de coordonnées avec les numeros attribut en passant par cette commande.

 

 

Hello

 

Je vais me repeter : Extraction des donnees ...

 

Commande au clavier : _dataextraction

 

lecrabe

Posté(e)

Hello

 

No comprendo !

 

_dataextraction

 

Tu demandes a traiter seulement le/les Bloc(s) concerne(s)

et tu auras automatiquemnent en extraction le Nom du bloc

 

Quand tu es a la case de selection des proprietes du Bloc

Clic droit puis Tout Deselectionner

Puis tu selectionnes par exemple :

Attribut_1, Attribut_2, etc

Eventuellement le Calque d'Insertion

Position X et Y et eventuellement Z

Eventuellement : Echelle, Rotation

 

lecrabe

Autodesk Expert Elite Team

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité