I am trying to place OBD structural member along a bspline. I have CSpoints along the bsplines that follow the curve but the OBD member is slightly rotated?
both start and end points are located by curve surface intersection and both have their z up?
Richard,
I have used Structural Member Rotation property input to get this work.
I have used Function DotProduct ,to get the dotproduct of 2 vectors , for that I have used baseCS.XDirection and CS.XDirection [CoordinateSystems placed along curve].
Passed this dotproduct values to Rotation = Asin(Angles) ..
Code looks like below
transaction 2 stateChange 'Change Angles, structuralMember1'{ gcModel { node User.Objects.Angles Bentley.GC.NodeTypes.FunctionCall { Technique = 'Default'; Function = DotProduct; vector1 = coordinateSystem1.XDirection; vector2 = baseCS.XDirection; GraphLocation = {1664.225, 32.703, 0.0, 152.4}; } node User.Objects.structuralMember1 Bentley.GC.NodeTypes.StructuralMember { Technique = 'ByStartPointDirectionLength'; CatalogItem = {'Steel Column','Column'}; StartPoint = coordinateSystem1; Direction = coordinateSystem1.ZDirection; Length = 400; CrossSection = '1000WB322'; Part = {'Structural - Steel', 'Columns_BracedFrame'}; Rotation = Asin(Angles); GraphLocation = {990.6, 36.5}; } }}
See image below where I can see my Structural columns now properly aligned to Coordinate System placed along curve.
[This should be by default align to CoordinateSystem, filing defect for this]
HTH,
Rg,
Sandeep
will this defect be a patch that will be sent out to license holders?
Hello Richard,
If you look into the attached sample file you can see that i have used the By Points Technique to create the structural members, it works perfectly fine for me. https://communities.bentley.com/cfs-file/__key/communityserver-discussions-components-files/360/ByPoints-Structural.gct
and you please post the dgn?
Definitely, here is the dgn file. ByPoints Structural.dgn
Alifur, if I need to rotate the structural member by 180 degress? how will I do that? refer to snap shot.
Alifur, did you try to do all this with the file I sent you?