Aller au contenu

GESTION CALQUES FONCTION VISIBILITE


Messages recommandés

Posté(e)

Bonjour à toutes et tous,

 

 

J'ai une série de Blocs Dynamiques concernant des armatures pour Béton armé, un exemple =>

 

http://free0.hiboox.com/images/5009/fc02e880a76cc7f3898acbfcceac295e.jpg

 

Je voudrais pouvoir associer un calque par état de visibilité.

 

Exemple visibilité HA 6 => Calque HA6,

 

Etc,...

 

Je définirai alors sur un gabarit les calques de ces différentes sections d'aciers.

 

A ce jour pas tous les Blocs dyn sont bien définis en terme de gestion de calques,...

 

Certains, entièrement dans le calque "0", impeccable !

 

Mais d'autres font appels à un, deux, voir 6 calques !

 

Cela risque de poser pb,...

 

Est-ce qu'une routine est possible à définir pour gérer ma demande ?

 

Exemple d'armatures avec "mauvaise" gestion des calques

 

Bloc inséré dans le calque "0" mais avec un autre calque de définition dans le bloc,...Et encore, pas dans tous les états de visibilité pareil,...

 

Merci d'avance,

 

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Bonsoir Lili2006,

 

Pour les calques, je ne sait pas trop mais je pense que si tu mais les morceau commun sur le calque 0 et chaque partie "visible" sur le calque correspondant sa doit fonctionner. As tu essayer par l'éditeur de blocs?

Mais dans tous les cas le bloc dans son ensemble va faire appel à plusieurs calques qui seront surement TOUS insérés.

Sinon pour tous remettre sur le calque 0, il y a un lisp sur ce site de patrick35 ou (gile), je ne sais plus qui permet de tous remettre sur le calque 0.

 

Esperant t'avoir répondu, je te souhaite une bonne fin de weekend.

 

@+ :D

L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai.
"Il vaut mieux mobiliser son intelligence sur des conneries, que sa connerie sur des choses intelligentes" - Devise Shadok.
"ceux qui ne se souviennent pas du passé sont condamnés à le revivre" George Santayana

Ma bibliothèque de blocs électrique :symbole elec.dwg

Posté(e)

Bonjour à toutes et tous,

 

Merci de ta réponse Oli553

 

As tu essayer par l'éditeur de blocs?

 

Oui, bien sûr, ça marche !

 

Mais j'ai une centaine de blocs à traiter de la sorte,...

 

va faire appel à plusieurs calques qui seront surement TOUS insérés.

 

Ce n'est pas un soucis puisqu'ils existerons sur le gabarit. Ils arriverons dans le dessin depuis une barre d'outils, ce que je souhaite, c'est éviter la gestion des calques qui est souvent mal gérés ou pas gérés du tout par les utilisateurs,....

 

De plus, l'idée ensuite est de n'afficher ,par exemple que le calque HA6, afin de pouvoir faire un métré "assez simplement" par la suite,...

 

Sinon pour tous remettre sur le calque 0, il y a un lisp sur ce site de patrick35 ou (gile),

 

Pour ce faire, j'ai utilisé "Edit_Bloc," de (Gile), mais j'ai toujours des calques non purgeable,..??!!!

(Dans l'exemple donné ci-dessus "BAC FERRAILLAGE ACIERS")

 

Quand je fais une sélection rapide, j'ai 94 entités sélectionnées dans ce calque, sauf que je ne les voient pas !!!!

 

Pourtant, en affichant tous les états de visibilité dans l'éditeur, en faisant une capture, toutes les entités semblent être dans le calque "0" ???!!!

 

http://free0.hiboox.com/images/5009/acf781ba62f89c5f15362d0b1039d2ba.jpg

 

 

 

J'ai aussi testé "RB" de Patrick_35 sans plus de succès,.. (D'ou ce nouveau post en partie,...)

 

Superpurge ne bronche pas plus ! C'est étonnant tout de même,...

 

 

============================================================

~~~~~~~~~~~~~~~~~~ Dimanche, 13 Déc 2009 @ 12:06pm

SuperPurge Log Drawing: HA crochet double 90° 180°.dwg

~~~~~~~~~~~~~~~~~~ User: Lili2006

------------------------------------------------------------

Blocks:

Layers:

Linetypes:

Text Styles:

Viewports:

App IDs:

Named Views:

UCS:

Dimension Styles:

Groups:

Multiline Styles:

Shape Files:

Layouts:

Plot Styles:

Dictionary Entries:

Drawing Entities:

 

SuperPurge: Purged 0 objects.

 

J'avais donné le principe, et des personnes du bureau d'études pour lequel je "développe" m'avaient filés la main. Le pb, c'est que TOUS les blocs sont à revoir car aucun n'est rigoureusement fait et adieu les métrés justes, si l'on souhaite aller plus loin,...

 

Quand ce pb sera réglé, il faudra ensuite associer chaque état de visibilité à un calque différent.

 

Bref, "à la mano", j'ai du taff !

 

Et je ne suis pas encore sûr de pouvoir régler cette histoire de calques récalcitrants,...

 

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Salut lili

 

Je suis en train de réfléchir à ton problème.

Mais une chose me chiffonne.

Si tu as un bloc dont l'état de visibilité est par exemple HA10, donc les calques HA6, HA8, HA12, HA14, HA16 et HA20 sont gelés.

Maintenant, si tu as un autre bloc dont l'état de visibilité est HA14, on fait comment par rapport au premier bloc ?

cela veut donc dire que tu as :

- Soit un calque par bloc * état de visibilité

- Soit tous les blocs ont le même état de visibilité

 

@+

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)

Bonjour à toutes et tous,

 

Salut Patrick,

 

Tous les blocs "armatures" concernés auront les mêmes possibilités de visibilité (HA 6-8-10-12-14-16-20), donc je ne sais pas du tout encore comment ça peut se gérer !!

 

L'idée étant d'avoir un calque par état de visibilité (Exemple HA 14) commun à tous les blocs "armatures"

 

Maintenant à la question =>

 

- Soit un calque par bloc * état de visibilité

- Soit tous les blocs ont le même état de visibilité

 

L'idée de 1 calque par bloc est séduisante aussi,...

 

Il y aura forcément le bloc 1 avec un état de visibilité 1, le bloc 2 avec le même état ( état1) ou un état différent,... Cela dépendra des besoins du plan,...

 

Donc, je compte également sur vos conseils avisés pour me donner des pistes de réflexion,...

 

Exemple d'un cahier d'armatures :

 

 

Merci d'avance,

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Bonsoir

 

A partir de ton bloc initial je te confirme que edit-bloc redéfini bien ton bloc et que supcalque

supprime le calque restant et ses objets invisibles...

 

ensuite ton problème est interressant, si j'ai bien tout compris, tu voudrais une routine qui détecte l'état de visibilité de tes blocs dynamiques et placent ensuite chaque bloc sur un calque portant le nom de l'état de visibilité?

 

Ca sent le réacteur (si seulement je savais ce que c'est...)

 

Dernière chose, si le but est uniquement de faire des métrés, j'attire ton attention sur le fait que l'extraction d'attribut fonctionne sur les états de visibilité, donc sur une sélection de blocs,

tu peux comptabiliser le nombre de chaque visibilité...

 

a+

 

 

 

 

Posté(e)

Re,

 

et que supcalque

supprime le calque restant et ses objets invisibles...

 

Oui ! Et c'est bien ça le pb !!

 

Qu'est-ce qu'il y a dans ce calque ???!!

 

Et ce bloc n'est pas l'exemple le plus caractéristique,...

 

ensuite ton problème est interressant, si j'ai bien tout compris, tu voudrais une routine qui détecte l'état de visibilité de tes blocs dynamiques et placent ensuite chaque bloc sur un calque portant le nom de l'état de visibilité?

 

OUI !

 

Ca sent le réacteur

 

Alors là, aucune idée,...

 

Dernière chose, si le but est uniquement de faire des métrés

 

NON ! Comme écrit plus haut, ceux-ci sont destinés à être insérés depuis une barre d'outils et, tout comme avec les palettes, je veux que le calque arrive avec le bloc car gros problème de gestion de calques pour les utilisateurs et après, c'est un chantier sans nom, si tu vois ce que je veux dire,... ;)

 

Et au passage, faire du métré sans passer par l'extraction d'attributs (ou avec, je ne sais pas encore ??!!!),...

 

J'aimerai plutôt pouvoir récupérer la longueur développée à l'axe de chaque acier, mais, c'est un autre chantier (peut-être en champs ?, je ne sais pas encore,...)

 

Merci pour tes idées pascal19,

 

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Bonjour à tous

 

Ce qui est sur à propos de ton bloc c'est que la suppression des 94 objets n'altère pas le fonctionnement de celui-ci.

 

en faisant "liste" sur un de ces objets on obtient:

 

LWPOLYLINE Calque: "BAC FERRAILLAGE ACIERS"

Espace: Espace objet

[surligneur] Invisible [/surligneur]

Maintien = c5

Ouverte

Epaisseur constante 0.00

zone 0.00

longueur 3.00

 

au niveau du point X= 3.00 Y= 43.00 Z= 0.00

au niveau du point X= 4.89 Y= 45.33 Z= 0.00

 

la question est comment rendre ces objets visibles?

 

A+

 

 

Posté(e)

Bonjour à toutes et tous,

 

Ce qui est sur à propos de ton bloc c'est que la suppression des 94 objets n'altère pas le fonctionnement de celui-ci.

 

Je fais le même constat que toi, mais ça m'inquiète tout de même ces entités invisibles,...

 

Bref, j'ai pas le choix, je ne vais pas tous les refaire,...

 

Maintien = c5

 

Heu, c'est quoi ce truc ?

 

la question est comment rendre ces objets visibles?

 

En voilà une question quelle est bonne,... :P

 

Merci encore,

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Salut,

 

Je ne comprends pas du tout la demande, mais concernant le bloc en téléchargement :

 

Si tu veux voir les entités invisibles, tu as l'outil qu'il faut (IsolateObjects.dll) : lance UNISOLENT au clavier ou menu contextuel > Visibilité des objets > Afficher tout.

Tu pourras ensuite les supprimer.

 

Maintien = C5

 

Le maintien (handle en anglais), est un identifiant unique et pérenne pour tout les objets AutoCAD, exprimé sous forme d'un nombre Hexadécimal.

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Re,

 

Salut Gilles,

 

Excellent !

 

A aucun moment je n'avais pensé à UNISOLENT !!!

 

Trop fort !

 

Je me demande bien ce que ces entités font là, mais bon, je comprend mieux pourquoi ce calque était récalcitrant !

 

D'ailleurs, pourquoi je ne peux les visualiser par défaut avec AutoCAD ?

 

Ce sont de "vrais " entités, non ?

 

En tous cas, merci pour l'astuce .

 

Je ne comprends pas du tout la demande

 

En fait, ces blocs dyn vont arriver depuis une barre d'outils.

Afin que l'utilisateur n'ai plus le soucis de la gestion des calques, je souhaiterai faire un calque par état de visibilité (j'ai commencé pour voir ce que cela donne,...).

 

Par exemple, l'acier proposé, si je l'insère en état de visibilité HA14, il ira dans le calque du même nom.

Si je le réinsère en état de visibilité HA 12 , il se rangera dans le calque HA 12,...

 

Mais peut-être que ce n'est pas la bonne solution, d'où les interrogations également de Patrick_35,...

 

Toutes les idées sont les bienvenues,... :D

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Re,

 

Un exemple avec les états de visibilité gérés dans les différents calques.

 

http://free0.hiboox.com/images/5109/90fc66a21aee7068a0f8ddd7d5ad2e13.jpg

 

 

 

Mais, forcément, le bloc reste dans le calque de définition, à savoir "0" !

 

Donc, ce n'est peut-être pas possible de cette manière ???

 

Vos avis m'intéresse,

 

Merci d'avance,

 

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

ensuite ton problème est interressant, si j'ai bien tout compris, tu voudrais une routine qui détecte l'état de visibilité de tes blocs dynamiques et placent ensuite chaque bloc sur un calque portant le nom de l'état de visibilité?

Donc le bloc se trouve sur le calque de son état de visibilité ?

Si c'est cela, c'est beaucoup plus simple que ce que j'imaginais.

Il va falloir faire joujou avec les réacteurs ou plus simple, en lancant un lisp qui "recadre" les blocs (le calque suivant l'état de visibilité)

 

@+

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)

Re,

 

Salut Patrick_35,

 

Dans l'éditeur de blocs, OUI !

 

Par contre, pas dans la zone de dessin, il garde son calque "o" de définition, même en changeant d'état de visibilité,...

 

Mais peut-être que je ne sais pas gérer l'insertion d'un tel bloc,...

 

en lancant un lisp qui "recadre" les blocs (le calque suivant l'état de visibilité)

 

OUI !

 

Si c'est cela, c'est beaucoup plus simple que ce que j'imaginais.

 

Si tu le dis, alors,... :P

 

Merci encore,

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Quelque chose dans ce style ?

 

(defun c:bvi(/ caq doc ele ent)
 (setq doc (vla-get-activedocument (vlax-get-acad-object)))
 (vla-startundomark doc)
 (and (ssget "x" (list (cons 0 "insert")))
   (progn
     (vlax-for ent (setq sel (vla-get-activeselectionset doc))
(and (eq (vla-get-objectname ent) "AcDbBlockReference")
     (eq (vla-get-isdynamicblock ent) :vlax-true)
  (foreach ele (vlax-invoke ent 'getdynamicblockproperties)
    (and (eq (vla-get-propertyname ele) "Visibilité")
	 (tblsearch "layer" (setq caq (vlax-get ele 'value)))
      (vla-put-layer ent caq)
    )
  )
)
     )
     (vla-delete sel)
   )
 )
 (vla-endundomark doc)
 (princ)
)

 

@+

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)

Re,

 

Quelque chose dans ce style ?

 

Carrément !!!! :D

 

Si c'est cela, c'est beaucoup plus simple que ce que j'imaginais.

 

Tu avais donc raison !

 

Un grand merci Patrick_35,

 

Je vais donc pouvoir finaliser ma barre d'outils et tester grandeur nature,...

 

C'est effectivement Noël avant l'heure,...

 

Je finissais par me demander si cela était vraiment réalisable,...

 

Au plaisir,

 

Et merci à tous les participants,...

 

PS: J'aurai peut-être d'autres questions (du style récupérer les longueurs développés des aciers ainsi traités) sur ce post, donc je le laisse "ouvert"

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Re,

 

Je viens de tester sur un autre blocs dyn, je n'ai même pas besoin de le redéfinir comme j'ai fait sur le premier par calque et état de visibilité !!! Il en faut tout de même un bien configuré dans le gabarit !)

 

Trop fort !

 

C'est donc le lisp qui pilote même depuis la base ??!!

 

Et bé !

 

Je m'attendais à un peu de boulot tout de même (une centaine de blocs avec 7 états de visibilités, soit 700 manipulations évitées :o !)

 

Oufffffffffffffff!!

 

:P

 

Mais, pour le" confort visuel" de l'utilisateur, avant de faire un p'tit coup de "BVI", je vais tout de même traité mes blocs.

 

De plus, la plupart ont des Vligts !

 

Il faudra alors passer sur la version pleine pour "synchroniser" les calques avant l'envoi,...

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)
C'est donc le lisp qui pilote même depuis la base ??!!

Non, le lisp regarde l'état de visibilité du bloc et le place sur le bon calque.

Si le calque n'existe pas, le bloc reste sur celui d'origine.

 

Je m'attendais à un peu de boulot tout de même (une centaine de blocs avec 7 états de visibilités, soit 700 manipulations évitées :o !)

 

Oufffffffffffffff!!

 

:P

C'est le principe d'un lisp :cool:

Faire pousser un peu plus le poil au milieu de la paume de la main.

Cela devrait te pousser un peu plus à t'y mettre et même à commencer à enseigner le lisp :D

 

De plus, la plupart ont des Vligts !

 

Il faudra alors passer sur la version pleine pour "synchroniser" les calques avant l'envoi,...

ah, ces LT. Elles deviennent un peu plus improductif qu'une version "full". ;)

 

@+

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)

J'ai fait un test pour un attribut dynamique de longueur de développement à l'axe qui marche...

 

j'ai créé une consultation invisible dans tous les état de visibilité

dans cette consultation j'ai utilisé les paramètres de visibilité que j'ai associé à la longueur

j'ai ensuite créé un attribut ayant pour valeur un champ dynamique correspondant à la visibilité...

 

Je ne sais pas si c'est trés clair...

 

Si tu veux je te complète ton bloc avec cet attribut et je te l'envoie d'ici demain am

 

a+

Posté(e)

Re,

 

Si tu veux je te complète ton bloc avec cet attribut et je te l'envoie d'ici demain am

 

Bien volontier, :D

 

Je pensais un faire un truc du genre aussi mais n'ai pas encore eu le tps d'y réfléchir.

 

Grâce à Patric_35, déjà un pb de résolu, ;)

 

consultation invisible

 

très bonne idée !

 

Merci encore,

 

PS: pascal19, "bétonneux" également ?

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Re,

 

Cela devrait te pousser un peu plus à t'y mettre et même à commencer à enseigner le lisp

 

Me pousser, certes, Mais une fois plus, le besoin de nourrir ma "grande famille" est prioritaire,...(comme nous tous, tu vas me répondre,... ;) )

 

De là à l'enseigner, n'exagérons rien,

 

J'en suis au stade d'expliquer le chargement et le fonctionnement !

 

Grâce à Gilles, j'ai aussi compris le fonctionnement et l'intérêt des fichiers "acad.lsp" et "acadoc.lsp",

 

Merci encore à lui,

 

Mais petit à petit, j'apprends et je commet toujours les mêmes erreurs, (espace ou ";",.. pour les macros,...)

 

Je sais qu'il va falloir "bloquer" du temps que pour ça, et il me tarde de pouvoir,...

 

Je sais que je peux aussi compter sur bon nombre parmi vous,...

 

Et,"bvi", ce n'est que du lisp ?

 

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

PS: pascal19, "bétonneux" également ?

 

non tuyauteur, mais j'ai des colègues betonneux et je voudrai être bien vu...

 

Je t'ai envoyé par mail le bloc modifié, je ne l'ai pas mis en partage sur le forum car je sais pas faire, mais, tu peux le mettre en lien si d'autres sont interressés...

 

a+

Posté(e)

Bonjour à toutes et tous,

 

J'ai bien reçu ton bloc

 

J'ai vu que tu as mis une action objet => consultation.

 

Mais cela ne fonctionne pas et correspond à une longueur avant étirement (je ne sais pas comment tu as fait mais je ne pense pas que cela corresponde à la longueur développée à la fibre neutre, si ?)

 

Même en régénérant, la longueur reste à 57.8 (Je n'ai pas retrouvé le pourquoi de cette dimension !!!)

 

Merci tout de même, je me pencherai là-dessus un peu plus tard,..

 

PS : Pour envoyer un fichier, je me sers de ce site et ensuite, je colle l'adresse dans mon post,..Edite mon message pour voir la "forme "du lien (bouton "editer" sous ce message)

PPS : Oui, j'avais bien reçu ton bloc et il est encore sur mon bureau, prêt à être regardé,...(Désolé, pas trop de tps actuellement,...Mais, bientôt les vacances :P )

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

Bonjour

 

je ne pense pas que cela corresponde à la longueur développée à la fibre neutre

 

En effet, comme je ne sais pas ce que c'est,, j'ai tracé une polyligne représentant l'axe de l'armature pour chaque visibilité, et j'ai considéré sa longueur...je ne voyais pas ce que ça pouvait être d'autre...

 

en tout cas il suffit d'éditer la consultation pour modifier les valeurs.

 

Mais cela ne fonctionne pas...Même en régénérant, la longueur reste à 57.8

 

Note que quant tu changes ta visibilité, il ne faut pas que le bloc soit encore sélectionné quand tu fais REGEN sinon ça marche pas :(

 

Désolé, pas trop de tps actuellement,

 

Pas de probleme, on a tout le temps...pense à me tenir au courant quand tu sera dessus

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é