trimming a spring

Next
 From:  mickelsen
4215.1 
I am creating a conical spring. I want to trim the top and bottom off flat. I was able to trim the bottom that way I want but when I try to trim the top, it doesn't work. You can see the bottom is trimmed and you can see the top with the trimming plane.
What's wrong?
Thanks,
Mark
Attachments:

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4215.2 In reply to 4215.1 
Hi Mark, looks like it may be a bug, but it also seems to be related to the pretty small size of the object, it looks like your tube has a radius of 0.01 units? That's pretty small in size and is getting close to the default accuracy of 0.001 units. Things can start to behave a bit odd when you have features of the model that approach too closely to the fitting tolerance such as this.

Increasing the size of the object seems to help avoid the problem - I've attached a version of your model scaled up by 10 times so it is not quite so tiny in scale and this seems to behave better.

To do the cut, select the spring in the attached file, then run Construct > Boolean > Difference, and select the plane as the cutting object. That will slice the spring into 2 solid pieces and you can then discard the top piece.

- Michael

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  mickelsen
4215.3 
Okay, I'm a little confused. Can that default precision be changed, or is that built in to the program? It's not too unusual to encounter machining tolerances of 0.0005" (very good machinists, of course). Can I not work down at that level with MoI?
Also, if I perform the operation on the 10X version, can I then scale it back down to the original size?
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4215.4 In reply to 4215.3 
Hi Mark,

> Okay, I'm a little confused. Can that default precision
> be changed, or is that built in to the program?

There isn't any way to change it right now, but there are some commands that alter it dynamically to adapt to smaller sized objects. Over time I'll be trying to increase the number of commands that use an adaptive tolerance but it can sometimes be tricky to figure it out when only some small portion of the full object is at a small size like just the radius of a tube where the overall full tube's bounding box is not so tiny.


> It's not too unusual to encounter machining tolerances
> of 0.0005" (very good machinists, of course).

Really? What process are you using that would get you to such a tight tolerance?


> Can I not work down at that level with MoI?

Yes, you can get that level by scaling it down as a final step rather than trying to model things at that small scale directly.

For some kinds of things the adaptive tolerance will actually let you model at that small size directly, but in other areas you may run into problems so it's probably generally better to not directly model at such a small scale and scale down as a final step instead.


> Also, if I perform the operation on the 10X version, can I then
> scale it back down to the original size?

Yup, you would just use the regular Transform > Scale command to do that.

To use the Scale command, select the objects that you want to scale, the click the Transform > Scale button. MoI will then prompt you for the scaling origin - here you can type 0 and push Enter to specific 0,0,0 as the origin point. Then you can enter in a scale factor - enter in 0.1 and push enter to scale to 1/10 size for example.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  DannyT (DANTAS)
4215.5 In reply to 4215.4 
Hi Michael,

> Mark said; It's not too unusual to encounter machining tolerances
of 0.0005" (very good machinists, of course).

> You said; Really? What process are you using that would get you to such a tight tolerance.

In precision tooling, eg. plastic injection moulds, instrumentation, as Mark mentions 0.0005" is not unusual, we at work have NX modelling tolerance set to this figure, this guarantees that there are no gaps in the model because when the CAM guys generate cutter paths to machine the model if there are gaps at 0.001"+ the path will want to jump into that gap thus generating a gouge.

I'm talking about the surface to surface contact tolerance here, when we need a fine dimensional tolerance of a model feature and say it needs to be 0.3755" we would model at the nominal 0.375" and state +0.0005"/-0.0002" on the technical drawing.

BTW at our place we sometimes machine to 0.0002" but normally not over 0.0005".

Cheers
~Danny~
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4215.6 In reply to 4215.5 
Hi Danny, it could be possible for me to set the MoI tolerance tighter but there are unfortunately some negative side effects to doing that - various calculations will take longer to finish because they'll continue iteration for longer and even worse is that things like fitted curves will have a substantially higher control point count, making for a lot larger data size in the model.

Having it user settable is not so great because in my experience I have seen it frequently get set to poor values, like 10000 times more precise than is actually needed, causing a really really big increase in file size and calculation time.

There's also the reverse problem of it getting set too loose as well.

Also just the general strategy of having it set to any one single specific value makes for difficulties in several kinds of uses like when someone creates an object that has a large scale, say like 10,000 units across. With objects at that kind of scale trying to target a fixed tolerance of something like 0.001 or 0.0001 units is not good since it is so very tiny in comparison to the object. So that's why I want to move more towards a kind of relative tolerance that tries to operate at some fraction of the object's overall scale, the idea for that is to make operations automatically adapt their accuracy to large or small objects instead of requiring every user to be an expert at judging fitting tolerance values before they start working on every project...

It's a pretty big can of worms - if you need to set a tighter tolerance or have really specific control over it, some kind of more specialized software like NX probably makes more sense for that type of use.

The main goal for MoI is to generally target an accuracy of 0.001 units for objects built at a regular scale.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  mickelsen
4215.7 
Thanks, Michael, for your prompt help. I think, for what I do, the idea of constructing thing at 10X and then scaling them down at the end will work fine. If I hit a situation when it's a problem, I'll let you know.
Mark
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  DannyT (DANTAS)
4215.8 In reply to 4215.6 
Hi Michael,

I've got a feeling we've discussed this before, have we? Anyhow.....

> Having it user settable is not so great because
> in my experience I have seen it frequently get
> set to poor values, like 10000 times more precise
> than is actually needed, causing a really really big
> increase in file size and calculation time.

> There's also the reverse problem of it getting set too loose as well.

Agreed, I've seen this misused also, there have been many times where we had to rebuild models because of a too loose tolerance, as for a too tight of a tolerance no so much of a problem, within NX anyway.

> Also just the general strategy of having it set
> to any one single specific value makes for difficulties
> in several kinds of uses like when someone creates
> an object that has a large scale, say like 10,000
> units across. With objects at that kind of scale trying
> to target a fixed tolerance of something like 0.001 or 0.0001
> units is not good since it is so very tiny in comparison to the object.

I understand that, but what I don't understand is, if I have an object 10,000 units across and then have smaller details between 5-10 units in size within the same file I would like to believe that there would be no bad side effects because of this way of working.

> So that's why I want to move more towards a
> kind of relative tolerance that tries to operate at
> some fraction of the object's overall scale, the
> idea for that is to make operations automatically
> adapt their accuracy to large or small objects instead
> of requiring every user to be an expert at judging
> fitting tolerance values before they start working on every project...

I like the automatic adaptive tolerance system that you've implemented and still working on in other areas, but why wouldn't you have a a user settable tolerance buried somewhere for the advanced user who would understand how it works or maybe have environment presets where the tolerance is set depending on what the user is planning to model, Large models, medium models, small, tiny and general, something like that?

> The main goal for MoI is to generally target
> an accuracy of 0.001 units for objects built at a regular scale.

How do we define a 'regular' scale, a regular scale to an architect would be different to that of a Jewellery designer, that's the reason I believe there should be some tolerance choices available to the user.

-
~Danny~
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4215.9 In reply to 4215.8 
Hi Danny,

> as for a too tight of a tolerance no so much of a
> problem, within NX anyway.

The same issue of excessively dense fitted data will be happening in NX as well with a too tight tolerance, but since NX is run on beefy workstation computers that helps to mask the problem.

What are the hardware requirements for NX anyway - what would they say if you told them you wanted to run it on a $300 little netbook computer, probably just laugh?


> I understand that, but what I don't understand is, if I have an
> object 10,000 units across and then have smaller details between
> 5-10 units in size within the same file I would like to believe that
> there would be no bad side effects because of this way of working.

Just in general operations that involve a fitting tolerance don't go along well with such a divergent combination of scales, if you need to create objects like that you're probably better off having them be different parts instead of trying to create one single solid part object that has such a variance in it.

But the way that such things can work ok with a relative tolerance is when it is taken from the smallest piece that is being used for a particular operation.

So for example if you Boolean the 10,000 unit object with the 5 unit one, the relative tolerance is calculated for each of those separately, and then the smaller one is the one actually used for the boolean operation. That's actually how the booleans work currently in MoI.

The relative tolerance system still needs to be tuned up in some various ways though, some commands don't use it yet and some commands may be using the size of the bounding box around all the involved objects instead of only the smallest one, and also I think I need to tighten it up further for smaller sized objects.


> but why wouldn't you have a a user settable tolerance buried
> somewhere for the advanced user who would understand how
> it works

There are various problems with that - if a setting like that was carried around inside of a file you end up with things like non-advanced user opening up a file that was created by an advanced user and then trying to model something new in the file and getting really confused why things are either sagging a lot or taking a long time to finish because they don't understand that the advanced user set some special setting in the file.

So such settings have a way of kind of "leaking out" and affecting other people.


> or maybe have environment presets where the
> tolerance is set depending on what the user is planning to
> model, Large models, medium models, small, tiny and
> general, something like that?

Just in general I hate that kind of workflow where you have to make choices or jump through hoops before you can even start drawing things.

It's a big focus for MoI to try and reduce such overhead and just let you draw more freely...

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Nick (NVANLAAR)
4215.10 In reply to 4215.9 
>There are various problems with that - if a setting like that was carried around inside of a file you end up with things like non-advanced user
>opening up a file that was created by an advanced user and then trying to model something new in the file and getting really confused why
>things are either sagging a lot or taking a long time to finish because they don't understand that the advanced user set some special setting in
>the file.

>> or maybe have environment presets where the
>> tolerance is set depending on what the user is planning to
>> model, Large models, medium models, small, tiny and
>> general, something like that?

>Just in general I hate that kind of workflow where you have to make choices or jump through hoops before you can even start drawing things.
>It's a big focus for MoI to try and reduce such overhead and just let you draw more freely...

Yet, at some point a compromise must be made somewhere, yes?

Windows 7 x64, Precision T3400, Intel C2Q @ 3 GHz
8 GB RAM, ATi Radeon HD 3870

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4215.11 In reply to 4215.10 
Hi Nick,

> Yet, at some point a compromise must be made somewhere, yes?

Possibly, if the current system causes problems to enough people.

But right now I haven't heard from very many people requesting to specify what size model they want to create before being able to draw anything though.

Just in general I think that the automatic relative tolerance system is going to work better for more people than an explicitly set one. But we'll see, there is still some tuning needed to do with that relative tolerance system.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  DannyT (DANTAS)
4215.12 In reply to 4215.9 
Hi Michael,

> What are the hardware requirements for NX anyway
> - what would they say if you told them you wanted
> to run it on a $300 little netbook computer, probably just laugh?

They would laugh at that request :) not sure on minimum requirements, I heard of people running NX on all sorts of systems, the lowest spec pc I've heard was P4 3.4GHz, 2 GB RAM, and a GEFORCE 6800GT.
Siemens doesn't mention a minimum requirement they have a list of certified machines that their software is test on, this is where I don't want MoI to end up, so if your not running NX on a certified machine your support would be limited, because the pc configuration you have wasn't tried, tested and certified.
One thing I have to admit the certification list is long http://support.industrysoftware.automation.siemens.com/online_library/certification/ but still that's not the point, freedom of choice I say.

> It's a big focus for MoI to try and reduce such
> overhead and just let you draw more freely...

That's the reason I'm still here :) I shouldn't say any more until you've tuned up the fitting tolerance area further, and I know it will improve, then we'll continue this conversation later.......or maybe not.

Cheers
~Danny~
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4215.13 In reply to 4215.12 
Hi Danny, so one thing I was thinking of was possibly having a "High accuracy fitting" checkbox that you could enable that would then lower the fitting tolerance by an additional factor of 10, basically targeting a tolerance of 0.0001 for regular sized objects instead of 0.001 . That would be a setting that would go in the moi.ini file so it would affect only your installation of MoI and not travel to other people with file transfers.

That seems like it would then hit the highest level of accuracy that you were using with NX projects but still not enable people to shoot themselves in the foot which ends up happening fairly frequently if it can get set to just any value.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  DannyT (DANTAS)
4215.14 In reply to 4215.13 
Hi Michael,

What a good idea! either/or is a good way to go without adding any doubt to the user, just a few questions though;

1. How would 0.0001 tolerance effect the performance of MoI?

2. When the file does transfer to others with MoI, or transferred out to the other CAD formats, will that model retain the 0.0001 accuracy and does that mean that anyone else
will continue modelling at the default 0.001 or whatever is set on other CAD packages?

3. Now I'm thinking, is a factor of 10 too much, maybe a factor of 5 making it a tolerance of 0.0002 would be ample, would there be a difference between the two?

Cheers and thanks for looking into this from a mechanical engineers point of view.

-
~Danny~
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4215.15 In reply to 4215.14 
Hi Danny,

> 1. How would 0.0001 tolerance effect the performance of MoI?

Well, there would be some negative side effects like some calculations taking longer but it shouldn't be too horrible. Things can get to be quite a bit worse when it's a few more orders of magnitude beyond that.

The problem with it being able to get set to just any value at all is that it is not uncommon for someone to just think something like "hey, to be on the safe side I'll set the accuracy to 0.000000001 so that there's no doubt that it will be accurate enough." But then as a consequence anything that produces a result by iterative refinement will take a lot longer to finish and will produce extremely dense curves. And once you get every intersection curve being made up of something like 100,000 control points, it will create much, much larger files.

But having a way to kick it up just one more notch from the default would help keep it from getting too crazy.


> 2. When the file does transfer to others with MoI, or transferred
> out to the other CAD formats, will that model retain the 0.0001
> accuracy and does that mean that anyone else will continue
> modelling at the default 0.001 or whatever is set on other
> CAD packages?

Well, the accuracy level is only something that comes into play when geometry is being created or intersected or things like that. So it's kind of baked into the model data itself in a certain sense. That's why it has a big effect on model size - when you have set a really high accuracy level it means that the geometry that gets spit out from things like surface/surface intersections (during boolean calculations for example) has a lot more control points in it because there it continued to refine things until it hit a higher threshold of accuracy.

The tolerance that is used for any further operations in some other CAD system will depend on how their tolerance system works.


> 3. Now I'm thinking, is a factor of 10 too much, maybe a factor
> of 5 making it a tolerance of 0.0002 would be ample, would there
> be a difference between the two?

There's not really a huge difference just in a factor of 2 like between 0.0002 and 0.0001 .

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  DannyT (DANTAS)
4215.16 In reply to 4215.15 
Okay, sounds good to me, will we see this in the first beta of V3 ?

Cheers
~Danny~
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4215.17 In reply to 4215.16 
Hi Danny,

> will we see this in the first beta of V3 ?

I don't know if it will be in the first one or not, but I've got it on my list now and it shouldn't be too difficult so it should be feasible to do it early on in v3 at least.

The v3 beta period shouldn't be too far away now - I'm getting pretty close to being done with the huge UI architecture overhaul. I basically have 2 more areas left to complete - the area for command options and the scene browser.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
4215.18 In reply to 4215.17 
< scene browser
Groups will be in the party?
---
Pilou
Is beautiful that please without concept!
My Gallery
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
 From:  Michael Gibson
4215.19 In reply to 4215.18 
Hi Pilou,

> Groups will be in the party?

Certainly at some point in v3, but the main goal to start with is to just get the same kind of scene browser working under the new UI system.

Once everything from v2 is all functional again, then I'll be starting in on completely new features.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All