I’m still in the adjustment phase with SolidWorks 2008. I’ve been trying hard to resist the urge to do everything in SolidWorks 2007, just because it’s the “familiar” environment and I already know where everything is. Instead, I’m trying to spend more time working on SolidWorks 2008, and, as a result, I keep finding new things (or things that have changed) here and there.
This time, while practicing my top-down assembly modeling skills, I ran into something called “Virtual Component”. Huh? Is it virtual because it doesn’t really exist? Well, not exactly. Apparently, in SolidWorks 2008, when you create a component in the context of an assembly (top-down modeling), you are no longer required to give it a name and save it right away, like before. Instead, the in-context component is saved inside the assembly document. You can work on it, delete it, insert more instances of it, pattern it, etc. You can do anything you would normally do with an in-context component! Anything? Yes, you can even create a component with no external references. “Hmmm, but what’s the catch?” you may wonder. Everything has a catch! Well, I haven’t found one yet. So far, the only catch is that, at some point, you may want to save those components as individual files… and you can do that too, so I guess it’s not much of a catch. The beauty of this is that, in the end, you only keep those in-context components that you really want, and the rest of them, the ones that used to accumulate inside your folder while you were changing your mind, those aren’t even there.
I tried this new functionality with a small assembly. A simple experiment first, just to understand how it worked. So, I created an assembly, using this little part that came with the “What’s New?” document, as part of a tutorial for the configurations property manager. The part (My_two_bolt_flange) has different configurations, and I wanted to see what happened to the in-context part when switching configurations for the referenced part and/or making changes to it.
I began by doing exactly the same I would’ve done in SolidWorks 2007 in order to create an in-context part: click on Insert Components, New Part, and choose a plane or a face where to place the in-context component’s base sketch. This will become the Front plane for the in-context component. In my case, I chose a face on one of the boss features of my first component, My_two_bolt_flange. Notice how a new part is added to the feature manager (Part7^My assembly), but I’m never prompted to name it or save it at this point.
I create my first sketch in this new part by converting the circular edge of one of the cut features in My_two_bolt_flange. Part7^My assembly is now an in-context part, referencing to geometry from My_two_bolt_flange.
Finally, I extrude the sketch and finish creating the part. I exit the Edit Component mode and go back to editing the assembly. This is exactly how I would’ve done it in SolidWorks 2007, except that here I didn’t have to save the part or even name it.
At this point, if I change the configuration of the referenced part (My_two_bolt_flange), the new in-context part updates too.
The same happens when I make changes to the referenced part. Here, for instance, I changed the diameter of the cut feature in the default configuration from 0.5 in to 0.7. After rebuilding the assembly, the new part updated, as well.
When the time comes to save my work, I am finally asked if I want to save the part I just created internally or if I want to save it as an individual file. If I choose to save inside the assembly, no other files are created. Next time I open my assembly, if any changes have been done to the referenced part (My_two_bolts_flange), all the parts in the assembly will update too, same as always.
If I want to save the part as an individual file, all I have to do is right click on it in the Feature Manager, select Save Part (in external file) and a dialog box will allow me to rename the file and select a path for it, which can be the same as the one for my assembly or a completely different one of my choice.
I like this new functionality, but I do wonder if it has the potential of creating huge assembly files. As far as I know, assembly files used to be small in size, because they didn’t actually contain any of the parts. These new assembly files that result from using virtual components do contain some of the parts inside of them. This has to make them bigger. But how much of an issue can this really be? I compared the size of an assembly with the part included as a virtual component and the same assembly with the part saved as an individual file. The size of the one with the virtual component was 388 KB, versus 184 KB for the one that had none. That seems like a big change, but then again, it may not mean much for the overall performance if the assembly continues to load as fast as before. I didn’t notice any changes between the two assemblies, but that may also be because they are very simple, with only two components. What are your thoughts on this new functionality? Do you use it? Do you notice any change in performance?































Recent Comments