Snoop for MS Windows
Author: Yung-Yu Chuang, CSE, University of Washington
Project advised by Prof. Brian Curless & Prof. Marc Levoy

Download snoop.exe (84KB)
older version - snoop.0.23.exe (72KB)
Version 0.32
Updated April 1, 2003
Credits Based on the source of Microsoft ZoomIn utility.
Comment Please sent to cyy@cs.washington.edu
Source snoop.0.32.tar.gz
If you modify the source code, I'd like to have a copy of it. Thanks.
New
Features
  In version 0.32:
    Enable maximize button.
    
  In version 0.31:
    Snoop now supports multiple configurations (up to 9).
    Use 'Shift+Fn' to save the current configuration as 
    configuration n, 'Ctrl+Fn' to load configuration n.
    To start a snoop with specific configuration file,
    start it with '-f n' in command line. Without specifying
    which configuration to use, configuration #1 will be used.
    The option 'Auto save config' will save to configuration
    #1 when exiting. Press 'Backspace' will reset your 
    configuration #1 to default setting. Press 'Del' to remove
    all the configurations.
    
    The configurations are saved in windows registry. To remove
    them, run 'regedit' from 'Start->Run'. Find 'HKEY_CURRENT_USER
    ->Software->snoop' and delete the whole snoop directory. 
    Of course, you can edit the configuration files if you know
    what you are doing. If you downloaded ver 0.3, I will suggest
    you to remove the registry. (Press 'Del' will do it in ver 0.31)

  In version 0.30:
    You can either press 'f' to manually save program status at
    any time or use "Edit->Auto save config" to turn on auto 
    configuration saving function so that the program status
    will be saved each time you exit snoop.
  
Operation
Modes
  Tracking:
    1. Mouse mode (m): track the mouse cursor (higher priority) 
                       and arrow key.
    2. Arrow mode (a): track by arrow key
    3. Drag Mode: click the left button of the mouse within the 
                  snoop window and drag the cursor to where you 
                  want to snoop. After releasing left button,
                  snoop switch back to the mode before drag.
  Filter: (switch using Tab)
    1. Snoop mode (default mode)
    2. Gradient Mode (only for true color display) 
  Graphs:
    1. Horizontal step intensity profile
    2. Horizontal linear intensity profile    
    3. Vertical step intensity profile
    4. Vertical linear intensity profile 
    5. Histogram (only for true color display)  
  
Hot Keys
  For changing zoom factor
    1-9: Set zoom factor to n.
    0: Set Zoom factor to 10.
    =: Increase zoom factor.
    +: Increase zoom factor.
    -: Decrease zoom factor.

  For intensity profile settting
    h: View horizontal linear intensity profile.
    H: View horizontal step intensity profile.
    v: View vertical linear intensity profile.
    V: View vertical step intensity profile.
    o: Turn off profile view.
    l: Turn on/off highlight in profile view.

  For Histogram:
    F4: Display histogram
    i: Statistics on/off for histogram
    PgUp: Increase height in histogram
    PgDn: Decrease height in histogram
    Home: Reset height in histogram

  For gradient:
    Tab: Switch display mode (snoop or gradient)

  Adjust brightness, contrast and gamma
    Press 
    [Shift] Brightness or
    [Ctrl] Contrast or
    [Shift]+[Ctrl] Gamma
    and one of
    [PgUp] Increase 
    [PgDn] Decrease
    [Home] Reset

  Misc:
    a: Switch to arrow mode 
       (In arrow mode, use arrow key to move the capturing area.
        Shift+'arrow key' for faster move. Ctrl+'arrow key' will
        snap to the boundary of the desktop in that direction.)
    m: switch to mouse mode.	
    d: Display capturing area
    s: Use screen coordinate system
    w: Use active window coordinate system
    r: Turn on/off ruler
    u: Update the capturing 
    y: inverse the direction of y-axis
    x: display color in Hex 
    b: boundary test on/off (default: off. Snoop only works with
       multi-monitor when bound is off.)
    F1: About (Help)
    F2: Switch 'Always on top' on/off
    F3(or #): Switch grid on/off
    f: save current configuration into registry (as configuration #1)
    Backspace: reset configuration #1    
    Del: remove all configurations
    q: Quit the program
    [Esc]: Quit the program

  
Program Arguments
    -top: turn on 'always on top'
    -notop: turn off 'always on top'
    -grid: turn on 'grid'
    -nogrid: turn off 'grid'
    -ruler: turn on ruler
    -noruler: turn off ruler
    -centermark: turn on center mark
    -nocentermark: turn off center mark
    -highlight: turn on highlight in intensity profile
    -nohighlight: turn off highlight in intensity profile
    -coord x y: set the init position of the window at (x, y) 
    -size w h: set the init dimension of the window as w by h
    -shift n: n is an integer,
              set the fast move step as n (default=8) in arrow mode
    -f n: n is an integer,
          load configuration #n when started
    -[c]: [c] is a char, execute the function defined by hotket [c] 
          For example, 'snoop -4 -h' will set zoom factor to 4 and 
	  display horizontal linear intensity profile when the 
	  program starts.
    -inversey: y axis goes up
    -hex: display color in Hex
    -bound: turn on boundary test.
  
History
Ver 0.01
09/10/00
The first version is created.
Ver 0.1
09/14/00
Augment 'arrow mode'.
Add the function of displaying capturing area.
Add the capability to swtich coordinate system.
09/16/00 Fix some bugs pointed by Marc Levoy.
Add color blending and inset in graph.
Handle command line options.
Add ruler.
Add highlight for intensity profile.
Fix the bug for -r argument.
Ver 0.15
09/22/00
Add histogram.
Add gradient.
Ver 0.2
09/22/00
Add brightness, contrast and gamma adjustment.
Add intensity profile and histogram for gradient mode.
Ver 0.21
11/01/00
Add an option to inverse y axis.
Ver 0.22
03/18/01
Add an option to display color in Hex.
Ver 0.23
04/24/01
Add an option to turn on/of boundary test to work with multi-monitor.
Thanks to Michael Warning for the suggestion.
Ver 0.30
07/30/02
Add registry to restore program status before exit.
Ver 0.31
07/30/02
Support multiple configurations.
Ver 0.32
04/01/03
Enable maximize button.
Snapshot


Gradient mode.


Histogram graph mode.