| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX | | |  | Solid Edge 2025 First Look Online-Event 14.11.2025, eine Pressemitteilung
|
Autor
|
Thema: Journal NX5 - Create Pocket (949 mal gelesen)
|
met Mitglied CAD-Admin / Konstrukteur
 
 Beiträge: 142 Registriert: 23.07.2004
|
erstellt am: 17. Mrz. 2015 15:23 <-- editieren / zitieren --> Unities abgeben:         
Hallo, hat jemand ne Ahnung, wie man in einem vb journal eine Pocket erzeugen kann? Bohrungen mache ich so... Code: Public Shared Function NXCreateHole(myPart As Part, _ myBody As Body, _ myPoint As Point3d, _ myDiameter As Double, _ myDepth As Double, _ mySinkDiameter As Double, _ mySinkDepth As Double, _ Optional myDirection As DatumAxis = Nothing) As Features.Feature Dim HolePoint As NXOpen.Point = myPart.Points.CreatePoint(myPoint) Dim holePackageBuilder1 As Features.HolePackageBuilder holePackageBuilder1 = myPart.Features.CreateHolePackageBuilder(Nothing) holePackageBuilder1.GeneralHoleForm = Features.HolePackageBuilder.HoleForms.Simple holePackageBuilder1.HolePosition.AddSmartPoint(HolePoint, 1) holePackageBuilder1.GeneralTipAngle.RightHandSide = "0" holePackageBuilder1.GeneralHoleDiameter.RightHandSide = myDiameter holePackageBuilder1.GeneralHoleDepth.RightHandSide = myDepth If mySinkDepth > 0 Then holePackageBuilder1.GeneralHoleForm = Features.HolePackageBuilder.HoleForms.Counterbored holePackageBuilder1.GeneralCounterboreDiameter.RightHandSide = mySinkDiameter holePackageBuilder1.GeneralCounterboreDepth.RightHandSide = mySinkDepth End If If Not myDirection Is Nothing Then Dim direction1 As Direction = myPart.Directions.CreateDirection(myDirection, Sense.Forward, SmartObject.UpdateOption.WithinModeling) holePackageBuilder1.ProjectionDirection.ProjectDirectionMethod = GeometricUtilities.ProjectionOptions.DirectionType.Vector holePackageBuilder1.ProjectionDirection.ProjectVector = direction1 Dim Vx As Vector3d = myDirection.Direction If myDirection.Origin.X <> myPoint.X And myDirection.Origin.Y <> myPoint.Y And myDirection.Origin.Z <> myPoint.Z Then Dim AxisX As DatumAxis = myPart.Datums.CreateFixedDatumAxis(myPoint, New Point3d(myPoint.X + Vx.X, myPoint.Y + Vx.Y, myPoint.Z + Vx.Z)) End If End If Dim targetBodies5(0) As Body targetBodies5(0) = myBody holePackageBuilder1.BooleanOperation.SetTargetBodies(targetBodies5) Dim Hole As Features.Feature = holePackageBuilder1.Commit() Return Hole End Function
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TheTutuut Mitglied

 Beiträge: 51 Registriert: 08.04.2010 NX4 - NX8.5 TC8.3 TC2007 TCeng2005SR1
|
erstellt am: 24. Mrz. 2015 09:02 <-- editieren / zitieren --> Unities abgeben:          Nur für met
|

| Projektmanager (m/w/d) Bauplanung | Arbeite mit uns an einer zukunftsfähigen Energieversorgung! Wir machen Erneuerbare aus Überzeugung: ABO Energy plant und errichtet weltweit Wind- und Solarparks sowie Batterie- und Wasserstoffprojekte. Seit fast 30 Jahren bieten die hausinternen Fachabteilungen von ABO Energy alles aus einer Hand: von der Standortbegutachtung, Planung, Genehmigung und Finanzierung bis hin zu Errichtung, Stromvermarktung, Netzanschluss, Betriebsführung und Service.... | Anzeige ansehen | Feste Anstellung |
|
met Mitglied CAD-Admin / Konstrukteur
 
 Beiträge: 142 Registriert: 23.07.2004
|
erstellt am: 24. Mrz. 2015 09:48 <-- editieren / zitieren --> Unities abgeben:         
Hab's gefunden Code: Public Shared Function NXCreateSlot(myPart As Part, _ myBody As Body, _ myPoint As Point3d, _ myDepth As Double, _ myDimensionX As Double, _ myAxisX As DatumAxis, _ myAxisY As DatumAxis, _ myAxisZ As DatumAxis) As Features.Feature Dim DPB As Features.DatumPlaneBuilder = myPart.Features.CreateDatumPlaneBuilder(Nothing) Dim plane1 As Plane plane1 = DPB.GetPlane() plane1.SetMethod(PlaneTypes.MethodType.TwoLines) Dim geom1(1) As NXObject geom1(0) = myAxisX geom1(1) = myAxisY plane1.SetGeometry(geom1) plane1.SetAlternate(PlaneTypes.AlternateType.Three) plane1.Evaluate() Dim DP As Features.DatumFeature = DPB.CommitFeature() Dim aktUF As UFSession = NXOpen.UF.UFSession.GetUFSession() Dim location() As Double = {myPoint.X, myPoint.Y, myPoint.Z} Dim direction() As Double = {myAxisZ.Direction.X, myAxisZ.Direction.Y, myAxisZ.Direction.Z} Dim x_dir() As Double = {myAxisX.Direction.X, myAxisX.Direction.Y, myAxisX.Direction.Z} Dim len() As String = {myDimensionX, 500, myDepth} aktUF.Modl.CreateRectPocket(location, direction, x_dir, len, 0, 0, 0, DP.Tag, myBody.Tag) Return Nothing End Function
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |