To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cadOpen lugnet.cad in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / 11656
11655  |  11657
Subject: 
Re: Quick way to mirror-image a model?
Newsgroups: 
lugnet.cad
Date: 
Thu, 24 Jun 2004 18:57:26 GMT
Viewed: 
4184 times
  
In lugnet.cad, Carl Nelson wrote:
In lugnet.cad, Don Heyse wrote:
I don't think so.  5 is for keeping track of which parts we've looked
at, not which ones to ignore when your run your mirror program.
Eventually I think we'll remove all the ones marked with a 5 from the
MIRROR.INI file.  (And that includes the left-right symmetric slopes
because they use the default matrix).

IMO there *is* value to knowing that the proper exception matrix is
indeed an exception rather than coincidentally the same as the
default matrix.  If the 5 is not the place for this, there should be
a new flag for it.

Sure, but you still haven't convinced me there's any difference
between a 2x2 brick and a 2x2 slope brick.  I must be getting senile
in my old age, because I just don't get it.

Anyhow, use 55 if it makes you happy.  We'll figure out what to do
with it later when my brain starts working.  Steve's already switched
over to some other weird notation for the flag field.  Maybe you
should send him a note and you two can duke it out.  And perhaps you
can send my your code and it'll all become clear to me.  I don't know.

It's especially important if all the 5s are removed.  If so, the
left-right symmetric slopes with an exception matrix of -1 0 0 0 1 0
0 0 1 will only function properly for left-right reflections because
that's the only case where their exception matrix would equal the
"default" matrix.  ("Default" in quotes because it should probably be
the mirror-plane matrix or some other term that describes what it
is.)

What do you mean by function properly?  As far as I know, I can
change the global subfile mirror matrix (mp in my code sample) to a
mirror across *any* arbitrary plane and it should still work.  I've
compiled mirwiz.c with a front-back mp and it still works.

    float mm[4][4] = { // Front-back mirror
      {1.0,0.0,0.0,0.0},
      {0.0,1.0,0.0,0.0},
      {0.0,0.0,-1.0,0.0},
      {0.0,0.0,0.0,1.0}
    };
    //float *mp = md; // Init global mirror to left-right.
    float *mp = mm; // Init global mirror to front-back.

What else do you need to function properly?  The whole point of the
exception matrix is to prepare each part so that the *real* mirror
(the global subfile mirror operation) is in fact an UNmirror operation
because all the parts are already mirrored.  You just can't tell
they're already mirrored unless you look at the backwards logos in
MLCAD or POV output.

Go ahead and try it.  Just apply the exception matrices to a
subfile.  It should come out looking identical.  But if you look
really close at the logos in MLCAD you'll see they're backwards,
ready to be fixed by *any* mirror operation.  (Don't use ldview
or ldglite though because they fix the logos on the fly if they
detect a negative determinant.)

Am I mistaken about this somehow?  Does it somehow produce parts
that aren't mirrored, but also aren't real?  Show me the mangled
LDR file.

Of course, this supports your methodology of treating every part
listed in mirror.ini as an exception regardless of whether it happens
to use the reflection matrix. ;-) But it would still fail if those
true exceptions were removed.

I'm still not seeing that.  Steve?  Help me out here.  What am I
missing?

BTW, do you want me to send you the parts that I've changed
mirror.ini for already?  I've also confirmed some as correct by
rotating different models.

You're not a SourceForge member, are you?  This merging would be so
much simpler if we could just let CVS merge the changes for us.
Since you're probably not, maybe you could send the changes to Steve.
(and send me a copy too)  He's taking a rational approach.  Doing
the ones and then the two's, whereas I just fool around and look
at wings or doors or whatever strikes my fancy.

Have fun,

Don



Message is in Reply To:
  Re: Quick way to mirror-image a model?
 
(...) IMO there *is* value to knowing that the proper exception matrix is indeed an exception rather than coincidentally the same as the default matrix. If the 5 is not the place for this, there should be a new flag for it. It's especially important (...) (20 years ago, 24-Jun-04, to lugnet.cad)

65 Messages in This Thread:

















Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR