A. 如何用Django配置本地的cesium
B. cesium 怎樣設置web伺服器
1.安裝node.js
雙擊運行安裝包,安裝路徑可以自定義,或者默認都可以,安裝完成後,打開命令行,輸入node -v,如果結果為版本號,表明安裝成功。如下圖所示。

在瀏覽器中輸入自己剛配置的IP地址,彈出cesium的頁面,就說明環境搭建完成。
C. cesium中如何點擊自定義按鈕展開2D圖層
ThingJS 是一個先進的 PaaS 開發平台,開發者可以方便、安全地基於雲端的各種工具組件隨時隨地進行開發。
ThingJS 界面概述
為了便於開發者在ThingJS下進行界面開發,ThingJS 提供的界面體系結構目錄如下:
上述ThingJS界面體系中,進行3D場景可視化的區域,我們定義為3D容器,如下圖所示:

Marker 物體可以添加一個圖片放置到你希望的位置,也可以將這個圖片作為孩子添加到對象身上,隨著對象一同移動。
例子 1:
參數:
type : 通知系統創建 Marker 物體;
offset : 設置自身坐標系下偏移量為[0, 2, 0];
size : 設置 Marker 物體大小,也可以添單獨數字如 4,等同於[4,4],大小是以米計算的;
url : 圖片的 url;
parent :指定 Marker 的父物體;
運行結果見下圖。Marker 默認是受距離遠近影響,呈現近大遠小的 3D 效果,也會在 3D 空間中實現前後遮擋。
例子 2:
參數:
keepSize: 控制是否受距離遠近影響,呈現近大遠小的 3D 效果。如果設置 true,表示保持大小,不隨距離近大遠小,此時 size 的單位是屏幕的像素點;
offset : 設置自身坐標系下偏移量為[0, 2, 0];
size : 設置 Marker 物體大小,也可以添單獨數字如 4,等同於[4,4],大小是以米計算的;
url : 圖片的 url;
parent :指定 Marker 的父物體;
運行結果見下圖:
我們還可以使用 h5 的 canvas 手動創建動態圖。
例子 3:
參數:
canvas: 接收 canvas 作為貼圖顯示
運行結果見下圖,在 Marker 上點擊時,會改變標記上的數字:
D. 為什麼vue用cesium比原生vue界面要暗淡一些
webpack.base.conf.js
添加代碼
constCopyWebpackPlugin=require('-webpack-plugin')
//ThepathtotheCesiumsourcecode
constcesiumSource=path.resolve(__dirname,'../node_moles/cesium/Source')
constcesiumWorkers='../Build/Cesium/Workers'
output:{
//
sourcePrefix:'',
}
alias:{
//Cesiummolename
'cesium':path.resolve(__dirname,cesiumSource),
}
mole:{
unknownContextCritical:false,
rules:[
{
test:/.js$/,
loader:'babel-loader',
include:[resolve('src'),resolve('test'),resolve('node_moles/webpack-dev-server/client')]
}
]
}
plugins:[
//CopyCesiumAssets,Widgets,andWorkerstoastaticdirectory
newCopyWebpackPlugin([{
//from:path.join(cesiumSource,'Workers'),
from:path.join(cesiumSource,cesiumWorkers),
to:'Workers'}]),
newCopyWebpackPlugin([{
from:path.join(cesiumSource,'Assets'),
to:'Assets'}]),
newCopyWebpackPlugin([{
from:path.join(cesiumSource,'Widgets'),
to:'Widgets'}]),
]
webpack.dev.conf.js
constpath=require('path')
constCopyWebpackPlugin=require('-webpack-plugin')
devServer:{
//historyApiFallback:true
historyApiFallback:{rewrites:[{from:/.*/,to:path.posix.join(config.dev.assetsPublicPath,'index.html')},],},
contentBase:config.build.assetsRoot,//forCesium
}
plugins:[
newwebpack.DefinePlugin({
'process.env':require('../config/dev.env'),
//
CESIUM_BASE_URL:JSON.stringify('/')}),
//customstaticassets
newCopyWebpackPlugin([{from:path.resolve(__dirname,'../static'),to:config.dev.assetsSubDirectory,ignore:['.*']}]),
]
E. Cesiumjs可以載入傾斜攝影的OSGB數據嗎
打開LocaSpace Viewer軟體。
攝影測量數據轉換——
把osgb格式的攝影測量數據轉換成lfp格式數據文件,場景瀏覽速度更快。
單擊傾斜攝影->數據轉換,彈出如下對話框,
找到要轉換的數據位置,設置投影位置(場景中心點或自定義設置坐標),點擊確定後即可實現。
載入傾斜攝影測量數據圖層——
單擊傾斜攝影->打開數據,找到文件本地存放位置,點擊打開。
瀏覽傾斜攝影數據效果如圖。
F. cesium 和 Three.js有什麼區別,以及二者與WebGL 的關系
我也想做3D。暫時還在門外,以下僅供參考。
Cesium是國外一個基於javaScript編寫的使用WebGL的地圖引擎。看到這個問題,第一次知道它。專做地圖的看樣子,類似於jquery之類的,jquery方便快速出網站,cesium方便快速出地圖網站。
Three.js知道一點,是做3D的基礎庫啊,可以做任意的3D的東西。做動畫,做游戲的吧。
WebGL 是一個底層標准吧,它不是一個具體的工程應用。它本身不是javascript的東西,印象中他是專門做圖像圖像的,更關注底層硬體的渲染和性能之類。
我覺得是javascript 在這個WebGL 的繪圖標准上,定義了canvas, 熟悉不,canvas的各種繪圖標准應該是參考的這個標准。Canvas 提供了最基本的點線面的繪制,是基本api。然後Three是對canvas的一層封裝,方便更加快速地繪制一個球,一個立方體,然後動起來。
G. cesium上如何綁定地球圖片添加點擊事件
拾取和選擇
ThingJS 系統內置了很多事件,比點擊滑鼠、鍵盤輸入、層級變化等。用戶可以監聽這些事件,在事件回調中進行相應的業務邏輯處理網頁鏈接
拾取
通過屬性和介面獲取滑鼠拾取(Pick)的物體
當滑鼠在一個物體上懸停時,我們經常希望做一些操作,比如變色等。
我們使用Picker類來獲取滑鼠拾取(Pick)的物體,通過app.picker得到Picker類來實現這個功能,見下例:
//判斷拾取的物體是否改變if(app.picker.isChanged()) {
//通過app.picker.objects 得到當前拾取的物體
console.log(app.picker.objects);
//通過app.picker.previousObjects 得到之前拾取的物體
console.log(app.picker.previousObjects);}
通過事件獲取滑鼠拾取的物體
可以通過MouseEnter和MouseLeave來實現 。
// 滑鼠拾取物體顯示邊框app.on(THING.EventType.MouseEnter, '.Thing' ,function(ev) {
ev.object.style.outlineColor = '#FF0000';});// 滑鼠離開物體邊框取消app.on(THING.EventType.MouseLeave,'.Thing', function(ev) {
ev.object.style.outlineColor = null;});
查看示例
示例效果如下圖所示:

選擇
選擇物體
滑鼠懸停到物體上,但不代表我選擇它了,比如是我們點擊後才表明我們選擇了它。選擇物體,我們通過Selection模塊實現,可通過 app.selection 的介面實現該功能,見下例:
//將物體加入到選擇集中app.selection.select(obj);// 判斷對象是否在選擇集中app.selection.has(obj);//將物體從選擇集中刪除app.selection.deselect(obj);//清空選擇集app.selection.clear();
通過屬性和方法,偵測選擇集變化
Selection通過提供isChanged方法獲取選擇集變化,通過 objects 和 previousObjects 獲取當前選擇集和變化之前的選擇集,見下例:
if(app.selection.isChanged()) {
//獲取當前哪些物體被選擇
console.log(app.selection.objects);
//當isChanged時,之前都有哪些物體被選擇
console.log(app.selection.previousObjects);}
通過事件偵測選擇集變化
可以通過Select和Deselect事件精確控制物體針對選擇的響應,如下例:
app.on(THING.EventType.Select, '.Thing', function (ev) {
// 選擇集中的物體顏色進行改變
ev.object.style.color = "#ff0000";});app.on(THING.EventType.Deselect, '.Thing', function (ev) {
// 物體從選擇集中刪除時,清除顏色
ev.object.style.color = null;});
我們也可以通過SelectionChange事件。
app.on(THING.EventType.SelectionChange, function (ev) {
console.log(ev.previousObjects+" "+ev.objects);});
H. cesium滑鼠點擊地球上的點怎麼用數組記錄這些點
ml5就可以運行。甚至部分手機瀏覽器都可以運行 。
首先,對Cesium進行本地的部署(可以用node.js,tomcat,vs2011,iis.eclipse等IDE進行部署,我選用的是最簡單的vs):
(1)下載Cesium
進入其官
I. three.js 有沒有類似 cesium.imageryprovider
使用Cesium可以直觀的看基於DEM切片產生的Terrain地形數據,有種身臨其境的感覺,但缺點是Cesium默認預設載入了微軟Bing提供的地形以及遙感影像數據,可以跟蹤日誌,總提示讓你申請微軟的Bing地圖Key。
J. providerPoint是cesium哪個js裡面的方法
貼代碼出來啊