projecting splines
 1-2  3-22  23-32

Previous
Next
 From:  BurrMan
3530.3 In reply to 3530.2 
Thats Genious Danny!
I actually made it much harder on myself. I used the polyline tool and drew some back and forth zig zag polylines. Then I turned on control points and moved each side into the surface to intersect. I rotated the bottle 180 to get the seam for the other side snap. Then after projection I had a series of rings I trimmed down the middle and deleted the appropriate sections to get the helix. But the curve projection created some wierd stuff with this and required some extra editing to get my helix arcs cleaned up.



But your way is much simpler and precise!!

EDITED: 19 Jun 2012 by BURRMAN

  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
3530.4 In reply to 3530.2 
Great technique Danny! And a great example of how generating curves from surface/surface intersections can be useful.

- 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:  rodney (RODNEY71)
3530.5 
thanks for sharing that technique Danny. that was exactly what I was trying to do. Still new to MOI and don't know a lot of the more buried functions or how to use them.
right now I'm waiting for a fillet operation to finish and it just seems stuck in a perpetual calculating cycle. I had swept a circle cross section along that new helix curve and then boolean subtracted it from the bottle. now i'm trying to fillet the hard edges that it leaves behind but it appears to be too complex for the program to deal with.

any suggestions?
  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
3530.6 In reply to 3530.5 
Hi Rodney, from what you described, that will likely be a pretty complicated fillet to calculate.

A couple of things you can try - first you will probably need to use a pretty small fillet radius value for it to be able to fit in there. If you have a value that will create a fillet that is too large to actually fit in the available space, MoI will still try to calculate it anyway but it can potentially make a chaotic result that may be taking a long time to calculate. So try starting with small values maybe like 0.05 and going up.

Another thing that can make things more difficult for fillets is when you have surfaces that come close to being smooth to one another but are just a bit slightly non-tangent instead of being smooth. I haven't taken a close look at your curve yet, but if was made out of segments that were almost smooth but not quite tangent to one another that could make things harder for filleting.

Also you may want to make a larger single surface instead of a segmented one made up of joined pieces. You can do that by fusing together segments in the original curve by deleting the control point where 2 segments touch each other.

But you are probably looking at a pretty difficult fillet case there, fillet by its nature has to do a lot of complex calculations such as surface offsets, surface/surface intersections, extensions, etc...

- 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:  rodney (RODNEY71)
3530.7 
Michael, I took your suggestion to clean up the spline for the revolve of the bottle and that helps a lot. I still can't seem to get a fillet on the edge of the boolean subtraction (for the bottle's ribbing). Is it not possible now even after cleaning up the revolve surface? here's the file I have so far.
there are some hidden objects you can reveal for history.
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:  BurrMan
3530.8 In reply to 3530.6 
If you use the rebuild command, you can get a pretty nice sized fillet:



The filletr is not going to like a bunch of seam edges. So I ran Rebuild on your original revolve curve at .001 to get a nice bottle surface. Then I ran Danny's method to get a surface to surface intersection curve. I then ran rebuild on it as the intersection curve had breaks at every seam point of the bottle revolve. Then I swept a circle around the new curve. I adjusted the circle to keep most of it's seam edge out of the bottle surface. It would then fillet pretty good.

EDITED: 19 Jun 2012 by BURRMAN

  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:  BurrMan
3530.9 In reply to 3530.8 
Rodey, your last 07 file you posted is going to have trouble filleting because of this seam here:



This is created in the process in my last post where " you get your isect curve, and its broken at that bottles seam edge at every pass of it. If you rebuild the helix, just after its creation and before the sweep, it wont have those little patches there and your fillet will jam on by.

EDITED: 19 Jun 2012 by BURRMAN

  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
3530.10 In reply to 3530.7 
Hi rodney, this is definitely a step closer, but there are still some areas in it with little tiny edge and surface fragments, which does not usually make the filleter very happy.

For example zooming in on this point here:



You can see there is a little tiny edge fragment there and a little surface piece as well:




From the viewpoint of the fillter, those are highly complex and difficult areas to resolve correctly during the various fillet calculations.


Also the "seam edge" of the tubular surface is also coming into play:



You probably want to make that tube with the Twist = Flat option so that you can keep the seam edge (where the surface is closed and curls back to touch edges like a piece of paper rolled into a tube) from wandering around and making more junctures with other edges than necessary.

I'll mess around with it a bit and see if I can give you any quick tuneup ideas, but this is something that I'd consider a very difficult case, the geometry is going to need to be as clean as possible (meaning the fewest number of edges and pieces) in order to have a chance.

- Michael


EDIT: Looks like Burr beat me to it, thanks Burr! :)

  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
3530.11 In reply to 3530.8 
Hi rodney, so the Rebuild command that Burr is mentioning is a new command for MoI v2 but you have to set it up on a keyboard shortcut to run it, it doesn't have an icon set up for it currently in the regular UI.

Rebuild will reconstruct a curve kind of like drawing a new curve that has a bunch of its points snapped on to the existing one.

It is another way to help simplify a curve because it will try to form just one segment out of a curve that is made up of many smaller fragments (if they are close enough to being smooth to one another).

If you look at your intersection curve that you used for making the circular tube, if you run Edit > Separate on it, you'll see that it is made up of several individual segments that are joined together, they are separated by every spot where the intersection crossed the seam edge of the closed bottle surface.

So when you sweep along a multi-segmented curve, you will generate segmented surfaces as well, with one surface piece for each segment instead of just one long surface.

By doing a Rebuild on the rail for the tube, it makes it into a more simple curve made up of just one long smooth segment so that helps to make just one surface when you sweep it, and that makes for fewer edges and pieces in the thing you want to fillet.


In the future I'll probably try to do something like an automatic Rebuild on the output from surface/surface intersection (and possibly projection too), once I am really convinced that there won't be any cases where the Rebuild would make things worse...

- Michael

EDITED: 12 May 2010 by MICHAEL GIBSON

  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
3530.12 In reply to 3530.11 
Here you can see how the Rebuild step helps.

The original surface/surface intersection curve has a control point structure that looks like this:



It tends to be fairly dense with control points, and worse yet it made a kind of nasty little extra segment where it crossed the seam, that little extra segment is probably the biggest problem.

Now look at what the curve control points look like after running Rebuild with a tolerance of 0.01 units:



It's basically redrawn that curve but with a much more even control point spacing also unifying those little nasty segment parts. So it's actually a much cleaner curve for using for the next step.


- 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:  Michael Gibson
3530.13 In reply to 3530.7 
Hi rodney, also I've attached here a version that has the tube created but before the boolean is done so you can see what that looks like.

The main difference from your previous posted one, is that the tube path has had Rebuild run on it (you can also type in the command name to run Rebuild, to do that type Tab first to put focus in the mini command prompt area, then type Rebuild and push Enter).

Also while making the tube I rotated the circle and use Twist = Flat so that the seam edge on the tube was all on the outside of the area it will cut so that helps to reduce the number of edges running into each other in the final result.

So in the attached model select the main bottle body, then run Boolean Difference, then pick the tube as the cutting object.

Then you can select the edges (or the whole bottle if you want to do all edges including the top one though) and run Fillet. You'll be limited to a radius of not much more than 0.1 or so. That's due to yet another problem area for Fillet which is trying to fillet a fillet into a small area that has a tight bend in it like here:



Filleting tries to keep things at a constant distance away from the edges, so when things go around tight curves it can tend to cause a bunching problem, kind of like this exaggerated 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:  Michael Gibson
3530.14 In reply to 3530.7 
There are some things that I want to adjust in the future which probably would have helped you out quite a bit in this case.

I'll probably do the equivalent of Rebuild automatically on the curves generated from intersections, projections, and offsets, and also probably try to adjust how sweep generates its output surfaces, trying to make some longer surfaces in cases like this instead of necessarily making one individual surface per segment (although sometimes that can be useful to be able to separate something that is more like a pipe with joints so it is a somewhat tricky area to mess with).

- 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:  rodney (RODNEY71)
3530.15 
you are unbelievable guys. I had already given up on this project and was ready to tell the client I couldn't do it and I look back here and find all these extra gems. Thanks for posting the file Michael and to both of you for pointing out the rebuild command. that is an awesome tool and is exactly what I was looking for to optimize the number of points that get generated. How many more of these gems are hidden under the surface Michael? is there a post on the forum that lists all the extra functions that can only be fired from the command prompt?

here's a final file to show the fruit of all of your help. A huge thanks to you all. I learned so much on this one.
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
3530.16 In reply to 3530.15 
Hi Rodney, I'm glad you were able to get it finished. Thanks very much Burr & Danny for the additional help!

> is there a post on the forum that lists all the extra
> functions that can only be fired from the command
> prompt?

They're listed in the v2 command reference, which is very nearly ready.

They're basically things that I haven't found a good spot for yet in the UI, but I'm going to try and give them a spot in v3 hopefully.

This is the list:

Incremental save
Rebuild
Flip
Merge
ArrayGem
ExplodeMove
BoundingBox
BoundingBoxCenter
ShrinkTrimmedSrf

- 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)
3530.17 In reply to 3530.15 
The final product looks great rodney! I'm happy that you stuck with it.

The forum is a great resource, I've been here a while and I haven't seen one question or problem go unanswered, not only Michael, having the fastest draw in the west in answering questions there is a vast range of users with different fields of expertise, we have jewelers, engineers, tradesmen, artists, CGI experts, Industrial designers, architects and maybe the occasional extraterrestrial :) ranging from ages 4 to late 70's and I haven't heard of a software company that suggests to use other software to solve a particular problem until I joined MoI.

So we're all here to help because we all have one interest in common and that is modeling and MoI and I think we love the challenge of solving problems.

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:  BurrMan
3530.18 In reply to 3530.14 
Michael,

>>>>>I'll probably do the equivalent of Rebuild automatically on the curves generated from intersections, projections, and offsets, and also probably try to adjust how sweep generates its output surfaces, trying to make some longer surfaces in cases like this instead of necessarily making one individual surface per segment (although sometimes that can be useful to be able to separate something that is more like a pipe with joints so it is a somewhat tricky area to mess with).>>>>>>>

I just thought about this a bit. You make a great point. "Sometimes you want it to be seperate segments". This is very true with material assigments and such. Having it do the "rebuild automatically", I wanted to then ask for an option to disable that. But then I am looking for UI changes. I think it is already handled with a knowledge that "Rebuild exists...And run it if you want the different outcome." You did already add the multiple options to Rebuild, so you could get the same results as "RebuildCurve", which for me specifically covered all the bases. I'm envisioning not wanting to lose the power of the available options with the 2 different methods. Perhaps as the documentation matures, it will handle the methodology part for these situations...

Thanks
  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
3530.19 In reply to 3530.18 
Hi Burr, yeah it is a bit of a tricky balance - how much stuff to do automatically, how much to rely on people knowing to use other commands like Rebuild as in this case, how many different options to put in the UI, etc...

For sweep making separate segments, I've been thinking of maybe doing something like keeping something that has line and arc pieces as separate segments but combining things that are just freeform curves together.

- 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:  BurrMan
3530.20 In reply to 3530.19 
I get it. So the helix, as a single freeform entity, would be treated as such. If you needed it to be segmented, you would create it that way. ( avoiding the segementation by the seam of the bottle....)
  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
3530.21 In reply to 3530.20 
Hi Burr, yeah it's the sort of "unintended segmentation" that would be good to avoid.

- 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:  FiL (FILIPPOL)
3530.22 In reply to 3530.8 
Hi BurrMan,

>rebuild command

Where is in MOI?

FiL

___________________
That's a brilliant day!

  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

 

 
Show messages:  1-2  3-22  23-32