<commit_before>/*
Copyright 2006 <NAME>

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.
*/

import java.util.*;
import java.io.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
import java.awt.geom.*;
import java.awt.image.*;
import java.awt.print.*;
import javax.swing.*;
import javax.swing.Timer;

import com.jhlabs.map.*;
import com.jhlabs.map.proj.*;
import com.jhlabs.map.util.*;
import com.jhlabs.map.layer.*;

/**
 * A component which displays a globe.
 */
public class Globe extends JComponent {
    
    protected static int quality_paint_delay = 100;
    private Timer quality_paint_timer ;
    protected static int force_repaint_delay = 10*60*1000;
    private Timer force_repaint_timer ;
    
    private BufferedImage buffered_image;
    private boolean quality_image_buffered = false;
    private long last_time_update = 0;
    
    private Color day_color = new Color(0, 0, 1f, 0.1f);
    private double max_zoom = 20;
    private double min_zoom = 0.6;
    
    protected Graphics2D g2;
    private float globeRadius = 275;
    protected Projection projection;
    private boolean showSea = true;
    private boolean showWorld = true;
    private boolean showGraticule = true;
    private boolean showDay = false;
    private boolean showTest = false;
    private boolean showTissot = false;
    private ProjectionMouseListener mouseListener;
    private PanZoomMouseListener zoomListener;
    protected AffineTransform transform = new AffineTransform();
    private BufferedImage image;

    private Layer map;
    private Layer mapLayer;
    private Layer worldLayer;
    private Layer graticuleLayer;
    private Layer seaLayer;
    private TissotLayer tissotLayer;
    private Layer linkLayer;
    private Layer selectedLayer;
    private Style style = new Style( Color.black, Color.green );<commit_msg>Minor bugfix for zoom<commit_after>/*
Copyright 2006 <NAME>

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.
*/

import java.util.*;
import java.io.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
import java.awt.geom.*;
import java.awt.image.*;
import java.awt.print.*;
import javax.swing.*;
import javax.swing.Timer;

import com.jhlabs.map.*;
import com.jhlabs.map.proj.*;
import com.jhlabs.map.util.*;
import com.jhlabs.map.layer.*;

/**
 * A component which displays a globe.
 */
public class Globe extends JComponent {
    
    protected static int quality_paint_delay = 100;
    private Timer quality_paint_timer ;
    protected static int force_repaint_delay = 10*60*1000;
    private Timer force_repaint_timer ;
    
    private BufferedImage buffered_image;
    private boolean quality_image_buffered = false;
    private long last_time_update = 0;
    
    private Color day_color = new Color(0, 0, 1f, 0.1f);
    private double max_zoom_factor = 20;
    private double min_zoom_factor = 0.6;
    
    protected Graphics2D g2;
    private float globeRadius = 275;
    protected Projection projection;
    private boolean showSea = true;
    private boolean showWorld = true;
    private boolean showGraticule = true;
    private boolean showDay = false;
    private boolean showTest = false;
    private boolean showTissot = false;
    private ProjectionMouseListener mouseListener;
    private PanZoomMouseListener zoomListener;
    protected AffineTransform transform = new AffineTransform();

    private Layer map;
    private Layer mapLayer;
    private Layer worldLayer;
    private Layer graticuleLayer;
    private Layer seaLayer;
    private TissotLayer tissotLayer;
    private Layer linkLayer;
    private Layer selectedLayer;
    private Style style = new Style( Color.black, Color.green );
{'fraction_non_alphanumeric': 0.07336226493077082, 'fraction_numerical': 0.014052490183922298, 'mean_word_length': 3.883955600403633, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1743382', 'n_tokens_mistral': 1406, 'n_tokens_neox': 1313, 'n_words': 494}