In our company we are using more and more blocks for our hydraulic schemes. We need to build these drawings for our machines. Normally whe "drag and drop" our block into the drawing. A lot of times these blocks needs to be rotated (90, 180 or 270 degrees). I want to make an button which will rotate these blocks 90 degrees (counter)clockwise.
What I would like to have is the next sequence:
- The user selects a block in the Drawing.
- The user click on the button "rotate block 90 degrees clockwise" (Or the button "rotate block 90 degrees counterclockwise").
- The macro will make sure that the block is able to rotate (Uncheck the "Lock angle" checkbox. See image "select and rotate motor.jpg").
- The macro will rotate the block 90 degrees (counter)clockwise.
I already have a little peace of code. At this moment it doesn't always work. Also at this moment it will only rotate a predefined block (motor). If I select an other block, like block "filter", it should only rotate block "filter". Also the selected block should rotate around it's own centerpoint (or insertpoint).
Dim swApp As Object Dim Part As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Sub main() Set swApp = _ Application.SldWorks Set Part = swApp.ActiveDoc boolstatus = Part.Extension.SelectByID2("motor", "SKETCHSEGMENT", 0.2521909783982, 0.1883344360771, 0, False, 0, Nothing, 0) Part.Extension.RotateOrCopy False, 1, False, 0.1497784295293, 0.1809095839578, 0, 0, 0, 1, 0.1883344360771 End Sub
Thank in advance.