Aller au contenu

Créer une hachures dans un bloc inséré.


DenisHen

Messages recommandés

Bonjour à la communauté.
Voilà, je n'arrive pas à créer une hachure dans un bloc inséré qui n'est qu'une polyligne (à des échelles parfois différentes, mais pas en Z).
Je suis certain que ça dépend d'une variable, mais je n'ai rien trouvé.
Bien à toi la communauté...
Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Lien vers le commentaire
Partager sur d’autres sites

"un bloc inséré" n'est qu'une référence à une définition de bloc.
On ne peut pas modifier les entités d'une référence de bloc, il faut modifier la définition du bloc et la modification sera répercutée dans toutes les références.
Pour modifier la définition du bloc, le plus simple est d'utiliser l'éditeur de bloc.

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

Lien vers le commentaire
Partager sur d’autres sites

Bonjour (gile) et merci pour ta réponse.

Mais je ne cherche pas à modifier mon bloc, je cherche juste à créer une hachure hors du bloc dans la polyligne du bloc.

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Lien vers le commentaire
Partager sur d’autres sites

tu exploses le bloc, tu récupères ta poly et s'il n'y a qu'une seule  polyligne :
 

obj = block.Explode

For o = LBound(obj) To UBound(obj)
if obj(o).ObjectName = "AcDbPolyline" then Set POLYOBJ = obj(o)
next o

' ta hachure

PatternName = "SOLID"
PatternType = acPreDefinedGradient
bAssociativity = True

Set hatchObj = ThisDrawing.ModelSpace.AddHatch(PatternType, PatternName, True)
Set outerLoop(0) = POLYOBJ

hatchObj.AppendOuterLoop (outerLoop)

hatchObj.Evaluate

'Pense à rajoute le code pour supprimer les élement exploser pour que se soit propre
For o = LBound(obj) To UBound(obj)
obj(o).delete
next o

 

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Il te faut récupérer la polyligne à l'extérieur du bloc. Mais pour ça, pas besoin d'exploser le bloc. Pour récupérer la polyligne qui va te servir à faire ta hachure, il faut utiliser la commande "ncopie".

Tu lances la commande NCOPIE, tu clic sur la polyligne de ton bloc, et tout de suite derrière, tu fais "Echap".

www.cad-is.fr
Autocad Map 2021 - Covadis/Autopiste V18.0c
Pisser sous la douche ne suffira pas
Lien vers le commentaire
Partager sur d’autres sites

Merci @Luna, je coirs bien que c'est ça, et je l'avais oublié...
Mais je n'ai pas envi de décomposer le bloc.

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Lien vers le commentaire
Partager sur d’autres sites

Donc si en effet tu as des échelles X Y Z différentes, il te reste l'option NCOPIE qui fonctionne bien (par contre j'ai l'impression que NCOPIE décompose la polyligne en plusieurs segments de lignes, est-ce bien normal ?), à voir après suivant le nombre de références de bloc que tu as 😉

Bisous,
Luna

Lien vers le commentaire
Partager sur d’autres sites

Merci à tous pour votre aide.
Je pense avoir trouvé une autre solution, mais je ne sais pas encore si elle est correcte.

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Lien vers le commentaire
Partager sur d’autres sites

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • 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é