ahmednassim Posté(e) le 24 mars 2007 Posté(e) le 24 mars 2007 existe-il une methode pour lire les rayons d'une polyline composé de lignes et d'arcs de cercle et les exporter dans un fichier .txt Merci d'avance
(gile) Posté(e) le 24 mars 2007 Posté(e) le 24 mars 2007 Salut, Un petit LISP qui devrait te convenir. Le résultat est du type : Sommet 1 : Rayon -440.3156Sommet 2 : Rayon 1114.2755Sommet 5 : Rayon -433.5176Sommet 6 : Rayon 74.1878 Où - le sommet est celui du départ de l'arc- le rayon est positif si l'arc est dans le sens trigonométrique, négatif dans le sens horaire. Edit : Une erreur dans le calcul du rayon a été réparéeEdit 2 : Fonctionne aussi avec les polylignes 2D (defun c:arc2txt (/ ent str typ n blg rad file) (vl-load-com) (if (and (setq ent (car (entsel "\nSélectionnez une polyligne: "))) (setq ent (vlax-ename->vla-object ent)) (member (setq typ (vla-get-ObjectName ent)) '("AcDbPolyline" "AcDb2dPolyline") ) (setq str "") ) (progn (if (= typ "AcDbPolyline") (setq n (1- (/ (length (vlax-get ent 'Coordinates)) 2))) (setq n (1- (/ (length (vlax-get ent 'Coordinates)) 3))) ) (repeat n (if (/= (setq blg (vla-getBulge ent (setq n (1- n)))) 0.0) (setq rad (/ (distance (vlax-curve-getPointAtParam ent n) (vlax-curve-getPointAtParam ent (1+ n)) ) (* 2 (sin (* 2 (atan blg)))) ) str (strcat "\nSommet " (itoa (1+ n)) " : Rayon " (rtos rad) str ) ) ) ) (textscr) (princ str) (initget "Oui Non") (if (= (getkword "\nEnregistrer dans un fichier ? [Oui/Non] : " ) "Oui" ) (progn (setq file (open (getfiled "Créez ou sélectionnez un fichier" "" "txt" 1 ) "w" ) ) (princ str file) (close file) ) ) (graphscr) ) ) (princ) ) [Edité le 24/3/2007 par (gile)] [Edité le 24/3/2007 par (gile)] Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
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