#Where are my questions?
4 messages in this thread
I'm told by my dealer and by Autodesk that questions regarding the shortcomings
of 3ds can be answered in this forum. Thus far my last
2 questions 1)booleans and 2)windows 95 have not been answered
and no longer appear in this forum. So my question is, where do I go for
answers when neither my dealer nor the manufacturer will answer my questions.
Please don't tell me I need another dealer, this is not useful information.
Michael –
I searched the entire forum message base (over 3500 messages) and found only
two from you. Your Boolean question was posted 9/29 and is message number
193197. Yes – usually questions are answered here within 24 hours but this
forum is not officially manned by Autodesk over weekends. Lots of time other
members will answer messages as well as Autodesk forum assistants.
The second message is the one from you asking for an answer on Booleans. I did
not find one on Windows 95. Each time you enter any CIS forum, Compuserve will
only show you messages that have been posted since the last time you have been
here. That way you don't read the same messages over and over. You can always
see older messages by setting back your date on this forum (if using WINCIM,
click on Special, Set date). The messages on this forum last about 20 days at
this time. Some forums last 2-3 days and the hot forums can last ony 24 hours
on a bad day <G>
I run a program once/twice a week to pick up all unanswered messages and post
that list to a closed section of the forum for the FAs (forum assistants) to
review and answer.
Hope you get the information you need soon. Pretty rare for someone to ask a
question that no one can answer.
Anne
Here are the 2 best messages we have a booleans from the Boolean-Master <g>:
Hi Michele,
Boolean King? I hardly think so! However, since I do a lot of the mechanical
things you refer to, I've done a big pile of booleans and have had to figure
things out.
1> zits around holes… Almost always when I see the pinched look or
smoothing prolems it has been due to tiny faces or slivers the boolean has
added. These are often invisible until zoomed way in. The problem is the
attempt to smooth over an edge at a face or two where there should be no
smoothing. AutoSmooth doesn't help – my guess (I have not done the math) is
that when working on a very small scale, the trig calculations to determine
the angle between faces suffers from a lack of precision. This also is a
problem with very thin slivers of faces. To fix, I do one or more of three
things:
a) Zoom way in, look for tiny faces, and manually weld vertices to
collapse the bad faces.
b) Use the ol' select & weld strategy to collapse the tiny faces.
I set the weld threshold to something smaller than the smallest
edge I want to maintain, select all the vertices in the object,
execute Modify/Vertex/Weld "Selected", then re-AutoSmooth.
This can backfire, so hold first.
c) Manually smooth, or rather unsmooth: select all the faces on
the flat plane and remove the smoothing.
2>incomplete boolean, adjust… My humble obversations note that this is very
often caused by topology – asking the algorithm to figure out which surface is
out. Several causes and fixes:
a) Bad geometry, with missing faces or internal faces – fix the
geometry such that it has a single, unbroken surface, then unify
normals.
b) good geometry but inconsistent normals – unify normals.
c) overlapping elements. This is probably the most common cause
of "cannot complete boolean operation". If an object is made
up of several elements, a boolean will often fail if it overlaps
more than one element, *especially* if the elements themselves
within one object are overlapping. In this case, a boolean, for
example a subtraction, can usually be completed with 1) detach the
elements into separate objects, 2) union these back into a single
object, then 3) perform the boolean subtraction. Note that
depending on the object, a "select & weld" step may be necessary
after each union in step 2. Experiment with this technique using
at least three overlapping spheres.
A variation of this is the case of a subtraction thru the folds of
convoluted object, even if the convoluted object has consistent
topology. I've had cases where this confused the boolean
algorithms and fixed it by making some intermediate objects and
doing the boolean in stages.
Well, after I typed this I found a copy of a previous message from the past
which contained additional ramblings. I'm resending it to you (without
reading it to correct any embarrassing goofs <g>) in case you are interested.
Some of it looks like duplication, but I don't have time to sort it out just
now.
Well, have fun on your trip!
JKJ (full of bool, once again)
[old message to follow]
[More]
[Continued]
Michelle, it's me again. Here is the old boolean message.
[reply to an old message:]
Hey Jim!
Booleans & face problems, eh? My favorite subject… (the booleans, not the
faces) I forgot whether your original message was simply about face problems
or about completing booleans. As for tesselation, it will often just make
things worse.
——————————————————–
Incomplete booleans…
If the problem is completing the boolean – since the boolean code was improved
in R3, I almost NEVER tesselate before doing a boolean (and I do a lot – I
must have done 30 or 40 just today on a tank model I'm building).
If a boolean doesn't complete, sometimes it helps to tesselate, but sometimes
it makes it worse. In my experience, the biggest enemies of successful
booleans are
a) long slivery faces
b) billions of tiny faces
c) an incomplete surface (missing faces, not completely closed)
d) inconsistent topology (intersecting surfaces, either within a
single element or because of overlapping elements)
e) inconsistent structure (internal faces, perhaps caused by a
previous boolean misadventure)
f) inconsistent face normals (not all pointing the same way)
g) reversed face normals (not all pointing out)
h) unwelded vertices, causing (c)
If you have some long narrow faces (a) in the area of the boolean, tesselating
will often just make the faces longer and narrower. Ack! If you have billions
of tiny faces, (b), tesselating will multiply them. If all the normals are
right and the surface topology and structure are correct (cdef&g) and the
boolean still does not complete, then some manual editing with Edge/Divide
will usually work.
If you have several booleans to apply to a single object and the boolean will
not complete, try applying them in a different order. (This worked for me
today for some intersecting grooves I was cutting in the side of a gas can)
If that won't work, try moving one of the objects a tiny bit.
If you have elements that overlap in the area of a boolean subtraction (d),
either combine them first with the boolean Union operation, then subtract, OR
separate the elements into separate objects and subtract a copy of the
subtraction object from each.
If you have face normal problems, unify/flip normals should fix them, perhaps
with the aid of Optimize, if you have it. If unify will not help, then the
surface topology or the internal structure is almost certainly fouled up and
must be repaired before continuing. Object imported from AME and other
modelers sometimes have these problems, especialy a group of vertices which do
not quite meet at the same point and are not welded.
(BTW, the easiest booleans are between one very simple object, like a cube,
and another object, simple or not.)
A few unsolicited JKJ construction tips:
– When performing multiple booleans, always check each result
carefully for stray faces – fix them manually before attempting the
next boolean or the final smoothing operation. Note: fixing
generally requires deleting some faces and manually rebuilding some
faces. Turn on AllLines to see better.
– When building objects which will be booleaned, avoid long skinny
faces like the plague. The worst offender is the long cylinder –
create these with multiple segments to keep the faces shorter.
– When creating a large box that you intend to subtract something
small from, consider making the box with GRIDS.PXP. (weld the
vertices before the boolean operation) This will prevent long
skinny faces radiating from the corners of the box. Another method
is to loft the box with several path/shape steps.
– When drawing a shape to be lofted, examine it after lofting for
long skinny faces. If present, go back to the shaper and use
Modify/Segment/Refine to add some extra vertices for the lofter to
costruct from. Add vertices in the path to avoid long straigbt
sections. The ultimate but unatainable goal is an equilateral
triangle for every face. (I usually leave shape and path steps at 0
and manually refine all curves and paths to give me more control
over the lofter)
– Occasionally you can use Modify/Edge/Turn to make an uncooperative
face or two behave.
——————————————————–
As for the face rendering problems…
Misbehaving faces are often caused by
a) unwelded vertices
b) very tiny or long slivery faces
c) a missing face or two
d) other inconsistent topology or internal structure, including
overlapping coplaner faces, intersecting faces, etc.
e) improper smoothing
Everything seems to boil down to (e), improper smoothing. The trick is in
sleuthing out what is causing the problem.
For example, a boolean between two objects that have some vertices very close
together will almost always cause (b) which will most assuredly cause (e). If
you zoom way in on a problem area, you will probably see some vertices close
together. These can be welded manually (usually best done in a User view, and
often after hiding obscuring or underlying faces) Another easier trick is to
bump the weld threshold up some and weld all the vertices in the problem area.
For example, in a model I was working on today, I measured the smallest edge I
wanted to preserve at around 5.0 units, so I set my weld threshold to 1.0,
selected all the vertices, then did a Vertex/Weld "selected".
Some excerpts from some recent messages to someone else about face problems…
– AME sometimes drops a face. Build a new one.
– From AME, sometimes some vertices are not welded. Render flat,
and look at where the streaks start (zoom in real close). If a
group of vertices are separated where they should not be, you can
manually weld them. Another way is to bump up your weld threshold
some, select all the vertices, and weld "selected"
– Look for an extra face that found its way into the mesh & delete
it. I've seen this on meshes dxf'd from other modelers.
– Zoom in real close on the edge of the problem area and look for
any long, very skinny faces, and eliminate them by manually welding
adjacent vertices. This happens a lot with booleans. (BTW, several
things in 3DS are not friendly with long, skinny faces, including
cameras and booleans. Sometimes I do a little Edge/Divide'n to fix
this. Also, if you create something like a long cylinder, especially
with intentions to use in with a boolean, make it with several segments
to avoid long, skinny face problems.)
fter the faces are repaired, autosmooth, perhaps trying different angles as
appropriate. Better yet, unsmooth and select sets of faces and manually apply
smoothing groups (required more often than one might think)
Although the autosmoother is doing what it is told, it sometimes doesn't agree
with us as to what should constitute a flat surface or a proper angle between
surfaces. Especially where vertices are very close together as on the edge of
a boolean, it will sometimes smooth a sliver or two over what we think should
be a sharp edge, resulting in streaks.
After any face/vertex problems are fixed as mentioned earlier, if the streaks
still appear, I usually select all the faces on a plane and clear all
smoothing groups from just those faces or apply a single group to those faces.
(If you apply a group, make sure you don't use one that is already in use on
any faces adjoining the plane.) You can even detach the planar faces into a
separate object and clear or apply a single group to the surface, but this is
not necessary unless you want to autosmooth the rest of the original object
separately.
Also for face rendering problems, note that some of the ideas above about
preventing long skinny faces while building objects all apply.
——————————————————–
All this said (and as soon as I post it I'll probably think of something else
to say), if you have a demon-possessed object with face or smoothing problems,
or a boolean that won't, I'd be glad to look at it. (That's what I do for fun
in my spare time. 🙂 Just email the zipped 3DS file, take two aspirin, and I
call you in the morning.
JKJ
PS: sorry this is so long – I get carried away sometimes. You probably didn't
want all this but maybe someone else will. <g>
(Disclaimer: the above is based primarily on my experiences, which have no
claim on completeness. Or as Shanti Goldstein put it, "No man is an isthmus")
[end of old message]