Verification on rebuild

SW2005 Sp3.1
I just saww a post with reference to 'Verification on Rebuild'. I never bothered with that setting and it has always been turned off.
I've been working on a small injection molded part this way. It rebuilds fine. So, I thought I'd turn on 'Verification on Rebuild', do a rebuild and see what happens.
Boy , oh, boy...I get filleting errors that won't work no matter what I do.
My question is: If the model is fine without 'Verification on Rebuild' turned on, and I get what I want from it, why should I turn it on? Is it going to bite me to leave it turned off?
Aaron
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Yes, it can and will bit you. Big time. Remember, your part has geometry errors that just weren't caught. It's like those characters in the monster movies that close their eyes when the monster's coming - hello, the monster is STILL coming.
There are four things that can happen in your case:
1. A random rebuild later on will catch the errors and then you will HAVE to deal with them (I've seen this happen a few times) 2. You may not be able to export the model. A good check is a round trip translation - try to save as an IGES then bring it back in and see if it will be a solid again. Often on a part with a hidden error you can't even get through the first part (exporting will fail) 3. You will not be able to collaborate on this model with anyone who does use verification on rebuild. 4. You may have trouble adding later features because the underlying geometry is bad - and you won't know where the problem arises from to fix it.
What is the performance hit of using verification on rebuild? I have a part with lots of tough geometry - surfaces, lofts, knits, delete faces, etc. With it off, the rebuild time is 53 seconds. With it on, it rebuilds in 57 seconds. And those 3 seconds save me a world of downstream pain.
I work with it on because I know the problems of working with it off. Over one week three of the guys I work with called me over because they were having weird problems with their model that they couldn't explain. I turned on verification on rebuild, we got the errors to tell us where the source of the problems were, fixed them and moved on. We would not have been able to deliver the parts with it off, and all three guys now keep it active because they know it saves time in the long run. Last anecdote: One of my customers was having a terrible time with a model similar to the one I just described - everything he tried to add to a model just failed, he had to compromise on the part, etc. I decided to take a look at it and I saw a big error in the first major feature of the model - of course I saw it because I had verification on rebuild on. I looked at the feature properties for the model and saw he had been working on it for THREE MONTHS - to save a few seconds on rebuild time (maybe a couple of minutes a day) he spent three months on a fundamentally flawed model. His only option now is to do major, major repair and if it still is too f***ed up he may have to throw away three months of work and start over
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
The whole point is that your model is not alright. With this setting off SW does reduced checking. It let's things go that perhaps shouldn't be. Go through Ed Eaton's "Trees of Blood" or "Curvy Stuff" series if you are doing complex mold models and you will find a lot of tips on how to avoid problems, detect problems and fix problems.
Verification slows SW down, but may speed up getting to the end because you will make a more robust model with it on.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

do.
I design molds for a living. I like working with parts modeled in SW. However, I have major problems working on parts from people who have that box unchecked. The first thing that happens is that I am unable to scale the part for shrinkage.
I don't know how to fix your model. When I run into this my only recourse is to roundtrip it through parasolids or step. I then run import diagnostics and fix all of the bad faces. Then I have a part I can work with, but all of the features are gone.
I think that everybody should work with verification on rebuild checked, but I am sure that the folks who don't have what they think are valid excuses. When I get their crappy models, I'll fix them somehow and charge for my time.
Good Luck.
jk
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
I think that everybody should work with verification on rebuild checked, but I am sure that the folks who don't have what they think are valid excuses. When I get their crappy models, I'll fix them somehow and charge for my time.
JK
I'm not sure I would make such a sweeping statement. I totally agree when making anything with swoopy stuff in it. This would include sheet metal. But I live in the land of prismatics these days. There is probably little reason to have the box checked for me and one good reason to have it off, assembly rebuild times.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Yes, Paul. I totally agree with your point. However, who wants to have to remember to turn the thing back on when it is needed. My productivity gains come from other areas than saving micro-seconds on rebuilds.
I guess that's why the button is there in the first place.
jk
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Believe me, if it were only a question of micro-seconds, no one would turn it off. If you're making complex parts which take more than a minute to rebuild, verification can add a very significant chunk of time. When everyone is hollering for more speed, wouldn't you take a 20-50% increase if you could get it?
Personally, I work with it off. It's silly to work with it on all the time. If I make some geometry which is in any way questionable, I'll turn it on, ctrl Q, Tools/Check, fix errors if any, turn it off and keep working. Of course always check it before putting on the last batch of cosmetic fillets. Sometimes I'll check it if something that should work doesn't, or if something looks funny or a face disappears, etc.
I think this might be getting overstated. Even if you make complex shapes, not every part made with verification off is going to get an error when it's turned on. It is important to check every part, but not all the time. After working with it a while, you develop a bit of an intuition about things it's not going to like.
Matt
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

My point is that if you have to spend many hours a couple of times a year fixing a part because of this being un-checked-then all of your little seconds saved go down the toilet.
Doesn't matter to me though. I charge by the hour. Anybody who gives me a file with these problems just pays whatever it takes..............
jk
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
I suppose it is time for an integrity macro that turns this on, runs CTRL-Q and then runs check. Afterwards off it goes.
As an aside I always wondered why CTRL-Q was something nobody talked about or documented.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
snipped-for-privacy@cbd.net says...

Yeah, maybe the macro should save first.
I don't know why SW is so reluctant to share information about more than the basic functionality with users. Sometimes I forget that not everyone knows ctrlQ.
Matt
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Thanks for everyones input.
The problem area was on in inside cosmetic fillet. I have turned on verification and removed the fillets (for now). The parts isn't swoopy, but has some funky intersecting planes. i hope I figure out how to put the fillets in before I'm finished. I'm wondering , if the problems are only on finish fillets, that no features will be built on, can't I get away with it (verification off). I tried exporting as STEP and IGES and it came in fine with the fillets.
One more thing. It seems confusing to refer to Cntrl-Q as a rebuild, when it is different from the green/red light icon rebuild (or Edit --> Rebuild, or default Cntrl-B). For a long time I thought I was doing the same as Cntrl-Q by hitting the green/red light icon. If you look at the keyboard customization under 'Others' there it is 'Force Regen' - Cntrl-Q. So it's a regen, not a rebuild.
Now this is even more confusing, because when you look up 'Regenerate' under Help, it says 'see Rebuild'...ha! what a mess.
Aaron
matt wrote:

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
If you dig around in the API docs you will find this for CTRL-Q alias a forced rebuild:
Description
This method forces a rebuild of all of the features in the model whether or not they need a rebuild or not.
On the other hand the Red/Green Rebuild icon does this when captured in a macro:
Description
This method rebuilds only those features in the model that need a rebuild.
Give this a try guys. I'm not sure how the forced rebuild will behave with AddtoDB on so do this on a part already saved. I couldn't find TOOLS/CHECK in the docs or in a recorded macro so am assuming it isn't there. The AddtoDB call and the display call make the rebuild happen without affecting the display which should speed it up if my guess is right. The macro toggles verification on and off so that a normal rebuild and other operations won't be slowed down.
' ****************************************************************************** ' C:\DOCUME~1\KELLNERP\LOCALS~1\Temp\swx716\Macro1.swb - macro recorded on 07/29/05 by kellnerp ' ****************************************************************************** Dim swApp As Object Dim Part As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Dim FeatureData As Object Dim Feature As Object Dim Component As Object Sub main()
Set swApp = Application.SldWorks Set Part = swApp.ActiveDoc
Part.SetAddToDB True Part.SetDisplayWhenAdded (False)
swApp.SetUserPreferenceToggle swPerformanceVerifyOnRebuild, True retval = Part.ForceRebuild3(topOnly) swApp.SetUserPreferenceToggle swPerformanceVerifyOnRebuild, False
Part.SetAddToDB False Part.SetDisplayWhenAdded (True)
End Sub
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Paul, I was wondering if I could hit you up for a favor. If you think of it, could you do a 'feature statistics' on some of these prismatic parts sometime to see what the hit REALLY is on rebuild time? On curvy stuff I used to think like matt that it was significant but in my latest tests it has been relatively trivial (3-4 seconds per minute of rebuild time)so the returns vs costs curves intersect in favor of 'verification on rebuild'. I wonder if the performance gains are more or less significant on prismatics? I need to find out because I will be giving 'trees of blood' at user conferences in Wisconsin and LA this fall (and likely SWX world next January though I haven't heard anything back yet on the submission). I would like to have good data to base my advice on because it is a subject that needs more exposure - I have seen so much time wasted because people didn't know about it or think that the cahnge in rebuild time is significant, but on prismatics it might not be to the users benefit to enable it.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
I tried this on one model made mainly from surface lofts and fills, 163 features. 3 ctrlQs with verification on and off gave an average of :
Off: 142 seconds On 180 27% increase
On another one that had some complex shapes, some surfacing, but mainly ribs and fillets (574 features)
Off: 223 On: 389 55% increase
A third model which was exclusively solids, mainly extrudes and fillets with 166 features went this way (on a slower computer):
Off: 93 On: 135 45% increase
Anyway, I wish this setting were not so costly, but then if it weren't costly, there would be no need for the switch to exist. I definitely run with it off, and toggle it on at critical points and the end.
Matt
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
OK, this looks to be one of those fascinating topics. matt's numbers caused me to second guess what I had found, but when I checked, sure enough, on pretty much all the 'complex' parts I pulled up from the last couple of years of work there was only around a ten percent difference, and on some there was less than 2! (sorry I don't have the numbers handy - they are at work) The only exception was a vacuum formed part that was all solid features with fillets and a shell - that came close to 25%.
I would bet anything that Paul's theory about feature types is true, though I wonder if that might be expanded to basic modeling strategy. In my unscientific analysis of about 6 parts, it seems that the more surface work you do to make your solid the less verification on rebuild spanks you. That might be why I am seeing less of a hit than matt - not that he doesn't use surfaces, but based on seeing some of his stuff and how he dissected a modeling problem I think we *might* have a fundementally different approach that could account for some of this.
Of course SWx version (I tested 2005 sp 3.1) and hardware (I have dual CPUs) might have something to do with it too. I would have to control for a lot of variables to tunnel through this one (for instance, in every test I flipped to check email while the model rebuilt - could that make a difference?)
I wish I was more at leisure to look into this - these differences that he and I are seeing are the little kinks in the system that lead to big truths when you dig a little.
Thanks guys... this is turning into a cool thread. -Ed
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Ed,
I think you're right about the solids/surfaces issue. My parts with a bigger percentage of surfaces didn't take as big a hit. I tend to do the big overall complex shape in surfaces, then make it solid and shell/rib/fillet. I think shells and fillets in particular give verification a harder time.
I might be able to do more investigation with a completely surfaced part, and some more completely solid parts. My "prismatic" parts are still fully drafted and radiused plastic parts, not sure how that compares to kellnerp's prismatic parts (machined?).
Matt
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
FWIW I have updated my benchmarking site with two utilities:
Rebuild.swp which I posted as source a few days ago and TSToolbox which some people have been looking for. Rebuild has a timer in it now which reports rebuild time in a message box. TSToolbox might come in handy checking the effect of older version information in new documents in that it reports the version history of a document.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
My understanding as to what Verification on rebuild actually does (which tallies with why it works hardest on shells, internal fillets and such):
When you do a forced rebuild WITHOUT Verification, every surface is checked to ensure it does not interpenetrate with ADJACENT surfaces in the model
When you do a forced rebuild WITH Verification, every surface is checked to ensure it does not interpenetrate with ALL surfaces in the model
It used to be easy to fool SldWks with it turned off: shell a rectangular block, then put an exterior fillet around the top face, radius exceeding wall thickness. In the old days, this would create a dodgy Escher figure where the interior square corner protruded past the exterior fillet, but the rebuild would only fail if VoR was turned on.
I think you have to try a little harder these days, but the same principles seem to apply, which gives you a steer as to when it might be important to turn it on.
Sorry if everyone already knew this, it's just no-one seems to have mentioned it here.
Andrew Troup

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On a prismatic part (409.878.sldprt) with 384 features TS Toolbox gives:
26 s 23 s 23 s
With VOR set to on:
28 s 27 s 27 s
This part has no relations or dimensions in it. Nor does it have anything approaching a problem or questionable geometry.
Adding a shell feature to the highly prismatic part*
29 s 29 s 28 s
with VOR enabled:
40 s 41 s 40 s
So it appears that the types of features in a part have a great influence on the effect of VOR and not just the complexity of the geometry. The thought occurred that I should test with features from the three or four classes you came up with in one of your presentations. I don't have that list handy right now.
Equally important in any discussion of rebuild performance is the effect of errors. I haven't looked into that yet coupled with VOR.
*I am using a level 6 result from the STAR2.1 benchmark.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
I was running the macro on a model of an electric motor. The creator of the model used multibodies and didn't bother to combine at the end. There were 43 solids in the part due in large part to patterning the fins. What I discovered was that adding a combine more than doubled rebuild times. So perhaps using multibodies in a part without merging or combining is a "trick" that could be used to get rebuild times down significantly.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.