Subject: 
  | 
            Re: CW/CCW, vertex sequence, co-planar, convex,  (115kB)
  | 
             
            Newsgroups: 
  | 
            lugnet.cad.dev
  | 
             
            Date: 
  | 
            Sun, 3 Oct 1999 03:27:48 GMT
  | 
             
            Viewed: 
  | 
            1512 times
  | 
              
     |      | 
             |       |  
      Steve Bliss wrote in message <37f4edd7.8510607@lugnet.com>... 
> Gary and I wrote: 
>  
> > > > I think there could be problems if some of those non-closed primitives  are 
> > > > asymmetrical. 
> > >  
> > > Why? 
> >  
> > I'm having a difficult time picturing in my mind how an asymmetrical part 
> > can have its orientation matrix in the parent dat file mirrored and  rotated 
> > (to flip the CW-ness of each polygon) and still have the same shape. 
> >  
> > Maybe I'm thinking of something totally different from what you're  thinking. 
> > :/ 
>  
> OIC now.  I think. 
>  
> If an asymmetrical part is mirrored, it keeps the same shape, but is turned 
> inside out.  To get it right-side-out again, it must be re-mirrored.  In 
> other words, there's no way to produce left- and right-handed pairs of 
> asymmetrical primitives from a single primitive file, and maintain 
> C(C)W-ness.  Is that what you mean? 
 
 
Possibly.  I'm not to great when it comes to expressing myself. 
 
I think if an even number of mirror operations are performed on a part, its 
polygons' vertex orders would be preserved--so mirroring twice (in the X and 
Z directions) and rotating by 180 degrees (around Y axis) would not have any 
effect on CW-ness. 
 
> In this case, a 0 INVERT meta-statement would be good.  It would be a 
> signal to C(C)W-sensitive programs to invert their expectations. 
 
 
Yes. 
 
It seems to be the only way, since apparently an orientation matrix can't be 
corrected to account for a complete inversion of an asymmetrical primitive 
or subpart. 
 
> Would it be better to make 0 INVERT affect just the next line, or to be 
> persistent?  I'd prefer the second, but that's just my opinion. 
 
I think it should affect only the very next line. 
 
Otherwise, if an invert command got accidentally deleted, it would mess up 
the rest of the file (granted, it would be easier to detect this condition 
that way). 
 
On the other hand, '0 FACE CW' has a persistent meaning.  Maybe all of these 
new meta-commands should be consistent in that way. 
 
If it has a persistent meaning, then there must be a counterpart command 
that would un-invert.  I'd prefer to not have a second INVERT command invert 
(undo) the first INVERT...(if you're manually browsing the part definition 
file, you'd have to keep track of the number of inverts you've come across 
to see which way the subparts are currently being interpreted). 
 
Also, would a STEP command reset the current INVERT state?  (Granted, step 
shouldn't be used in part files, and INVERT shouldn't be used in a model 
file, but it could happen...) 
 
-Gary 
 |  
       |  
           
   
        Message has 1 Reply:         
        Message is in Reply To:
            |    | Re: CW/CCW, vertex sequence, co-planar, convex,  (115kB)
  |  
  |  (...) OIC now. I think. If an asymmetrical part is mirrored, it keeps the same shape, but is turned inside out. To get it right-side-out again, it must be re-mirrored. In other words, there's no way to produce left- and right-handed pairs of (...)   (26 years ago, 3-Oct-99, to lugnet.cad.dev)   
   |         
      53 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
           
         | 
        
  | 
      
 
   | 
           |