Skip to main content
Solved

how to get detailed XYZ/tilt info. when doing CAD_step exlode


Ying
Forum|alt.badge.img+1

Hi,

I have a simple CAD step file (just two parts), and I imported it into Zemax, and then did CAD explode.

The two elements did show up, but with no information for XYZ and tilt. How can I get those information?

The screenshot is attached.

Thanks,

Ying

Best answer by MichaelH

Hi Ying,

Unfortunately, there is no built-in way to get the 3D location of the vertex of the exploded part in Non-Sequential mode.  The reason is because when OpticStudio explodes the individual CAD components, it uses the global reference as the XYZ origin.  So, if you toggle the Object Properties > Draw > Draw Local Axis, you can see that each exploded part has the same XYZ origin and that is at (0, 0, 0).

As with almost anything in non-sequential mode, you’ll need to run a ray trace to get any useful information.  For this specific case where you have a good idea that the lenses are “on-axis”, you can use a Source Ray and the NSRA Merit Function Operand to determine the XYZ location of the vertex:

  1. Insert a Source Ray anywhere in NCE
  2. Set the Z Position to a negative value (like -5)
  3. Set the # Analysis Rays to 1
  4. Hide the objects you don’t care about (you’ll need to analyze the objects one at a time)
  5. Open the Merit Function Editor and add a NSRA operand
  6. Set the following values:
    1. Src# = row number of the Source Ray
    2. Splt? = 0
    3. Pol? = 0
    4. Seg#: use 1 for the front vertex and 2 for the back vertex (assuming you’ve hidden all previous objects)
    5. Data: 3 for Z (1 for X and 2 for Y)
    6. Source # = 0

~Michael

View original

MichaelH
Ansys Staff
Forum|alt.badge.img+2
  • Ansys Staff
  • April 1, 2022

Hi Ying,

Unfortunately, there is no built-in way to get the 3D location of the vertex of the exploded part in Non-Sequential mode.  The reason is because when OpticStudio explodes the individual CAD components, it uses the global reference as the XYZ origin.  So, if you toggle the Object Properties > Draw > Draw Local Axis, you can see that each exploded part has the same XYZ origin and that is at (0, 0, 0).

As with almost anything in non-sequential mode, you’ll need to run a ray trace to get any useful information.  For this specific case where you have a good idea that the lenses are “on-axis”, you can use a Source Ray and the NSRA Merit Function Operand to determine the XYZ location of the vertex:

  1. Insert a Source Ray anywhere in NCE
  2. Set the Z Position to a negative value (like -5)
  3. Set the # Analysis Rays to 1
  4. Hide the objects you don’t care about (you’ll need to analyze the objects one at a time)
  5. Open the Merit Function Editor and add a NSRA operand
  6. Set the following values:
    1. Src# = row number of the Source Ray
    2. Splt? = 0
    3. Pol? = 0
    4. Seg#: use 1 for the front vertex and 2 for the back vertex (assuming you’ve hidden all previous objects)
    5. Data: 3 for Z (1 for X and 2 for Y)
    6. Source # = 0

~Michael


Ying
Forum|alt.badge.img+1
  • Visible
  • April 5, 2022

Hi Michael,

This is very helpful. 

Thanks,

Ying


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings