| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: Selektion nach Farbe (900 mal gelesen)
|
RH84 Mitglied Diplomand
Beiträge: 20 Registriert: 10.08.2010 Windows XP 64Bit UG NX5
|
erstellt am: 13. Okt. 2010 13:52 <-- editieren / zitieren --> Unities abgeben:
Hallo, wie kann ich eine Selection nach Farbe machen? Hab ein Skript, welches durch einen Klick auf einen Body diesen auf einen bestimmten Layer verschiebt. Ich möchte nun, dass die Farbe des ausgewählten Bodys abgefragt wird, und dann auch alle anderen Bodies mit dieser Farbe verschoben werden. Viele Grüße, Rouven Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gfx-toxic.de Moderator Konstruktion / Anwenderbetreuung
Beiträge: 501 Registriert: 09.06.2006 Teamcenter 11.3 / NX 11 Windows 10
|
erstellt am: 13. Okt. 2010 14:20 <-- editieren / zitieren --> Unities abgeben: Nur für RH84
Hi Rouven, ein NXopen.Body weisst doch die Eigenschaft Color auf mit dieser du die Farbe setzen oder Abfragen kannst. und dann ganz einfach
Code: foreach (NXOpen.Body body in ini.WorkPart.Bodies) { if (body.Color == selectedbody.Color) { SchiebAufAnderenLayer(body); } }
------------------ Gruß Matthias ------------------------------------ ICQ: 163190295 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RH84 Mitglied Diplomand
Beiträge: 20 Registriert: 10.08.2010 Windows XP 64Bit UG NX5
|
erstellt am: 13. Okt. 2010 14:37 <-- editieren / zitieren --> Unities abgeben:
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 13. Okt. 2010 22:01 <-- editieren / zitieren --> Unities abgeben: Nur für RH84
|
| Ingenieur / Techniker (m/w/d) EMSR im Anlagenbau | Wir sind planting. Premium-Partner der Prozessindustrie. Wir unterstützen unsere Kunden sowohl in Projekten, in der betriebsnahen Planung als auch im technischen Consulting. Unsere Aufgaben sind anspruchsvoll, unser Leistungs- und Branchenspektrum breit: von der Idee bis zur Inbetriebnahme und darüber hinaus. Wir stellen für dich ebenfalls die Verbindung zu Unternehmen aller Größen in der Region her, ... | Anzeige ansehen | Elektrotechnik, Elektronik |
|
Overcast Mitglied
Beiträge: 111 Registriert: 21.12.2005 .
|
erstellt am: 29. Okt. 2010 20:17 <-- editieren / zitieren --> Unities abgeben: Nur für RH84
Zitat: Original erstellt von RH84: Hm.. die Auswahl liefert mir jedoch den Tag und nicht den Body selbst.
Tags werden wohl eher von Open C bzw. den UFWrappern zurückgeliefert. Die NXOpen Klasse SelectManager liefert NX Objekte: Code:
Function SelectABody(ByVal prompt As String) As Body Dim ui As UI = GetUI() Dim mask(0) As Selection.MaskTriple With mask(0) .Type = UFConstants.UF_solid_type .Subtype = UFConstants.UF_solid_body_subtype .SolidBodySubtype = 0 End With Dim obj As NXObject = Nothing Dim cursor As Point3d = Nothing ui.SelectionManager.SelectObject(prompt, "Select a body", _ Selection.SelectionScope.AnyInAssembly, _ Selection.SelectionAction.ClearAndEnableSpecific, _ False, False, mask, obj, cursor) Return obj End Function
Und für den Layer gibt es das gleichnamige Property, das aus DisplayableObject abgeleitet wird, siehe Namespaces ► NXOpen ► Body Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |