Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  Bohrung an Bezugspunkt

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 an Bezugspunkt (1876 mal gelesen)
met
Mitglied
CAD-Admin / Konstrukteur


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

Beiträge: 137
Registriert: 23.07.2004

Solidworks 2017
TCE 9.1.3
NX 5
3ds max 2017/2019
CorelDraw 12

erstellt am: 18. Mrz. 2008 17:52    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,

mit folgenden journal kann man eine Bohrung auf eine Ebene platzieren.
Wie kann ich die Bohrung automatisch auf einen Bezugspunkt den ich auswähle festsetzen?


Code:
' NX 5.0.1.4
' Journal created by met on Fri Feb 29 08:22:10 2008 Westeuropäische Normalzeit
'
Option Strict Off
Imports System
Imports NXOpen

Module NXJournal1
    Sub Main()
        Dim theSession As Session = Session.GetSession()
        Dim theUI As UI = UI.GetUI()
        Dim workPart As Part = theSession.Parts.Work

        Dim ObjList() As NXObject = Nothing

        theUI.SelectionManager.SelectObjects("Plazierungsfläche wälhen", _
            "Bohrung", Selection.SelectionScope.WorkPart, _
            True, False, ObjList)
        Dim PosPlane As NXObject = ObjList(0)

        Dim PosPoint As NXOpen.Point3d = New Point3d(500, 60, 60)

        Dim H As Features.HoleFeatureBuilder
        H = workPart.Features.CreateHoleFeatureBuilder(Nothing)
        H.SetSimpleHole(PosPoint, False, PosPlane, "50")
        H.SetDepth("50")
        H.CreateHole()

        H.CommitFeature()

    End Sub
End Module


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

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


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

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 18. Mrz. 2008 19:44    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 met 10 Unities + Antwort hilfreich

Hallo met,

Du brauchst noch einen Dialog zur Positionsangabe, dessen Ergebnis dann dem PosPoint zugewiesen wird. Anbei ein Beispiel. Oder versuch' doch mal, während einer Positionsangabe ein Journal aufzuzeichnen.

Gruß, Michael

Option Strict Off

Imports System
Imports System.Windows.Forms

Imports NXOpen
Imports NXOpen.UF
Imports NXOpen.UI
Imports NXOpen.Utilities

Module specify_screen_position

  Dim s As Session = Session.GetSession()
  Dim ufs As UFSession = UFSession.GetUFSession()


Sub Main()

    Dim n As String = vbCrLf

    Dim screenpos As Point3d

    ufs.Ui.OpenListingWindow()

    While SelectPoint(screenpos) = Selection.Response.Ok
        ufs.Ui.WriteListingWindow("X:" & screenpos.X.ToString() & n & _
                                  "Y:" & screenpos.Y.ToString() & n & _
                                  "Z:" & screenpos.Z.ToString() & n & n)
    End While

End Sub

' Prompts the user to select a position on the screen
Function SelectPoint(ByRef screenpos As Point3d) As Selection.Response
    Dim view_tag As NXOpen.Tag
    Dim point(2) As Double
    Dim response As Integer
    ufs.Ui.LockUgAccess(NXOpen.UF.UFConstants.UF_UI_FROM_CUSTOM)

    Try
        ' Hier evtl. SpecifyScreenPosition ersetzen
        ufs.Ui.SpecifyScreenPosition("Select location", _
                          Nothing, IntPtr.Zero, point, view_tag, response)
    Finally
        ufs.Ui.UnlockUgAccess(NXOpen.UF.UFConstants.UF_UI_FROM_CUSTOM)
    End Try


    If response <> NXOpen.UF.UFConstants.UF_UI_PICK_RESPONSE Then _
                                          Return Selection.Response.Cancel
    screenpos.X = point(0)
    screenpos.Y = point(1)
    screenpos.Z = point(2)

    Dim viewTag As NXOpen.Tag = s.Parts.Work.Views.WorkView.Tag
    Dim myColor As UFObj.DispProps
    myColor.color = 186

    ufs.Disp.DisplayTemporaryPoint(viewTag, UFDisp.ViewType.UseCursor, _
                          point, myColor, UFDisp.PolyMarker.Asterisk)

    Return Selection.Response.Ok

End Function

  Public Function GetUnloadOption(ByVal dummy As String) As Integer

      GetUnloadOption = UFConstants.UF_UNLOAD_IMMEDIATELY

  End Function

End Module

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

met
Mitglied
CAD-Admin / Konstrukteur


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

Beiträge: 137
Registriert: 23.07.2004

erstellt am: 19. Mrz. 2008 09:27    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 Michael,

danke für die schnelle Antwort. Den Punkt auswählen bekomm ich hin... Aber wie kann man eine Assoziative Positionierung erstellen? Die Bohrung soll eine Point onto Point Verknüpfung erhalten.

Ich möchte damit eine Plane und einen Point auswählen und auf diese mehrere unterschiedliche Bohrungen erstellt(verknüpfen) werden.

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



Elektroplaner / Elektrokonstrukteur EPLAN (m/w/d)
Starte noch heute deine IT- und Engineering-Karriere bei FERCHAU und entwickle die Innovationen von morgen. Wir suchen dich: Als Manager:in weißt du, worauf es ankommt, und setzt die richtigen Prioritäten. Wir realisieren spannende Projekte für namhafte Kunden in den Technologiebereichen Elektro- und Automatisierungstechnik und arbeiten mit an Innovationen für den Mittelstand. Du möchtest dein Potenzial ...
Anzeige ansehenElektrotechnik, Elektronik
mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


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

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 19. Mrz. 2008 11:50    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 met 10 Unities + Antwort hilfreich

Hallo met,

gute Frage ... Möglicherweise geht's mit einem zuvor gesetzten, assoziativen Punkt. Da hättest Du anstatt der Positionsangabe eben die Abfrage des Punkts im Program und kannst aus diesem seine Koordinaten auslesen.

Gruß, Michael

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