Aller au contenu

Lisp de dévoiement


Wâlhallein

Messages recommandés

Bonjour

Après quelques années à observer de loin le monde de la création de LISP, j'ai enfin pris le temps de me lancer et de tenter de créer mes propres outils

Après quelques heures, j'ai fini par réussir une première ébauche relativement fonctionnelle, mais loin d'être optimale.

Ma Lisp a pour objectif de sélectionner une polyligne et un diamètre, pour y appliquer un raccord du rayon demandé, et d’exécuter deux décalages afin de représenter l'épaisseur d'un réseaux de plomberie.

(Ci-dessous un exemple de la modification que je souhaite réaliser grâce à la commande)

image.thumb.png.63d18ee64f9b3e0f40b084c1b03e5bbf.png

Voici le résultat 

(defun c:dev ()
 (prompt "\nEntrer le réseau à dévoyer\n")
  (setq l1 (entsel))
 (prompt "\nEntrer le rayon du réseau\n")
 (setq d1 (getreal))
  (prompt "\nEntrer le centreseau\n")
  (setq p (getpoint))
   (setq x (car p))
   (setq y (cadr p))
   (setq z (caddr p))
 (setq x2 (+ x 111))
 (setq y2 (+ y 100))
 (setq x3 (- x 111))
 (setq y3 (- y 100))
 (setq t1 (list x2 y2 z))
 (setq t2 (list x3 y3 z)) 
  (command
   "raccord" "r" (* d1 2) ""
   "raccord" "polyligne" l1    
   "_offset" d1 l1 t1 ""
   "_offset" d1 l1 t2 ""
  )
  (princ)
  )

Mon décalage fonction dans le principe, mais je ne pense pas que le bidouillage réaliser pour y parvenir soit bon. Auriez vous une idée sur la manière de choisir proprement la direction de mon décalage ?

Ma Lisp a aussi pour but de raccourcir la polyligne d'origine a chacune de ses deux extrémités, mais je n'ai pas encore réussi à trouver la manière d'y parvenir.

Merci à tout ceux qui sauront m'apporter leur aide.

Lien vers le commentaire
Partager sur d’autres sites

Bonjour Wâlhallein,

Pour ton premier  lisp, je vais juste te donner des pistes. Cela restera ton lisp.

Fait un

(entget (car (entsel)))

sur la polyligne de départ. Tu obtiendras son code dxf.

Si on parle bien d'une LWPOLYLIGNE (polyligne légère) avec les fonctions ANGLE, et POLAR tu vas pouvoir recalculer tes points.

Olivier

PS : Félicitation pour ton premier lisp fonctionnel et bienvenue dans la communauté des lispeurs

Lien vers le commentaire
Partager sur d’autres sites

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é