| | Re: Object Orientation & DAT files & CLIPPING/WINDING
|
|
(...) These are all assumptions/specifications which *should* be agreed upon by the L-CAD community, especially parts-authors and rendering program-writers. Agreement is only needed if we want to re-wire the parts library, to encourage (...) (25 years ago, 18-Oct-99, to lugnet.cad.dev)
|
|
| | Re: Object Orientation & DAT files & CLIPPING/WINDING
|
|
FIRST OF ALL my sugestion is that the CLIPPING, WINDING, INVERT are strictly local where they are used. CLIPPING is strictly local WINDING is strictly local INVERT is strictly local INVERT only means see referenced file as inverted. if INVERT is (...) (25 years ago, 18-Oct-99, to lugnet.cad.dev)
|
|
| | Re: Object Orientation & DAT files & CLIPPING/WINDING [DAT]
|
|
Steve Bliss wrote in message <380b3366.9260126@lu...et.com>... (...) No, you don't need to bother with the matrix. Use the 0 INVERT to tell the renderer: "Hey, please turn the following subfiles inside-out". Remember the example from stud2.dat: 1 16 (...) (25 years ago, 19-Oct-99, to lugnet.cad.dev)
|
|
| | Re: Object Orientation & DAT files & CLIPPING/WINDING
|
|
Rui Martins wrote in message ... (...) I concur that WINDING is strictly local. It may be a struggle of words, but I wouldn't call INVERT *local* as it affects the behaviour all tris/quads in *subfiles* And I don't see why clipping should be local. (...) (25 years ago, 19-Oct-99, to lugnet.cad.dev)
|
|
| | Re: Object Orientation & DAT files & CLIPPING/WINDING
|
|
(...) <snipped stuff about INVERT> I think we're disagreeing about the meaning of 'strictly local'. As you describe the operation of INVERT, it is *not* local. The state of inversion is passed down the file-reference tree. This is not a local (...) (25 years ago, 19-Oct-99, to lugnet.cad.dev)
|
|
| | Re: Object Orientation & DAT files & CLIPPING/WINDING
|
|
(...) Yes the coded inversion is needed, for one big reason: The clipping-ready parts library must be compatible with non-clipping rendering programs, such as LDraw. So the inversions need to occur in the real commands, not in the clipping-extension (...) (25 years ago, 19-Oct-99, to lugnet.cad.dev)
|
|
| | Re: Object Orientation & DAT files & CLIPPING/WINDING
|
|
(...) Yes it is. (...) The reference of the current GLOBAL state is passed down the file-reference tree, YES. (...) Correct. (...) NOT the FILE, but the RENDERING PROGRAM ! (...) Agreed. (...) By default would be CCW. (...) YES and NO. The internal (...) (25 years ago, 20-Oct-99, to lugnet.cad.dev)
|
|
| | Re: Object Orientation & DAT files & CLIPPING/WINDING
|
|
(...) Great! (...) It's local when you look at it in the .DAT where it is used. It's effect is NOT local, when you are looking from the renderer program's view, because it has to keep track of the current invert state. The INVERT meta-command only (...) (25 years ago, 20-Oct-99, to lugnet.cad.dev)
|
|
| | Re: Object Orientation & DAT files & CLIPPING/WINDING [DAT]
|
|
Steve Bliss wrote... (...) "Hey, (...) But it *is* compatible with LDraw! You left out my example (which BTW had the INVERT placed incorrectly :-), so I'll repeat it. stud2.dat is the hollow stud used on technic bricks. It uses two cylinders: 1 16 0 (...) (25 years ago, 20-Oct-99, to lugnet.cad.dev)
|
|
| | Re: Object Orientation & DAT files & CLIPPING/WINDING
|
|
(...) You are right. Or more precisely, I was wrong. Matrix-based *inversions* are not required. But matrix-based mirrorings will be necessary, for asymmetric primitives, like 1-4cyls.dat. (...) I was thinking about some approach that would map (...) (25 years ago, 21-Oct-99, to lugnet.cad.dev)
|