12
2019
04

Cesium获取地形的高度

https://blog.csdn.net/u013821237/article/details/84838103

12
2019
04

Cesium中获取经纬度和视角高

<!-- 经纬度实时显示 -->
var longitude_show=document.getElementById('longitude_show');
var latitude_show=document.getElementById('latitude_show');
var altitude_show=document.getElementById('altitude_show');
var canvas=viewer.scene.canvas;
//具体事件的实现
var ellipsoid=viewer.scene.globe.ellipsoid;
var handler = new Cesium.ScreenSpaceEventHandler(canvas);
handler.setInputAction(function(movement){
            //捕获椭球体,将笛卡尔二维平面坐标转为椭球体的笛卡尔三维坐标,返回球体表面的点
             var cartesian=viewer.camera.pickEllipsoid(movement.endPosition, ellipsoid);
              if(cartesian){
                   //将笛卡尔三维坐标转为地图坐标(弧度)
                   var cartographic=viewer.scene.globe.ellipsoid.cartesianToCartographic(cartesian);
                   //将地图坐标(弧度)转为十进制的度数
                    var lat_String=Cesium.Math.toDegrees(cartographic.latitude).toFixed(4);
                    var log_String=Cesium.Math.toDegrees(cartographic.longitude).toFixed(4);
					var alti_String=(viewer.camera.positionCartographic.height/1000).toFixed(2);
					longitude_show.innerHTML=log_String;
					latitude_show.innerHTML=lat_String;
					altitude_show.innerHTML=alti_String;
               }
        },Cesium.ScreenSpaceEventType.MOUSE_MOVE);


12
2019
04

Cesium获取鼠标点击位置(PickPosition)

屏幕坐标(鼠标点击位置距离canvas左上角的像素值)


通过:movement.position获取

var viewer = new Cesium.Viewer('cesiumContainer'); 
var handler= new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
handler.setInputAction(function (movement) {
     console.log(movement.position);
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);

参考自:https://blog.csdn.net/weixin_33860722/article/details/86854843

12
2019
04

Cesium获取当前点击位置坐标

获取点击坐标一般情况下有三种,分别是获取椭球面上的坐标,或者开启地形图以后的坐标,以及拾取模型上面的坐标。
ps:如果当前点无法获取到坐标,会返回undefined。

12
2019
04

Cesium 鼠标事件监听

在Cesium里面,我们可以通过Cesium.ScreenSpaceEventHandler的实例化对象的setInputAction方法绑定鼠标事件:

var handler = new Cesium.ScreenSpaceEventHandler(viewer.canvas);
//todo:在椭球下点击创建点
handler.setInputAction(function(event) {
    var earthPosition  = viewer.camera.pickEllipsoid(event.position,viewer.scene.globe.ellipsoid);
    if (Cesium.defined(earthPosition)) {
        createPoint(earthPosition); //在点击位置添加一个点
    }
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);

setInputAction的第一个参数是当事件触发时的回调,第二个参数是绑定的事件类型。案例中绑定的鼠标左键点击事件,其它还有:
鼠标左键单击事件
Cesium.ScreenSpaceEventType.LEFT_CLICK

鼠标左键双击事件
Cesium.ScreenSpaceEventType.LEFT_DOUBLE_CLICK

鼠标左键按下事件
Cesium.ScreenSpaceEventType.LEFT_DOWN 

鼠标左键抬起事件
Cesium.ScreenSpaceEventType.LEFT_UP 

鼠标中键单击事件
Cesium.ScreenSpaceEventType.MIDDLE_CLICK 

鼠标中键按下事件
Cesium.ScreenSpaceEventType.MIDDLE_DOWN 

鼠标中键抬起事件
Cesium.ScreenSpaceEventType.MIDDLE_UP 

鼠标移动事件
Cesium.ScreenSpaceEventType.MOUSE_MOVE 

触摸表面上的双指事件的结束
Cesium.ScreenSpaceEventType.PINCH_END 

触摸表面上双指移动事件
Cesium.ScreenSpaceEventType.PINCH_MOVE 

触摸表面上双指事件的开始
Cesium.ScreenSpaceEventType.PINCH_START 

鼠标右键单击事件
Cesium.ScreenSpaceEventType.RIGHT_CLICK 

鼠标右键按下事件
Cesium.ScreenSpaceEventType.RIGHT_DOWN 

鼠标滚轮事件
Cesium.ScreenSpaceEventType.WHEEL 

如果想要接触某一个交互事件可以通过handler对象里面removeInputAction 事件解除,下面是解除鼠标左键单击事件:
handler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK);


12
2019
04

Cesium entities 事件

一直好奇徐霞客作为伟大的旅行家,不做官、不经商、不卖文,带着仆人走遍20多个省,游记写了60多万字。那他旅游经费怎么来的?最近才知道他原来继承了祖上6000多亩地,收租子就花不完。

30
2019
03

jquery给h1赋值

1.<h1>项目一</h1>

$('h1').html(); //取值

$('h1').html('Hello'); //赋值

 

2. jquery给span赋值

<span id="lbName">名称</span>

$('#lbName').html(); //取值

30
2019
03

js long 型数据有问题

今天写程序,总是在前端获取的long类型数据不对,一开始一直以为是后端获取数据有问题,后来调式发现,后端获取数据正常。

那么出现这个问题如何解决呢?google,百度了一下。

最简单的方法就是:

@JsonFormat(shape=JsonFormat.Shape.STRING)
    private Long id;

加上这个注释,把long型数据,转换为string。


27
2019
03

Mybatis 视图、存储过程

视图的使用:

1.  把视图当普通的表,用select  字段  from 视图 where 的形式。如:

<select id="getListByName" parameterType="java.util.Map" resultMap="Country">

        SELECT DISTINCT countryname FROM `idc_cmdb`.view_city  
        <where>
        <if test="countryname != null">
           countryname LIKE  CONCAT('%', '${countryname}', '%')
        </if>
        </where>
    </select>

2.  like的模糊查询用CONCAT。

3.  #和$传参的区别:#是代替?,是SQL预编译;$只替换值。

25
2019
03

html 乱码

1.在head之间,添加 

< meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 

2.设置html文件编码格式是utf-8(不需要无bom格式)