Aller au contenu

Messages recommandés

Posté(e)

Bonjour à tous,

Suite à une recherche, il ne me semble pas avoir trouvé de réponse à ma question

j'ai une collègue qui a copié une présentation une bonne cinquantaine de fois pour un projet de grande échelle.

Malheureusement, la première présentation avait des caractéristiques de remplacement de calque dans les fenêtres. Elles se retrouve donc à annuler le remplacement dans toutes les fenêtres de toutes les présentations une par une...

J'ai donc eu l'idée de partir du lisp "VERR" développé à l'époque par Patrick_35 pour verrouiller toutes les fenêtres d'un dessin, mais de changer l'effet pour annuler les remplacement de fenêtres dans toutes les présentations du dessin. Aujourd'hui, il n'est uniquement possible de le faire dans toutes les fenêtres d'une présentation.

Mais peut-être que ce n'est pas possible, car je n'ai pas trouvé l'équivalent de displaylocked pour les caractéristiques forcées...

Une bonne âme aurait-elle un petit moment pour adapter ça ?

Merci à tous

;;;=================================================================
;;;
;;; VERR.LSP V1.01
;;;
;;; Verrouiller toutes les fenêtres des présentations
;;;
;;; Copyright (C) Patrick_35
;;;
;;;=================================================================

(defun c:verr(/ fen n sel tot)
  (vl-load-com)
  (vla-startundomark (vla-get-activedocument (vlax-get-acad-object)))
  (if (setq sel (ssget "x" (list (cons 0 "VIEWPORT"))))
    (progn
      (setq n 0 tot 0)
      (while (ssname sel n)
        (if (and (= (logand (cdr (assoc 90 (entget (ssname sel n)))) 16384) 0) (/= (cdr (assoc 69 (entget (ssname sel n)))) 1))
          (progn
            (setq fen (vlax-ename->vla-object (ssname sel n)))
            (vlax-put-property fen "displaylocked" :vlax-true)
            (setq tot (1+ tot))
          )
        )
        (setq n (1+ n))
      )
      (princ (strcat "\n"  (itoa tot) " fenêtre(s) de verrouillée(s)"))
    )
    (princ "\nPas de fenêtres")
  )
  (vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
  (princ)
)

(princ "\nVERR.LSP chargé. Tapez VERR pour l'exécuter")
(princ)

 

Posté(e)

Bonjour @grand_sapin

En natif, pour faire toutes les fenêtres d'un coup, il faut aller dans le groupe Remplacement de fenêtre.
C'est automatiquement créé lorsqu'on opère une modification de couleur de claque DANS la fenêtre.
Sélectionner TOUT, puis suivre "supprimer les remplacements..."

Je ne sais pas si c'est possible dans TOUTES les présentations, mais ça va assez vite.

Amicalement

 

Posté(e)

Coucou,

Normalement on peut faire : Espace présentation > Gestionnaire des propriétés des calques > Clic droit sur un calque > Supprimer les remplacements de fenêtre pour > Tous les calques > Dans toutes les fenêtres (voir ci-dessous)image.thumb.png.ce6111d2e6371492ae39050d32561d72.png

Bien faire attention d'être dans une présentation et non l'espace objet pour avoir accès à cette propriété ! Quand je parle d'espace Objet, je parle évidemment de l'onglet "Objet", à partir du moment où tu es dans une présentation (espace papier ou espace objet flottant au sein d'une fenêtre) c'est bon 🙂 (ou pour les développeurs : TILEMODE = 0)

PS : Finalement ce n'est valable que pour la présentation courante, my bad!

Bisous,
Luna

Posté(e)

Donc pour modifier l'ensemble des présentations, je dirais quelque chose comme cela ?

(defun c:RESETPSPACELAYERS (/ *error* layout cmdecho nomutt)
  (defun *error* (msg)
    (setvar "CMDECHO" cmdecho)
    (setvar "NOMUTT" nomutt)
    (princ msg)
  )
  (setq
    layout (getvar "CTAB")
    cmdecho (getvar "CMDECHO")
    nomutt (getvar "NOMUTT")
  )
  (setvar "CMDECHO" 0)
  (setvar "NOMUTT" 1)
  (mapcar '(lambda (l) (setvar "CTAB" l) (command "_-VPORTS" "_Layer" "_Yes" "_All" "")) (layoutlist))
  (setvar "CTAB" layout)
  (setvar "CMDECHO" cmdecho)
  (setvar "NOMUTT" nomutt)
  (princ)
)

C'est clairement pas parfait et cela ne fonctionne pas avec les fenêtres de l'espace papier mais bon...

Bisous,
Luna

Posté(e)

@Luna

il y a 38 minutes, Luna a dit :

PS : Finalement ce n'est valable que pour la présentation courante, my bad!

C'est bizarre que ça ne le fasse que sur la présentation courante, car ta manipulation le fait sur toutes les fenêtres de toutes les présentations sur ma version Map 2023.

Par contre j'ai le dialogue des calques en mode case de dialogue avec le bouton OK et non pas en mode palette (LAYERDLGMODE à 0)

 

Olivier

 

  • Upvote 1
Posté(e)

Coucou,
Pour être honnête je pensais pendant très longtemps que cela faisait effet sur l'ensemble des présentations (du moins c'est comme chat que je comprends la traduction) mais en faisant 2-3 tests ce matin justement j'ai remarqué que seul ma présentation courante était modifiée... c'est dommage

Bisous,
Luna

Posté(e)

hello  GRAND_SAPIN

qu'est ce qui a été forcé pour les calques dans les fenetres de présentations ?

la couleur du ( des ) calques et/ou le fait d'etre gelé ?

Phil

FREELANCE

Autodesk Architecture 2025 sous windows 11 64

REVIT

24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal

Posté(e)

Salut

 

Merci à tous déjà pour vous pencher sur la question

Ce sont des modification de couleurs ET de type de ligne qui ont été effectuées

Et je confirme que cette fonction induit en erreur car ce n'est que sur la présentation active..

Rémy

Posté(e)
il y a 10 minutes, Eric a dit :

la commande CALQCLASSIQ

Non mais ...

Elle existe encore cette fonction?
Je ne comprend pas que Autodesk ne l'ai pas substituée au gestionnaire actuel.
Et surtout, je ne comprend pas que l'ancien est des fonctions plus poussées que le nouveau ...

Lispeur éternel débutant!
Autocad Map3D 2023
Covadis-Autopist 18.2

Posté(e)

hello

un BUG de plus  alors, car c'est quand meme bien proposé dans les deux cas ( palette et classique ) de supprimer les modifications dans "la fenetre active" et dans "toutes les fenetres"

 

APRES TEST : petite subtilité 

avec la palette  suppression des modifications dans "toutes les fenetres"  =  toutes les fenetres DE LA présentation actuelle du fichier

avec la CLASSIQUE  suppression des modifications dans "toutes les fenetres"  =  toutes les fenetres DE TOUTES LES présentations du fichier

 

Phil

 

FREELANCE

Autodesk Architecture 2025 sous windows 11 64

REVIT

24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal

Posté(e)

En effet c'est bon à savoir ! Encore merci @Olivier Eckmann et @Eric pour ce partage 🙂

il y a 3 minutes, PHILPHIL a dit :

un BUG de plus  alors, car c'est quand meme bien proposé dans les deux cas ( palette et classique ) de supprimer les modifications dans "la fenetre active" et dans "toutes les fenetres"

C'est Rebcao qui sera content ^^
Mais vui, plutôt étrange cette différence entre les deux. Sûrement un oublie de fonctionnalité lors de la création de la palette.
Je ne connaissais même pas la commande CALQCLASSIQ ou même LAYERDLGMODE 😢

Bisous,
Luna

Posté(e)

Un bug, peut-être ou peut-être pas.

Dans le cas ici, on voulait mettre à jour toutes les fenêtres de toutes les présentations, mais si ça n'avait été que sur une présentation on aurait pas pu utiliser la commande CALQCLASSIQ. Peut-être que les deux existent parce qu'il manque l'option "dans la présentation actuelle" ou "dans toutes les présentations" dans chacun des menus des deux fonctionnalités (palette et boite de dialogue)

Mais ça on ne le saura probablement jamais. 😁

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • 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é