Subject:
|
Re: CW/CCW, vertex sequence, co-planar, convex, (115kB)
|
Newsgroups:
|
lugnet.cad.dev
|
Date:
|
Mon, 4 Oct 1999 17:15:13 GMT
|
Viewed:
|
1006 times
|
| |
| |
Jacob:
> > > Because our clever rendering programs will notice that the
> > > first transformation matrix has negative determinant, and
> > > therefore will swap the CW and CCW checks.
Steve:
> > Why? Having a negative determinate *should* turn subfiles inside-out.
> > IMO. That's a useful function. Having programs checking determinates is
> > not useful, and wastes rendering time.
Jacob:
> Hmm??? Yes you're right (again :-).
It happens every once in awhile.
Actually, which approach *would* be better?
Examining the transformation matrix to determine the state of inversion,
and adjusting the CW/CCW setting to correct for it, would keep the whole
process local.
Allowing inversions to occur would require passing a parameter down the
recursive rendering chain, to track the current state of inversion. And
the rendering engine would still have to examine transform matrices (in
this case, the matrices specified on the subfile/linetype 1 commands) for
inversions.
My take is that approach #2 is slightly more complicated for the programmer
of the rendering engine, but more powerful for the writer-of-dats.
Does the proposed 0 INVERT meta-statement present any complications for
either of these approaches? It doesn't seem to--inverting can be
accomplished by either hacking the transform matrix (probably easy to do,
especially if a 4x4 matrix is used--just use -1 in the lower-right, instead
of 1), or would toggling the state of the inversion parameter.
Steve
|
|
Message is in Reply To:
53 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|