Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  Bohrung platzieren?

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
Autor Thema:  Bohrung platzieren? (1207 mal gelesen)
Sirus
Ehrenmitglied
CAD Applikationsentwickler


Sehen Sie sich das Profil von Sirus an!   Senden Sie eine Private Message an Sirus  Schreiben Sie einen Gästebucheintrag für Sirus

Beiträge: 1564
Registriert: 03.06.2004

erstellt am: 21. Dez. 2007 09:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hallo zusammen

ich möchte ein programm in nx4 (journaling, vb.net) machen,
in einer eingabemaske werden werte abgefragt, im hintergrund
für das weitere geschehen berechnet (bis hier alles klar für mich).

nun möchte ich mit den vorgängig verrechneten werten in eine
bestehende platte eine bohrung platzieren.

nun mien problem:

wie mache ich das nun, dass im programm die referenzen wie
platzierungsfläche und x-, y-platzierungs-kanten abgefragt werden?

------------------
gruss urs 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

älg
Mitglied
CADmin


Sehen Sie sich das Profil von älg an!   Senden Sie eine Private Message an älg  Schreiben Sie einen Gästebucheintrag für älg

Beiträge: 403
Registriert: 17.06.2003

erstellt am: 02. Jan. 2008 10:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Sirus 10 Unities + Antwort hilfreich

Versuchs mal mit NXOpen.UI.GetUI.SelectionManager.SelectObject(...).

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Ausbildung zum Technischen Produktdesigner (w/m/d) ? Maschinen- und Anlagenkonstruktion 2024

CeramTec ist ein führender Entwickler und global aktiver Hersteller und Lieferant von Spezial­lösungen aus Hoch­leistungs­keramik mit mehr als 3.400 Mitarbeitern.

Unsere Lösungen sind welt­weit im Fahr­zeug- und Maschinen­bau, in der Medizin­technik, der Elektronik, der Luft- und Raum­fahrt­technik und der Energie- und Umwelt­technik im Einsatz. Willkommen bei den Keramik-Experten.

Für ...

Anzeige ansehenProduktdesign, Industriedesign
Sirus
Ehrenmitglied
CAD Applikationsentwickler


Sehen Sie sich das Profil von Sirus an!   Senden Sie eine Private Message an Sirus  Schreiben Sie einen Gästebucheintrag für Sirus

Beiträge: 1564
Registriert: 03.06.2004

SolidWorks2022

erstellt am: 04. Jan. 2008 13:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hallo älg

vielen dank für deinen hinweis.

nachfolgend das programm, kannst du mir
zeigen was du mit dem nx.open-befehl meinst?


@all: hat jemand bohrungs-beispiele?

------------------

Option Strict Off
Imports System
Imports NXOpen

Module NXJournal
Sub Main

Dim theSession As Session = Session.GetSession()
Dim workPart As Part = theSession.Parts.Work

Dim displayPart As Part = theSession.Parts.Display

'----- Menü: Einfügen->Design Feature->Hole...

'----- markId1
Dim markId1 As Session.UndoMarkId
markId1 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Start")
'System.Windows.Forms.MessageBox.Show(markId1)

theSession.SetUndoMarkVisibility(markId1, Nothing, Session.MarkVisibility.Invisible)

theSession.SetUndoMarkName(markId1, "Hole")

'----- markId2
Dim markId2 As Session.UndoMarkId
markId2 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, "Hole2")
'System.Windows.Forms.MessageBox.Show(markId2)

'----- markId3
Dim markId3 As Session.UndoMarkId
markId3 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Hole3")
'System.Windows.Forms.MessageBox.Show(markId3)

Dim nullFeatures_Feature As Features.Feature = Nothing

Dim holeFeatureBuilder1 As Features.HoleFeatureBuilder
holeFeatureBuilder1 = workPart.Features.CreateHoleFeatureBuilder(nullFeatures_Feature)

'----- markId4
Dim markId4 As Session.UndoMarkId
markId4 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, "Hole")
'System.Windows.Forms.MessageBox.Show(markId4)

'----- markId5
Dim markId5 As Session.UndoMarkId
markId5 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, Nothing)
'System.Windows.Forms.MessageBox.Show(markId5)

'-----finde objekt block0
Dim block1 As Features.Block = CType(workPart.Features.FindObject("BLOCK(0)"), Features.Block)

'-----finde Kante 1 von objekt Kante 5
Dim face1 As Face = CType(block1.FindObject("FACE 5"), Face)

holeFeatureBuilder1.SetThruFace(face1)

'----- platzierungspunkt
Dim referencePoint1 As Point3d = New Point3d(34, 43, 50.0)

'-----finde Kante 2 von objekt Kante 1
Dim face2 As Face = CType(block1.FindObject("FACE 1"), Face)

'----- durchmesser
holeFeatureBuilder1.SetSimpleHole(referencePoint1, False, face2, "7.5")

holeFeatureBuilder1.CreateHole()

holeFeatureBuilder1.ShowPositioningDimensions()

'----- markId6
Dim markId6 As Session.UndoMarkId
markId6 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Start")
'System.Windows.Forms.MessageBox.Show(markId6)

theSession.SetUndoMarkVisibility(markId6, Nothing, Session.MarkVisibility.Invisible)

'----- markId7
Dim markId7 As Session.UndoMarkId
markId7 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Positioning")
'System.Windows.Forms.MessageBox.Show(markId7)

'----- Dialogfenster Anfang Positionierung

'----finde objekt edge1 objekt *
Dim edge1 As Edge = CType(block1.FindObject("EDGE * 3 * 1"), Edge)

Dim targetHelpPoint1 As Point3d = New Point3d(-3.44487199772513, -4.04915981499716, 51.2040412305871)
Dim hole1 As Features.Hole = CType(workPart.Features.FindObject("SIMPLE_HOLE(1)"), Features.Hole)

'----finde objekt edge2 objekt *
Dim edge2 As Edge = CType(hole1.FindObject("EDGE * 3 * 2"), Edge)

Dim toolHelpPoint1 As Point3d = New Point3d(0.0, 0.0, 0.0)
holeFeatureBuilder1.SetTargetAndTool(PositioningDimension.Subtype.Perpendicular, edge1, Features.RPOBuilder.AssociativityType.EndPoint, targetHelpPoint1, edge2, Features.RPOBuilder.AssociativityType.ArcCenter, toolHelpPoint1)

'----positionierungsmass 1
holeFeatureBuilder1.SetExpression("45")

holeFeatureBuilder1.CreatePositioningDimension()

'----finde objekt edge3 objekt *
Dim edge3 As Edge = CType(block1.FindObject("EDGE * 4 * 1"), Edge)

Dim targetHelpPoint2 As Point3d = New Point3d(45.5802135438165, -17.8750659575814, 80.5057294824392)
Dim toolHelpPoint2 As Point3d = New Point3d(0.0, 0.0, 0.0)
holeFeatureBuilder1.SetTargetAndTool(PositioningDimension.Subtype.Perpendicular, edge3, Features.RPOBuilder.AssociativityType.EndPoint, targetHelpPoint2, edge2, Features.RPOBuilder.AssociativityType.ArcCenter, toolHelpPoint2)

'----positionierungsmass 2
holeFeatureBuilder1.SetExpression("45")

holeFeatureBuilder1.CreatePositioningDimension()

theSession.SetUndoMarkVisibility(markId6, Nothing, Session.MarkVisibility.Visible)

theSession.DeleteUndoMark(markId6, Nothing)

holeFeatureBuilder1.ApplyDimensions()

holeFeatureBuilder1.HidePositioningDimensions()

Dim feature1 As Features.Feature
feature1 = holeFeatureBuilder1.CommitFeature()

theSession.DeleteUndoMarksUpToMark(markId4, Nothing, False)

holeFeatureBuilder1.Destroy()

'----- markId8
Dim markId8 As Session.UndoMarkId
markId8 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, "Hole")
'System.Windows.Forms.MessageBox.Show(markId8)

Dim id1 As Session.UndoMarkId
id1 = theSession.NewestVisibleUndoMark

theSession.DeleteUndoMarksUpToMark(id1, Nothing, False)

theSession.SetUndoMarkVisibility(markId2, Nothing, Session.MarkVisibility.Visible)

theSession.SetUndoMarkVisibility(markId1, Nothing, Session.MarkVisibility.Visible)

theSession.DeleteUndoMark(markId1, Nothing)

End Sub
End Module


------------------
gruss urs 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz