makhno Posté(e) le 6 janvier 2006 Posté(e) le 6 janvier 2006 Bonjour Existe-t-il une méthode pour simplifier une polyligne 2D ? ( réduire le nombre de points ).Merci d'avance.
bonuscad Posté(e) le 6 janvier 2006 Posté(e) le 6 janvier 2006 Bonjour, Comme déjà dit dans le post LT la commande "Pedit" option "Modif-Sommet" "Linéair" Mais sous quel version travail-tu? pleine, ligth. En version pleine on peut automatiser, par exemple supprimer 1 sommet sur 2 comme le code suivant peut faire. (defun c:linear_nto1 ( / ent dxf_ent typ_ent up_def pt_lst n new_lst) (while (not (setq ent (entsel "\nChoisir une polyligne2D: ")))) (setq typ_ent (cdr (assoc 0 (setq dxf_ent (entget (car ent))))) new_lst '()) (cond ((eq typ_ent "LWPOLYLINE") (setq up_def (vl-remove-if '(lambda (x) (or (= (car x) 10) (= (car x) 40) (= (car x) 41) (= (car x) 42))) dxf_ent)) (setq pt_lst (vl-remove-if-not '(lambda (x) (or (= (car x) 10) (= (car x) 40) (= (car x) 41) (= (car x) 42))) dxf_ent)) (initget 7) (while (> (setq n (getint (strcat "\nNombre de sommet à éliminer? Maxi <" (itoa (/ (length pt_lst) 4)) ">: "))) (/ (length pt_lst) 4)) (princ "\nNombre de sommet à éliminer supérieur à celui existant!") (initget 7) ) (while pt_lst (setq new_lst (append (mapcar '(lambda (x) (nth x pt_lst)) '(0 1 2 3)) new_lst)) (setq pt_lst (cddddr pt_lst)) (repeat n (if (cdr pt_lst) (setq pt_lst (cddddr pt_lst))) ) ) (setq up_def (subst (cons 90 (/ (length new_lst) 4)) (assoc 90 up_def) up_def)) (entmod (append (subst (cons 90 (/ (length new_lst) 4)) (assoc 90 up_def) up_def) new_lst)) ) (T (princ "\nN'est pas une polyligne 2D optimisée!") ) ) (princ) ) Modifier pour choisir le nombre de sommets à supprimer [Edité le 6/1/2006 par bonuscad] Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
lecrabe Posté(e) le 6 janvier 2006 Posté(e) le 6 janvier 2006 Bonsoir Nous sommes dans le forum MAP DONC je suppose que Makhno dispose d'un MAP :) MAP / Outils cartographiques / Nettoyage de dessins 1) Selectionner la/les polylignes 2) Choisir l'algorithme "Simplifier les objets" et paramétrer "correctement" la tolérance de simplification ... 3) Choisir soit de modifier directement les objets d'origine soit de générer de nouveaux objets sur un autre calque pour COMPARER ! :D Le Decapode "Simplifiant" Autodesk Expert Elite Team
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