GEGEMATIC Posté(e) le 15 juin 2012 Posté(e) le 15 juin 2012 Salut,Je cherche un moyen d'améliorer le highlight de base des entités.Pour la compatibilité avec A2010, je ne peux pas utiliser les arguments de Highlight : subId As FullSubentityPath, highlightAll As [MarshalAs(UnmanagedType.U1)] bool Ce que je veux, c'est mettre en évidence des entités qui ne sont pas survolées par la souris, mais sélectionnées depuis un tableau. J'ai testé la méthode HighlightOverrule, qui fonctionne mais a provoqué un crash net d'Autocad, et je n'ai pas réussi à l'adapter à mon cas, je n'ai pu la faire fonctionne qu'avec le survol souris. J'ai utilisé la méthode TransientManager Methods, avec l'attribut DirectShortTerm, je n'ai pas testé les autres (je n'ai pas compris leur utilité): Main Sprite DirectShortTerm Highlight DirectTopmost Contrast Mais elle ne donne pas de très bon résultats avec les blocs, et aucun avec les points. Pour moi, l'idéal pour les blocs et les points, serai de dessiner une rectange temporaire autour, genre celui de getcorner, ou comme ce que l'on peut faire avec grdraw en lisp Je n'ai pas trouvé l'équivalent en .Net, mais j'ai tellement à découvrir ! j'ai également trouvé la propriété HighlightStyle de Autodesk.AutoCAD.GraphicsSystem Qui a ces valeurs: None Custom DashedAndThicken Dim ThickDim Mais je n'ai pas compris comment les utiliser. Si quelqu'un a une idée ?merci d'avance, Gérald ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
Maxence DELANNOY Posté(e) le 15 juin 2012 Posté(e) le 15 juin 2012 > Pour la compatibilité avec A2010, je ne peux pas utiliser les arguments de Highlight Je ne comprends pas ce que tu veux dire par là parce que la signature de Entity.Highlight n'a pas changé entre AutoCAD 2010 et les versions qui ont suivi. En plus, je ne vois pas ce que tu pourrais faire de plus car le premier argument est un chemin de sous-entité à utiliser quand tu travailles sur un solide 3D (pour sélectionner une face ou une arête) et le deuxième c'est pour préciser si la surbrillance doit apparaître dans toutes les fenêtres ou uniquement celle qui est active. Si je comprends bien, tu veux entourer les entités sélectionnées avec un rectangle. Donc HighlightOverrule ne convient pas car il n'y a de contexte de dessin qui est passée aux méthodes Highlight et Unhighlight. Tout ce que tu peux faire, c'est modifier les attributs de l'entité qui est mise en surbrillance (par exemple pour changer sa couleur comme dans cet exemple. A priori TransientManager devrait faire l'affaire. DirectShortTerm semble être le mode le plus approprié. Tu n'as pas besoin du Z-Buffer puisque tu veux dessiner au dessus des entités existantes. Tu veux une mise en surbrillance personnalisée, donc Highlight ne fait pas non plus l'affaire. Tu as un exemple ici. Mais si tu cherches un équivalent à grdraw, c'est Editor.DrawVector et Editor.DrawVectors (grvecs) qui feront ton bonheur. Maxence DELANNOYDéveloppement de compléments aux logiciels Autodesk : AutoCAD, Revit, Inventor, Vault, Navisworks... et autres logiciels de CAOWIIP - http://wiip.fr
GEGEMATIC Posté(e) le 18 juin 2012 Auteur Posté(e) le 18 juin 2012 Bonjour, merci de cette réponse,sous Autocad 2010, j'ai eu des erreurs avec l'utilisation des arguments de Highlight :subId As FullSubentityPath,highlightAll As [MarshalAs(UnmanagedType.U1)] boolJe n'avais pas ce problème en utilisant highlight sans argumentsJe pensais que suBid permettait de gérer les sous entités des blocs, ce qui aurait permis de changer l'apparence des entités dont les caractéristiques n'étaient pas "dubloc" Les liens que tu donne pour Overrules et TransientManager sont ceux que j'ai utilisé pour mes recherchesMon problème c'est la réelle compréhension de Overrules:J'ai réussi à faire fonctionner overrules, mais Je n'ai pas réussi à l'adapter à mon problème, car je pense que je n'ai pas compris le concept. Transient fonctionne, mais pas avec les blocs. Je vais donc utiliser Editor.DrawVector et Editor.DrawVectors, dont je devrais comprendre le fonctionnement sans peine ...merci,Gérald ----------------------------------------------------------------------Site: https://www.g-eaux.frBlog: http://g-eaux.over-blog.com
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant