winfield Posté(e) le 14 décembre 2005 Posté(e) le 14 décembre 2005 Bonsoir,J'arrive à mettre en surbrillance une selection d'entité "classique", mais comment fait-on pour un sous objet ?En vous remerciant d'avance. Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.
Tramber Posté(e) le 14 décembre 2005 Posté(e) le 14 décembre 2005 Je ne connais pas de solution en Vlisp, alors en VBA je ne sais pas.Mais seules les insertions de blocs sont des entités. Ca me parait impossible. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
winfield Posté(e) le 14 décembre 2005 Auteur Posté(e) le 14 décembre 2005 Bonsoir Trambler, Ca me parait impossible. Pourtant, en utilisant les expressTools, (Copy Nested Objects), ça met bien l'entité sélectionné en surbriallance :casstet: Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.
Tramber Posté(e) le 14 décembre 2005 Posté(e) le 14 décembre 2005 Hop, je vais voir. T'aurais pu le dire avant. Tramber Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
bonuscad Posté(e) le 14 décembre 2005 Posté(e) le 14 décembre 2005 Je pense qu'en lisp (redraw [nom_ent [mode]]) correspond à ton souhaitavec mode à 1/2/3 ou 4 Quant à son équivalent en VBA ....? Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
winfield Posté(e) le 14 décembre 2005 Auteur Posté(e) le 14 décembre 2005 T'aurais pu le dire avant. Désolé ;) ....pas pensé Je pense qu'en lisp (redraw [nom_ent [mode]]) correspond à ton souhaitavec mode à 1/2/3 ou 4 Quant à son équivalent en VBA ....? :mad: Je le savais que j'aurais dû me mettre au Lisp :( Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.
Tramber Posté(e) le 14 décembre 2005 Posté(e) le 14 décembre 2005 Le fichier s'appelle trxblk.lsp En tout cas c'est pas SSGETFIRST, c'est juste une selection mais on dirait qu'elle est gérée par (acet-ss-new qui semble définie en dehors du fichier. J'arrête là, c'est surement possible, d'autant que ca vient d'être dit y a redraw, complètement ignoré de moi. Rires, je vois pas la surbrillance avec ce foutu 2006 (pas retenu la variable). [Edité le 14/12/2005 par Tramber] Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
Patrick_35 Posté(e) le 15 décembre 2005 Posté(e) le 15 décembre 2005 SalutTrouvé dans l'aide (c'est dans AcadSelectionSet --> Highlight pour ceux qui le veulent en vlisp) @+ Sub Example_Highlight() ' This example creates several objects in model space. ' It then iterates through model space and highlights each ' object and displays it's Entity Name. ' Create a Ray object in model space Dim rayObj As AcadRay Dim basePoint(0 To 2) As Double Dim SecondPoint(0 To 2) As Double basePoint(0) = 3#: basePoint(1) = 3#: basePoint(2) = 0# SecondPoint(0) = 1#: SecondPoint(1) = 3#: SecondPoint(2) = 0# Set rayObj = ThisDrawing.ModelSpace.AddRay(basePoint, SecondPoint) ' Create a polyline object in model space Dim plineObj As AcadLWPolyline Dim points(0 To 5) As Double points(0) = 3: points(1) = 7 points(2) = 9: points(3) = 2 points(4) = 3: points(5) = 5 Set plineObj = ThisDrawing.ModelSpace.AddLightWeightPolyline(points) plineObj.Closed = True ' Create a line object in model space Dim lineObj As AcadLine Dim startPoint(0 To 2) As Double Dim endPoint(0 To 2) As Double startPoint(0) = 0: startPoint(1) = 0: startPoint(2) = 0 endPoint(0) = 2: endPoint(1) = 2: endPoint(2) = 0 Set lineObj = ThisDrawing.ModelSpace.AddLine(startPoint, endPoint) ' Create a circle object in model space Dim circObj As AcadCircle Dim centerPt(0 To 2) As Double Dim radius As Double centerPt(0) = 20: centerPt(1) = 30: centerPt(2) = 0 radius = 3 Set circObj = ThisDrawing.ModelSpace.AddCircle(centerPt, radius) ' Create an ellipse object in model space Dim ellObj As AcadEllipse Dim majAxis(0 To 2) As Double Dim center(0 To 2) As Double Dim radRatio As Double center(0) = 5#: center(1) = 5#: center(2) = 0# majAxis(0) = 10: majAxis(1) = 20#: majAxis(2) = 0# radRatio = 0.3 Set ellObj = ThisDrawing.ModelSpace.AddEllipse(center, majAxis, radRatio) ZoomAll ' Iterate through the model space collection and ' highlight each entity. Dim entName As String Dim entry As AcadEntity For Each entry In ThisDrawing.ModelSpace entName = entry.ObjectName entry.Highlight (True) MsgBox "The name of this object is " & entName, vbInformation, "Highlight Example" entry.Highlight (False) Next End Sub Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
winfield Posté(e) le 17 décembre 2005 Auteur Posté(e) le 17 décembre 2005 Merci, je vais tenter de comprendre tout ça :casstet: Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.
winfield Posté(e) le 17 décembre 2005 Auteur Posté(e) le 17 décembre 2005 Bonsoir,J'ai yeuté un peu mais pas sois je m'y prend mal sois c'est un autre chemin qu'il faut prendre :( D'ailleur, je pencherai plus pour la seconde solution.En passant par [surligneur] ObjEntite.ObjectIdToObject(ID)[/surligneur] :casstet: Ex : IntI = -1 For IntJ = UBound(varparent) To LBound(varparent) Step -1 IntI = IntI + 1 VarID = varparent(IntJ) Set ObjEntite = ThisDrawing.ObjectIdToObject(VarID) ObjEntite.HighLight (True) Mais avec ce principe, c'est tout le bloc qui est mis en surbrillance :( Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.
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