6.注解、装饰、与标记-图标图元

World Wind Java球体增加一些内容,使它在展示数据时方式更丰富,应用更灵活。

图标图元

World Wind Java中图标图元(Icon)是指尺寸为16*16、32*32、64*64的png/jpg等格式的文件,在World Wind球体上绘制为图标,绘制的大小不会随地图的视野范围改变,无论视野范围改变,无论比例尺放大缩小,它们在画布上的绘制尺寸都是指定的。
World Wind Java使用IconLayer图层类表现图标图元数据,通过IconLayer上增加UserFacingIcon类的实例显示图标图元文件,一个IconLayer图层可以容纳多个UserFacingIcon类。UserFacingIcon类创建时要指定图像文件、经纬度、海拔高度、显示尺寸等属性。
代码如下:

import java.awt.Dimension;

import gov.nasa.worldwind.geom.Angle;
import gov.nasa.worldwind.geom.Position;
import gov.nasa.worldwind.layers.IconLayer;
import gov.nasa.worldwind.layers.RenderableLayer;
import gov.nasa.worldwind.render.UserFacingIcon;

public class wwjIcon extends wwjBasics{

    private static final long serialVersionUID = 1L;
    protected IconLayer iconLayer;
    protected RenderableLayer renderableLayer;

    public boolean AddIconLayer(String layerName){
        boolean rtnResult = false;
        try{
            iconLayer = new IconLayer();
            iconLayer.setName(layerName);
            this.worldWindowGLCanvas.getModel().getLayers().add(iconLayer);
            rtnResult = true;
        }
        catch(Exception ex){
            System.out.println(ex.getMessage());
        }
        return rtnResult;
    }

    public boolean AddIcon(String filePath,double lon ,double lat, Integer elevation, String IconTip){
        boolean rtnResult = false;
        try{
            UserFacingIcon userFacingIcon = new UserFacingIcon();
            userFacingIcon.setImageSource(filePath);
            Position iconPosition = new Position(Angle.fromDegrees(lat),Angle.fromDegrees(lon),elevation);
            userFacingIcon.setPosition(iconPosition);
            userFacingIcon.setSize(new Dimension(32,32));
            userFacingIcon.setShowToolTip(true);
            userFacingIcon.setToolTipText(IconTip);
            iconLayer.addIcon(userFacingIcon);


        }catch(Exception ex){
            System.out.println(ex.getMessage());
        }
        return rtnResult;
    }

    public wwjIcon(){
        AddIconLayer("图标显示");
        AddIcon("src/images/32x32-icon-nasa.png",120.0,38.0,0,"测试");
        this.layerPanel.update(this.worldWindowGLCanvas);

    }

    public static void main(String[] args) {
        String strTitle = "图标测试";
        wwjIcon wwjRun = new wwjIcon();
        wwjRun.setTitle(strTitle);
    }
}

结果如下:
这里写图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值