Subject:
|
Re: stl2dat conversion tool beta2
|
Newsgroups:
|
lugnet.cad.dev
|
Date:
|
Mon, 14 Feb 2000 17:03:12 GMT
|
Viewed:
|
1310 times
|
| |
| |
On Fri, 11 Feb 2000 20:29:56 GMT, Rui Martins <Rui.Martins@link.pt>
wrote:
> Maybe You should allow the use of the abs() function to be optional,
> because if the face normal are correctly calculated (the faces are well
> defined, CCW or CW) you can check the correct value, and NOT the absolute
> value.
The normal is explicitely given in STL files.
> I think there are some situations in which this would create unwanted
> optional lines.
>
> Example suppose a 'kind of cylinder' with this form
> ---------
> \ /
> \ /
> | |
> / \
> / \
> --------
>
> You should correctly generate vertical (concentric with the cylinder
> center) optional lines, but you should NOT generate horizontal optional
> lines, which I think your current algo does.
>
> The vertical eventually will define the silhuete, but the horizontals
> never will.
Yes. I have planed to optimize this point. I think it is the same case
for internal cylinders. The angle must be convex and not concav.
However, it is not done yet.
> How do you measure the angle ?
I use case 1:
_ _ _______face
a /
/
/face
/
In fact, I measure the angle between the normal of the face, but the
result is the same.
> > I have to improve it so it check also partial adjacent facets.
The bug was because I have a step where I replace two triangles by a
thrid. This step caused vertex suppressions. I moved this step after
the edges have been created.
1
/|\
2-3-4
to
1
/ \
2---4
> If an Edge belongs to a sigle triangle then it's a
> NORMAL LINE
This case can never happend in STL files. The solid must be entirely
closed. An edge has always two adjacent facets.
> Else /* Connects two triangles */
> calc angle between the two triangles
> if (angle near 0 ) /* they are coplanar */
> NO LINE
> elsif (angle optional test)
> OPTIONAL LINE
> else
> NORMAL LINE
> About new Ideias
> You could make also an option to recreat the quads which once whore
> quads, you would have to check for this, and if possible, create quads.
I do no understand what you mean with "which once whore quads". In STL
files they are no quads, only triangles. There is a step in the
algorithm where two adjacent triangles are merged to one quad.
In future version, I will extend this merge to quad more than two
triangles.
I will also made option to swith on/off all features of the program,
plus some extra functions usefull for debug.
Marc Klein
A Mindstorms fan.
|
|
Message has 1 Reply: | | Re: stl2dat conversion tool beta2
|
| (...) This should be one of your top priorities, since unwanted data only slows down the rendering programs. (...) Iep, but the valid values for the angle differ. (...) See my previous reply about merges ! (...) I don't think so ! Where have you (...) (25 years ago, 14-Feb-00, to lugnet.cad.dev)
|
Message is in Reply To:
| | Re: stl2dat conversion tool beta2
|
| (...) Both those constant should be configurable, eventually within predefined ranges. Maybe You should allow the use of the abs() function to be optional, because if the face normal are correctly calculated (the faces are well defined, CCW or CW) (...) (25 years ago, 11-Feb-00, to lugnet.cad.dev)
|
14 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
This Message and its Replies on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|