Cesium开发入门——Demo02:CreatingEntities创建对象

1.创建对象(矩形)代码

以下代码为创建面对向代码与对应运行结果图;

<!DOCTYPE html>
<html lang="en">

	<head>
		<meta charset="utf-8">
		<title>Creating Entities</title>
		<script src="https://cesiumjs.org/releases/1.57/Build/Cesium/Cesium.js"></script>
		<link href="https://cesiumjs.org/releases/1.57/Build/Cesium/Widgets/widgets.css" rel="stylesheet">

	</head>

	<body>
		<div id="cesiumContainer" style="width: 100%; height:600px;"></div>

		<!----------------------------------01第一个实体----------------------------------------------------------------------------------------->

		<script>
			var viewer = new Cesium.Viewer('cesiumContainer');

			var wyoming = viewer.entities.add({
				polygon: {
					hierarchy: Cesium.Cartesian3.fromDegreesArray([-109.080842, 45.002073, -105.91517, 45.002073, -104.058488, 44.996596, -104.053011, 43.002989, -104.053011, 41.003906, -105.728954, 40.998429, -107.919731, 41.003906, -109.04798, 40.998429, -111.047063, 40.998429, -111.047063, 42.000709, -111.047063, 44.476286, -111.05254, 45.002073]),
					height: 0,
					material: Cesium.Color.RED.withAlpha(0.5),
					outline: true,
					outlineColor: Cesium.Color.BLACK
				}
			});

			viewer.zoomTo(wyoming);
		</script>
	</body>

</html>

运行结果

2.对象材质替换

直接修改JavaScript中代码;
①条纹样式

var viewer = new Cesium.Viewer('cesiumContainer');

						var wyoming = viewer.entities.add({
							polygon: {
								hierarchy: Cesium.Cartesian3.fromDegreesArray([-109.080842, 45.002073, -105.91517, 45.002073, -104.058488, 44.996596, -104.053011, 43.002989, -104.053011, 41.003906, -105.728954, 40.998429, -107.919731, 41.003906, -109.04798, 40.998429, -111.047063, 40.998429, -111.047063, 42.000709, -111.047063, 44.476286, -111.05254, 45.002073]),
								height: 0,
								outline: true,
								outlineColor: Cesium.Color.BLACK
							}
						});
			
						var ellipse = wyoming.polygon;

			//黑白条纹材质
						ellipse.material = new Cesium.StripeMaterialProperty({
							evenColor: Cesium.Color.WHITE,
							oddColor: Cesium.Color.BLACK,
							repeat: 32
						});

在这里插入图片描述
黑白网格材质

ellipse.material = new Cesium.CheckerboardMaterialProperty({
							evenColor: Cesium.Color.WHITE,
							oddColor: Cesium.Color.BLACK,
							repeat: new Cesium.Cartesian2(4, 4)
						});

黑白网格

3.点、线、面对象创建与属性修改
<!DOCTYPE html>
<html lang="en">

	<head>
		<meta charset="utf-8">
		<title>Creating Entities</title>
		<script src="https://cesiumjs.org/releases/1.57/Build/Cesium/Cesium.js"></script>
		<link href="https://cesiumjs.org/releases/1.57/Build/Cesium/Widgets/widgets.css" rel="stylesheet">

	</head>

	<body>
		<div id="cesiumContainer" style="width: 100%; height:600px;"></div>

		<!----------------------------------01第一个实体----------------------------------------------------------------------------------------->

		<!--<script>
			var viewer = new Cesium.Viewer('cesiumContainer');

			var wyoming = viewer.entities.add({
				polygon: {
					hierarchy: Cesium.Cartesian3.fromDegreesArray([-109.080842, 45.002073, -105.91517, 45.002073, -104.058488, 44.996596, -104.053011, 43.002989, -104.053011, 41.003906, -105.728954, 40.998429, -107.919731, 41.003906, -109.04798, 40.998429, -111.047063, 40.998429, -111.047063, 42.000709, -111.047063, 44.476286, -111.05254, 45.002073]),
					height: 0,
					material: Cesium.Color.RED.withAlpha(0.5),
					outline: true,
					outlineColor: Cesium.Color.BLACK
				}
			});

			viewer.zoomTo(wyoming);
		</script>-->

		<!----------------------------------02材质替换----------------------------------------------------------------------------------------->

		<script>
			var viewer = new Cesium.Viewer('cesiumContainer');

						var wyoming = viewer.entities.add({
							polygon: {
								hierarchy: Cesium.Cartesian3.fromDegreesArray([-109.080842, 45.002073, -105.91517, 45.002073, -104.058488, 44.996596, -104.053011, 43.002989, -104.053011, 41.003906, -105.728954, 40.998429, -107.919731, 41.003906, -109.04798, 40.998429, -111.047063, 40.998429, -111.047063, 42.000709, -111.047063, 44.476286, -111.05254, 45.002073]),
								height: 0,
								outline: true,
								outlineColor: Cesium.Color.BLACK
							}
						});
			
						var ellipse = wyoming.polygon;

			//黑白条纹材质
//						ellipse.material = new Cesium.StripeMaterialProperty({
//							evenColor: Cesium.Color.WHITE,
//							oddColor: Cesium.Color.BLACK,
//							repeat: 32
//						});

			//黑白网格材质
//						ellipse.material = new Cesium.CheckerboardMaterialProperty({
//							evenColor: Cesium.Color.WHITE,
//							oddColor: Cesium.Color.BLACK,
//							repeat: new Cesium.Cartesian2(4, 4)
//						});

			//黄色网格材质
			//			ellipse.material = new Cesium.GridMaterialProperty({
			//				color: Cesium.Color.YELLOW,
			//				cellAlpha: 0.2,
			//				lineCount: new Cesium.Cartesian2(8, 8),
			//				lineThickness: new Cesium.Cartesian2(2.0, 2.0)
			//			});
			//
			//			viewer.zoomTo(wyoming);
			
			//高程修改与高度添加
			//			var wyoming = viewer.entities.add({
			//				polygon: {
			//					hierarchy: Cesium.Cartesian3.fromDegreesArray([-109.080842, 45.002073, -105.91517, 45.002073, -104.058488, 44.996596, -104.053011, 43.002989, -104.053011, 41.003906, -105.728954, 40.998429, -107.919731, 41.003906, -109.04798, 40.998429, -111.047063, 40.998429, -111.047063, 42.000709, -111.047063, 44.476286, -111.05254, 45.002073]),
			//					height: 0,
			//					material: Cesium.Color.RED.withAlpha(0.5),
			//					outline: true,
			//					outlineColor: Cesium.Color.BLACK
			//				}
			//			});
			//
			//			wyoming.polygon.height = 200000;
			//			wyoming.polygon.extrudedHeight = 250000;
			//
			//			viewer.zoomTo(wyoming);

			
			
			//线对象的创建与样式*************************************************************************************************************
			//			var entity = viewer.entities.add({
			//				polyline: {
			//					positions: Cesium.Cartesian3.fromDegreesArray([-77, 35, -78, 35, -78, 36, -79, 36, -79, 37]),
			//					width: 5
			//				}
			//			});
			//			viewer.zoomTo(viewer.entities);
			//
			//			var polyline = entity.polyline // For upcoming examples
			//			polyline.material = new Cesium.PolylineOutlineMaterialProperty({
			//				color: Cesium.Color.ORANGE,
			//				outlineWidth: 3,
			//				outlineColor: Cesium.Color.BLACK
			//			});

			

			//添加标记点************************************************************************************************************
			//			var citizensBankPark = viewer.entities.add({
			//				name: 'Citizens Bank Park',
			//				position: Cesium.Cartesian3.fromDegrees(-75.166493, 39.9060534),
			//				point: {
			//					pixelSize: 5,
			//					color: Cesium.Color.RED,
			//					outlineColor: Cesium.Color.WHITE,
			//					outlineWidth: 2
			//				},
			//				label: {
			//					text: 'Citizens Bank Park',
			//					font: '14pt monospace',
			//					style: Cesium.LabelStyle.FILL_AND_OUTLINE,
			//					outlineWidth: 2,
			//					verticalOrigin: Cesium.VerticalOrigin.BOTTOM,
			//					pixelOffset: new Cesium.Cartesian2(0, -9)
			//				}
			//			});
			//
			//			viewer.zoomTo(viewer.entities);
		
		</script>
	</body>

</html>
4.Cesium官网示例学习

Cesium创建对象
该官网中,有一个通过“Hello world example”进入到沙箱(Sandcastle)中,沙箱其实就是相当于一个JavaScript文件,里面是所有的js代码,所有界面实现都是通过js代码实现。
Basic中的代码可以直接复制并运行(如下图中的绿色框中代码),可复制到图二中的沙箱中,Run运行;
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值