Tuesday, May 20, 2008

STS#2e - Design Library

Due to the sheer number of posts on this subject, here's a handy guide to all of them.
#1 - Associative Copy/I-DEAS Baseline
#2 - Derive Component Part
#3 - Top-Down Design
#4 - Blocks
#5 - Design Library
#6 - Assembly Cut
#7 - Part Configurations

This is easily the weirdest technique I've seen. It serves as a reminder that even though SolidWorks is relatively quick to learn, it is going to take me a very long time to achieve the same level of understanding of the inner workings that I have with I-DEAS. I'm not starting from scratch exactly, but I do have oh so much to learn. I think this is yet another case of me using the software in an unintended way, but it seems to work.


We'll start with the same source part I've been using all along, named source.SLDPRT.

There is no context assembly with this method. Instead, the part is added to the design library. There are (at least) a couple of different ways to do this. For one, you can click the Add to Library button, and then you'll need to select the part.

Another way to do this is to select the part from the Feature Manager list, drag it out...

...and drag it into the Design Library pane.

As far as I know, the different folders are purely for organization, not specific functionality, so you can drop it wherever you want. Either way, you will be presented with a dialog:

I don't entirely understand what it is asking for. For example, the "File Type" pull-down only has the single entry - part - which makes sense since that is what I dragged in. It ought to know where I want it to go based on which folder I dropped it into, so this whole dialog seems redundant. So I'll just hit ok and go with it. The item will then appear in the Design Library:

I guess you want to center your model in the view window before doing this. I slid it to the side for the previous screen shot, and now the thumbnail that appears is skewed to the left. Oh well, not worth redoing.

And now, things turn interesting. Adding a part to the Design Library like this does not simply create a pointer to the original file. A new file has been created. Observe:

The one I created is on the left; the one SolidWorks created is on the right. Ok, so there is a separate folder structure for the Design Library. That's fine. But there's a key difference I can't explain: file size. The one in the design library is smaller. Why? What information is no longer there? Will I care? Regardless, it clearly did something other than a straight file copy to create this new file. Curious.

In order to build a new part from this source, I need to create a new file. I'll name it target_deslib. Then, drag the icon for the source file from the Design Library into the new window:

You will be prompted:

Keeping in mind that I have previously explored deriving a part, I was curious about what would happen here. That method required an assembly, but I don't have one right now. I found out that if you say "No" here, it just opens up the source file (ah, but which one, Grasshopper?). Not what I want. So let's say yes and see what happens.

Some very curious options here. I suppose this is one way to leave some baggage behind, but I can also see getting really mad when something I wanted isn't there because of some stupid checkbox. What's happening on the screen with the ghosty image is that I'm basically inserting the source part into my new part file. I can click and drop it anywhere I want, or using the checkbox to "Launch move dialog," I can refine the location relative to the origin of the new part. It's not worth bothering with right now, but for regular use this is what I would want to do. So I'll just drop it and continue:

I have no idea why the planes look like that. I also have no idea why they are being displayed, since they are normally turned off. Do notice the word "source" in the plane names; these are NOT the planes of the target part. Those planes are here:

(the little spheres indicate selected planes, and I have selected the target ones) This is why it is worth doing the move dialog, so that you can make all three pairs of planes line up. Not important for what I'm doing right now.

I'll perform a cut operation on the part, then let's take a look at the Feature tree.

We see the source item, and then the extrude I just cut off the part. Let's see what Find References has to say:

Interesting. It shows a link to the file in the design library, not my actual source part. As I was practicing the exercise, I saw a different answer when I viewed this form, but I was also doing it at a different point in time. So I'm going to save and close the part, then reopen.

And now the reference is to my original source file. Curiouser and curiouser. This is what I ultimately want, but it's strange that the form changed its mind.

Now let's make a change to the source part, and see how that propagates through.

Save and close the source part, then open up the target part to see what we have.

The target part has already been updated. This is another one of those cases where the source part is automatically opened if it has changed. Oh, and before I forget, let's head back to the source part and see what Find References has to say.

Bummer. Either I'm just not asking the right question, or SolidWorks (and/or their users) just doesn't care about where-used scenarios. I really, really hope that PDMW Enterprise gives me a better answer about this stuff.

So at this point, we've established the relationship, propagated a change, and all is well (or at least no worse than any of the other methods we've looked at). Now things take a turn for the weird. Keep in mind that there are two source files out there; my original, and then the not-quite-copied on in the design library. Now that I've made a change to the source, let's take a look at both files.

Again, mine is on the left. Mine shows the modification date corresponding to the change I just made. But look at the other one. It was accessed (probably at the time I opened up the target part), but it has not been modified. Interesting. Assuming this is some kind of a linked copy, I would have expected the modification date to get changed at the same time as the source. But it didn't, so this leads to a question: what happens if I create another part with this same method? I'll create a new file, save it as target_deslib2, and then drag the source part out from the design library again.

Uh oh, still has the big hole. So my suspicion is confirmed; since the modification date didn't get flipped, the part in the design library doesn't know about the change. Or does it? Playing a hunch, I'll save and close my new part, then reopen it.

Wow. Just wow. I guess I'll need to get in the habit of reopening files on a regular basis just to make sure that nothing has changed. I don't like this very much.

I'm not entirely sure I understand the exact role this mystery part plays in the process. So, just for grins, let's find out what happens if it isn't there. I'll delete the part from the design library:

It sends the part to the Recycle Bin, and I verify that the file has indeed moved. I'll empty the trash just for good measure. File gone. I fully expect this relationship to be broken now. Let's find out. Make a change to my source part:

Open up the target part, and...

WOW! I mean it: WOW! The relationship still exists! My cut is mad because it needs the circle I removed, but otherwise, everything appears fine. I guess I shouldn't be too surprised, since Find References did indeed point to my original file. Still, this just blew my mind.

Let's see if we can piece this together. The mystery part:
* Is basically a copy of the part, but as evidenced by file size, not an exact copy. Differences are unknown.
* Is required to create this part-to-part relationship.
* Is not required to maintain the relationship.
* Does not change when the original source file is changed.

So the purpose completely eludes me. Why not just make the item that appears in the Design Library simply be a link to the original file? That way it would always be live with the current state of the source part, not to mention occupying less file space. I don't get it.


Despite the oddity surrounding the mystery part, I think this is my favorite method so far. I can see creating an extrusions folder in the design library, and then adding items to that folder as we create them. The method here is fairly straightforward, and seemingly robust. I don't like that the part in the design library does not update with changes to the source, but since it mostly acts like a placeholder, I'm not too concerned about that. Worst case, we can delete the old one, then add a new one, whenever the source changes. I still hope we can get a better where-used query, but that seems to be a weakness for all of these methods. At any rate, unless I am given a better option to consider, I think I will go forward with this method.

1 comment:

Anonymous said...

Having read all these posts I am dying to know why configurations aren't considered an option! And particulary what you consider the downsides to be
We have a similar scenario and use design tables for cut length extrusions (also deals with machining)