Ray Optics Simulation
Simulate reflection and refraction of light.
Features
- Simulate various light sources: ray, beam, and point source
- Simulate reflection in plane or arc mirror
- Simulate refraction in plane or arc interfaces, including both refracted and reflected rays
- Simulate ideal lens/mirror, which obeys lens/mirror equation
- View extensions of rays to see if they converge to a virtual image
- View real images, virtual images and virtual objects directly
- View images that can be observed from some given position
- Distance and angular measurement
Links
Sample files
Use Open
to open the downloaded sample files to preview what cane be done using this project.
If you created a good sample, please submit a pull request to let others see your work!
Quick Start
Clone the repo: git clone https://github.com/ricktu288/ray-optics.git
License
Copyright 2018 Rick Tu, Johnson
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Third-Party Software
Ray Optics Simulation includes or depends upon the following third-party software, either in whole or in part. Each third-party software package is provided under its own license.
FileSaver.js
FileSaver.js is distributed under the MIT license. The source code is available at: https://github.com/eligrey/FileSaver.js
Bootstrap
Bootstrap is distributed under the MIT license. The source code is available at: https://github.com/twbs/bootstrap
jQuery
jQuery is distributed under the MIT license. The source code is available at: https://github.com/jquery/jquery
Knockout
Knockout is distributed under the MIT license. The source code is available at: https://github.com/knockout/knockout