cesium裁切面实践:沙盒地址 (打不开的自行科学访问)

裁切面法线方向指向保留的部分,本案例通过法线配合unionClippingRegions参数实现相比官方案例没有的:多裁切面互裁,裁两边留中间效果。

<style>
@import url(../templates/bucket.css);
#toolbar {
background: rgba(42, 42, 42, 0.8);
padding: 4px;
border-radius: 4px;
}
#toolbar input {
vertical-align: middle;
padding-top: 2px;
padding-bottom: 2px;
}
#toolbar .header {
font-weight: bold;
}
</style>
<div id="cesiumContainer" class="fullSize"></div>
<div id="loadingOverlay"><h1>Loading...</h1></div>
<div id="toolbar">
<select data-bind="options: exampleTypes, value: currentExampleType"></select>
<input type="checkbox" value="false" data-bind="checked: debugBoundingVolumesEnabled, valueUpdate: 'input'">
Show bounding volume
<input type="checkbox" value="true" data-bind="checked: edgeStylingEnabled, valueUpdate: 'input'">
Enable edge styling
</div>
// Add a clipping plane, a plane geometry to show the representation of the
// plane, and control the magnitude of the plane distance with the mouse. const viewer = new Cesium.Viewer("cesiumContainer", {
infoBox: false,
selectionIndicator: false,
}); function loadModel(url) {
const clippingPlanes = new Cesium.ClippingPlaneCollection({
unionClippingRegions: true,
planes: [
new Cesium.ClippingPlane(
new Cesium.Cartesian3(0.0, 0.0, 1.0),
5
),
new Cesium.ClippingPlane(
new Cesium.Cartesian3(0.0, 0.0, -1.0),
5
),
]
}); const position = Cesium.Cartesian3.fromDegrees(
-123.0744619,
44.0503706,
300.0
);
const heading = Cesium.Math.toRadians(135.0);
const pitch = 0.0;
const roll = 0.0;
const hpr = new Cesium.HeadingPitchRoll(heading, pitch, roll);
const orientation = Cesium.Transforms.headingPitchRollQuaternion(
position,
hpr
);
const entity = viewer.entities.add({
name: url,
position: position,
orientation: orientation,
model: {
uri: url,
scale: 8,
minimumPixelSize: 100.0,
clippingPlanes: clippingPlanes,
},
}); viewer.trackedEntity = entity; } const modelUrl = "../SampleData/models/CesiumAir/Cesium_Air.glb"; loadModel(modelUrl);

cesium裁切面实践的更多相关文章

  1. Cesium 实践

    详细内容请参考教程:https://www.jianshu.com/p/31c3b55a21eb 该教程翻译自官方英文教程,对入门cesium 帮助很大. 2,Cesium项目实例    实践: 问题 ...

  2. 【Cesium 颜狗初步】fabric 材质定义与自定义着色器实践

    fabric 材质定义:着色器实践 1. 示例代码 贴到沙盒里就可以运行: var viewer = new Cesium.Viewer("cesiumContainer"); v ...

  3. Cesium开发实践汇总

    一.简介.开发环境搭建 二.Viewer控件 三.地图图层介绍 四.地形介绍 五.坐标变换 六.CZML 七.3D模型

  4. 图片裁切插件jCrop的使用心得(一)

    之前,项目经理为了提升用户体验让我在之前图片上传功能的基础上实现图片的裁切功能,作为一个前端小白来说听了这个需求心里一紧,毕竟没有做过,于是跟项目经理商量要先做下调研.在一上午的调研中发现了jCrop ...

  5. Cesium原理篇:glTF

    关键字:Cesium glTF WebGL技术 大纲: 1 glTF简介,这是一个什么东西,有哪些特点 2 Cesium如何加载,渲染glTF,逻辑结构和关键技术 3 个人总结,从glTF学习如何设计 ...

  6. Threejs 开发3D地图实践总结【转】

    Threejs 开发3D地图实践总结   前段时间连续上了一个月班,加班加点完成了一个3D攻坚项目.也算是由传统web转型到webgl图形学开发中,坑不少,做了一下总结分享. 1.法向量问题 法线是垂 ...

  7. Cesium简介 [转]

    http://www.cnblogs.com/laixiangran/p/4984522.html 一.Cesium介绍 Cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎. ...

  8. Android显示框架:自定义View实践之绘制篇

    文章目录 一 View 二 Paint 2.1 颜色处理 2.2 文字处理 2.3 特殊处理 三 Canvas 3.1 界面绘制 3.2 范围裁切 3.3 集合变换 四 Path 4.1 添加图形 4 ...

  9. WebGL可视化地球和地图引擎:Cesium.js

    http://www.open-open.com/lib/view/open1427341416418.html   Cesium 是一个JavaScript 库用于在Web浏览器创建 3D 地球和 ...

  10. cesium的学习

    一.学习资料:http://cesiumjs.org/tutorials.html,看完6个教程后对图层加载.控件控制开关.地形数据叠加.模型添加.相机控制.图形绘制有一点了解.这也是cesium的主 ...

随机推荐

  1. 从倒水问题到盛最多水的容器:一道经典的双指针应用题|LeetCode 11 盛最多水的容器

    LeetCode 11 盛最多水的容器 点此看全部题解 LeetCode必刷100题:一份来自面试官的算法地图(题解持续更新中) 生活中的算法 你有没有遇到过这样的场景:家里要举办派对,需要准备一个大 ...

  2. ceph数据重构原理

    本文分享自天翼云开发者社区<ceph数据重构原理>,作者:x****n 在分布式存储系统Ceph中,硬盘故障是一种常见问题.为了保证数据安全,当发生硬盘故障后,分布式存储系统会依据算法对故 ...

  3. nacos(一): 下载、运行与鉴权配置

    1.下载 nacao的官网地址是https://nacos.io/ 当前稳定版本是2.5.0,可以在官网下载,也可以在github上下载.其中,官网提供的下载地址是: https://download ...

  4. C语言的头文件包含,竟存在这么多知识点!

    文章来自:https://zhuanlan.zhihu.com/p/472808057 相关文章连接:头文件包含是可以嵌套的_[C语言]- 预处理指令3 - 文件包含! 很多事不深入以为自己懂了,但真 ...

  5. AI在电子游戏中的应用:如何让虚拟世界更具沉浸感

    在过去的几十年里,电子游戏已从简单的像素化图形演变为高度复杂.视觉震撼的虚拟世界.从<超级马里奥>到<荒野大镖客2>,游戏的画面.音效和交互方式不断突破技术的极限.近年来,人工 ...

  6. 小米字体和思源宋体CSS调用使用指南

    小米字体 //css引用 <link rel="stylesheet" href="https://font.sec.miui.com/font/css?famil ...

  7. 响应式编程之Reactive Streams介绍

    Reactive Streams 是一种用于‌异步流处理的标准化规范,旨在解决传统异步编程中的背压管理.资源消耗及响应速度等问题‌. 一.核心概念 ‌基本模型‌ ‌发布者(Publisher)‌:负责 ...

  8. 【Python】尝试切换py版本

    失败 问chatgpt,怎么把abaqus python 版本切换到py3.6,结果失败. chatgpt给出的建议: 修改abaqus_v6.env,明显扯淡!我就尝试在custom_v6.env中 ...

  9. 【基础知识】回头看Maven基础

    版本 日期 修订人 描述 V1.0 2025/3/7 nick huang 创建文档 背景 项目过程中,对于Maven的pom.xml文件,很多时候,我通过各种参考.仿写,最终做出想要的效果. 但实际 ...

  10. java web 传输视频流代码锦集

    方案一 //path为本地文件路劲 public void play(String path, HttpServletRequest request, HttpServletResponse resp ...