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? (1208 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



Entwicklungsingenieur (m/w/d) Development Stack Design

Das neu gegründete Joint Venture EKPO Fuel Cell Technologies (EKPO) ist Full-Service-Supplier für Brennstoffzellenstacks und Komponenten. Unsere Technologie, unsere Anwendungen und unsere Produkte für die Brennstoffzelle basieren auf Know-how, das wir in über zwei Jahrzehnten aufgebaut haben. Zusammen sind wir seit über 200 Jahren im Business. Wir verstehen unsere Kunden und wissen, wie hoch die Anforderungen im Automotive-Bereich sind....

Anzeige ansehenEntwicklung
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