Aller au contenu

p.martin

Membres
  • Compteur de contenus

    7
  • Inscription

  • Dernière visite

Tout ce qui a été posté par p.martin

  1. Merci ça marche bien dans mon cas !
  2. Bonjour, je voudrais savoir comment je peut ramener tout mes différents objets ( lignes, textes, blocs, polylignes, ect...) sur une altimétrie identique par exemple z=0. Merci
  3. Merci à tous, ça marche bien !!!
  4. Bonjour, je travail avec des xrefs que je reçois d'archi, je m'en sert comme fond de plan que je passe en fin puis en couleur gris pour bien faire ressortir mon plan d'installation CVC ou autres. Aujourd'hui je passe trop de temps à remettre tous les différents blocs dont la couleur à été forcé avant la création du bloc. Y à t'il un moyen rapide de changer rapidement tous les blocs en couleur forcés en couleur du calque, ou une routine ? Merci d'avance
  5. Salut voici une petite routine qui répond à ton attente ;;; C:LONG_LINE Calcule la longueur des lignes et lwpolylignes du calque spécifié (defun c:long_line (/ val_dxf longobjt clq js cnt tot nb_l nb_pl lo_l lo_pl) ;; Retourne la valeur du code dxf (defun val_dxf (code ent) (cdr (assoc code (entget ent))) ) ;; LONGOBJT Retourne le périmètre d'un objet (ename) (defun LONGOBJT (ent) (vl-load-com) (vla-get-length (vlax-ename->vla-object ent)) ) (if (setq clq (entsel "\nSélectionnez un objet sur le calque ou < Nom >: " ) ) (setq clq (val_dxf 8 (car clq))) (setq clq (getstring "\nNom du calque: ")) ) (if (tblsearch "LAYER" clq) (progn (setq js (ssget "_X" (list '(0 . "LINE,LWPOLYLINE") (cons 8 clq))) nb_l 0 nb_pl 0 lo_l 0.0 lo_pl 0.0 ) (repeat (sslength js) (setq ent (ssname js (+ nb_l nb_pl))) (cond ((= (val_dxf 0 ent) "LINE") (setq nb_l (1+ nb_l) lo_l (+ lo_l (LONGOBJT ent)) ) ) ((= (val_dxf 0 ent) "LWPOLYLINE") (setq nb_pl (1+ nb_pl) lo_pl (+ lo_pl (LONGOBJT ent)) ) ) ) ) (setq descr (strcat "\nNom de calque..........\t" clq "\nNombre de lignes.......\t" (itoa nb_l) "\nLongueur de ligne......\t" (rtos lo_l) "\nNombre de polylignes...\t" (itoa nb_pl) "\nLongueur de polyligne..\t" (rtos lo_pl) "\nLongueur totale........\t" (rtos (+ lo_l lo_pl)) "\n" ) ) (textscr) (princ descr) (initget "Oui Non") (if (= (getkword "\nEnregistrer dans un fichier ? [Oui/Non] < Non >: " ) "Oui" ) (progn (setq file (open (getfiled "Créez ou sélectionnez un fichier" "" "xls" 33) "a" ) ) (princ descr file) (close file) ) ) (graphscr) ) (princ "\nNom de calque invalide.") ) (princ) )
  6. Merci Gile !!!
  7. Bonjour, je réalise des métrés a partir d'Autocad, mais seulement je fait ça avec un système D. Pour quantifier les blocs j'utilise la commande bcount (il faut avoir le menu express), ça marche super bien à condition que le dessin soit réaliser corectement avec des blocs. Pour quantifier des metrés de tuyau ou gaines ect... enfin soit des lignes ou des polylignes c'est moins simple et prend beaucoup de temps. Je voudrais savoir si par hasard une personne aurais une astuce pour comptabiliser ses lignes ou polylignes par type de calque. Je sais qu'il est possible de faire une routine lisp mais seulement je suis pas assez brillant dans ce domaine.
×
×
  • 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é