Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations MintJulep on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Creating a build opposite of an existing part

Status
Not open for further replies.

rg006

Mechanical
Mar 25, 2008
65
Hey,
I have been playing around with trying to find a way to successfully create a build opposite of an existing part using a macro. I do not mean simply mirroring a body.
The problem is that everything is extremely picky.
Basicly, for an example, I have opened a new part with nothing in it. Created the three basic planes (zx,xy,yz) and named them. Now I can create some sketches and geometry/bodies whatever. I created a macro the sets the work part to the original three planes and reverses their direction. Sometimes this works fairly well. Other times you have to go sort out the mess.
Does ug support anything like this. All I really need to be able to create is a LH version of a RH tool. Because of issues with using the mirror command in the past, this is not an ideal option for our situation. Also, to idiot proof our files we do not want excess geometry out there that someone could come in and use for a mill program. Another difficulty is with an old part file, where I did not originally have the three named planes to base everything else off of.
Thanks,
Rick
Mech. Eng./Designer
 
Replies continue below

Recommended for you

You can mirror a body, or a linked body and do it at a timestamp in order to arrange it so that the thing can be machined while ignoring a certain number of holes or later added features. You can add the plane where you like and pretty much when you like.

Like John I can't quite figure out what your difficulty is such that you couldn't achieve whatever you need to by planning to use the system as intended. I suspect you may simply be best served by experimenting more with the settings in the different mirroring operations available within NX.

Best Regards

Hudson

www.jamb.com.au

Nil Desperandum illegitimi non carborundum
 
The difficulty is this. In the past we have used mirror commands quite often. We usually will end up making modifications and using and old part as a reference for a new one (copying an old one and modifying it instead of starting from scratch). However, when an old tool is used that has mirror commands there are two sets. One the original build, maybe on layers 7 and 8, and the other with its main bodies on layers 17 and 18. In the event that a part needs to be used in an assembly from both the old and new file, then we have had confusion in the past about which build is the correct one. Sometimes we have had the problem that when we needed to go back in and do a mill program we did it on the wrong build and ended up building the tool backwards. To just avoid all of this, we want to be able to have part files that do not have both builds. But this means that any time we need a build opposite we would have to start from scratch unless we can find a way to completely reverse a part file. In addition to this, we have dedicated people who do design and modeling and another person will do the drawings. If there are two sets of a model(one on layers 7 and 8 and the other on layers 17 and 18) and the drafting guy does not know which is the correct one he has to go figure it out from someone else, which wastes time. Or worse if he does not realize that layers 17 and 18 have anything on them, then the tool could be drawn backwards.

And just to point out one more thing, we do not care about being able to undo the changes that create the build opposite. We always keep the past versions of parts on file so we can always revert back to an earlier version if we dicide later on that we do not want the build opposite.
Thanks,
Rick
 
I guess I'm confused about this also. When we have a situation in which an opposite model is required, we bring the parent into a new file as a component, then mirror and modify as required, replacing the parent reference set with "Empty". Each is its own part, and confusion is kept to a minimum.

"Good to know you got shoes to wear when you find the floor." - [small]Robert Hunter[/small]
 
Haven't tried it in NX, but a Wildfire trick for mirrored parts was to use three files.
File 1 = original part
File 2 = opposite hand part
File 3 = Assembly of File 1 and File 2

Mirror the body from File 1 around a datum plane in the assembly File 3 and with File 2 as your active work part.


"Wildfires are dangerous, hard to control, and economically catastrophic."

Ben Loosli
 
Just like Ben said, you can have 3 files.
One top assembly file, one RH part and one LH part.
Make LH part the work part and do a wave geometry mirrored link.

Or you can have two file, one RH file and attach the LH in it and do a wave geometry mirrored link.

Now your each of your file would have its own model, either LH or RH.

UGNX5.0.4.1 MP6 \ WinXP-SP3
Productive Design Services
 
Forgot to mention, when using only two files, make sure you make the reference set of the LH empty before saving so that it would not show up on the RH part.

UGNX5.0.4.1 MP6 \ WinXP-SP3
Productive Design Services
 
I would recommend the 3 file approach and if the relative location of the LH versus the RH part, as seen in the common 'assy' file, is not important, once the WAVE-linked files are created and saved, there is no need to ever reopen the common assy since the WAVE 'links' themselves are always 'peer-to-peer'. The common assy was needed ONLY as a means for having both parts accessible at one time so that the part file to part file transfer could take place, but as far as WAVE is concerned, the ONLY thing the common assy provided was the spatial relationship between the two parts and if that's not important, which is generally the case when the individual parts are going to positioned relative to (i.e. 'mated') whatever assembly they are eventually going to be used in, then the common assy serves NO future purpose at all and could even be deleted if you wanted to and it would have NO impact whatsoever on the WAVE relationships between the LH and RH parts.

Note that while the 2 part scheme will work, the 3 part is much cleaner since from an external point of view, the LH and RH part files can be treated the same whether they are both used in some downstream assy, or if only one or the other is used.

The only thing to remember is that if a change is made in whichever is the 'parent' part and you wish to have that change propagate to the 'child', you will need to open them both in the same session. They do NOT need to be opened in the SAME part file, like an assembly, just both open in the same session and then after the 'child' updates to reflect the changes in the 'parent' you need to save the 'child' part.

John R. Baker, P.E.
Product 'Evangelist'
Product Design Solutions
Siemens PLM Software Inc.
Cypress, CA

To an Engineer, the glass is twice as big as it needs to be.
 
Thank you for the comments. I tried the 3 file approach and it still leaves me in the situation where now I have file 1 (build) and I have file 2 (build opposite). I can edit file 1 independent of file 2, however, file 2 is only a lot of linked mirror objects that I cannot change or edit later on. Basicly, what I need is this:

File 1 File 2
build build opposite
editable editable

I need to start with one tool, be able to copy it over to the build opposite, and then have both of them unlinked for editing in the furture. Is there a way to get the WAVE mirror linked feature to copy everything, including sketches/datums/extrudes, so that they can be modified later? Later on I know that one of the files will need to be changed without changing the other file. More than likely both will need to be changed independenty of each other. I need to end up with two complete work part files where I can go back in and edit all the original sketches, etc.
Thanks,
Rick
 
NO, there is no practical way of creating a true mirrored feature-based model. After all, there are certain conventions, like positive angles going anti-clockwise which is also the basis for the right-hand rule, which is just another way of expressing the idea that the cross-product of the X and Y axis defines the direction of the Z axis, and these conventions must be maintained or the entire mathematical basis of the data model would collapse.

However, we are aware of the situation which you have described and recommend that you build your original model to the point where you have the 'common' content, mirror that configuration (using the WAVE techniques outlined previously) and then add the LH and RH specific features after that.

Or if that is not practical, we would recommend that you become familiar with Direct Modeling, or what starting in NX 6.0 is now referred to as Synchronous Modeling, which will allow you to easily edit, and in some cases even impose new parametric rules, models which have no features at all.

John R. Baker, P.E.
Product 'Evangelist'
Product Design Solutions
Siemens PLM Software Inc.
Cypress, CA

To an Engineer, the glass is twice as big as it needs to be.
 
Thanks John,
We are actually testing NX6 right now so hopefully I can play around with synchronous modeling and see if that will work better.
Rick
 
Rick,

I can see now that it is a workflow question as much as a CAD one. Some of the others have already answered this so I can only add a little. I'd definitely use linked mirrored geometry and I would look into making the best use of timestamp that you can. In fact I would use linked geometry with timestamp order for machining the un-mirrored part as well.

The three part solution is only one way that you can create an assembly in order to build up left and right handed parts. If you're doing machining and want to find the file structure that best suits you then perhaps you need to address whether you tend to use mirrored cutter paths first. I know that I never did, but it is possible to do so.

I prefer to simply load the common data file below wherever I'm linking it to and then link the geometry at the appropriate timestamp. I usually then suppress the component I'm linking from to ensure that the links won't update according to changes in the geometry automatically. This is my personal working preference, but I had read here from a machinist that problems with links updating were causing his system to automatically update the cutter paths as well so that every time he opened the file took a couple of hours.

If you have control over the design and the machining then you might also be able to look at structuring your design files to reflect manufacturing processes. That way if you have machined castings you would create the casting at one stage of the design and use either linked geometry or promotions to create the machined version later on. The same may apply for machined fabrications or weldments. Lastly you could try insofar as possible to group the holes near the end of the model for example so that using timestamp doesn't have to take off blends to suppress the holes. Grouping features in model and making use of suppression by expression is one other way to go. Personally most of the time I would simplify the bodies after they have been linked or in later versions use delete faces to clear out unwanted features.

Best Regards

Hudson

www.jamb.com.au

Nil Desperandum illegitimi non carborundum
 
Thanks for the replies.

I do agree that this may be an issue that needs to be addressed partially from a workflow approach.

The only problem with using any kind of mirrored geometry or WAVE in combination with a timestamp is that there is nothing in the part that I can say will never change, from the first sketch to the last. We commonly open up old part files and save them as new numbers and just tweak what we need. So no linked geometry will work.

As far as the manufacturing process goes. Our first sketch is usually the completed lathe geometry. The sketches after that correlate with the milling geometry and then EDM geometry. When we need to change a part we can quickly open it up and modify it rather quickly.
Rick
 
Rick,

I think it is possibly easier than you think to maintain the linked geometry when substituting old for new parts. If newer is derived from the older then you may get some associativity that works with your existing cutter paths but I don't know whether you'd ever fully trust that it would happen as you would desire it. Anyway whether the links were alive or broken at the time of substitution the parameters of the linked body can be edited and the time-stamp adjusted to suit your needs, and you can do this as many times as you need to over the life of a design. You will at least keep your set-up and the tools and operations as template to changing geometry.

As for models that change too much for you to manage to select a suitable timestamp point there may be a couple of ways that you can work around those issues. One as I mentioned earlier is to delete faces and simplify the finished geometry after it has been linked into your part. This can be trying on occasion but is often sufficient to the task. The other is to suppress features that you don't need from the master part, then wave link/mirror a version that suits you and simply break the links leaving you with something that you can at least work with. Sure it isn't ideal but you can re-establish those links again next time you need to make changes with less trouble than you'd otherwise go to. I have used a hybrid of those two techniques many times myself in the past because it saves time, works and I resist with every scintilla of my being the desire to re-model mirrored geometry separately.

With regard to the latter it would be nice if in addition to a time-stamp the wave linker was able to selectively switch certain features on and off regardless of time-stamp. I can see where it makes sense on occasion to do so, but I can see that it is a complex requirement and wherever you add complexity you're likely to lose out on performance. As it stands I'm not so hung up on a purist approach to getting the job done that I mind breaking the odd links when faced with few practical alternatives and certainly none that would be quicker.

Best Regards

Hudson

www.jamb.com.au

Nil Desperandum illegitimi non carborundum
 
Another down side to using a mirrored body is the loss of mating using the instance array patterns.
 
Have you seen the Mirror Assembly Function?

Nine times out of ten an array of fasteners used on two handed symmetrical parts is also symmetrical, so the whole set can be copied, pasted and mirrored about a plane. It saves all the time and trouble of repeating the whole exercise and most of the time (shock horror) I'm not bothered that the components don't have associative mating conditions.

Best Regards

Hudson

www.jamb.com.au

Nil Desperandum illegitimi non carborundum
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor