@mapgis/webclient-common
Version:
mapgis ES6 format for igserver
1,414 lines (545 loc) • 25.7 kB
HTML
<header id="page-title" class="page-title">
<span class="page-title-main">类名</span>
<span class="page-title-sub">IGSVectorTileSubLayer</span>
</header>
<section>
<article>
<div class="container-overview">
<div class='vertical-section'>
<div class="members">
<div class="member">
<h4 class="name" id="IGSVectorTileSubLayer">
<a class="href-link" href="#IGSVectorTileSubLayer">#</a>
<span class="code-name" id="IGSVectorTileSubLayer" style="font-size:30px">
new IGSVectorTileSubLayer<span class="signature">(options)</span>
</span>
</h4>
<div class="description">
<p>IGS矢量瓦片子图层</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" id="options"><code>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="default">
</td>
<td class="description last"><p>构造参数</p></td>
</tr>
<tr class="deep-level-1">
<td class="name" id="renderer"><code>renderer</code></td>
<td class="type">
<span class="param-type"><a link="BaseRenderer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="BaseRenderer" BaseRenderer.html>BaseRenderer</a></span>
</td>
<td class="default">
</td>
<td class="description last"><p>专题图渲染样式对象,支持如下渲染样式:<br/>
<a class="mapgis-link-name" title="UniqueValueRenderer" UniqueValueRenderer.html><code>1、单值渲染</code></a><br/>
<a class="mapgis-link-name" title="ClassBreakRenderer" ClassBreakRenderer.html><code>2、分段渲染</code></a><br/>
<a class="mapgis-link-name" title="SimpleRenderer" SimpleRenderer.html><code>3、统一专题图</code></a><br/>
示例请参考<a class="mapgis-link-name" title="IGSVectorTileLayer" IGSVectorTileLayer.html><code>IGSVectorTileLayer</code></a></p></td>
</tr>
<tr class="deep-level-1">
<td class="name" id="id"><code>id</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="default">
</td>
<td class="description last"><p>矢量瓦片子图层的id</p></td>
</tr>
<tr class="deep-level-1">
<td class="name" id="title"><code>title</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="default">
</td>
<td class="description last"><p>矢量瓦片子图层的标题</p></td>
</tr>
<tr class="deep-level-1">
<td class="name" id="styleLayers"><code>styleLayers</code></td>
<td class="type">
<span class="param-type">Array.<Object></span>
</td>
<td class="default">
</td>
<td class="description last"><p>矢量瓦片子图层关联的矢量瓦片样式图层数组</p></td>
</tr>
<tr class="deep-level-1">
<td class="name" id="visible"><code>visible</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="default">
true
</td>
<td class="description last"><p>图层可见性</p></td>
</tr>
<tr class="deep-level-1">
<td class="name" id="layer"><code>layer</code></td>
<td class="type">
<span class="param-type"><a link="IGSVectorTileLayer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="IGSVectorTileLayer" IGSVectorTileLayer.html>IGSVectorTileLayer</a></span>
</td>
<td class="default">
</td>
<td class="description last"><p>矢量瓦片父图层</p></td>
</tr>
<tr class="deep-level-1">
<td class="name" id="labelingInfo"><code>labelingInfo</code></td>
<td class="type">
<span class="param-type">Array.<<a link="Array.<LabelClass>.html" onclick="getTypeHTML(event)" href="LabelClass.html">LabelClass</a>></span>
</td>
<td class="default">
[]
</td>
<td class="description last"><p>仅当IGSVectorTileLayer图层的labelsRenderMode参数设置非'off-screen'属性时生效<br>
为性能考虑,当前所有子图层labelingInfo内的LabelClass必须保证其renderMode参数一致,不支持renderMode同时设置label或canvas两种模式<br>
三维注记目前不支持修改透明度和显隐参数<br>
参考示例:<a href='#labels-3d'>[矢量瓦片三维注记]</a><a href='#labels-change'>[切换三维注记样式]</a><br/></p></td>
</tr>
</tbody>
</table>
</div>
<dl class="details">
</dl>
<h5>示例</h5>
<p class="code-caption"><h7 id='labels-3d'>矢量瓦片三维注记</h7></p>
<pre class="prettyprint"><code>// ES5引入方式
const { LabelClass } = Zondy
const { IGSVectorTileLayer } = Zondy.Layer
// ES6引入方式
import { IGSVectorTileLayer, LabelClass } from "@mapgis/webclient-common"
// 初始化一个额外的图标DOM对象
const iconImage = new Image()
iconImage.src = '图片地址或者base64字符串'
// 初始化矢量瓦片图层
const igsVectorTileLayer = new IGSVectorTileLayer({
// 矢量瓦片基地址
url: '',
// 开启三维注记
labelsRenderMode: 'on-screen',
// 设置要应用三维主句的子图层
sublayers: [{
// 矢量瓦片子图层id
id: '矢量瓦片子图层id',
// 注记参数,目前仅用填写一个
labelingInfo: [
new LabelClass({
symbol: {
// 填充颜色 rgba or 16进制颜色
color: 'rgba(255,255,255,1)',
// 描边颜色
haloColor: 'rgba(0,0,0,0.5)',
// 描边宽度
haloSize: 2,
// 行高
lineHeight: 1.1,
// 文本间距
letterSpacing: 2,
// 字体样式 参考css
font: {
size: 14,
family: '微软雅黑',
weight: 'normal',
style: 'normal'
},
// 额外的图标
textExtraIcon: iconImage,
// 图标的大小
textExtraIconSize:20,
// 图标方位
textExtraIconAnchor:'left'
},
// 渲染方式 1.canvas 2.label 3.ground
renderMode: 'canvas',
// 最大可见范围
minScale: 60000000,
// 最小可见范围
maxScale: 1,
// 布局位置 可选 1.above-left 2.above-center 3.above-right 4.center-left 5.center-center 6.center-right 7.below-left 8.below-center 9.below-right
labelPlacement: 'above-center',
// 高程采样参数
elevationInfo: {
mode: 'OnTheGround',
offset: 0
}
})
]
}]
});</code></pre>
<p class="code-caption"><h7 id='labels-change'>切换三维注记样式</h7></p>
<pre class="prettyprint"><code>// ES5引入方式
const { LabelClass } = Zondy
// ES6引入方式
import { LabelClass } from "@mapgis/webclient-common"
// 初始化一个额外的图标DOM对象
const iconImage = new Image()
iconImage.src = '图片地址或者base64字符串'
// 获取矢量瓦片子图层
const sublayer = igsVectorTileLayer.findSublayerById('子图层id')
// 设置一个新的矢量瓦片三维注记参数
sublayer.labelingInfo = [
new LabelClass({
symbol: {
// 填充颜色 rgba or 16进制颜色
color: 'rgba(1,255,1,1)',
// 描边颜色
haloColor: 'rgba(0,0,0,0.5)',
// 描边宽度
haloSize: 2,
// 行高
lineHeight: 1.1,
// 文本间距
letterSpacing: 2,
// 字体样式 参考css
font: {
size: 14,
family: '微软雅黑',
weight: 'normal',
style: 'normal'
},
// 额外的图标
textExtraIcon: iconImage,
// 图标的大小
textExtraIconSize:20,
// 图标方位
textExtraIconAnchor:'left'
},
// 渲染方式 1.canvas 2.label 3.ground
renderMode: 'canvas',
// 最大可见范围
minScale: 60000000,
// 最小可见范围
maxScale: 1,
// 布局位置 可选 1.above-left 2.above-center 3.above-right 4.center-left 5.center-center 6.center-right 7.below-left 8.below-center 9.below-right
labelPlacement: 'above-center',
// 高程采样参数
elevationInfo: {
mode: 'OnTheGround',
offset: 0
}
})
]</code></pre>
</div>
</div>
</div>
</div>
<h3 class="subsection-title">继承关系</h3>
<ul>
<li><a link="VectorTileSubLayer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="VectorTileSubLayer" VectorTileSubLayer.html>VectorTileSubLayer</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="#labelingInfo">labelingInfo</a></code></td>
<td class="name">
<code>
<span class="param-type">Array.<<a link="Array.<LabelClass>.html" onclick="getTypeHTML(event)" href="LabelClass.html">LabelClass</a>></span>
</code>
</td>
<td class="name"><code><p>三维注记参数,仅当igs矢量瓦片图层labelsRenderMode设置非'off-screen'属性时生效。为性能考虑,当前所有子图层labelingInfo内labelClass必须保证renderMode一致,不支持同时设置label或canvas两种形式。</p></code></td>
</tr>
<tr class="deep-level-0">
<td class="name"><code><a href="#renderer">renderer</a></code></td>
<td class="name">
<code>
<span class="param-type"><a link="UniqueValueRenderer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="UniqueValueRenderer" UniqueValueRenderer.html>UniqueValueRenderer</a></span>
|
<span class="param-type"><a link="ClassBreakRenderer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="ClassBreakRenderer" ClassBreakRenderer.html>ClassBreakRenderer</a></span>
|
<span class="param-type"><a link="SimpleRenderer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="SimpleRenderer" SimpleRenderer.html>SimpleRenderer</a></span>
</code>
</td>
<td class="name"><code><p>矢量瓦片子图层专题图渲染样式</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="#visible">visible</a></code></td>
<td class="name">
<code>
<span class="param-type">Boolean</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">Array.<<a link="Array.<LabelClass>.html" onclick="getTypeHTML(event)" href="LabelClass.html">LabelClass</a>></span>
</span>
<h4 class="name" id="labelingInfo">
<a class="href-link" href="#labelingInfo">#</a>
<span class="code-name">
labelingInfo
</span>
</h4>
<div class="description">
<p>三维注记参数,仅当igs矢量瓦片图层labelsRenderMode设置非'off-screen'属性时生效。为性能考虑,当前所有子图层labelingInfo内labelClass必须保证renderMode一致,不支持同时设置label或canvas两种形式。</p>
</div>
<dl class="details">
<dt class="inherited-from">Inherited From:</dt>
<dd class="inherited-from"><ul class="dummy"><li>
<a goto="labelingInfo" link="VectorTileSubLayer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="VectorTileSubLayer#labelingInfo" VectorTileSubLayer.html#labelingInfo>VectorTileSubLayer#labelingInfo</a>
</li></ul></dd>
</dl>
</div>
<div class="member">
<span class="method-parameter is-pulled-right">
<label>类型:</label>
<span class="param-type"><a link="UniqueValueRenderer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="UniqueValueRenderer" UniqueValueRenderer.html>UniqueValueRenderer</a></span>
|
<span class="param-type"><a link="ClassBreakRenderer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="ClassBreakRenderer" ClassBreakRenderer.html>ClassBreakRenderer</a></span>
|
<span class="param-type"><a link="SimpleRenderer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="SimpleRenderer" SimpleRenderer.html>SimpleRenderer</a></span>
</span>
<h4 class="name" id="renderer">
<a class="href-link" href="#renderer">#</a>
<span class="code-name">
renderer
</span>
</h4>
<div class="description">
<p>矢量瓦片子图层专题图渲染样式</p>
</div>
<dl class="details">
<dt class="inherited-from">Inherited From:</dt>
<dd class="inherited-from"><ul class="dummy"><li>
<a goto="renderer" link="VectorTileSubLayer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="VectorTileSubLayer#renderer" VectorTileSubLayer.html#renderer>VectorTileSubLayer#renderer</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='tag'>readonly</span>
<span class="code-name">
type
</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 class="mapgis-link-name" title="VectorTileSubLayer#type" VectorTileSubLayer.html#type>VectorTileSubLayer#type</a>
</li></ul></dd>
</dl>
</div>
<div class="member">
<span class="method-parameter is-pulled-right">
<label>类型:</label>
<span class="param-type">Boolean</span>
</span>
<h4 class="name" id="visible">
<a class="href-link" href="#visible">#</a>
<span class="code-name">
visible
</span>
</h4>
<div class="description">
<p>矢量瓦片子图层是否可见</p>
</div>
<dl class="details">
<dt class="inherited-from">Inherited From:</dt>
<dd class="inherited-from"><ul class="dummy"><li>
<a goto="visible" link="VectorTileSubLayer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="VectorTileSubLayer#visible" VectorTileSubLayer.html#visible>VectorTileSubLayer#visible</a>
</li></ul></dd>
<dt class="tag-default">Default Value:</dt>
<dd class="tag-default"><ul class="dummy">
<li>true</li>
</ul></dd>
</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><p>通过json对象初始化该对象</p></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="IGSVectorTileSubLayer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="IGSVectorTileSubLayer" IGSVectorTileSubLayer.html>IGSVectorTileSubLayer</a></span>
</code>
</td>
<td class="name"><code><p>克隆图层对象</p></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><p>将图层转为json对象</p></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">
<p>通过json对象初始化该对象</p>
</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" id="json"><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 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>IGSVectorTileSubLayer 新的IGSVectorTileSubLayer图层对象</p></div>
</div>
</div>
</div>
</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">
<p>克隆图层对象</p>
</div>
<dl class="details">
<dt class="tag-overrides">Overrides:</dt>
<dd class="tag-overrides"><ul class="dummy"><li>
<a class="mapgis-link-name" title="VectorTileSubLayer#clone" VectorTileSubLayer.html#clone>VectorTileSubLayer#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="IGSVectorTileSubLayer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="IGSVectorTileSubLayer" IGSVectorTileSubLayer.html>IGSVectorTileSubLayer</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">
<p>将图层转为json对象</p>
</div>
<dl class="details">
<dt class="inherited-from">Inherited From:</dt>
<dd class="inherited-from"><ul class="dummy"><li>
<a goto="toJSON" link="VectorTileSubLayer.html" onclick="getTypeHTML(event)" class="mapgis-link-name" title="VectorTileSubLayer#toJSON" VectorTileSubLayer.html#toJSON>VectorTileSubLayer#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>