Aller au contenu

Sélection types de lignes


MathPerrin

Messages recommandés

Bonjour à tous,

 

Je suis bloqué sur une sélection avec les codes DXF, impossible de récupérer tous les objets avec un type de ligne différent de BYLAYER.

 

Le code DXF 6 qui correspond aux types de lignes n'existent pas sur une entité lorsque l'on est en BYLAYER.

 

Quelqu'un peut-il m'aider à faire une sélection de tous les objets avec un type de ligne différent de BYLAYER !?

 

exemple :

 

'Création d'une sélection dans le dessin :

ObjSelect = oDoc.SelectionSets.Add("SelectLineType")

 

'Code DXF -4 pour les filtre de sélection (<>, >, <, =)

intGpCode(0) = -4

varDataValue(0) = "<>"

'Code DXF 6 pour le type de ligne.

intGpCode(1) = 6

varDataValue(1) = "0"

 

'Réalisation de la sélection

ObjSelect.Select(TeighaX.AcSelect.acSelectionSetAll, , , intGpCode, varDataValue)

 

MsgBox(ObjSelect.Count.ToString) '0

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Je suis reparti de ce que tu avais posté,a toi de voir si cela te convient:

Dim intGpCode(2) As Integer
Dim varDataValue(2) As Variant
Dim ObjSelect As AcadSelectionSet
Dim i As Integer
Dim CurrentObj As AcadEntity
   
'Création d'une sélection dans le dessin :
Set ObjSelect = ThisDrawing.SelectionSets.Add("SelectLineType")

'Code DXF -4 pour les filtre de sélection (<>, >, <, =)
intGpCode(0) = -4
varDataValue(0) = "<NOT"
'Code DXF 6 pour le type de ligne.
intGpCode(1) = 6
varDataValue(1) = "ByLayer"
intGpCode(2) = -4
varDataValue(2) = "NOT>"

'Réalisation de la sélection
ObjSelect.Select acSelectionSetAll, , , intGpCode, varDataValue

'Partie vérification
MsgBox (ObjSelect.Count) '0
For i = 0 To ObjSelect.Count - 1
   Set CurrentObj = Nothing
   Set CurrentObj = ObjSelect.Item(i)
Next i
ObjSelect.Delete

 

Cordialement,

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Je viens de tester sur autocad 2009 SP3 32bits avec en cas de figure:

 

Dans le modelspace :

-Une ligne DUCALQUE

-Un cercle Acad_ISO

-Une polyligne CACHE2

-Une polyligne DUCALQUE

 

Dans le paperspace :

-Une ligne Continious

 

 

Le retour de la fonction est 3entités soit les deux éléments dans le modelspace + 1 élément du paperspace.

 

 

Tu travailles avec quelle version d'autocad?Language?Service pack? 32 ou 64bits

 

 

 

Cordialement,

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é