Skip to main content

Posts

How to use pySW - a Python Solidworks VBA API wrapper

Recent posts

How to Fix Microsoft Mouse 3500 Wheel Scrolling Issue - Jump or Random Movement

 It is hard to deny the fact that a mouse is one of most important peripheral devices of a desktop or laptop computer - inexpensive and portable input device. Personally I don't want to replace it with other alternatives such as trackpad, trackball or trackpoint.   Microsoft 3500 is one of reasonably priced wireless mouse products available in the market. You may experience small or large troubles while using any mouse products. I experienced jumping or random movement while scrolling the web pages or zooming a object in and out in 3D software such as Solidworks or Blender. The quick and easy actions we can take is to replace battery, check other software, restart the computer, reinstall the mouse driver, switch USB port, and so on. Since my gut told me it would be a physical issue, I decided to open the mouse and check the wheel.   First I thought simply cleaning dust around the wheel would be sufficient. According to previous experiences of other mouse product...

Considering other topics such as fusion 360 API and casual troubleshooting...

I haven't used this blog site for a quite long time. Time to blow dust off, replace old picture frames with new ones, renew this space. Hopefully I can warm up this space and make it more lively. Also youtube channel... So sad... Kept uploading and deleting videos... It is hard to set up consistent theme in my cyber space. Two purposes of blog re-writing: one is my memory aid or activity record, and the other is knowledge-sharing.  I cannot keep writing Solidworks API topics. The first reason is I don't have a working knowledge and experiences to continue. Second, I want to learn and use python but it doesn't seem to be officially supported with primary Solidworks API. Solidworks PDM API may support it but I am not interested in it. Third, I cannot obtain SOLIDWORKS Document Manager API license key. The CAD specialist in my workplace manages the access priviledge of it but I don't have directly-related work tasks. Vba macro script is still available without the license ...

Solidwork API Programming: The centerline macro updated!! Run with macro button~

The centerline macro updated!! I didn't expect I can play with solidworks API programming again but it is actually interesting stuff. So the centerline macro code I wrote a long time ago was reviewed and I decided to modify just a single line. It makes a difference. The code was updated and accordingly the post updated as well. You can copy and paste and try to run referring to previous post. https://spaceunity.blogspot.com/2007/10/solidworks-api-programming-part-2.html The problem of previous code was the centerline can be made only on the rectangular face. Just simple change can make the target face to any polygon with an even number of edges.  Here are changes: ... For i = 0 To nEdgeCount / 2 - 1 Set swSketchSeg = pModel.CreateLine2( _ vMidPts(i * 3 + 0), vMidPts(i * 3 + 1), 0, _ vMidPts(i * 3 + nEdgeCount * 3 / 2), vMidPts(i * 3 + nEdgeCount * 3 / 2 + 1), 0) swSketchSeg.ConstructionGeometry = True Debug.Print "vMidPts-from (...

Solidworks API Programming: Centerline Macro

Solidworks API Programming Part 2: Sketching the cross center line on random rectangular surface Precisely speaking, this program is for the random surface which has even number of edges. Nevertheless, this program is used to draw centerline within sketch on the surface. No matter how it forms angle with front, top or right plane, program should sketch the centerline correctly. So it's not simple. To do so, I need to consider transformation between 3D space and 2D sketch coordinates. Of course This kind of transformation function is supported by Solidworks API. Way to go! 1. Make new macro Just click Tools - Macro - New 2. Source code analysis In VBA, Comment symbol is ' (single quotation) and Continuation symbol is _ (underscore). '-------------------------------------- ' ' Preconditions: ' (1) Part or assembly is open. ' (2) Face is selected. ' ' Postconditions: Plane or face on which ' selected sket...

Solidworks API Programming: Macro Recording and Editing

Solidworks API Programming, Part 1:  Automatically generated VBA source code analysis Let's start Solidworks API Programming with macro source code analysis. I just explain what I have done in person. Although I have not read the book, "Automating SOLIDWORKS 2006 using MACROS ( http://www.amazon.com/Automating-SOLIDWORKS-2006-using-MACROS/dp/1585032638 )", I think it could be a good reference for serious users. If you know better or best book for Solidworks API Programming, please leave the comment. 1. Macro Recording: Tools - Macro - Record This is the common function of MS-based programs which support VBA just like Excel. This function record the user action itself converting it into VBA source code. 1) Just click Tools - Macro - Record 2) Do what you want to do within solidworks like sketching and extruding 3) After finishing your work, just click Stop 4) Save window pops up. Write the filename and save it. 2. Macro Editing: Tools - Macro - Edit... L...

Solidworks API Programming

From now on, I am going to talk about famous 3D modeling tool Solidworks from the scratch. Specifically speaking, this talk is about Solidworks API 2006 Programming. At first, I recommend you scrutinize API Help and establish the architecture of API in mind. Let's start. Go to http://www.solidworks.com/pages/services/APIDownloads.html and download Solidworks 2006 Online Help. Run apihelp.chm Browse Solidworks API Help in the Contents tab. - Programmer's Guide: Must read !! - Getting Started Standalone Application and Add-in Application .NET (VB, C#, C++), ATL COM C++ Solidworks Macro and VBA script - Solidworks API Object Model: Must check !! Sldworks (Solidworks itself) ModelDoc2 (Modeling Files) PartDoc / AssemblyDoc / DrawingDoc - Examples and Projects: Very helpful example snippets and complete code for VBA and VB. But, insufficient for VB.NET, C# and particularly ATL COM C++. You can look for examples at solidworks.com's api support...