new FdGeologySimulationManager(scene, json [, textureDir])
Parameters:
Name | Type | Argument | Description |
---|---|---|---|
scene |
Freedo.Scene | 场景 |
|
json |
String | 记录钻孔点信息的JSON文件 |
|
textureDir |
String |
<optional> |
纹理路径,默认为:'../../sampleData/GeologySimulation/GeoTexture/' |
Example
var viewer = Freedo.FdApp.createDefaultViewer('freedoContainer'); var geologySimulationManager; Freedo.loadJson('./static/GeologySimulation/drills.json').then(function(jsonData) { geologySimulationManager = new Freedo.FdTools.FdGeologySimulationManager(scene ,jsonData); }).otherwise(function(error) { console.log('Load drills file failed.'); });
Members
-
drillOptions :Object
-
Type:
- Object
Example
var drillsOptions = geologySimulationManager.drillOptions ; for(var key of drillsOptions){ var drillOption = key ; var cartographics = drillOption.cartographics ; //输入的需要进行插值的原始三维坐标(经纬度坐标)数组。 var maxStep = drillOption.maxStep ; //插值的最大步长 var tileS = drillOption.tileS; //水平方向分多少块 var tileT = drillOption.tileT; //竖直方向分多少块 var flipUp = drillOption.flipUp; //偏移 var buildBottom = drillOption.buildBottom; //是否构建底部 var buildTop = drillOption.buildTop; //是否构建底部 }
-
showWaterLine :Boolean
-
显示WaterLine
Type:
- Boolean
Methods
-
addGeologySimulation(cartographics [, maxStep] [, tileS] [, tileT] [, flipUp] [, buildBottom] [, buildTop])
-
构建地质模拟的侧面及底面并加入场景
Parameters:
Name Type Argument Description cartographics
Array.<Freedo.Cartographic> 输入的需要进行插值的原始三维坐标(经纬度坐标)数组。
maxStep
Number <optional>
插值的最大步长 ,默认为1。
tileS
Number <optional>
水平方向分多少块,默认为5。
tileT
Number <optional>
竖直方向分多少块,默认为5。
flipUp
Boolean <optional>
地质层显示是否到地上。
buildBottom
Boolean <optional>
是否构建底部,默认为true。
buildTop
Boolean <optional>
是否构建顶部,默认为false。
Example
var points = [ new Freedo.Cartographic(2.03033252, 0.48737160, 52.691), new Freedo.Cartographic(2.03031996, 0.48738285, 55.346), new Freedo.Cartographic(2.03028628, 0.48739244, 44.660), new Freedo.Cartographic(2.03026872, 0.48738986, 44.236), new Freedo.Cartographic(2.03026209, 0.48737391, 45.978), new Freedo.Cartographic(2.03027427, 0.48735931, 47.833), new Freedo.Cartographic(2.03030029, 0.48735749, 50.549), new Freedo.Cartographic(2.03033252, 0.48737160, 52.691) ]; geologySimulationManager.addGeologySimulation(points, 1, 5, 5, undefined, true);
-
dispose()
-
清除所有
-
on(listener [, scope])
-
事件类型有:dataAdded ,dataRemoved
Parameters:
Name Type Argument Description listener
FdTools.FdGeologySimulationManager~FdGeologySimulationManagerCallback 当有事件触发时被执行的函数。
scope
Object <optional>
listener函数执行时的绑定的对象。
Returns:
返回一个函数,调用该函数可以取消监听。
- Type
- Freedo.Event~RemoveCallback
Example
geologySimulationManager.on(function(eventType ,param) { if(eventType === 'dataAdded'){ var geologyObject = param ; geologyObject.points ; // 输入的地质模拟多边形的顶点数组 geologyObject.GroundErasePrimitive ;//地形挖洞的对象 geologyObject.geologyPrimitives ;//添加的地质面对象数组 } else if( eventType === 'dataRemoved'){ } });
-
pickGeologySimulations(position)
-
选择地质模拟的底面或者侧面并高亮(TODO,该函数不完善,需要后续改进)
Parameters:
Name Type Description position
Freedo.Cartesian2 屏幕坐标点
-
removeAllGeologySimulations()
-
清除所有已经构建的地质模拟对象
Example
geologySimulationManager.removeAllGeologySimulations() ;
Type Definitions
-
FdGeologySimulationManagerCallback(eventType, eventArg)
-
Parameters:
Name Type Description eventType
String 事件类型有:dataAdded(添加了一个地质模拟项),dataRemoved(清空了所有的地质模拟项)
eventArg
Object dataAdded事件的参数为刚添加的对象的封装,参考FdMicroApp.FdGeologySimulationHandler#getData ,dataRemoved不带参数