Qqs trucs sur Autocad et d'autres logiciels DAO...
Accueil Initiation Méthodologie Variables Comment faire ? Lisps Sommaire
Soft & liens Revit 2020 CVC sur autocad Linux CloudCompare Initiation à Autolisp Blog

Cotation des altimétries une bonne approche des champs dynamiques


Quiconque a eu à coter une coupe dans les métiers du bâtiment sais à quel point c'est pénible. Autocad dispose bien d'une commande pour ça avec les cotes superposées (COTORD), mais le moins qu'on puisse dire, c'est que c'est pas très sexy. Pas de bloc associé, le 0,00 est lié au SCU (bonjour pour faire des cotes altimétrique en montagne...) pas de mise à jour possible en cas de décalage du projet de qqs cm, bref on peu mieux faire.

Conclusion d'une suite de post sur le forum on a enfin trouvé une solution plus élégante avec l'utilisation d'un bloc avec un champ dynamique. Remercions au passage Goldorak44 et Patrick35 qui m'ont plus qu'aider à accoucher du bébé.

MISE A JOUR

Suite à une autre discution sur cadxp, notre ami La Lozère nous a trouvé une solution plus élégante. Voici donc 2 nouveaux blocs, l'un servant de référence à l'autre qui lui est dynamique. On peut associer plusieurs alti dynamique à une référence, quand on veux un autre point de départ il suffit de recopier un couple. Le champ de l'alti de référence est modifiable pour tenir compte d'un décalage NGF. Vous pouvez les charger ici:

NIV-REF-DYN

Je garde cette page en l'état pour ceux qui voudrai des explications sur le champs dynamiques, et a titre d'exercice regardez comment marche les nouveaux

 

 

je commence par décrire le procédé pour utiliser notre solution, puis je détaillerai la création de l'attribut magique.

Attention, les blocs dynamiques ont leur limites, ils alourdissent pas mal les régen (et il faut faire régen pour mettre à jour les champs) , et ne sont pas sensible à la commande étirer pour en signaler deux. Peut être des pb de SCU non résolu aussi ... La manipulation des blocs dynamiques induit la création de tout un tat de blocs d'instances nommés '*Uxxx' pensez à les purger de temps en temps.

A noter:
une option dépendante du dessin, dans Outil/Option/Préférence utilisateur un bouton pour la mise à jour des champs bien cocher régen

Utilisation de bloc-alti

Commencez par chargez notre ''bloc-alti.dwg'' et le lisp 'ad.lsp''.
Passer en SCU Général (SCU G), passez FIELDDISPLAY à 0 (question de gout...voir l'aide)
Ouvrez bloc-alti et avec un copier coller posez le bloc dans votre dessin. (3 échelles disponibles pour le 1/20, 1/50 et 1/100)
Charger AD.lsp dans le dessin (et ou dans les lisp par défaut si vous voulez plus avoir à le refaire)
Faire Fichier/Propriétés du dessin (3eme onglet de la boite), puis ajouter une variable NGF au dessin et donnez lui la valeur 0 pour l'instant.

La marque bleu est le point d'insertion du bloc. Déplacer cette marque sur une ligne d'altitude connue. Dans le cas de notre coupe exemple, le plancher est à -0.17. (bien sur ici la cotation est déja finie, il faut s'imaginer qu'il n'y a aucune cote altimétrique...)

 

Le bloc est conçu pour afficher dans son attribut la somme de NGF et de la distance en Y entre l'origine du bloc et la poignée attachée à la cote de niveau.

Bien que dans un calque non imprimable, les marques bleu au milieu du dessin seraient pas très pratique. D'autant que si les poignées dynamiques ne sont pas sensible à la commande étirer, le point d'insertion du bloc l'est. Il vaut donc mieux le poser un peu en dessous loin de toutes fausses manœuvres.


Toujours pour suivre notre exemple, on va déplacer le point d'origine du bloc de 2-0.17=1.83 vers le bas. L'origine est donc à une cote de -2.00.
Cette variable peu donc également etre régle pour une altitude en NGF de la même manière.


Retour dans les propriété du dessin On passe donc NGF à -2.00 (toujours depuis le menu Fichier/Propiété du dessin onglet personnaliser)

 

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

Pour vérifier que ça marche bien, à l'aide de la poignée sur la ligne de cote du bloc, on replace la flèche sur le plancher.

Tapez RG, ça devrai afficher -0.17.

Je dis ça devrai car j'ai un dessin ou ça marchait pas voir ici.. ou peut être une histoire de SCU qui serai pas sur G...
Il ya deux autres poignées en formes de flèches, elles gèrent les paramètres de symétrie du bloc ( position du texte haut droite gauche, bas) .... utilisez impérativement ces poignées pour orienter la cote car une symétrie à la main déplacerait l'origine du bloc.

Bon effectivement pour poser une cote, ça fait un peu long...
Par contre on a charger un lisp ''ad.lsp'' au tout début voyons à quoi il sert...

Alors AD va copier un bloc-alti en conservant sont point d'origine et en le posant par sa poignée de flèche. Les propriétés d'orientation sont conservées donc copiez en priorité un blocs dont l'orientation vous intéresse. AD fait un regen à chaque boucle. En cas de fichier très lourd une autre fonction est définie qui fait un seul régen à la fin c'est ADF

Tapez AD, ou ADF sélectionnez le bloc (le seul pour l'instant) et posez comme second point la deuxième ligne à coter un autre clic pose un deuxième bloc, ect...

pour sortir espace ou esc...


CHAZAMMM!!

 

Il peu y avoir un problème de lourdeur du fichier si vous avez beaucoup d'attributs dynamique. Le lisp "burst" des express tool peut décomposer une sélection de blocs en conservant la valeur de ces derniers. Si le fichier devien ingérable ça peut etre une solution.

 

Comment le fabriquer

vous n'avez pas forcément besoin de coter un plan en mètre qui doit s'imprimer au 20eme. Mais la forme ou les unités que j'utilise ne peuvent convenir à tout le monde. Il est donc important d'apprendre à créer ce type de bloc. (pasez par l'éditeur de bloc sur un des miens si vous en avez jamais fait)
Le bloc en lui même est un bloc dynamique classique avec un attribut. L'origine est une marque dans un calque non imprimable.
Créer la formes de la flèche, l'atribut et les 2 symétries (paramètre et action d'inversion)
Poser un paramètre ''point'' et associer lui une action ''déplacement'' qui à pour jeu de sélection les traits de toutes les flèches et des 2 paramètres d'inversion.

Fermer l'éditeur de bloc en sauvant

C'est là que ça commence à etre du sport... C'est pas très long, mais faut être rigoureux

On double clique sur le bloc, ATTSYNC peut aider à faire apparaitre les attributs la 1ere fois, mais normalement le double clic ouvre la boite d'édition d'attribut. Un clic droit dans la case valeur et 'insérer un champ'.

Dans la catégorie "toutes" choisir 'formule', puis re clic droit dans la zone de saisie de la formule et re 'insérer un champ'.

On passe dans la catégorie "document" et on choisi NGF

ça affiche la valeur de NGF en gris, à la suite on ajoute un ''+'' et re clic droite pour ajouter un autre champ

cette fois on choisi la catégorie "objet", à nouveau "objet" en dessous et on va sur la case pour "Selectionner un objet"

l'objet à choisir est notre objet ''bloc-alti'', ça fait apparaitre toutes ses propriétés, on choisi Alti Y

de retour dans le champ formule, on a donc la valeur de NGF (en gris) + le valeur de Alti Y (en gris). Cliquez sur "évaluer", ça va changer l'aperçu et faire apparaitre le bouton "précision courante" régler ici le nombre de 0 si vous ne voulez pas de cette précision.


Validez 2 fois pour sortir des boites de dialogue, c'est fini... Comme d'ab RG pour mettre à jour le champ

 

 

Autres blocs

J'en poserai sans doute au fur et à meusure de mes besoins ce sont des bloc dynamiques avec attributs automatique donc RG pour mettre a jour

3 réservations
3 petites réservations en 20eme et 50eme pour les reservations verticales, l'atribut d'arase sup est a rentrer à la main

Cotation XY
Basé sur bloc alti, ce sont les blocs pour la cotation en XY dans les 3 même écheles 1/20, 1/50, 1/100.

Cos-sin
un autre exemple de formule dans des champs, avec des calcul trigo... la liste des fonction mathématique utilisable reste un mistère, je n'ai rien trouver dans les docs. Mais dans cet exemple un champ formule contient: A *cos(B) avec A et B deux champs faisant référence à des données dynamiques de l'objet. On peu suposer que les classique tan sqr exp sont disponibles... à tester...

Polaire
autre exemple cha champs calculé, dans le DWG il y a la syntaxe des fonctions mathématique accéssible dans les formules de champs

 

 

lien vers cadXP