ahmednassim Posté(e) le 24 mars 2007 Partager 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 Lien vers le commentaire Partager sur d’autres sites More sharing options...
(gile) Posté(e) le 24 mars 2007 Partager 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 Lien vers le commentaire Partager sur d’autres sites More sharing options...
ahmednassim Posté(e) le 27 mars 2007 Auteur Partager Posté(e) le 27 mars 2007 merci infiniment ça marché Lien vers le commentaire Partager sur d’autres sites More sharing options...
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