03-21-2024
02:45 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
03-21-2024
02:45 AM
With the examples I built the following:
I'm able to make a solid feature that I can angle much like a flange, and be able to measure.
Public Sub Main() Dim partDoc As PartDocument = ThisDoc.Document Dim oCompDef As PartComponentDefinition = partDoc.ComponentDefinition Dim transBRep As TransientBRep = ThisApplication.TransientBRep Dim transGeom As TransientGeometry = ThisApplication.TransientGeometry Dim edge As Edge = ThisApplication.CommandManager.Pick(SelectionFilterEnum.kPartEdgeFilter, "Select an edge.") Dim egdeLength As Double = ThisApplication.MeasureTools.GetMinimumDistance(edge.StartVertex, edge.StopVertex) Dim line As LineSegment = edge.Geometry Dim startPoint = line.StartPoint Dim translationVector = transGeom.CreateVector(startPoint.X, startPoint.Y, startPoint.Z) Dim vector1 = transGeom.CreateVector(0, 0, 1) Dim vector2 = line.Direction.AsVector() Dim matrix As Matrix = transGeom.CreateMatrix() matrix.SetToRotateTo(vector1, vector2) matrix.SetTranslation(translationVector) Dim boxMinPoint As Point = transGeom.CreatePoint(0, 0, 0) Dim boxMaxPoint As Point = transGeom.CreatePoint(0.3, -10, egdeLength) Dim box As Box = transGeom.CreateBox() box.Extend(boxMinPoint) box.Extend(boxMaxPoint) Dim oBody As SurfaceBody = transBRep.CreateSolidBlock(box) transBRep.Transform(oBody, matrix) matrix.SetToRotation(90*PI/180, vector2, line.StartPoint) transBRep.Transform(oBody, matrix) partDoc.ComponentDefinition.SetEndOfPartToTopOrBottom(True) Dim oBaseFeature As NonParametricBaseFeature = oCompDef.Features.NonParametricBaseFeatures.Add(oBody) partDoc.ComponentDefinition.SetEndOfPartToTopOrBottom(False) End Sub
This is kinda what I wanted, but not sure if it is what I need.
Just need a 'face' in the position of the flange, before a flange is created, to measure it with workplane XY
I can measure the difference in angle in the direction of the flange.
If inventor measures an angle in the width direction of the flange, I can ignore it
If the angle of the flange is in +30deg/-30deg range of workplane XY, I should align the flange to be created with the workplane XY