Faire un Lisp sans connaissance, gratuitement et légalement

Allez sur cette adresse :
https://www.perplexity.ai/

dites lui que vous voulez créer un lisp pour AutoCAD®,
faisant telle chose en n’oubliant pas d’être le plus précis possible

exemple : me créer un lisp pour AutoCAD®, me mettant tous les points du dessin à la taille 3% par rapport à l’écran avec la commande ddptype

sa réponse :
https://www.perplexity.ai/search/me-crer-un-Pm3aPZ18T2ubR2V4GkJ1WA

1 « J'aime »

Pas possible de voir le résultat avec le lien fourni mais on peut relancer le prompt.

Merci, effectivement ces IA sont étonnantes, en gardant à l’esprit que :

Par curiosité j’ai demandé à Claude Sonnet 3.5 de générer ce Lisp, voici le résultat :

Voici un script LISP pour AutoCAD® qui ajuste la taille de tous les points du dessin à 3% de la taille de l’écran en utilisant la commande DDPTYPE :

(defun C:SetPointSize3Percent ()
  (vl-load-com)
  (setq acadObj (vlax-get-acad-object))
  (setq doc (vla-get-ActiveDocument acadObj))
  
  ; Ouvrir la boîte de dialogue DDPTYPE
  (command "DDPTYPE")
  
  ; Calculer 3% de la hauteur de l'écran
  (setq screenHeight (getvar "SCREENSIZE"))
  (setq pointSize (* screenHeight 0.03))
  
  ; Définir la taille du point
  (setq ptypeObj (vla-get-PdMode doc))
  (vla-put-PdSize ptypeObj pointSize)
  
  ; Mettre à jour l'affichage
  (vla-Regen doc acAllViewports)
  
  (princ "\nTaille des points définie à 3% de la hauteur de l'écran.")
  (princ)
)

; Pour exécuter la fonction, tapez SetPointSize3Percent dans la ligne de commande AutoCAD

Pour utiliser ce script :

  1. Copiez ce code dans un éditeur de texte.
  2. Enregistrez-le avec une extension .lsp (par exemple « SetPointSize3Percent.lsp »).
  3. Chargez le fichier dans AutoCAD® en utilisant la commande APPLOAD.
  4. Tapez SetPointSize3Percent dans la ligne de commande AutoCAD® pour exécuter la fonction.

Ce script fait les choses suivantes :

  1. Il ouvre la boîte de dialogue DDPTYPE.
  2. Il calcule 3% de la hauteur de l’écran.
  3. Il définit la taille des points à cette valeur.
  4. Il met à jour l’affichage pour refléter les changements.

Notez que ce script utilise l’interface ActiveX d’AutoCAD® pour certaines opérations, ce qui le rend compatible avec les versions récentes d’AutoCAD®.

Réponse

Voici un script AutoLISP qui met à jour la taille des points dans votre dessin AutoCAD® à 3 % par rapport à l’écran en utilisant la commande DDPTYPE :

lisp

(defun c:ResizePoints ()
  (setq screen-width (getvar "SCREENSIZE"))
  (setq point-size (* 0.03 screen-width)) ; 3% de la largeur de l'écran
  (command "DDPTYPE" point-size) ; Appliquer la nouvelle taille de point
  (princ (strcat "\nTaille des points mise à jour à : " (rtos point-size 2 2)))
)

(princ "\nTapez 'ResizePoints' pour ajuster la taille des points.")
(princ)

Explication du Code

  • (defun c:ResizePoints () : Définit une nouvelle commande LISP nommée ResizePoints.
  • (setq screen-width (getvar "SCREENSIZE")) : Récupère la taille de l’écran.
  • (setq point-size (* 0.03 screen-width)) : Calcule 3 % de la largeur de l’écran pour définir la taille des points.
  • (command "DDPTYPE" point-size) : Exécute la commande DDPTYPE avec la nouvelle taille de point.
  • (princ (strcat "\nTaille des points mise à jour à : " (rtos point-size 2 2))) : Affiche un message confirmant que la taille des points a été mise à jour.

Utilisation

  1. Copiez le code ci-dessus dans un fichier texte et enregistrez-le avec l’extension .lsp, par exemple ResizePoints.lsp.
  2. Dans AutoCAD®, utilisez la commande APPLOAD pour charger le fichier LISP.
  3. Tapez ResizePoints dans la ligne de commande pour exécuter le script et ajuster la taille des points.

Ce script vous permettra de modifier facilement la taille des points dans votre dessin AutoCAD® selon vos besoins.

J’adore apprendre en lisant les explications :star_struck:

1 « J'aime »

Et n’oubliez pas de voter !

Bonjour,
Je comprends que le sujet est de montrer que l’IA s’immisce tranquillement dans nos vies. Il est cependant important de souligner les limites et dérapages possibles. Ce n’est pas la panacée, même si cela pourra servir de dépanneur.

Si l’IA avait été plus renseignée (car elle apprend tous les jours), elle aurait proposé :
(setvar "pdsize" -0.3)

Voir la possibilité d’inscrire des valeurs négatives via PDSIZE ici :
https://help.autodesk.com/view/ACD/2025/ENU/?guid=GUID-826CA91D-704B-400B-B784-7FCC9619AFB9

1 « J'aime »

Bien vu @serge.camire ! :wink: