Aller au contenu

VB.Net + Intelliplus


Pae35

Messages recommandés

Bonjour,

 

Quels sont les valeurs FilterData pour sélectionner un objet graphique pour la fonction SelectOnScreen([FilterData] as object, [FilterData] as object) ?

 

Par exemple, si je mets "LWPolyline", Intelliplus me permet de sélectionner tous les objets alors que je veux simplement ne vouloir sélectionner que les polylignes.

 

Exemple de code en VB.net (avec un peu de marshaling, pour ceux que cela intéresse ;))

 

Dim oDoc As IntelliCAD.Document

Dim ssObj As IntelliCAD.SelectionSet

Dim fTypes(0) As Int16

Dim fDatas(0) As Object

fTypes(0) = 0

fDatas(0) = "LWPolyline"

 

Dim _application as intellicad.Application = New IntelliCAD.Application

' Attribue une zone mémoire accessible pour Intelliplus

Dim gh As GCHandle

gh = GCHandle.Alloc(fDatas(0))

 

oDoc = _application.ActiveDocument

ssObj = oDoc.SelectionSets.Add("Sel1")

 

ssObj.SelectOnScreen(fTypes, gh.Target)

Dim enu As IEnumerator = ssObj.GetEnumerator()

While enu.MoveNext

obj = enu.Current

If Not obj Is Nothing Then

oEntityClass = CType(Marshal.CreateWrapperOfType(obj, GetType(IntelliCAD.EntityClass)), IntelliCAD.EntityClass)

MsgBox(oEntityClass.Handle.ToString)

End If

End While

' Bien sûr, on libère la mémoire allouée

gh.Free()

 

Si quelqu'un a une idée.

Merci.

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é