Aller au contenu

Classement

Contenu populaire

Affichage du contenu avec la meilleure réputation le 14/10/2014 dans toutes les zones

  1. Bonjour, Je créé des PT à partir d'une polyligne TN. Sur ces profils il y à des points au dessus du TN dont je doit annoter l'altitude. Jusqu’à maintenant je mesurais la distance de chaque point que j'additionnais à l'altitude du plan de comparaison. Cette démarche étant très longue, je souhaiterais savoir si vous connaissiez une méthode ou une macro qui pourrait m'aider à aller plus vite? Merci.
    1 point
  2. salut, dans ce code, il n'y a aucune fonction visual-lisp, celles qui commencent par vl-, vlr- , vla- ou vlax-. c'est tout. je pense qu'à l'époque, je bossais sur une v14, qui n'avait pas le visual-lisp en standard (il fallait l'installer à part, et perdu dans ma savoie, je n'étais même pas au courant ...) Gérald
    1 point
  3. salut, tu as déterré un de mes très vieux lisp, (et pas un visual lisp) outre le fait qu'à l'époque il n'y avais pas la la notion de gripped dans sssetfirst, c'est pour ça que tu ne vois pas le résultat à l'écran, cette version n'étais pas aboutie, car elle ne marchera pas avec les blocs et autres entités complexes. Essaye plutôt la version actuelle : Gérald ;;************************************************************************* ;;§/SELECTIONS/ crée un jeu de selection des entités suivant un element/none (defun c:selafter ( / sel dep ) (setq dep (car (entsel "\nEntité limite"))) (setq sel (pw_selafter dep)) (sssetfirst sel sel ) ) ;;************************************************************************* ;;§/SELECTIONS/ selectionne les entités anterieures à l'entité dep/none ; (defun c:selbefore ( / dep sel ent ) (setq dep (car (entsel "\nEntité limite"))) (setq sel (pw_selbefore dep)) (sssetfirst sel sel ) ) ;;************************************************************************* ;;§/SELECTIONS/montre quelle est la dernière entité créé par les grips /none ; (defun c:showlast ( / sel) (setq sel (ssadd (entlast))) (sssetfirst sel sel) ) ;;************************************************************************* ;;§/SELECTIONS/ selectionne les entités anterieur à l'entité dep/dep ;; ne marche pas ! (defun pw_selbefore ( dep / ent sel etyp ) (setq ent (entnext)) (setq sel (ssadd ent)) (while (and (/= nil (setq ent (entnext ent)))(not (eq ent dep))) (setq etyp (cdr (assoc 0 (entget ent)))) (if (not (member etyp '("ATTRIB" "VERTEX" "SEQEND"))) (setq sel (ssadd ent sel)) ) ) sel ) ;;************************************************************************* ;;§/SELECTIONS/ crée un jeu de selection des entités suivant un element/ent ;;fonction ralentie par la 2006, qui n'axepte pas les sequend ;;donc necessité de faire un entget pour chaque entité ;; (defun pw_selafter (ent / sel etyp) ;;si le dessin etait vierge, ent = nil (if ent (setq sel (ssadd)) (if (setq ent (entnext)) (progn (setq sel (ssadd)) (setq sel (ssadd ent sel)) ) ) ) (if ent (progn (while (setq ent (entnext ent)) (setq etyp (cdr (assoc 0 (entget ent)))) (if (not (member etyp '("ATTRIB" "VERTEX" "SEQEND"))) (setq sel (ssadd ent sel)) ) ) (if (> (sslength sel) 0) sel nil ) ) nil ) )
    1 point
×
×
  • 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é