AlanZheng / heekscad

Automatically exported from code.google.com/p/heekscad
Other
0 stars 0 forks source link

Feature Tree #46

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
It would be nice to be able to create a solid by adding feature that can be
edited parametrically.

This will need a feature tree.
The solid will need to be updated if any of the features are edited.

Original issue reported on code.google.com by danhe...@gmail.com on 12 Dec 2008 at 5:47

GoogleCodeExporter commented 9 years ago

Original comment by danhe...@gmail.com on 27 Feb 2009 at 12:32

GoogleCodeExporter commented 9 years ago
If I could ramble for a couple of minutes...

The feature that I would like to look at next is to add a NC operation to use a
conical shaped cutter to chamfer the corners of the model.  I would like it to 
handle
both drill holes and any sharp edges on the tops of solids.  I'm still thinking
through how this will work but it raises a similar question to what Dan has 
raised above.

The existing drawing features allow a solid to have a chamfer added but I don't
believe there is any easy way to use that aspect of the model to generate a 
single
toolpath with a chamfering bit.  i.e. the graphics in the model can be used to 
drive
an NC operation.  It would be nice if an NC operation's effect could be applied 
to
the graphics model in reverse as well.  i.e. if a drilling cycle is added at a
particular point then the 'negative cylinder' (if I could put it that way) 
could be
applied to the existing model to show the hole being drilled in the model's 
solid. 
This would be easy enough to do right now but it would also be nice if the hole 
could
be moved and have the original solid 'refilled in'.

The chamfering operation could be the same.  i.e by selecting a sharp 'edge' on 
a
solid, this edge feature could be used to generate a chamfering operation.  
This, in
turn, would affect the look of the original solid by adding a 'temporary' 
chamfer to
the original solid.  If the NC chamfering operation were deleted then the solid 
would
revert to its original form.

This concept of having some object, be it an NC operation or a 
parametrically-based
graphical element, be rendered based on multiple elements being 'applied' to the
original solid.

Blender has this sort of thing in the form of 'Modifiers'.  These are 
'operations'
that are applied to a piece of base geometry at display time.  These 
'Modifiers' can
be re-ordered, added and removed.  (see
http://www.blender.org/development/release-logs/blender-240/modifier-system/)

The only way I can think of doing it is to define a new 'object' that is simply 
a
'modifier' of a reference object.  Whenever the reference object is rendered, we
apply the 'modifier' element to it.  i.e. it would be put in the way of the
glCommands() method.

Just an idea.

Original comment by David.Ni...@gmail.com on 22 Jun 2009 at 2:39

GoogleCodeExporter commented 9 years ago
I think this is some kind of advanced property for the solid. Not quite the 
same, but
many packages support these kind of properties on holes. So when you draw the 
model
it is just a regular hole, then later you can specify that it is countersunk and
tapped. Sometimes this is drawn or can be drawn on the model, sometimes it is 
not
shown at all. It is done this way because the geometry is ultra complex and the
operation is simple. It would be quite outrageous to try and figure out what 
parts of
a model were threaded. 

Original comment by jonpry@gmail.com on 23 Sep 2009 at 7:37