To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.devOpen lugnet.cad.dev in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / Development / 9046
9045  |  9047
Subject: 
Re: Proposed solution for mirrored parts and studs
Newsgroups: 
lugnet.cad.dev
Date: 
Fri, 4 Jul 2003 00:16:03 GMT
Viewed: 
1333 times
  
In lugnet.cad.dev, Travis Cobbs wrote:
1. You run the tool and pick a file that is known to include a mirror matrix.

As you write below you can open ANY file.
If no studs are mirrored, then no action takes place.

2. The tool loads the file and determines which (if any) studs are mirrored.

3. If any mirrored studs are detected, the tool creates copies of the sub-files
that reference the mirrored studs (with new names), and replaces references to
studs in these files with a reference to a mirrored stud file (say
p/studmirr.dat).  (Handling arbitrary levels of sup-parts will take some work,
but you get the general idea.)

In stead of referencing studmirr.dat, why not simply use a mirrored reference to stud.dat?

The p/studmirr.dat file I mentioned would simply be a reference to the standard
p/stud.dat file, but with mirroring along the X axis (change the 1 to a -1 in
the matrix).

If written correctly, the above could actually be run on your final model file,
and it would correct mirroring of entire sub-assemblies in addition to mirroring
of parts.  Since it would have to be made smart enough to deal with sub-parts in
mirrored parts, I don't think that any extra code would even be required to
handle whole models.

No, same code.

In addition, if done properly, the only effect it would
have on the size of the final POV output is that any portion of the model that
showed up both mirrored and un-mirrored would be in there twice, and any
mirrored studs would be wrapped in the additional transformation matrix.

Right.

If anyone can think of a reason that the above wouldn't work, please respond.
Otherwise, I'll set about making a command line tool whose code should be
portable enough to compile in Windows, Linux, and Mac OS X (and presumably other
operating systems).

Assuming I can produce such a tool, does anyone see any reason why there should
be any concession to mirroring in the parts library itself?

If all parts in the parts library were "fixed" to not used mirroring I think that would
benefit most users, who simply build models of standard parts and use normal submodels.
Only models using mirrored submodels (e.g. leftwing.ldr or halfcathedral.ldr)
would have to use your tool then.

I have also been wondering how I could make L3P cope with the problem,
and one solution was exactly like yours, internally generating mirrored subfiles.
Another solution (simpler to implement) was to leave out studs from the parts
and then at the end have all studs in one big chunk, each stud with the full transformation.
However, both solutions require L3P to know and walk the tree,
so I like your tool :-)
/Lars



Message has 1 Reply:
  Re: Proposed solution for mirrored parts and studs
 
(...) I'll look into that. I thought it would be easier to reference the other file, but thinking about it again, I guess I should be able to multiply the mirror matrix by the stud matrix to get the correct final matrix anyway. (Or would that be (...) (21 years ago, 4-Jul-03, to lugnet.cad.dev)

Message is in Reply To:
  Proposed solution for mirrored parts and studs
 
It's obvious that there is a lot of interest in the problem of mirrored studs, based on the volume of traffic in the ongoing thread. I have a proposed solution to the problem. My proposal is the creation of a small tool that automatically fixes a (...) (21 years ago, 3-Jul-03, to lugnet.cad.dev)

9 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
    

Custom Search

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