Aller au contenu

Mon premier lisp


zebulon_

Messages recommandés

On s'en fout peut être de sa première chemise, mais pas de son premier lisp . J'ai fait un peu de rangement, et je suis tombé sur le premier lisp que j'ai écrit il y a ... longtemps.

 

 
; entrée données

(defun lire_BP ()
 (setq DEP (getpoint "\nPoint gauche semelle : "))
 (setq FIN (getpoint "\nPoint droit semelle  : "))
 (setq EP (getdist "\nEpaisseur : "))
)

; dessiner rectangle béton de propreté

(defun dess_BP ()
 (setq X1 (- (car DEP) EP))
 (setq Y1 (cadr DEP))
 (setq X2 (+ (car FIN) EP))
 (setq Y2 (- (cadr FIN) EP))
 (command "POLYLIGN" 
          (list X1 Y1)
          (list X2 Y1)
          (list X2 Y2)
          (list X1 Y2)
          "C"
 )
)

(defun C:BP ()
 (lire_BP)
 (dess_BP)
)

 

ça dessine un rectangle de béton de propreté sous une semelle (uniquement si les accroches objets sont inactifs : à l'époque ça n'existait pas ou alors je ne savais pas que ça existait et je ne m'en servais pas)

 

Amicalement

 

Zebulon_

 

PS : à vous de publier les vôtres, qu'on s'amuse un peu :)

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Lien vers le commentaire
Partager sur d’autres sites

Je suis quelqu'un de fidèle, que voulez-vous, on ne se refait pas. Ma première copine, je l'ai épousée et je lui ai fait 2 enfants.

Quant à mon premier lisp, je lui ai aussi fait quelques enfants.. qui ont souvent été aussi d'affreuses bidouilles, si ça peut te rassurer usegomme. Mais bon, comme on dit, au royaume des aveugles les borgnes sont rois et entre celui qui ne sait rien faire du tout et celui qui sait pondre une bidouille qui fonctionne, je préfère le deuxième.

Quant à Patrick_35, je te rassure. Mon premier lisp a failli partir aux oubliettes aussi (le premier qui dit "comme ta première copine" ...) puisque je l'ai retrouvé sur une vieille disquette 3"1/2 planqué au fond d'un tiroir. Le plus difficile c'est de retrouver un ordinateur avec un lecteur de disquette. Heureusement ce n'étais pas une disquette 5"1/4.

 

Ah nostalgie... Mais ce qui est rassurant, c'est que je me sers toujours de ce lisp sous cette forme

; entrée données

(defun lire_BP (/ TEMP DEP FIN X1 X2 Y1 Y2 OldOS OldPlinewid)
 (if (not BP_EP)
   (setq BP_EP 0.10)
 )
 (setq DEP nil
       FIN nil
 )
 (prompt (strcat "\nEpaisseur : " (rtos BP_EP 2 3)))
 (while (/= (type DEP) 'LIST)
   (initget 1 "Epaisseur")
   (setq DEP (getpoint "\nPoint gauche semelle ou [Epaisseur] "))
   (if (= DEP "Epaisseur")
     (setq BP_EP (getdist "\nEpaisseur : "))
   )
 )
 (setq FIN (getpoint DEP "\nPoint droit semelle  : "))
 (if (> (car DEP) (car FIN))
   (progn
     (setq TEMP DEP)
     (setq DEP FIN)
     (setq FIN TEMP)
   )
 )
)

; dessiner polyligne béton de propreté

(defun dess_BP ()
 (setq X1 (- (car DEP) BP_EP))
 (setq Y1 (cadr DEP))
 (setq X2 (+ (car FIN) BP_EP))
 (setq Y2 (- (cadr FIN) BP_EP))
 (setq OldOS (getvar "OSMODE"))
 (setvar "OSMODE" 0)
 (setq OldPlinewid (getvar "PLINEWID"))
 (setvar "PLINEWID" 0)

 (command "_PLINE"
          DEP
          (list X1 Y1)
          (list X1 Y2)
          (list X2 Y2)
          (list X2 Y1)
          FIN
          ""
 )
(setvar "OSMODE" OldOS)
(setvar "PLINEWID" OldPlinewid)
)

(defun C:BP ()
 (lire_BP)
 (dess_BP)
 (princ)
)

 

Amicalement

 

Zebulon_

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

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é