@@ -25,6 +25,7 @@ pub struct FractalRenderer {
2525 center_reference : Reference ,
2626 series_approximation : SeriesApproximation ,
2727 render_indices : Vec < usize > ,
28+ remove_centre : bool
2829}
2930
3031impl FractalRenderer {
@@ -44,6 +45,7 @@ impl FractalRenderer {
4445 let display_glitches = settings. get_bool ( "display_glitches" ) . unwrap_or ( false ) ;
4546 let auto_adjust_iterations = settings. get_bool ( "auto_adjust_iterations" ) . unwrap_or ( false ) ;
4647 let probe_sampling = settings. get_int ( "probe_sampling" ) . unwrap_or ( 3 ) as usize ;
48+ let remove_centre = settings. get_bool ( "remove_centre" ) . unwrap_or ( true ) ;
4749 let data_type = match settings. get_str ( "export" ) . unwrap_or ( String :: from ( "COLOUR" ) ) . to_ascii_uppercase ( ) . as_ref ( ) {
4850 "RAW" => DataType :: RAW ,
4951 "COLOUR" => DataType :: COLOUR ,
@@ -90,7 +92,8 @@ impl FractalRenderer {
9092 zoom_scale_factor,
9193 center_reference : reference,
9294 series_approximation,
93- render_indices
95+ render_indices,
96+ remove_centre,
9497 }
9598 }
9699
@@ -128,7 +131,7 @@ impl FractalRenderer {
128131
129132 let packing_time = Instant :: now ( ) ;
130133
131- if frame_index == 1 {
134+ if ( frame_index + self . frame_offset ) != 0 && self . remove_centre {
132135 // This will remove the central pixels
133136 self . data_export . clear_buffers ( ) ;
134137
@@ -146,7 +149,10 @@ impl FractalRenderer {
146149 let val2 = ( image_height as f64 * temp) . ceil ( ) as usize ;
147150
148151 i <= val1 || i >= image_width - val1 || j <= val2 || j >= image_height - val2
149- } )
152+ } ) ;
153+
154+ // The centre has already been removed
155+ self . remove_centre = false ;
150156 }
151157
152158 let mut pixel_data = ( & self . render_indices ) . into_par_iter ( )
0 commit comments