public virtual Builder add_spectral_line(SpectralLine l)
 {
     _spectrum.Add(l);
     _max_intensity = Math.Max(_max_intensity, l.get_intensity());
     _min_intensity = Math.Min(_min_intensity, l.get_intensity());
     return(this);
 }
            public virtual Builder add_spectral_line(double wavelen)
            {
                SpectralLine l = new SpectralLine(wavelen, 1.0);

                _spectrum.Add(l);
                _max_intensity = Math.Max(_max_intensity, l.get_intensity());
                _min_intensity = Math.Min(_min_intensity, l.get_intensity());
                return(this);
            }
Exemple #3
0
 void draw_intercepts(RendererViewport renderer, Surface s)
 {
     //        double max_intensity = _results.get_max_ray_intensity ();
     //        renderer.set_max_intensity(max_intensity);
     foreach (TracedRay ray in _results.get_intercepted(s))
     {
         // dont need global transform here, draw ray intercept points in
         // surface local coordinates.
         renderer.draw_point(ray.get_intercept_point().project_xy(), SpectralLine.get_wavelen_color(ray.get_wavelen()), Renderer.PointStyle.PointStyleDot);
     }
 }
 /**
  * Get color to use for a ray
  */
 static Rgb ray_to_rgb(LightRay ray)
 {
     return(SpectralLine.get_wavelen_color(ray.get_wavelen()));
 }