Aller au contenu

stripmtext dans les attributs de blocs


x_all

Messages recommandés

Bonjour,

 

C'est surprennant, car sur ma 2014 tout fonctionne correctement au niveau de l'affichage.

Et sur un autocad classique ?

Sur un AutoCAD classique version 2007 rien à signaler le code fonctionne à merveille (teste effectué sur RB.LSP V2.00).

 

Après mouts recherches et tests, il se trouve que c'est en testant si le bloc trouvé n'est pas un espace papier ou objet ou s'il a été choisis que l'affichage ne se fait pas.

Je cherche à comprendre...

Je n’ai pas eu trop le temps de creusé plus, mais je ne suis pas sur les même conclusions, pour moi le code est bon, je pense que la « blague » vient du bloc du dwg posté par notre ami Lecrabe, car il n’y a que sur le dwg teste que je reproduis le comportement que vous d’écrivez.

 

Si j’avais plus de temps c’est dans cette direction que je creuserai en priorité…

 

Car si j’insère dans le dessin teste mes blocs, ces derniers conçu avec un AutoCAD classique son mis à jour automatiquement à l’affichage (et vice-versa). Idem si je lance la commande Annulé seul mes blocs retrouvent leurs affichage sans lancer de regen.

 

Je ne connais pas les applicatifs métiers mais le message d’alerte sur les Objet AEC me laisse à penser qu’ils ne sont peut-être pas étrangers à cette l’affaire.

 

Amicalement Bruno

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

Bonjour

 

Merci de tes tests VDH_Bruno

 

Avec le fichier test de Lecrabe, le test 1 fonctionne mais prend en compte l'espace objet.

Avec le test 2, cela ne fonctionne plus (pour l'affichage) mais évite l'espace objet.

 

(defun c:test1()
 (setq doc (vla-get-activedocument (vlax-get-acad-object)))
 (vla-startundomark doc)
 (vlax-for bl (vla-get-blocks doc)
     (vlax-for ent bl
(vla-put-layer ent "0")
(vla-put-color ent 0)
(vla-put-linetype ent "ByBlock")
(vla-put-lineweight ent -2)
     )
 )
 (vla-endundomark doc)
 (princ)
)

(defun c:test2()
 (setq doc (vla-get-activedocument (vlax-get-acad-object)))
 (vla-startundomark doc)
 (vlax-for bl (vla-get-blocks doc)
   (and (eq (vla-get-islayout bl) :vlax-false)
     (vlax-for ent bl
(vla-put-layer ent "0")
(vla-put-color ent 0)
(vla-put-linetype ent "ByBlock")
(vla-put-lineweight ent -2)
     )
   )
 )
 (vla-endundomark doc)
 (princ)
)

 

C'est là ou je bloque/bug ;)

Va comprendre.

 

PS: DESOLE, je suis un testeur CHIANT comme m'a dit Gilles un jour !?

C'est aussi ce qui nous fait avancer, rendre les lisps le plus fiable possible.

 

@+

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

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

Merci de tes tests VDH_Bruno

A modérer car j’ai été un peu vite en besogne, suite à un ou 2 petits tests supplémentaires, je ne suis plus totalement d'accord avec ce que j’ai écrit précédemment, j’ai réussi à recréer les problèmes d’affichage avec des blocs que j’ai moi-même créer sur ma version 2007… (Maintenant que je vois les effets reste à comprendre la cause)

 

J’ai hélas peu de temps pour me pencher sur le pourquoi du comment en ce moment, mais j’y reviendrai surement plus tard, à suivre…

 

A+

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

Salut à tous.

 

Je viens de faire un petit test avec AutoCAD 2014 sur un dessin sur lequel, dans l'espace objet, il y un bloc avec attributs puis 2 blocs sans attributs mais des hachures et du texte normal.

 

J'ai fais en sorte de former à l'intérieur des blocs, les calques, les couleurs, les épaisseurs et le type de ligne. la totale, quoi.

 

Après avoir lancer le lisp RB v2.00 ou RB v2.01, voici ce qu'il en résulte:

 

Le bloc avec attributs change instantanément de couleur et est nickel, il faut faire un REGEN pour que les deux autres blocs changent de couleur à l'écran :blink:

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Lien vers le commentaire
Partager sur d’autres sites

Salut à tous.

 

Je viens de faire un petit test avec AutoCAD 2014 sur un dessin sur lequel, dans l'espace objet, il y un bloc avec attributs puis 2 blocs sans attributs mais des hachures et du texte normal.

 

J'ai fais en sorte de former à l'intérieur des blocs, les calques, les couleurs, les épaisseurs et le type de ligne. la totale, quoi.

 

Après avoir lancer le lisp RB v2.00 ou RB v2.01, voici ce qu'il en résulte:

 

Le bloc avec attributs change instantanément de couleur et est nickel, il faut faire un REGEN pour que les deux autres blocs changent de couleur à l'écran :blink:

Le lisp modifié avec un regen incorporé --> V2.02

Rb.lsp

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

Lien vers le commentaire
Partager sur d’autres sites

Tout simplement énorme!

 

A chaque fois je suis bluffé :)

 

Total respect http://smiley-online.com/images/gif/bravo/vignette/thumbnails/chinese_gif.gif

 

Bonne soirée.

Steven________________________________________

Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.

Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD.

En rêve; AutoCAD sous Linux.

Lien vers le commentaire
Partager sur d’autres sites

  • 5 mois après...

Bonjour,

 

un grand merci pour le code

 

j'ai adapté le fichier pour mon utilisation

 

Couleur DuCalque, type de ligne Continu et épaisseur de ligne par défaut

 

; Forcer sur calque 0

(vla-put-layer ent "0")

 

; Forcer la couleur sur Ducalque

(vla-put-color ent 256)

 

; Forcer le type de ligne sur Continuous

(vla-put-linetype ent "CONTINUOUS")

 

; Forcer l'épaisseur de ligne par Defaut

(vla-put-lineweight ent -3)

 

 

 

Si ça peut servir à quelqu'un. ;)

 

cela permet de modifier mes centaines de blocs dans chaque fichier....

 

A+

Lien vers le commentaire
Partager sur d’autres sites

  • 4 ans après...

Bonjour

cette lisp est super merci

pourrait-on avoir la meme qui supprime le formatage

d'un mtext à l'intérieur des blocs

cdlt Jyco

 

C'est surprennant, car sur ma 2014 tout fonctionne correctement au niveau de l'affichage.

Et sur un autocad classique ?

 

En attendant, j'ai ajouté une fonctionnalité mais qui ralentit le résultat (v2.01)

 

@+

Lien vers le commentaire
Partager sur d’autres sites

Bonjour

cette lisp est super merci

pourrait-on avoir la meme qui supprime le formatage

d'un mtext à l'intérieur des blocs

cdlt Jyco

 

Bonjour,

 

un grand merci pour le code

 

j'ai adapté le fichier pour mon utilisation

 

Couleur DuCalque, type de ligne Continu et épaisseur de ligne par défaut

 

; Forcer sur calque 0

(vla-put-layer ent "0")

 

; Forcer la couleur sur Ducalque

(vla-put-color ent 256)

 

; Forcer le type de ligne sur Continuous

(vla-put-linetype ent "CONTINUOUS")

 

; Forcer l'épaisseur de ligne par Defaut

(vla-put-lineweight ent -3)

 

 

 

Si ça peut servir à quelqu'un. ;)

 

cela permet de modifier mes centaines de blocs dans chaque fichier....

 

A+

Lien vers le commentaire
Partager sur d’autres sites

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é