⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 markerlayer.java

📁 geotools的源码
💻 JAVA
字号:
package uk.ac.leeds.ccg.geotools;

import java.util.Hashtable;
import java.awt.*;

public class MarkerLayer extends PointLayer implements LockableSize{
    Marker defaultMarker = new TriangleMarker();
    Hashtable markers = new Hashtable();
    
    public void MarkerLayer(){
        defaultSize=3;
    }
    
    public void addMarker(GeoPoint p){
        addGeoPoint(p);
        
        markers.put(new Integer(p.getID()),defaultMarker);
    }
    
    public void addMarker(GeoPoint p,Marker m){
        markers.put(new Integer(p.getID()),m);
        addGeoPoint(p);
    }
    
    public void setDefaultMarker(Marker m){
        defaultMarker = m;
    }
    public void setDefaultSize(int i){
        defaultSize=i;
    }
    
    
    public void paintScaled(GeoGraphics gg) {
        GeoPoint temp;
        Filter filter= gg.getFilter();
        for(int i = 0;i < shapeList.size() ;i++) {
            temp = (GeoPoint)shapeList.elementAt(i);
            Integer id = new Integer(temp.getID());
            if(filter==null || filter.isVisible(id.intValue())){
                Marker m = (Marker)markers.get(id);
                if(m==null) m=defaultMarker;
                m.paintScaled(gg,temp,defaultSize);
            }
        }
        
    }
    
    public void paintHighlight(Graphics g, Scaler scale, int id, ShadeStyle style) {
        int p[],r;
        r = style.getLineWidth();
        for(int i = 0;i < shapeList.size();i++) {
            GeoPoint temp = (GeoPoint)shapeList.elementAt(i);
            if(temp.getID()==id){
                Integer idObj = new Integer(temp.getID());
                Marker m = (Marker)markers.get(idObj);
                if(m==null) m=defaultMarker;
                m.paintHighlight(g,temp,defaultSize,scale,style);
            }
        }
    }
    
    
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -