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!

Rectangular Pattern

Status
Not open for further replies.

Lunar7

Aerospace
Jul 20, 2007
45
Help,

As former I-deas user, I'm Struggling with making retangular patterns in NX.

I have a 3mm Hemisperical body that I want to pattern into a 50x50 arrary with 2mm steps.

I Iideas this is very fast and produces a single body, in NX is seems to take forever and slows updates doen to a crawl. Am I missing something ? or is there a better way ?
 
Replies continue below

Recommended for you

PLEASE, when you are asking for help ALWAYS tell us what version of NX you are running!!!!

There are many ways to do things in NX, but since we are constantly adding new and better functions, unless we KNOW what version you are running, we can NOT help you.

John R. Baker, P.E.
Product 'Evangelist'
NX Design
Siemens PLM Software Inc.
Cypress, CA
 
First question, do they need to be combined into a single body? Second question, once you're done creating this 'lens', does it need to remain parametric? That is, are you going to edit the size of the spheres or their spacing or the number of columns and rows?

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

Thank you for your interest in my little problem

1, my current I-deas method is to create this as a single body, then trim to size and unite into the rest of the lens, so I have normally done this as a single body or in I-deas as a separate part that can be could be reused.

2, In a ideal world it needs to retain parametric, the optical characteristics are determined by the relationship between the radius of the hemispherical shape & the pitch of the array, so been able to change this would be good

The situation also exists where the pitch could be different along each axis, I might want 2mm along one, the 2.5mm on the other.

The next step of course is to get this on to a non-planar face, but that could be a bigger issue
 
OK, since you're using NX 5 you best bet is to use Instance Geometry (new function in NX 5). First create a 3mm dia sphere using Sphere primitive (might as well place it at 0,0,0). Now go into Instance Geometry and use 'Type' Translate select the Sphere and set your distance to 2mm and number of copies to 49 and select as your 'Direction' Vector the 'Y' Axis and hit OK. Now you will have your first 'row' At this point you will need to Unite them, but you have to be careful how you select the Tool bodies (note that this will be much easier in NX 6). First select as your Target body, the original Sphere, and then select as tool bodies, one at a time, the other spheres starting with the one next to the highlighted one and then continuing out to till you have selected all 49 tool bodies and then hit OK (in NX 6 the order of the select is not important so you will be able to just area select to catch all the tool bodies).

Now you have a sort of 'stick'. Go back into Instance Geometry and leaving your last settings as is, select the 'stick' only this time for your Direction vector, select the 'X' axis and hit OK. Now you have 50 'sticks'. Now perform your Unite like before, selecting first the original 'stick' and then one by one... well, you know the drill, and hit OK.

Granted, this will take a fair amount of computing power, but in the end you will have your model and it will be fully parametric, however, the part file will be about 24 mb in size (in NX 6 it'll be a bit smaller, only 22 mb, as the Boolean structure will be much simpler).

Anyway, that's about the best that I can offer.

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

I don't know why it works like this but I have also had some luck in the past with simple rectangular patterns using mirroring rather than arrays. I think the instance feature will probably be just as fast, but here is the method for the sake of argument, and because it interests me to explore why one works quicker than the other.

What I have done is to create a sphere and array it in rectangular array say 50 x 5. Still a largish array but not so big as to overload the system in terms of how long it takes to create. Before I started I set up an expression for the x and y pitch, and now I can use this to set up a datum plane at a calculated number of pitches so that it trims off right through the center of the fifth row in the Y direction. Then I can mirror the feature about that plane and unite it to the original. I add another datum plane at some calculated distance from the first and repeat the process noting that the increase in number of spheres is exponential, and I very quickly have enough to complete my model.

The reason that I suspect this works is that the number of booleans is reduced by distributing successive arrays etc. Please note that in NX-5 I would have a close look at instancing instead of mirroring as the technique I described in use goes back to early NX having served me well historically it is probably outdated by the later version having this new function.

We have dealt with a few cases where these optics or other surface patterns come into our designs and they are usually prone to creating very heavy geometry that can be surprisingly large in terms of the data file size, and also in terms of the time it takes to update the models. Holes in speaker grilles are another such case in point that can provide endless hours of drudgery.

Good Luck with it.

Best regards

Hudson
 
Hudson,

While your approach will reduce the complexity of the Part Navigator model tree, it will have virtually no impact on the file size of the model since the vast majority of the part file size is due to the number of edges and faces, irrespective of whether the model is parametric or not.

And of course, since the multiple boolean 'problem' is solved in NX 6, this mirror approach, at least in this case, will have a very 'shelf life'.

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

So it was the booleans within the arrays that tend to drag on the system then. Is that why the method you described in NX-5 is going to provide some benefit also?

Best regards

Hudson.
 
You mean NX 6, right? BTW, the last sentence of my last post should have read:

"And of course, since the multiple boolean 'problem' is solved in NX 6, this mirror approach, at least in this case, will have a very short 'shelf life'."

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

I followed the last sentence reading Ok and understood that part, but I thought that the reason why the older method that I described appeared to work quicker may be because in NX-5 not NX-6 that the booleans were somehow slowing it down.

In fact I would guess that it would be something to do with NX-6 taking better advantage of multiple processors or the like that gives it a boost.

Which leaves me with the same question about the big arrays what really slows them down so much and how can I better construct the model to avoid this?

best Regards

Hudson
 
The advantage that NX 6 has is that if I were to boolean say that first 'stick' of spheres in NX 5, you'd have 49 Boolean Unite features whereas in NX 6 you'd have 1. So in my original approach, in NX 5 you'd end up with nearly a hundred Boolean operations alone, whereas in NX 6 there would be only 2.

John R. Baker, P.E.
Product 'Evangelist'
NX Design
Siemens PLM Software Inc.
Cypress, CA
 
Thank you all for help.

I had been missing the unite step, now that I have followed John's method it does work.

It's still doesnt seem as robust as the I-deas pattern, but at least it got the job done.

For this specific case it seems I-deas still has the better tool, In I-deas could create this in 2 steps very quickly.

The NX5 method requires more steps & takes longer. Maybe
from what I've read it seems that the Boolean unite is improved in NX6, but is there going to be a rectangular pattern type added to the instance geometry tool ? and what about adding the Boolean into the instance command, the same as it is done in I-deas ?
 
...but is there going to be a rectangular pattern type added to the instance geometry tool?

There are still plans for a future upgrade of the actual 'Instance Feature' function (which is were arrays are supported), but nothing for NX 6.

...and what about adding the Boolean into the instance command, the same as it is done in I-deas?

While we have been trying to encourage users to use the built-in Boolean options when they are offered, we have found that most users don't and prefer to apply the Boolean(s) in a separate operation. Now this does not mean that we're going to stop offering Boolean options when we develop new functions, but it would be interesting to see what other users have to say about this in terms of what their 'standard practice' is.

John R. Baker, P.E.
Product 'Evangelist'
NX Design
Siemens PLM Software Inc.
Cypress, CA
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor