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

📄 dteddirectoryhandler.java

📁 openmap java写的开源数字地图程序. 用applet实现,可以像google map 那样放大缩小地图.
💻 JAVA
字号:
// **********************************************************************// // <copyright>// //  BBN Technologies//  10 Moulton Street//  Cambridge, MA 02138//  (617) 873-8000// //  Copyright (C) BBNT Solutions LLC. All rights reserved.// // </copyright>// **********************************************************************// // $Source: /cvs/distapps/openmap/src/openmap/com/bbn/openmap/dataAccess/dted/DTEDDirectoryHandler.java,v $// $RCSfile: DTEDDirectoryHandler.java,v $// $Revision: 1.1.2.1 $// $Date: 2004/10/14 18:26:41 $// $Author: dietrick $// // **********************************************************************package com.bbn.openmap.dataAccess.dted;import com.bbn.openmap.PropertyConsumer;import com.bbn.openmap.util.ComponentFactory;import com.bbn.openmap.util.Debug;import com.bbn.openmap.util.PropUtils;import java.util.Properties;/** * DTEDDirectoryHandler is a wrapper for a DTEDNameTranslator used for * a DTED directory. The DTEDNameTranslator has the intelligence to * know how file names and paths are represented for different * lat/lon/level combinations for DTED files within a directory. */public class DTEDDirectoryHandler implements PropertyConsumer {    /**     * The property for the path to the DTED directory.     */    public final static String PathProperty = "path";    /**     * The class name for the DTEDNameTranslator to be used for this     * path. If none is provided, the StandardDTEDNameTranslator will     * be used, which follows the DTED specification.     */    public final static String TranslatorClassProperty = "translator";    /**     * Property prefix for properties, used as a scoping mechanism.     */    protected String prefix;    /**     * The DTEDNameTranslator for this handler, which knows how to     * match up lat/lons with a DTED file name. A     * StandardDTEDNameTranslator is set initially, but the actual     * object can be reset programmatically or with properties.     */    protected DTEDNameTranslator translator = new StandardDTEDNameTranslator();    public DTEDDirectoryHandler() {};    /**     * Set the DTEDNameTranslator for this DTEDDirectoryHandler.     */    public void setTranslator(DTEDNameTranslator dnt) {        translator = dnt;    }    /**     * Get the translator for this DTEDDirectoryHandler.     */    public DTEDNameTranslator getTranslator() {        return translator;    }    /**     * Sets the DTED directory path on the translator if it isn't     * null. If the translator is null, this method does nothing.     */    public void setDirectoryPath(String path) {        if (translator != null) {            translator.setDTEDDir(path);        }    }    /**     * Gets the directory path from the translator. Will return null     * if the translator is null.     */    public String getDirectoryPath() {        if (translator != null) {            return translator.getDTEDDir();        }        return null;    }    public void setProperties(String prefix, Properties props) {        setPropertyPrefix(prefix);        String scopedPrefix = PropUtils.getScopedPropertyPrefix(prefix);        String path = props.getProperty(scopedPrefix + PathProperty);        String translatorClassName = props.getProperty(scopedPrefix                + TranslatorClassProperty);        if (translatorClassName != null) {            Object obj = ComponentFactory.create(translatorClassName,                    prefix,                    props);            if (obj != null && obj instanceof DTEDNameTranslator) {                translator = (DTEDNameTranslator) obj;            }        } else if (translator == null) {            translator = new StandardDTEDNameTranslator();        }        if (Debug.debugging("dtedfile")) {            Debug.output("DTEDDirectoryHandler|" + prefix + ": "                    + translator.getClass().getName() + " using " + path);        }        setDirectoryPath(path);    }    public void setProperties(Properties props) {        setProperties(null, props);    }    public Properties getProperties(Properties props) {        if (props == null) {            props = new Properties();        }        String prefix = PropUtils.getScopedPropertyPrefix(this);        props.put(prefix + PathProperty, PropUtils.unnull(getDirectoryPath()));        if (translator != null) {            props.put(prefix + PathProperty, translator.getClass().getName());            if (translator instanceof PropertyConsumer) {                ((PropertyConsumer) translator).getProperties(props);            }        }        return props;    }    public Properties getPropertyInfo(Properties props) {        if (props == null) {            props = new Properties();        }        props.put(PathProperty, "Path to DTED direcotory");        props.put(TranslatorClassProperty,                "Class name of DTEDNameTranslator to use for directory");        if (translator instanceof PropertyConsumer) {            ((PropertyConsumer) translator).getPropertyInfo(props);        }        return props;    }    public void setPropertyPrefix(String propertyPrefix) {        prefix = propertyPrefix;    }    public String getPropertyPrefix() {        return prefix;    }}

⌨️ 快捷键说明

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