demisjohn / ASML_JobCreator

Generate ASCII Job files for an ASML PAS 5500 Stepper Lithography system, by the UCSB Nanofabrication Facility.
16 stars 4 forks source link

`Plot.py` updates from Miguel #47

Open demisjohn opened 1 year ago

demisjohn commented 1 year ago

@mdaal contributes the attached plot.py, which includes his following features: Plot_mdaal.py.zip

I have extended JobCreator to include the functionality so that plot wafer can plot the image distribution per layer (and per image) eg

MyJob.plot_wafer(plot_set = LAYER_1) # Layer object passed Or MyJob.plot_wafer(plot_set = {‘box’, ‘trace’} # Layer_ID string passed

Where box and trace are images defined. This functionality is very helpful for when your job has a lot of images and layers that overlap.

Agreed, this will be very helpful!

Suggestions: Change argument name plot_set=-->layer=

Need to parse and fold this into the module, and test for functionality/bugs.

fyodr commented 1 year ago

Merged with a new commit. Changed argument name as suggested. Removed support for Layer object arguments -- only supports selection by LayerID strings.

Also, Miguel's code passes out a dictionary called patch_dict. I think the purpose is to let the user plot the patches on a different figure? If so, you can do that now by passing the target (figure, axis) as an argument to plot_wafer. If not, it should be easy to add back in, and sorry for leaving it out in this commit.

Otherwise, I think I preserved all functionality.

I have pushed to my fork. Will send a pull request soon, after a little more debugging.