Skip to main content
Question

Best way to share parameters between two user-defined surfaces?

  • September 2, 2024
  • 3 replies
  • 90 views

ellenlee619

I’m working on a pair of DLL files. The sag of the second DLL depends on the parameters of the first DLL, plus a few other parameters. What’s the best way to share information between these two user-defined surfaces? Do I need to add pickups for every parameter (manually or via script)? Or is there some way to pass the entire 1st surface as a parameter/argument to the 2nd surface?

David.Nguyen
Luminary
Forum|alt.badge.img+2

@ellenlee619

 

I think Pickups are a good idea, there’s also a possibility to have some data in a text file that the DLLs can pickup, see the following Knowledge Base Article and forum post:

https://support.zemax.com/hc/en-us/articles/1500005576142-How-to-read-a-static-data-file-into-a-user-defined-surface

https://community.zemax.com/dlls-11/read-and-parse-data-from-text-file-in-dll-using-in-c-way-114

although I imagine it must add some overhead compared to Pickups.

Take care,

 

David


Mark.Nicholson
Luminary
Forum|alt.badge.img+3

I think there may also be a DATA surface that is intended for even more data to be passed to dlls, but I;m not on a machine with Zemax on to conform.


David.Nguyen
Luminary
Forum|alt.badge.img+2

Indeed, and I think @Mark.Nicholson is talking about this post (correct me if I’m wrong):

https://community.zemax.com/dlls-11/how-to-pass-more-parameters-to-a-user-defined-surface-dll-15?tid=15&fid=11

Take care,

 

David


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