6.1. Library Structure¶
Library Structure
./optrace
├── __init__.py
├── global_options.py
├── gui
│ ├── __init__.py
│ ├── _scene_plotting.py
│ ├── command_window.py
│ ├── property_browser.py
│ └── trace_gui.py
├── metadata.py
├── plots
│ ├── __init__.py
│ ├── chromaticity_plots.py
│ ├── image_plots.py
│ ├── init.py
│ ├── misc_plots.py
│ └── spectrum_plots.py
├── progress_bar.py
├── property_checker.py
├── resources
│ ├── SOURCE.txt
│ ├── illuminants.csv
│ ├── images
│ │ ├── ETDRS_chart.png
│ │ ├── ETDRS_chart_inverted.png
│ │ ├── SOURCE.txt
│ │ ├── cell.webp
│ │ ├── color_checker.webp
│ │ ├── documents.webp
│ │ ├── eye_test_vintage.webp
│ │ ├── fruits.webp
│ │ ├── group_photo.webp
│ │ ├── hong_kong.webp
│ │ ├── interior.webp
│ │ ├── landscape.webp
│ │ ├── siemens_star.png
│ │ ├── tv_testcard1.png
│ │ └── tv_testcard2.png
│ └── observers.csv
├── tracer
│ ├── __init__.py
│ ├── base_class.py
│ ├── color
│ │ ├── __init__.py
│ │ ├── illuminants.py
│ │ ├── luv.py
│ │ ├── observers.py
│ │ ├── srgb.py
│ │ ├── tools.py
│ │ └── xyz.py
│ ├── convolve.py
│ ├── geometry
│ │ ├── __init__.py
│ │ ├── aperture.py
│ │ ├── detector.py
│ │ ├── element.py
│ │ ├── filter.py
│ │ ├── group.py
│ │ ├── ideal_lens.py
│ │ ├── lens.py
│ │ ├── line.py
│ │ ├── marker
│ │ │ ├── __init__.py
│ │ │ ├── line_marker.py
│ │ │ └── point_marker.py
│ │ ├── point.py
│ │ ├── ray_source.py
│ │ ├── surface
│ │ │ ├── __init__.py
│ │ │ ├── aspheric_surface.py
│ │ │ ├── circular_surface.py
│ │ │ ├── conic_surface.py
│ │ │ ├── data_surface_1d.py
│ │ │ ├── data_surface_2d.py
│ │ │ ├── function_surface_1d.py
│ │ │ ├── function_surface_2d.py
│ │ │ ├── rectangular_surface.py
│ │ │ ├── ring_surface.py
│ │ │ ├── slit_surface.py
│ │ │ ├── spherical_surface.py
│ │ │ ├── surface.py
│ │ │ └── tilted_surface.py
│ │ └── volume
│ │ ├── __init__.py
│ │ ├── box_volume.py
│ │ ├── cylinder_volume.py
│ │ ├── sphere_volume.py
│ │ └── volume.py
│ ├── image
│ │ ├── __init__.py
│ │ ├── base_image.py
│ │ ├── grayscale_image.py
│ │ ├── render_image.py
│ │ ├── rgb_image.py
│ │ └── scalar_image.py
│ ├── load.py
│ ├── misc.py
│ ├── presets
│ │ ├── __init__.py
│ │ ├── geometry.py
│ │ ├── image.py
│ │ ├── light_spectrum.py
│ │ ├── psf.py
│ │ ├── refraction_index.py
│ │ ├── spectral_lines.py
│ │ └── spectrum.py
│ ├── random.py
│ ├── ray_storage.py
│ ├── raytracer.py
│ ├── refraction_index.py
│ ├── spectrum
│ │ ├── __init__.py
│ │ ├── light_spectrum.py
│ │ ├── spectrum.py
│ │ └── transmission_spectrum.py
│ └── transfer_matrix_analysis.py
└── warnings.py
14 directories, 103 files
Example Structure
./examples
├── IOL_pinhole_imaging.py
├── IOL_target_imaging.py
├── achromat.py
├── arizona_eye_model.py
├── astigmatism.py
├── brewster_polarizer.py
├── cosine_surfaces.py
├── double_gauss.py
├── gui_automation.py
├── hurb_apertures.py
├── image_render.py
├── image_render_many_rays.py
├── keratoconus.py
├── legrand_eye_model.py
├── microscope.py
├── prism.py
├── psf_imaging.py
├── refraction_index_presets.py
├── resources
│ ├── eyepiece
│ │ ├── LICENSE.txt
│ │ ├── SOURCE.txt
│ │ └── UK565851-1.zmx
│ ├── materials
│ │ ├── LICENSE.txt
│ │ ├── SOURCE.txt
│ │ ├── hikari.agf
│ │ ├── hoya.agf
│ │ ├── ohara.agf
│ │ └── schott.agf
│ └── microscope
│ ├── LICENSE.txt
│ ├── Nikon_1p25NA_60x_US7889433B2_MultiConfig_v2.zmx
│ └── SOURCE.txt
├── spectrum_presets.py
├── sphere_projections.py
└── spherical_aberration.py
5 directories, 33 files