Aller au contenu

Multi-REGEN dans Onglet Objet et dans TOUTES les Presentations


Messages recommandés

Posté(e)

Hello

 

SVP je cherche une routine qui realise un "Multi-REGEN" :

- Retour dans l'onglet Objet

- Puis REGENALL dans l'Onglet Objet

- Puis REGEN dans l'Espace Papier de chaque Presentation puis dans chaque Fenetre FMULT de la Presentation

- Idem dans la Presentation suivante ... Donc on passe dans TOUTES les Presentations

- A la fin on revient dans l'Onglet Objet !

 

J'imagine que ce n'est pas tres complique mais je n'ai pas trouve !

Je dois etre mauvais sur google ce soir !?

 

Merci d'avance, Bye, lecrabe

Autodesk Expert Elite Team

Posté(e)

Bonjour,

 

quel est l'intérêt ?

 

amicalement

Vincent

C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme)

C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)

Posté(e)

bonjour , c'est à modifier suivant ta demande mais moi j'utilise se petit bout de programme

(defun c:feet ()

(princ "\n demarrage purge audit purge et zoom etendu sur fenetre lsp feet")
(setq real2(strcat "\n taille des ligne  [" (rtos (getvar "LTSCALE")2 2) "]  :"))
(setq real1(getreal real2))
(if (/= nil real1) (setvar "LTSCALE" real1))(command "-scalelistedit" "r" "o" "q")


(command "_-vports" "_si")
(command "zoom" "et" "zoom" ".8x")
(command "-purger" "to" "*" "n")
(command "_qsave")
(command "_audit" "o")
(command "_qsave")
(command "-purger" "to" "*" "n")
(command "_qsave" "_qsave" )
(foreach name (vl-remove "Model" (layoutlist))
;(princ name)
(setvar "ctab" name)
 (setvar "PSLTSCALE" 0)
 (command "zoom" "et")
)
(command "_model")

(princ )
)

Posté(e)

Bonjour,

 

je ne comprends pas trop l'intérêt de faire un REGEN dans chaque présentation, car la commande REGENALL est justement faite pour faire un REGEN sur la présentation et forcer un REGEN dans chaque fenêtre.

Inversement dans l'espace Objet, la commande REGEN et REGENALL sont parfaitement identiques puisqu’il n'y a qu'un seul espace à regénérer.

 

Ceci dit, avec la variable LAYOUTREGENCTL à 0, en passant sur chaque présentation, ça devrait suffire à forcer un regen complet.

 

Olivier

Posté(e)

Hello Mr sbosarl

 

1) MERCI pour ta routine qui m'a bien aide !

 

2) J'ai donc un peu adapte ta routine a mes besoins ... Voir ci-apres ...

 

(vl-load-com)

(defun c:REGEN_SUPER ()

(command "_MODEL")

(foreach name (vl-remove "Model" (layoutlist))

(princ name)

(setvar "ctab" name)

(command "_MSPACE")

(command "_VIEWRES" "_Y" 20000)

(command "_PSPACE")

(command "_VIEWRES" "_Y" 20000)

(command "_REGENALL")

)

(command "_MODEL")

(command "_VIEWRES" "_Y" 20000)

(command "_REGENALL")

(princ )

)

 

3) A priori cela marche !

 

4) MAIS je ne sais pas parcourir TOUTES les FMULTs de chaque Presentation !

( Mes connaissances en Lisp/VLisp sont tres faibles )

SVP si qq'un pouvait ameliorer ce code pour y ajouter la boucle de parcours des FMULTs de chaque Presentation

... plonger dedans ... pour y faire diverses choses : pousser le RESVUE a 20000 par exemple ...

 

Merci d'avance, Bye, lecrabe

Autodesk Expert Elite Team

Posté(e)

bonjour,

 

(vl-load-com)
(defun c:testreg (  )
(or acadObj (setq acadObj (vlax-get-acad-object)))
(or *doc*(setq *doc* (vla-get-ActiveDocument acadObj)))
(vla-StartUndoMark *doc*)
(vlax-for bl1 (vla-get-Blocks *doc*)
(vlax-for tsbo bl1
(setq namestsbo (vla-get-ObjectName tsbo))

(if	(= namestsbo "AcDbViewport" )
(progn
;(vla-put-Color tsbo  5);;; je force en couleur test
(vla-put-ArcSmoothness tsbo 20000));;; ta commande
);; fin if 
)

) 
(vla-EndUndoMark *doc*)

(vla-regen (vla-get-activedocument (vlax-get-acad-object)) acActiveViewport)
 (princ)
)

  • 2 semaines après...
Posté(e)

Hello sbosarl

 

1) Merci pour ton petit programme !

 

2) J'ai ajoute 3 lignes "betes" juste avant le (princ)

 

(command "_MODEL")

(command "_VIEWRES" "_Y" 20000)

(command "_REGENALL")

 

Car j'avais besoin de traiter AUSSI l'Espace Objet !

Il est sur que ce code est "dirty" (comme on dit en US/English) mais il fonctionne !!

 

Merci, Bon WE, Bye, lecrabe

Autodesk Expert Elite Team

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é