Aller au contenu

laurentpo

Membres
  • Compteur de contenus

    9
  • Inscription

  • Dernière visite

laurentpo's Achievements

Newbie

Newbie (1/14)

0

Réputation sur la communauté

  1. Génial, ça fonctionne parfaitement. Merci beaucoup pour ce coup de main efficace et rapide. Laurent
  2. Bonjour, Merci beaucoup pour la rapidité de votre réponse. J'ai mis en place la première solution proposée et cela fonctionne parfaitement. Effectivement la solution de demander à l'utilisateur de choisir l'entité serait idéale mais je ne parviens pas encore à trouver la bonne syntaxe. Laurent.
  3. Bonjour à tous, J'utilise un lisp qui me permet d'écrire, dans un fichier, les coordonnées des points de passage d'une polyligne. Actuellement ce lisp utilise le dernier élément créer. Je souhaiterais pouvoir lancer le même lisp mais cette fois sur l'entité précédemment modifiée (comme lorsque l'on utilise P). Actuellement mon code commence ainsi: (defun c:xypolyv () (setq ent (entlast)) (setq bdent (entget ent)) (setq typent (cdr (assoc 0 bdent))) (if (= typent "LWPOLYLINE") (progn Je pense qu'il faut remplacer entlast mais je ne parviens pas à trouver par quoi, d'où ma demande d'aide. Merci. Laurent
  4. Bonjour, Voici le contexte: je développe sous Topstation Autocad et ce dernier ne gère pas les blocs dynamiques. Pour pallier ce manque je pensais créer, avec Topstation, un fichier texte (contenant les coordonnées, orientations et paramètres des blocs) puis de lancer un LISP pour lire le fichier, positionner, paramétrer les blocs et vider le fichier.
  5. Bonjour, Merci beaucoup pour ces précieuses informations et pour la rapidité de votre réponse. J'ai essayé de trouver seul dans le forum mais étant complètement novice en LISP je bloque. Pourriez-vous m'indiquer comment lire le fichier (qui sera toujours le même, (ex: c:\LISP\inserer.txt), stocker les éléments dans des variables et utiliser ces dernières dans le code que vous m'avez indiqué hier. Autre question: comment gérer le fait que dans un cas 1 seul paramètre doit être modifié et que dans un autre cas 3 paramètres doivent être modifiés). Merci. Laurent.
  6. Bonjour à tous, Je rencontre un problème insoluble pour moi. Je souhaiterais insérer dans Autocad 2016 des blocs dynamiques à partir d'un fichier texte structuré ainsi: "nom du bloc"/x/y/angle de rotation/nom du paramètre 1/valeur du paramètre 1/nom du paramètre 2/valeurs du paramètre 2. Si vous avez des idées pour résoudre ou bien des pistes de réflexion je suis preneur. Merci. Laurent
  7. Cela fonctionne parfaitement. Merci beaucoup à tous les deux pour votre aide rapide et efficace.
  8. Merci beaucoup pour le coup de main. J'ai utilisé le code avec la variante (ssget "_X" '((0 . "POINT"))) Pour pouvoir tester j'ai créé un nouveau fichier puis créer 3 points avec la commande point en saisissant les coordonnées à la main puis j'ai lancer le LISP. Mais c'est le premier point créer qui est écrit dans le fichier texte et pas le dernier.
  9. Bonjour. Je souhaiterais pouvoir créer un programme en LISP qui écrirait, dans un fichier texte, les coordonnées du dernier point qui vient juste d'être créé. J'ai trouvé ce programme qui me paraît être un très bon point de départ: (defun c:PO2TXT (/ file points c i) ;POints to TeXT (setq nomfic "C:/test/CoordPoint.txt") (setq file (open nomfic "w")) (setq points (ssget) i 0) (repeat (sslength points) (if (= "POINT" (cdr (assoc 0 (entget (ssname points i))))) (setq c (cdr (assoc 10 (entget (ssname points i)))) i (1+ i) ) ) (write-line (strcat (rtos (car c)) " ; " (rtos (cadr c)) " ; " (rtos (caddr c)) ) file) ) (close file) (Princ) ) Mais je n'arrive pas à remplacer la sélection des points à l'écran (visiblement la commande ssget) par la sélection d'un seul qui est le dernier créer (peut-être avec la commande entlast). Merci beaucoup.
×
×
  • 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é