Aller au contenu

[Résolu] Copier une fenêtre sur plusieur présentation


Messages recommandés

Posté(e)

Bonjour à tous,

 

Pourriez-vous m'aider sur un petit problème que je rencontre sur les fenêtres de présentation ?

Je pense que la solution est tellement facile que je passe à côté ^^

En fait je veux juste copier une fenêtre dans une autre présentation tout en gardant les propriétés des calques.

Sur Autocad 2009 je me poser pas la question sa se fesait tous seul, mais depuis le début d'année on m'a installé la version 2012 et j'avoue que je suis en mode repérage.

 

En espérant avoir su me faire comprendre

 

Merci d'avance pour vos réponses

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Bonjour,

 

si j'ai bien compris ta question en ce qui me concerne j'enregistre l'état des calque dans le gestionnaire des états de calque puis je restaure cet état dans ma nouvelle fenêtre de ma nouvelle présentation...

 

en espérant t'avoir aidé...

 

Vincent.

Posté(e)

Merci Vincent pour ta réponse je vais utiliser ta technique en attendant de voir si j'arrive à trouver cette variable ou option qu'il faut juste activé

 

Merci encore ^^

 

Greg.

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Il existe un lisp nommé CPP qui pourrait être utile mais il faudra tester pour le savoir.

Voici donc ce lisp, commande : CPP

 

(defun c:CPP (/ acdoc layouts *error* lay clayout ss sa)

; Copie les objets sélectionnés dans toutes les présentations.

 

(vl-load-com)

 

(setq layouts (vla-get-layouts (setq

acdoc (vla-get-ActiveDocument (vlax-get-acad-object))))

)

 

(defun *error* (msg)

(and msg

(or

(member (strcase msg) '("FUNCTION CANCELLED" "QUIT / EXIT ABORT" "FONCTION ANNULEE" "QUITTER / SORTIR ABANDON"))

(princ (strcat "\nErreur : " msg))

)

)

;(if ss (vla-delete ss))

(vla-endundomark acdoc)

(princ)

)

 

(vla-startundomark acdoc)

 

(or

(and

(/= (setq clayout (getvar 'CTAB)) "Model")

(= (getvar 'CVPORT) 1)

)

(progn

(princ "\n** Commande non autorisée dans l'espace Objet**")

(quit)

)

)

 

(if (and

(or

(setq ss (cadr (ssgetfirst)))

(setq ss (ssget))

)

(setq sa (bs:ss2safearray ss))

)

(progn

(vlax-for lay layouts

(if (and (eq :vlax-false (vla-get-modeltype lay))

(/= clayout (vla-get-name lay))

)

(vla-CopyObjects acdoc sa (vla-get-block lay))

)

);vlax-for layout

(princ "\nCopie effectuée !")

)

);if ssget

 

(*error* nil)

);cpp

 

(defun bs:ss2safearray (sset / i entlst)

(setq i 0)

(repeat (sslength sset)

(setq entlst (cons (vlax-ename->vla-object (ssname sset i)) entlst))

(setq i (1+ i))

)

(vlax-safearray-fill

(vlax-make-safearray vlax-vbObject (cons 0 (1- (length entlst))))

entlst

)

)

 

(princ "\nCommande à utiliser: CPP")

(princ)

Posté(e)

Bonjour mikl63

 

Merci pour ce magnifique lisp, il fonctionne bien. Il me reste à le modifier pour qu'il me le copie que dans une présentation car en général sur mon dwg il y a une quinzaine de présentation.

 

Encore merci ^^

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Tout compte fait je reviens vers vous car le LISP et moi sa fait deux.

Pour ne pas finir inculte, est ce compliquer d'apprendre le langage LISP ?

Sa me gène de demander toutes les secondes de l'aide sans comprendre ^^

 

Et merci encore à vous tous qui prenez de votre temps pour nous aider

 

Greg.

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Salut

 

Le plus simple est de faire une recherche sur le forum. C'est un sujet qui a été largement abordé.

 

De plus, tu as des personnes ici qui maitrise ce langage et qui ne sont pas avare de conseils.

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)

hello greg

 

 

regarde ici tu as un LISp qui permet de choisir dans quelle presentation tu veux faire les copies

 

contrairement a l'autre LISP par contre il ouvre la/les presentation(s) et fait la copie

c'est un peu plus long mais ca marche

 

http://cadxp.com/index.php?/topic/25046-copie-dentites-dune-presentations-a-dautres-presentations-a-la-volee/page__p__136217__hl__dupobjpres__fromsearch__1#entry136217

 

a+

 

phil

FREELANCE

Autodesk Architecture 2025 sous windows 11 64

REVIT

24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal

Posté(e)

Bonjour,

 

Pour le copier avec point de base et coller dans d'autre presentation j'avais déjà tester.

Merci Phil je vais dessuite tester ce LISP

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Re bonjour tous le monde ^^

 

Je viens de test le Lisp de Phil, pour ce qui est de copier dans les présentations que je souhaite c'est topissime par contre sa ne me garde pas l'état des calques gelés.

 

Et pour la version de Mikl sa me garde la fenêtre ainsi que les propiétés des calques, mais sa me la copie sur toutes les présentations présente dans le fichier.

 

Me reste plus qu'à mixer les deux et ce sera bon.

 

Je sais que je le dit souvent, mais sa coute rien : MERCI !!!!

(je sais 4 points d'exclamations trahissent souvent une instabilité mentale mais j'assume ^^)

 

Greg.

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Salut,

 

Et un simple clic droit sur ton onglet de présentation que tu veux copier, sélectionner "déplacer ou copier", cocher "Créer une copie", choisir l'emplacement dans la liste.

Posté(e)

Bonjour Calecx,

 

J'ai un fichier source avec toutes les présentations paramétrer pour l'impression ainsi que le cartouche qui vas bien sur chacune de celles-ci. C'est pour cela que j'essaye de trouver cette solution.

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Bonjour à toutes et à tous

Je vois deux possibilités pour éviter un lisp.....

1)tu peux utiliser la commande : _layout puis G et tu cible ton fichier source pour récupérer les presentations.

ou

2) Comme dit Patrick_35 c'est un très vieux sujet...Ancienne méthode tu sélectionnes la fenêtre, tu fais bloc tu donne le nom du bloc et tu coches la case .Conserver pas convertir en bloc et pointes le point d'insertion puis ok

tu ouvres une présentation et tu fais insérer tu cherches le nom du bloc que tu viens de créer tu l'insères en le décomposant et voilà le tour est joué..

 

@+

 

Michel a

Posté(e)

je pense que la solution était dans le 1er post...

 

un petit coup de LMAN quand tu es dans le fenêtre source, tu sauvegarde l’état des calques

 

tu fait ton copier coller dans le 2eme présentation tu rentre dans la 2eme fenêtre, re LMAN et tu restaures l'état des calque que tu viens de créer...

Posté(e)

Pour le moment c'est la manip que j'effectue mais perso j'aime bien automatiser les opérations récurantes.

je t'explique même pas l'usine a gaz que je suis entrain de monter en essayant de combinet la solution de Mikl et Phil ^^ j'espere juste que sa marchera. Au pire sa m'auras fait une leçon LISP

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Bonjour,

 

Si c'est dans un fichier source que se trouve toutes tes présentations, dans ce cas, clic droit sur un onglet de présentation, puis "A partir du gabarit...", tu sélectionne ton dessin source puis le nom de la présentation.

Posté(e)

Bonjour,

 

En fait mon problème est pas de dupliquer mes presentations ou les cartouches quelles contiennent mais les fenêtres ainsi que l'état des calques.

Je suis toujours entrain d'essayer de mixer les deux lisp que l'on ma fourni plus haut, car ils contiennent une partie de la solution. J'avoue je m'arrache un peu les cheveux mais je persevere ^^

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Re,

 

Je persiste et signe, ou sinon je n'ai pas compris, mais le fait de créer une nouvelle présentation "A partir du gabarit..." conserve l'état des calques et les fenêtres.

En ce qui concerne l'état des calques, il faut que les calques soient déjà existant dans le dessin courant (sinon passer par lman puis export/import).

Ensuite créer la nouvelle présentation "A partir du gabarit...", l'état des calques de la fenêtre de présentation est importé.

Posté(e)

Re,

 

j'avoue que c'est une solution, faudrais que je modifie le bloc cartouche en collant quelques attributs et sa pourrais le faire.

 

Merci de votre patience et de vos réponse, car quand j'ai une idée en tête j'ai du mal à voir les autres solutions.

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Bonjour,

 

Merci Bryce d'avoir répondu, j'aurais juste une question car en utilisant le lisp je ne vois pas de boite de dialogue me permettant de choisir sur quelle présentation je désire copier

Pour avoir une boite de dialogue je dois créer un fichier ".dcl" non ?

 

Merci

 

Greg.

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Bonjour,

 

J'ai utilisé la routine GetLayouts de (gile), qui créé toute seule un fichier dcl temporaire.

Je ne vois pas trop pourquoi ça ne fonctionnerait pas chez toi...

Peut-être qu'AutoCAD n'arrive pas à créer ce fichier, pour une raison qui m'échappe... :unsure:

 

Essaie de taper ceci dans la ligne de commande d'AutoCAD :

 

(setq f (open (vl-filename-mktemp "toto.dcl") "w")

 

puis

 

(close f)

 

Et dis-moi ce qu'il te répond dans les 2 cas.

Posté(e)

Bonjour Bryce,

 

Pour la première ainsi que la deuxieme ligne et je n'ai aucun message d'erreur

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Posté(e)

Re bonjour,

 

Bryce mille merci en fait sa marche bien c'est moi qui est fait mon boulet ^^ je fesait que charger l'ancien CPP <_<

Merci aussi à tous ceux qui ont participer.

 

Greg.

"Visez toujours la lune. Même si vous la manquez, vous atterrirez parmi les étoiles."

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • 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é