UNPKG

@mapgis/webclient-common

Version:

mapgis ES6 format for igserver

2,470 lines (968 loc) 36.6 kB
<header id="page-title" class="page-title"> <span class="page-title-main">类名</span> <span class="page-title-sub">IGSSceneLayer</span> </header> <section> <article> <div class="container-overview"> <div class='vertical-section'> <div class="members"> <div class="member"> <h4 class="name" id="IGSSceneLayer"> <a class="href-link" href="#IGSSceneLayer">#</a> <span class="code-name" id="IGSSceneLayer" style="font-size:30px"> new IGSSceneLayer<span class="signature">(options)</span> </span> </h4> <div class="description"> <p>场景图层</p> </div> <h4>参数</h4> <div class="table-container"> <table class="params table"> <thead> <tr> <th>名称</th> <th>类型</th> <th style="min-width: 100px;">默认值</th> <th class="last">描述</th> </tr> </thead> <tbody> <tr class="deep-level-0"> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type"> Object </span> </td> <td class="default"> </td> <td class="description last"><p>构造参数。图层类型为地形时,不支持设置options.opacity图层透明度属性。</p></td> </tr> <tr class="deep-level-1"> <td class="name"><code>url</code></td> <td class="type"> <span class="param-type"> String </span> </td> <td class="default"> </td> <td class="description last"><p>服务基地址,支持IGS1.0和IGS2.0的场景服务<br/> 场景服务基地址格式(IGS1.0):http://{ip}:{port}/igs/rest/g3d/{服务名}<br/> 场景服务基地址格式(IGS2.0):http://{ip}:{port}/igs/rest/services/{服务名}/SceneServer</p></td> </tr> <tr class="deep-level-1"> <td class="name"><code>scenes</code></td> <td class="type"> <span class="param-type"> Array.&lt;<a onclick="getTypeHTML(event)" link="Scene.html">Scene</a>> </span> </td> <td class="default"> [] </td> <td class="description last"><p>场景集合,一个场景图层可以有多个场景,一个场景可以有多个子图层</p></td> </tr> </tbody> </table> </div> <dl class="details"> </dl> <p class="summary"><h5>支持如下方法:</h5> <a href='#load'>[1、加载图层资源]</a><br/> <a href='#fromJSON'>[2、通过传入的json构造并返回一个新的图层对象]</a><br/> <a href='#toJSON'>[3、导出为json对象]</a><br/> <a href='#clone'>[4、克隆图层对象]</a><br/></p> <h5>示例</h5> <p class="code-caption"><h7 id='IGSSceneLayer'>初始化场景图层</h7></p> <pre class="prettyprint"><code>// ES5引入方式 const { IGSSceneLayer } = zondy.layer // ES6引入方式 import { IGSSceneLayer } from "@mapgis/webclient-common" const layer = new IGSSceneLayer({ // 服务基地址 url: '服务基地址' // 设置场景初始化参数 scenes: [{ // 设置子图层初始化参数 sublayers: [{ // 子图层id id: 'id', // 子图层初始化参数 extensionOptions: { // 开启自动跳转 autoReset: true } }] }] });</code></pre> <p class="code-caption"><h7 id='UniqueValueRenderer'>单值专题图</h7></p> <pre class="prettyprint"><code>// ES5引入方式 const { IGSSceneLayer } = zondy.layer const { UniqueValueRenderer } = zondy.renderer const { SimpleFillSymbol,SimpleLineSymbol } = zondy.symbol const { Color } = zondy // ES6引入方式 import { IGSSceneLayer,UniqueValueRenderer,SimpleFillSymbol,SimpleLineSymbol,Color } from "@mapgis/webclient-common" // 构造单值渲染器 const renderer = new UniqueValueRenderer({ // 专题图过滤字段名 field: "字段名", // 单值专题图过滤条件数组 uniqueValueInfos: [ { // 指定字段值 value: '过滤字段值1', // 匹配到该值后的样式 // M3D专题图仅支持SimpleFillSymbol符号 symbol: new SimpleFillSymbol({ // 填充颜色 color: new Color(255, 0, 0) }) }, { // 指定字段值 value: '过滤字段值2', // 匹配到该值后的样式 // M3D专题图仅支持SimpleFillSymbol符号 symbol: new SimpleFillSymbol({ // 填充颜色 color: 'rgb(255, 123, 220)' }) } ] }) // 构造场景图层 const layer = new IGSSceneLayer({ // 服务基地址 url: '服务基地址', // 设置场景初始化参数 scenes: [{ // 设置子图层初始化参数 sublayers: [{ // 子图层id id: 'id', // 设置专题图渲染器 renderer: renderer, // 子图层初始化参数 extensionOptions: { // 开启自动跳转 autoReset: true } }] }] });</code></pre> <p class="code-caption"><h7 id='ClassBreakRenderer'>分段专题图</h7></p> <pre class="prettyprint"><code>// ES5引入方式 const { IGSSceneLayer } = zondy.layer const { ClassBreakRenderer } = zondy.renderer const { SimpleFillSymbol } = zondy.symbol const { Color } = zondy // ES6引入方式 import { IGSSceneLayer,ClassBreakRenderer,SimpleFillSymbol,Color } from "@mapgis/webclient-common" // 构造分段渲染器 const renderer = new ClassBreakRenderer({ // 专题图过滤字段名 field: "字段名", // 分段专题图过滤条件数组 classBreakInfos: [ { // 最小过滤范围,field对应的值大于等于minValue minValue: 0, // 最大过滤范围,field对应的值小于maxValue maxValue: 2, // 匹配到该值后的样式 // M3D专题图仅支持SimpleFillSymbol符号 symbol: new SimpleFillSymbol({ // 填充颜色 color: new Color(255, 0, 0) }) }, { // 最小过滤范围,field对应的值大于等于minValue minValue: 3, // 最大过滤范围,field对应的值小于maxValue maxValue: 5, // 匹配到该值后的样式 // M3D专题图仅支持SimpleFillSymbol符号 symbol: new SimpleFillSymbol({ // 填充颜色 color: 'rgb(255, 123, 220)' }) } ] }) // 构造场景图层 const layer = new IGSSceneLayer({ // 服务基地址 url: '服务基地址', // 设置场景初始化参数 scenes: [{ // 设置子图层初始化参数 sublayers: [{ // 子图层id id: 'id', // 设置专题图渲染器 renderer: renderer, // 子图层初始化参数 extensionOptions: { // 开启自动跳转 autoReset: true } }] }] });</code></pre> <p class="code-caption"><h7 id='UniqueValueRenderer-Cesium'>单值专题图-Cesium原生方式</h7></p> <pre class="prettyprint"><code>// ES5引入方式 const { IGSSceneLayer } = zondy.layer // ES6引入方式 import { IGSSceneLayer } from "@mapgis/webclient-common" // 构造Cesium原生渲染器 const renderer = { // 专题图过滤字段名 field: "字段名", // 专题图类型-分段 type: "class-breaks", // 分段专题图过滤条件数组 classBreakInfos: [{ // 最小过滤范围,field对应的值大于等于minValue minValue: 1, // 最大过滤范围,field对应的值小于maxValue maxValue: 7, // 渲染符号 symbol: { // 渲染类型为M3D type: 'mesh-3d', // 覆盖物图层 symbolLayers: [{ // 图层类型-颜色填充 type: "fill", // 图层材质 material: { // 填充颜色 color: Cesium.Color.ANTIQUEWHITE } }] } }] } // 构造场景图层 const layer = new IGSSceneLayer({ // 服务基地址 url: '服务基地址', // 设置场景初始化参数 scenes: [{ // 设置子图层初始化参数 sublayers: [{ // 子图层id id: 'id', // 子图层初始化参数 extensionOptions: { // 开启自动跳转 autoReset: true, // 设置专题图渲染器 renderer: renderer } }] }] });</code></pre> <p class="code-caption"><h7 id='ClassBreakRenderer-Cesium'>分段专题图-Cesium原生方式</h7></p> <pre class="prettyprint"><code>// ES5引入方式 const { IGSSceneLayer } = zondy.layer // ES6引入方式 import { IGSSceneLayer } from "@mapgis/webclient-common" // 构造Cesium原生渲染器 const renderer = { // 专题图过滤字段名 field: "字段名", // 专题图类型-单值 type: "unique-value", // 单值专题图过滤条件数组 uniqueValueInfos: [ // 指定字段值 value: '过滤字段值', // 渲染符号 symbol: { // 渲染类型为M3D type: 'mesh-3d', // 覆盖物图层 symbolLayers: [{ // 图层类型-颜色填充 type: "fill", // 图层材质 material: { // 填充颜色 color: new Cesium.Color(0.0, 0.0, 1.0, 0.5) } }] } ] }; // 构造场景图层 const layer = new IGSSceneLayer({ // 服务基地址 url: '服务基地址', // 设置场景初始化参数 scenes: [{ // 设置子图层初始化参数 sublayers: [{ // 子图层id id: 'id', // 子图层初始化参数 extensionOptions: { // 开启自动跳转 autoReset: true, // 设置专题图渲染器 renderer: renderer } }] }] });</code></pre> </div> </div> </div> </div> <h3 class="subsection-title">继承关系</h3> <ul> <li><a link="SceneLayer.html" onclick="getTypeHTML(event)" href="SceneLayer.html">SceneLayer</a></li> </ul> <div class='vertical-section'> <h3 id='member'>成员变量</h3> <h4 style="margin-top: 20px;margin-bottom: 20px;">成员变量概述</h4> <div class="table-container"> <table class="params table"> <thead> <tr> <th>名称</th> <th>类型</th> <th>描述</th> </tr> </thead> <tbody> <tr class="deep-level-0"> <td class="name"><code><a href="#allSublayers">allSublayers</a></code></td> <td class="name"> <code> <span class="param-type"> <a link="Collection.html" onclick="getTypeHTML(event)" href="Collection.html">Collection</a> </span> </code> </td> <td class="name"><code><p>所有子图层对象</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#boundingSphere">boundingSphere</a></code></td> <td class="name"> <code> <span class="param-type"> Object </span> </code> </td> <td class="name"><code><p>模型外包球</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#boundingVolume">boundingVolume</a></code></td> <td class="name"> <code> <span class="param-type"> Object </span> </code> </td> <td class="name"><code><p>模型外包盒</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#description">description</a></code></td> <td class="name"> <code> <span class="param-type"> String </span> </code> </td> <td class="name"><code><p>描述信息</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#fieldInfo">fieldInfo</a></code></td> <td class="name"> <code> <span class="param-type"> String </span> </code> </td> <td class="name"><code><p>服务包含的表字段数组</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#position">position</a></code></td> <td class="name"> <code> <span class="param-type"> Object </span> </code> </td> <td class="name"><code><p>模型位置</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#sceneIndex">sceneIndex</a></code></td> <td class="name"> <code> <span class="param-type"> String </span> </code> </td> <td class="name"><code><p>场景id</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#sceneName">sceneName</a></code></td> <td class="name"> <code> <span class="param-type"> String </span> </code> </td> <td class="name"><code><p>服务名</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#scenes">scenes</a></code></td> <td class="name"> <code> <span class="param-type"> Array.&lt;<a onclick="getTypeHTML(event)" link="Scene.html">Scene</a>> </span> </code> </td> <td class="name"><code><p>场景集合</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#spatialReference">spatialReference</a></code></td> <td class="name"> <code> <span class="param-type"> Object </span> </code> </td> <td class="name"><code><p>模型坐标系</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#tokenKey">tokenKey</a></code></td> <td class="name"> <code> <span class="param-type"> String </span> </code> </td> <td class="name"><code><p>token名</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#tokenValue">tokenValue</a></code></td> <td class="name"> <code> <span class="param-type"> String </span> </code> </td> <td class="name"><code><p>token值</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#type">type</a></code></td> <td class="name"> <code> <span class="param-type"> String </span> </code> </td> <td class="name"><code><p>图层类型</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#url">url</a></code></td> <td class="name"> <code> <span class="param-type"> String </span> </code> </td> <td class="name"><code><p>服务基地址</p></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#version">version</a></code></td> <td class="name"> <code> <span class="param-type"> String </span> </code> </td> <td class="name"><code><p>服务版本号</p></code></td> </tr> </tbody> </table> </div> <h4 style="margin-top: 20px;margin-bottom: 20px;">成员变量详情</h4> <div class="members"> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> <a link="Collection.html" onclick="getTypeHTML(event)" href="Collection.html">Collection</a> </span> </span> <h4 class="name" id="allSublayers"> <a class="href-link" href="#allSublayers">#</a> <span class='tag'>readonly</span> <span class="code-name"> allSublayers </span> </h4> <div class="description"> <p>所有子图层对象</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> Object </span> </span> <h4 class="name" id="boundingSphere"> <a class="href-link" href="#boundingSphere">#</a> <span class='tag'>readonly</span> <span class="code-name"> boundingSphere </span> </h4> <div class="description"> <p>模型外包球</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> Object </span> </span> <h4 class="name" id="boundingVolume"> <a class="href-link" href="#boundingVolume">#</a> <span class="code-name"> boundingVolume </span> </h4> <div class="description"> <p>模型外包盒</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> String </span> </span> <h4 class="name" id="description"> <a class="href-link" href="#description">#</a> <span class="code-name"> description </span> </h4> <div class="description"> <p>描述信息</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> String </span> </span> <h4 class="name" id="fieldInfo"> <a class="href-link" href="#fieldInfo">#</a> <span class="code-name"> fieldInfo </span> </h4> <div class="description"> <p>服务包含的表字段数组</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> Object </span> </span> <h4 class="name" id="position"> <a class="href-link" href="#position">#</a> <span class="code-name"> position </span> </h4> <div class="description"> <p>模型位置</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> String </span> </span> <h4 class="name" id="sceneIndex"> <a class="href-link" href="#sceneIndex">#</a> <span class="code-name"> sceneIndex </span> </h4> <div class="description"> <p>场景id</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> String </span> </span> <h4 class="name" id="sceneName"> <a class="href-link" href="#sceneName">#</a> <span class="code-name"> sceneName </span> </h4> <div class="description"> <p>服务名</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> Array.&lt;<a onclick="getTypeHTML(event)" link="Scene.html">Scene</a>> </span> </span> <h4 class="name" id="scenes"> <a class="href-link" href="#scenes">#</a> <span class="code-name"> scenes </span> </h4> <div class="description"> <p>场景集合</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> Object </span> </span> <h4 class="name" id="spatialReference"> <a class="href-link" href="#spatialReference">#</a> <span class="code-name"> spatialReference </span> </h4> <div class="description"> <p>模型坐标系</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> String </span> </span> <h4 class="name" id="tokenKey"> <a class="href-link" href="#tokenKey">#</a> <span class="code-name"> tokenKey </span> </h4> <div class="description"> <p>token名</p> </div> <dl class="details"> <dt class="inherited-from">Inherited From:</dt> <dd class="inherited-from"><ul class="dummy"><li> <a goto="tokenKey" link="SceneLayer.html" onclick="getTypeHTML(event)" href="SceneLayer.html#tokenKey">SceneLayer#tokenKey</a> </li></ul></dd> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> String </span> </span> <h4 class="name" id="tokenValue"> <a class="href-link" href="#tokenValue">#</a> <span class="code-name"> tokenValue </span> </h4> <div class="description"> <p>token值</p> </div> <dl class="details"> <dt class="inherited-from">Inherited From:</dt> <dd class="inherited-from"><ul class="dummy"><li> <a goto="tokenValue" link="SceneLayer.html" onclick="getTypeHTML(event)" href="SceneLayer.html#tokenValue">SceneLayer#tokenValue</a> </li></ul></dd> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> String </span> </span> <h4 class="name" id="type"> <a class="href-link" href="#type">#</a> <span class="code-name"> type </span> </h4> <div class="description"> <p>图层类型</p> </div> <dl class="details"> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> String </span> </span> <h4 class="name" id="url"> <a class="href-link" href="#url">#</a> <span class="code-name"> url </span> </h4> <div class="description"> <p>服务基地址</p> </div> <dl class="details"> <dt class="tag-overrides">Overrides:</dt> <dd class="tag-overrides"><ul class="dummy"><li> <a href="SceneLayer.html#url">SceneLayer#url</a> </li></ul></dd> </dl> </div> <div class="member"> <span class="method-parameter is-pulled-right"> <label>类型:</label> <span class="param-type"> String </span> </span> <h4 class="name" id="version"> <a class="href-link" href="#version">#</a> <span class="code-name"> version </span> </h4> <div class="description"> <p>服务版本号</p> </div> <dl class="details"> </dl> </div> </div> </div> <div class='vertical-section'> <h3 id='function'>方法</h3> <h4 style="margin-top: 20px;margin-bottom: 20px;">方法概述</h4> <div class="members"> <div class="table-container"> <table class="params table"> <thead> <tr> <th>名称</th> <th>返回值类型</th> <th>描述</th> </tr> </thead> <tbody> <tr class="deep-level-0"> <td class="name"><code><a href="#fromJSON">fromJSON</a></code></td> <td class="name"> <code> </code> </td> <td class="name"><code></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#clone">clone</a></code></td> <td class="name"> <code> <span class="param-type"> <a link="IGSSceneLayer.html" onclick="getTypeHTML(event)" href="IGSSceneLayer.html">IGSSceneLayer</a> </span> </code> </td> <td class="name"><code></code></td> </tr> <tr class="deep-level-0"> <td class="name"><code><a href="#toJSON">toJSON</a></code></td> <td class="name"> <code> <span class="param-type"> Object </span> </code> </td> <td class="name"><code></code></td> </tr> </tbody> </table> </div> <h4 style="margin-top: 20px;margin-bottom: 20px;">方法详情</h4> <div class="member"> <h4 class="name" id=".fromJSON"> <a class="href-link" href="#.fromJSON">#</a> <span class='tag'>static</span> <span class="code-name" id="fromJSON" style="font-size:30px"> fromJSON<span class="signature">(json)</span> </span> </h4> <div class="description"> <a id='fromJSON'/> 通过json构造并返回图层对象 </div> <h4>参数</h4> <div class="table-container"> <table class="params table"> <thead> <tr> <th>名称</th> <th>类型</th> <th class="last">描述</th> </tr> </thead> <tbody> <tr class="deep-level-0"> <td class="name"><code>json</code></td> <td class="type"> <span class="param-type"> Object </span> </td> <td class="description last"><p>json对象</p></td> </tr> </tbody> </table> </div> <dl class="details"> </dl> </div> <div class="member"> <h4 class="name" id="clone"> <a class="href-link" href="#clone">#</a> <span class="code-name" id="clone" style="font-size:30px"> clone<span class="signature">()</span> </span> </h4> <div class="description"> <a id='clone'/> 克隆图层对象 </div> <dl class="details"> <dt class="tag-overrides">Overrides:</dt> <dd class="tag-overrides"><ul class="dummy"><li> <a href="SceneLayer.html#clone">SceneLayer#clone</a> </li></ul></dd> </dl> <div class='columns method-parameter'> <div class="column is-2"><label>返回值</label></div> <div class="column is-10"> <div class="columns"> <div class='param-desc column is-7'><p>克隆后的图层对象</p></div> <div class='column is-5 has-text-left'> <label>类型: </label> <span class="param-type"> <a link="IGSSceneLayer.html" onclick="getTypeHTML(event)" href="IGSSceneLayer.html">IGSSceneLayer</a> </span> </div> </div> </div> </div> </div> <div class="member"> <h4 class="name" id="toJSON"> <a class="href-link" href="#toJSON">#</a> <span class="code-name" id="toJSON" style="font-size:30px"> toJSON<span class="signature">()</span> </span> </h4> <div class="description"> <a id='toJSON'/> 将图层转为json对象 </div> <dl class="details"> <dt class="tag-overrides">Overrides:</dt> <dd class="tag-overrides"><ul class="dummy"><li> <a href="SceneLayer.html#toJSON">SceneLayer#toJSON</a> </li></ul></dd> </dl> <div class='columns method-parameter'> <div class="column is-2"><label>返回值</label></div> <div class="column is-10"> <div class="columns"> <div class='param-desc column is-7'><p>json对象</p></div> <div class='column is-5 has-text-left'> <label>类型: </label> <span class="param-type"> Object </span> </div> </div> </div> </div> </div> </div> </div> </article> </section>