Netparty Posté(e) le 20 décembre 2021 Posté(e) le 20 décembre 2021 Bonjour à tous Je cherche la possibilité de dessiner une polyligne via un lisp avec la commande command "_PLINE" Est-il possible de définir la largeur du sommet de départ et de fin Merci d'avance
didier Posté(e) le 20 décembre 2021 Posté(e) le 20 décembre 2021 Bonjour @Netparty Je suis obligé de faire une demi-réponse, car il n'est pas expliqué si la polyligne aura plusieurs sommets Je pars sur un exemple simple d'un seul segment comme une pointe de flèche de 1 unité au départ et qui finit à 0, ça fera une base de départ. (setq p1 (getpoint "\nDépart\n") p2 (getpoint "\nArrivée\n")) (setq ep1 1 ep2 0) (command "_pline" p1 "_w" ep1 ep2 p2 "") Si c'est pour dessiner des segments avec chacun une épaisseur différente, il faudra réfléchir un tantinet plus. Amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
Luna Posté(e) le 20 décembre 2021 Posté(e) le 20 décembre 2021 Coucou, Il faut utiliser la fonction (command) et les arguments que tu dois lui passer sont strictement les mêmes que tu utiliserais en ligne de commande sur AutoCAD. Autrement dit, regardes ce que TU ferais en faisant la manip' manuellement, et rentre chaque entrée clavier sous forme d'arguments pour ta fonction (command). Je ne comprends cependant pas la demande : Il y a 2 heures, Netparty a dit : Est-il possible de définir la largeur du sommet de départ et de fin Cela signifie t-il le sommet de départ et de fin de chaque segment ? de la polyligne ? Ou bien est-ce le sommet de départ de la polyligne qui possède une épaisseur, le reste doit être à 0, puis de nouveau une épaisseur pour le dernier sommet de la polyligne ? Pour les (command "_PLINE"), on utilise régulièrement une boucle (while) pour la saisie des points (et ainsi s'adapter au nombre variable de sommets désirés) : (command "_PLINE" pause "_Width" pause pause) (while (setq pt (getpoint "\nPoint suivant : ")) (command pt) ) (command) Cependant cette méthode ne peut pas prévoir un changement progressif de l'épaisseur car il faudrait connaître à l'avance le nombre de sommet ainsi que la largeur de chaque segment. Autrement dit, pour quelque chose du genre, ce n'est pas à la création de la polyligne qu'il faudrait le gérer mais en post-traitement via (entmod) et la gestion des codes DXF 40 (= Starting width) et 41 (= End width). Il faudrait également calculer les longueurs de segment afin d'avoir un changement d'épaisseur uniforme. Bisous, Luna
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