Changeset 497

Show
Ignore:
Timestamp:
02/18/08 17:22:26 (7 months ago)
Author:
tom
Message:

more refinements to processing interactive map

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/processing/sketches/modest_maps_interactive/InteractiveMap.java

    r496 r497  
    4949  // for loading tiles from the inside first 
    5050  QueueSorter queueSorter = new QueueSorter(); 
     51 
     52  /** default to Microsoft Hybrid */ 
     53  InteractiveMap(PApplet p) { 
     54    this(p, new Microsoft.HybridProvider()); 
     55  } 
     56 
     57  /** new map using applet width and height, and given provider */ 
     58  InteractiveMap(PApplet p, AbstractMapProvider provider) { 
     59    this(p, provider, p.width, p.height); 
     60  } 
    5161 
    5262  /** make a new interactive map, using the given provider, of the given width and height */ 
     
    298308 
    299309  void setMapProvider(AbstractMapProvider provider) { 
    300     this.provider = provider; 
    301     images.clear(); 
    302     queue.clear(); 
    303     pending.clear(); 
     310    if (this.provider.getClass() != provider.getClass()) { 
     311      this.provider = provider; 
     312      images.clear(); 
     313      queue.clear(); 
     314      pending.clear(); 
     315    } 
    304316  } 
    305317 
  • trunk/processing/sketches/modest_maps_interactive/modest_maps_interactive.pde

    r496 r497  
    22InteractiveMap map; 
    33 
    4 ZoomButton in, out; 
    5 PanButton up, down, left, right; 
    6 Button[] buttons; 
     4ZoomButton out = new ZoomButton(5,5,14,14,false); 
     5ZoomButton in = new ZoomButton(22,5,14,14,true); 
     6PanButton up = new PanButton(14,25,14,14,UP); 
     7PanButton down = new PanButton(14,57,14,14,DOWN); 
     8PanButton left = new PanButton(5,41,14,14,LEFT); 
     9PanButton right = new PanButton(22,41,14,14,RIGHT); 
     10 
     11Button[] buttons = { in, out, up, down, left, right }; 
     12 
     13float startTx, endTx; 
     14float startTy, endTy; 
     15float startSc, endSc; 
     16 
     17int startTime; 
     18int duration; 
    719 
    820void setup() { 
     
    1628  });  
    1729 
    18   map = new InteractiveMap(this, new Microsoft.HybridProvider(), width, height); 
     30  map = new InteractiveMap(this); 
    1931 
    20   Location location = new Location(37.784, -122.406); // san francisco 
    21  
    22   map.setCenterZoom(location, 18);  
    23  
    24   out = new ZoomButton(5,5,14,14,false); 
    25   in = new ZoomButton(22,5,14,14,true); 
    26   up = new PanButton(14,25,14,14,UP); 
    27   down = new PanButton(14,57,14,14,DOWN); 
    28   left = new PanButton(5,41,14,14,LEFT); 
    29   right = new PanButton(22,41,14,14,RIGHT); 
    30  
    31   buttons = new Button[] {  
    32     in, out, up, down, left, right     }; 
     32  // London from getlatlon.com, thanks Simon! 
     33  map.setCenterZoom(new Location(51.500152, -0.126236), 11); 
    3334 
    3435  textFont(createFont("Helvetica", 12), 12); 
    3536 
     37  startTime = millis() + 1000;  
     38  duration = 5000; 
    3639} 
    3740