PDA

View Full Version : Booleans and Drill too feeble



stib
03-20-2007, 12:52 AM
I'm doing an animation that has clockwork in it. So I've made an EPS with a whole lot of nice gears and cogs and stuff and imported it into modeller. All good so far. But when I go to drill out the holes modeller just chokes.

I've tried using Drill on the flat polys I imported, I've tried extruding them and using Boolean, but all I get is 100% CPU usage untill I kill the process. Whatever algorithm they're using it must be spectacularly inefficient. These are pretty simple objects, we're talking a few hundred points and one polygon, it should be able to cope. Illustrator can do the boolean operations instantly, so why can't the same operation: drilling a flat polygon happen in reasonable time in Modeller?

Is it just me doing something wrong, or is Modeller's boolean / drill a waste of time?

Oh, and import the EPS using auto axis drill? forgedaboudit.

stib
03-20-2007, 12:58 AM
here's one of the shapes I'm trying to drill. I've tried doing one hole at a time, but it doesn't help.

jameswillmott
03-20-2007, 01:04 AM
Can you please post the files? I'd like to have a look at that if that's ok...

Darth Mole
03-20-2007, 04:09 AM
I've had some pretty good results with drill - and using more complex images than this. Have you tried turning the eps shape into poly lines and extruding them into blocks to perform the boolean?

Alternatively, boolean a circle out of your cog shape and cut 'n' paste it to another layer, then try drilling that instead. Perhaps the teeth are adding too much geometry to it. If it works you can just paste the circle back and merge.

Giacomo99
03-21-2007, 10:32 AM
This question has come up before.

It's 90% likely that your EPS shape simply has too many points to be manageable. This problem can also occur in other apps (Form Z, for example)--you're just asking the machine to do more math than it can handle.

The solution is to rebuild the form with fewer points.

bob anderson
03-21-2007, 01:32 PM
Too many points in a converted EPS can certainly be an issue, but I suspect something else. Is the object you are drilling 2D? Booleans really don't like operating on 2D objects. Also, you might try extruding the converted EPS into 3D and use subtract. I find subtract to be the most robust of all those tools.

Bob Anderson

theo
03-21-2007, 01:39 PM
Too many points in a converted EPS can certainly be an issue, but I suspect something else. Is the object you are drilling 2D? Booleans really don't like operating on 2D objects. Also, you might try extruding the converted EPS into 3D and use subtract. I find subtract to be the most robust of all those tools.

Bob Anderson

I second this- extrudes with substract work great, in most cases, for this style of polygon conversion.

iconoclasty
03-22-2007, 10:31 AM
The solution is to rebuild the form with fewer points.

Or, depending how the object is created, you may be able import with a lower curve devision level to cut down on some geometry.

stib
03-22-2007, 07:54 PM
Well I tried various methods, extrude and then boolean, drill on the flat polygons, and all went at glacial speed. The object has 500 points on one poly, ok that's a lot for a polygon, but really, how hard is it to calculate a 2D drill operation on a single polygon? I could have done it with a pencil and paper in the time it took.

I ended up just making the geometry in modeller, which was a bit more tedious, especially as I'd spent a while making my nice gear shapes in illustrator.

joao
03-23-2007, 08:08 AM
Since lightwave is a soft modeler it doesn't handle booleans (2d or 3d) well. The solution is usually to do the modelling in software such as formZ or solidthinking and then export the object. Or... to triple and subdivide the polygon you are going to cut holes in extensively before you apply the boolean.....
This is quite straightforward so sorry if i totally misunderstood the question.
joao.

stib
03-23-2007, 10:25 AM
I'm not going to disagree there, it doesn't handle booleans well. But why not? It's not rocket surgery.

BTW what do you mean by soft modeller?

bob anderson
03-23-2007, 02:46 PM
The object has 500 points on one poly, ok that's a lot for a polygon, but really, how hard is it to calculate a 2D drill operation on a single polygon?

This made me think of something else. Because all polygons in LW have only one "edge"... (like when you cut a window out of a wall there is always that extra line which makes it one edge) and your cutting tool has several such windows, this is actually a pretty complicated operation.

I wouldn't refer to it as "glacial speed", I'd call it "Amiga speed"!

Bob Anderson

Wade
03-23-2007, 03:58 PM
Well make double sure you have all the polys facing the same way, no double points and no two points polys... and if need be knife a shape in half then have another go at it.

If you have one face filped it will not work.

Dexter2999
03-23-2007, 04:10 PM
I'd like a stab at the EPS as well. Please post!

stib
03-25-2007, 06:49 PM
Ok, here it is.

I realised that doing all the holes at once might be a problem, so I tried them one at a time, except I never got beyond the first. It took ages so I killed it, and at the end of the day I left it going overnight. Came back in the morning to find a BSOD that was so bad I had to reinstall my OS.

I'm sure that was coincidental, I leave my box going at 100% CPU with renders all the time. Still, don't blame me if it eats your 'puter.

Silkrooster
03-25-2007, 07:17 PM
Here you go.
Silk

stib
03-25-2007, 07:46 PM
So did it take ages? Or is it just me..

Silkrooster
03-25-2007, 09:23 PM
It took awhile, at first I thought it crashed. In fact it did with 8.5, I then tried in 9.
Silk

Stooch
03-25-2007, 11:49 PM
i would combine these into a single shape and divide the segments into quads as much as possible then use extrude on it.

Dexter2999
03-26-2007, 01:06 AM
Okay I did this in less than two minutes on my old Pentium 1.3 Ghz single core machine.

First select all of the cut outs and move them to another layer.
Second, I created a plane and subdivided it so it was 5x5.
Third, use Core to cut out the gear shape leaving it split into managable chunks for the Boolean subtraction step.
Fourth extrude the gear shape.
Fifth, extrude the shapes to be subtracted.
Finaly, use Boolean to subtract the cut out areas from the outer shape.

Hope this help for future projects.

I'm still a n00b myself so I like to help in those rare instances that I can.

Giacomo99
03-27-2007, 06:59 PM
Looking at the EPS file, I can see another problem: the teeth of the gear are separate objects. Pasting a number of intersecting shapes objects on a single layer is just asking for trouble, and should be avoided.

Silkrooster
03-27-2007, 08:07 PM
Looking at the EPS file, I can see another problem: the teeth of the gear are separate objects. Pasting a number of intersecting shapes objects on a single layer is just asking for trouble, and should be avoided.
I was debating on that myself. Selecting all the teeth and moving them to another layer probably would have helped. Since I was able to get it to work, I didn't see the point of altering the eps file.
Silk

stib
03-27-2007, 08:21 PM
Actually that eps file was not the one I used, I had another eps with a whole bunch of shapes on it, which I imported and split into layers. In the one I used the teeth were all part of the main body. I just exported the one object that I had tried to bevel and forgot to expand appearance before I did.

Anyway, I ended up doing them all in modeller, which is probably better, I got a cleaner mesh and could easily add bevels and round edges, which would have been a nightmare with the EPS objects.

The conclusion seems to be that you chop up complex shapes before bevelling. Kinda counter intuitive that bevelling lots of polygons is quicker than doing one. Like I said, LW must use an inefficient algorithm for Booleans and drills. I'll have to try it in another app and see how it flies.

Anyway, thanks for all the help. Here is an image from the WIP. I had fun connecting all the gears with expressions, so when the driving gear turns they all turn with it. Got to add an escapement mechanism now (and a whole lot of other stuff).

Dexter2999
03-28-2007, 01:55 PM
So, was my solution off base? Is that sloppy modeling? Did anyone else try it?

I need feedback. If I am learning bad habits I want to know so I can correct it early in the learning process.

Thank You.

stib
03-29-2007, 06:35 PM
Nope, not at all. Only thing with using the EPS and a chopped up boolean is that you have lots of polygons and points all over the place. it would be fine unless you want to do things like add bevelled edges, or surface details like the central bump or a recessed ring (see the pic) to them.

By modelling them all up in Modeller I could end up with something with a rational polygon flow, so if I want to say add the central bump or a raised ring around the edge I can just select a loop and bevel away.

It was reasonably simple, just a matter of creating discs with the right number of teeth, using bevel or multishift to create more rings, bridging the polygons to create the holes, then selecting the outer loop and bevelling them a couple of times to create the teeth.

Here's a wire, showing what I mean. You can also see I used subpatches - because I wanted them to look like they were very small, making the corners round helps add to the perception that they are small. I also find it a much easier way to model.

BTW I did a bit of maths before I started to make sure the teeth would all mesh: the diameter of the gear has to be n*w/pi where n is the number of teeth, w is the width of each tooth (or very close to it) and pi is pi (the mathematical constant).

HTH

steve0077
03-30-2007, 12:47 AM
Here's my version.
Had to break ouy the welder to clean up the gear teeth. Boolean subtract took awhile, also thought it crashed.44624

Andrewstopheles
04-12-2007, 01:00 PM
I just posted screenshots from a similar issue I am having; I thought it was me doing something wrong. Subdividing and/or three point poly conversion seems crazy. I just want to make a letter "o" or an "e" or something similar with a few hundred polygons...:help:
The manual says to select only the polygons you want to boolean, so obviously that is a good starting point. I am still stuck, going to try the 5 steps listed above in this thread.

OOZZEE
04-18-2007, 02:12 PM
don't know much about *.eps files but LWCAD plugin will handle realtime booleans very easily to handle the task you are trying to accomplish.

theo
04-18-2007, 02:19 PM
don't know much about *.eps files but LWCAD plugin will handle realtime booleans very easily to handle the task you are trying to accomplish.

Yes, LWCad 2 booleaning is remarkable.

You should be able to convert the imported eps file to nurbs perform your boolean and convert back to polys.

The reason why say "should" in the last sentence is because I don't know what the cap is on the size of poly/nurb/curve conversions.

Up to this point in time I have had no issues with conversions.

EDIT: OH, what was I thinking! You can also use LWCads's Dpattern tool on pure (non-nurb) polys- DUH. Well, it may not have been a waste because if this is too heavy for even LWCads' boolean tool then a conversion to nurbs and running the boolean 2d tool with a final conversion back to poly should work great.

stib
04-18-2007, 06:37 PM
Of course! I have to spend some more time getting familiar with LWCAD. I got all excited when 9.0 came out and bought the Full version of LWCAD, and then ihaven't really used it.

Though I still think that multishift and bridge gave me better results. LWCAD might have been faster though.

theo
04-18-2007, 07:46 PM
Of course! I have to spend some more time getting familiar with LWCAD. I got all excited when 9.0 came out and bought the Full version of LWCAD, and then ihaven't really used it.

Though I still think that multishift and bridge gave me better results. LWCAD might have been faster though.

If you do decide to try this at another time, stib, you'll need version 2.

DonS
04-19-2007, 07:41 PM
Hmm, I tried and it took just a few minutes: only thing I can see that I did that wasn't mentioned (or was it?) was to select the disc poly before drilling so the teeth wouldn't be included in the calculations.