From f39e4480ffd7aa755fbed9cf405b50ed8d33342b Mon Sep 17 00:00:00 2001
From: sbjw <sbjw.happy@163.com>
Date: Thu, 05 Mar 2026 01:49:33 +0000
Subject: [PATCH] 更新样例\示例
---
public/example/ExampleAggregatorPage.md | 4
public/example/ExampleSelectPage.md | 2
public/example/ExampleSimpleEventPage.md | 53 +++++++
src/example/ExampleBpPage.js | 6
src/example/ExampleDefaultMap2dPage.js | 12 +
public/example/ExampleHtmlBoardPage.md | 2
public/example/ExampleXzxxPage.md | 44 +++++
public/军事标绘文档.md | 31 ++++
src/example/ExampleDrawPage.js | 24 +++
public/MapApiService.md | 91 ++++++++++++
public/example/ExampleBlinkPage.md | 14 +-
public/example/Example2DDrawUpdatePage.md | 8
public/example/ExampleDefaultMap2dPage.md | 12 +
src/example/ExampleSimpleEventPage.js | 53 +++++++
src/example/ExampleXzxxPage.js | 22 ++
src/example/profile/ProfilePage.js | 3
public/example/profile/ProfilePage.md | 3
src/example/ExampleAggregatorPage.js | 2
public/GIS_API.md | 1
public/example/ExampleDrawPage.md | 26 +++
20 files changed, 371 insertions(+), 42 deletions(-)
diff --git a/public/GIS_API.md b/public/GIS_API.md
index 411ea03..c615fbb 100644
--- a/public/GIS_API.md
+++ b/public/GIS_API.md
@@ -20,6 +20,7 @@
| ------------------------ |------------------------------------------------------------------------------------------------------------------------------------------| --------------- | -------- |
| mapRef | 父组件引用 | React.Component | - |
| map2D | 初始化时显示2维地图 | boolean | false |
+| map2_5D | 初始化时显示2.5维地图 | boolean | false |
| showDefaultLayer | 显示默认图层(国内天地图) | boolean | true |
| addressSearchUrl | 地址查询基础服务 | string | - |
| terrainUrl | 地形服务地址 | string | - |
diff --git a/public/MapApiService.md b/public/MapApiService.md
index 3d8ce3f..5514893 100644
--- a/public/MapApiService.md
+++ b/public/MapApiService.md
@@ -3,7 +3,7 @@
### 方法
| 方法 | 说明 |
-|-----------------------------|--------------|
+|-----------------------------|-----------------------|
| enableTilt | 启用旋转和倾斜 |
| disableTilt | 禁用旋转和倾斜 |
| setToHeading | 回归到当前视角 | |
@@ -32,8 +32,17 @@
| clearMeasure | 清除绘制 |
| mapSwitch | 地图切换 |
| preciseLerpSampling | 输入两个点,进行按距离进行采样 |
-| sampleTerrainMostDetailed | 根据经纬度坐标获取对应的高程 |
+| sampleTerrainMostDetailed | 根据Cartesian3数组获取对应的高程 |
+| sampleTerrain | 根据经纬度坐标获取对应的高程 |
| getMeasureHandler | 获取线量算handler |
+| mapRightClickEvent | 右键事件 |
+| showDraw | 显示Draw |
+| hideDraw | 隐藏Draw |
+| updateModel | 更新选择方法 |
+| clearSelected | 清除已选择 |
+| triggerSelected | 外部选择 |
+| clearDrawSelect | 清除框选 |
+| useDrawSelect | 打开框选 |
### 具体方法
##### showDrawDatas(options)
@@ -290,7 +299,10 @@
---
-#### mapSwitch()
+#### mapSwitch(mapType)
+| 参数 | 必须 | 类型 | 说明 |
+|------|-------|--------|-------------------------------|
+| mapType | false | string | '2' 表示2维, '2_5'表示2.5维,'3'表示3维 |
二三维地图切换
@@ -332,12 +344,81 @@
根据经纬度坐标获取对应的高程
| 参数 | 必须 | 类型 | 说明 |
-|------|------|----------|-------------|
-| points | true | object[] | 经纬度数组 |
+|------|------|--------------|-------------|
+| points | true | Cartesian3[] | 数组 |
+---
+#### sampleTerrain(points)
+根据经纬度坐标获取对应的高程
+| 参数 | 必须 | 类型 | 说明 |
+|--------|------|-----------------------------------------------|-------|
+| points | true | {lon: number; lat: number; height: number;}[] | 经纬度数组 |
---
#### getMeasureHandler()
获取线量算handler
---
+
+#### showDraw(code)
+
+显示Draw
+
+| 参数 | 必须 | 类型 | 说明 |
+|------|------|--------|----|
+| code | true | string | 编号 |
+
+---
+
+#### hideDraw(code)
+
+隐藏Draw
+
+| 参数 | 必须 | 类型 | 说明 |
+|------|------|--------|----|
+| code | true | string | 编号 |
+
+---
+
+#### updateModel(model)
+
+更新模式
+select: 选择
+modify: 修改(默认)
+
+| 参数 | 必须 | 类型 | 说明 |
+|------|------|--------|----|
+| model | true | string | 模式 |
+
+---
+
+#### clearSelected()
+
+清除已选择
+
+---
+
+#### triggerSelected(codes)
+
+外部选择对象
+
+| 参数 | 必须 | 类型 | 说明 |
+|------|------|----------|------|
+| codes | true | string[] | 手动添加 |
+
+---
+
+#### clearDrawSelect()
+
+清除框选
+
+---
+
+#### useDrawSelect(type, multi)
+
+使用框选
+
+| 参数 | 必须 | 类型 | 说明 |
+|------|------|---------|-------------------|
+| type | true | string | box 和 polygon中的一种 |
+| multi | true | boolean | 是否连续框选 |
diff --git a/public/example/Example2DDrawUpdatePage.md b/public/example/Example2DDrawUpdatePage.md
index bd509a3..395e0cb 100644
--- a/public/example/Example2DDrawUpdatePage.md
+++ b/public/example/Example2DDrawUpdatePage.md
@@ -1,5 +1,5 @@
-### Example2DDrawUpdatePage ����
+### Example2DDrawUpdatePage 代码
```jsx
import React, {Component} from 'react'
@@ -12,7 +12,7 @@
optionObjs = {
- "Ŀ����Ŀ": {
+ "目标醒目": {
code: '123',
type: "2002",
xz: true,
@@ -34,7 +34,7 @@
constructor(props) {
super(props);
this.state = {
- htmlString: '<h3>���ڼ�����...</h3>',
+ htmlString: '<h3>正在加载中...</h3>',
plotText: ''
};
}
@@ -113,7 +113,7 @@
return (
<div className={"example_draw_container"}>
- <h3>�������/չʾ���еľ�������</h3>
+ <h3>军标绘制/展示已有的军标数据</h3>
<div className={"map_wrapper"}>
<GIS refs={
e => {
diff --git a/public/example/ExampleAggregatorPage.md b/public/example/ExampleAggregatorPage.md
index 8a16622..4400e2f 100644
--- a/public/example/ExampleAggregatorPage.md
+++ b/public/example/ExampleAggregatorPage.md
@@ -23,7 +23,7 @@
this.setState({htmlString: window.marked.parse(mdText)});
});
- const randomPoints = this.generateRandomPointsInRadius(35.9042, 112.4074, 10, 200);
+ const randomPoints = this.generateRandomPointsInRadius(35.9042, 112.4074, 500, 5000);
let options = [];
for (let i = 0; i < randomPoints.length; i++) {
@@ -86,7 +86,7 @@
render() {
return (
<div className={"example_draw_container"}>
- <h3>自动聚合</h3>
+ <h3>自动聚合5000点</h3>
<div className={"map_wrapper"}>
<GIS refs={e => {
this.mapFunction = e
diff --git a/public/example/ExampleBlinkPage.md b/public/example/ExampleBlinkPage.md
index 7ebe280..8501cdb 100644
--- a/public/example/ExampleBlinkPage.md
+++ b/public/example/ExampleBlinkPage.md
@@ -1,5 +1,5 @@
-### ExampleBlinkPage ����
+### ExampleBlinkPage 代码
```jsx
import React, {Component} from 'react'
@@ -12,7 +12,7 @@
optionObjs = {
- "Ŀ����Ŀ": {
+ "目标醒目": {
code: '123',
type: "2002",
xz: true,
@@ -29,7 +29,7 @@
blinkCycle: 2000,
points: []
},
- "�ڻ�����": {
+ "掩护区域": {
type: 'yhqy',
points: [{lon: 102.642853926199, lat: 31.012509646376447, height: 0},
{lon: 102.65927322610115, lat: 31.01540811637356, height: 0},
@@ -40,7 +40,7 @@
blink: true,
blinkCycle: 3000,
},
- "Эͬ��ϵ": {
+ "协同关系": {
type: 'xtgx',
points: [{lon: 102.642853926199, lat: 31.012509646376447, height: 0},
{lon: 102.66192135373299, lat: 31.005988487769518, height: 0}],
@@ -48,7 +48,7 @@
blink: true,
blinkCycle: 2000,
},
- "������": {
+ "干扰线": {
type: 'grx',
points: [{lon: 102.732420985008, lat: 30.97556325857848, height: 0},
{lon: 102.73983041603873, lat: 30.97504986175468, height: 0}],
@@ -63,7 +63,7 @@
constructor(props) {
super(props);
this.state = {
- htmlString: '<h3>���ڼ�����...</h3>',
+ htmlString: '<h3>正在加载中...</h3>',
plotText: ''
};
}
@@ -124,7 +124,7 @@
return (
<div className={"example_draw_container"}>
- <h3>�������/չʾ���еľ�������</h3>
+ <h3>军标绘制/展示已有的军标数据</h3>
<div className={"map_wrapper"}>
<GIS refs={
e => {
diff --git a/public/example/ExampleDefaultMap2dPage.md b/public/example/ExampleDefaultMap2dPage.md
index 41d1224..688e9d0 100644
--- a/public/example/ExampleDefaultMap2dPage.md
+++ b/public/example/ExampleDefaultMap2dPage.md
@@ -22,6 +22,18 @@
.then(mdText => {
this.setState({htmlString: window.marked.parse(mdText)});
});
+ let op = {
+ code: "lddkzcqy",
+ type: "lddkzcqy",
+ lon: 2,
+ lat: 27,
+ height: 0,
+ bj: 400,
+ qsjd: 0,
+ zzjd: 360,
+ useModify: false
+ }
+ this.mapFunction.mapApiService.appendBh('bh', [op]);
}
render() {
diff --git a/public/example/ExampleDrawPage.md b/public/example/ExampleDrawPage.md
index b408460..6cbf186 100644
--- a/public/example/ExampleDrawPage.md
+++ b/public/example/ExampleDrawPage.md
@@ -14,6 +14,8 @@
optionObjs = {
"目标简标": {
+ allowPicking: false,
+ code: '123123',
bz: true,
bzlx: 'simple',
jbwb: 'R:00017',
@@ -25,6 +27,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"目标详标": {
+ allowPicking: false,
bz: true,
bzlx: 'detail',
jbwb: 'R:00017',
@@ -36,6 +39,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"飞行简标": {
+ allowPicking: false,
bz: true,
bzlx: 'simple',
jbwb: "P:00019",
@@ -50,6 +54,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"飞行详标": {
+ allowPicking: false,
bz: true,
bzlx: 'detail',
jbwb: 'P:00019',
@@ -65,6 +70,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"雷达对抗侦察区域": {
+ allowPicking: false,
type: "lddkzcqy",
bj: 1,
qsjd: 30,
@@ -74,6 +80,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"雷达对抗干扰波束": {
+ allowPicking: false,
type: 'lddkgrps',
bj: 1,
qsjd: 30,
@@ -83,6 +90,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"雷达对抗测向线": {
+ allowPicking: false,
type: "lddkcxx",
kcwb: "10110",
kcgls: 1,
@@ -92,6 +100,7 @@
points: []
},
"雷达对抗关系": {
+ allowPicking: false,
type: "lddkgx",
kcwb: "10110",
kcgls: 1,
@@ -103,6 +112,7 @@
points: []
},
"雷达对目标探测": {
+ allowPicking: false,
type: "lddmbtc",
bj: 0.5,
qsjd: 0,
@@ -111,6 +121,7 @@
useModify: false,
},
"通信对抗侦察区域": {
+ allowPicking: false,
type: "txdkzcqy",
bj: 0.5,
qsjd: 0,
@@ -119,6 +130,7 @@
useModify: false,
},
"通信对抗干扰波束": {
+ allowPicking: false,
type: "txdkgrps",
bj: 1,
qsjd: 30,
@@ -127,6 +139,7 @@
useModify: false,
},
"通信对抗测向线": {
+ allowPicking: false,
type: "txdkcxx",
kcgls: 1,
kcjd: 30,
@@ -136,6 +149,7 @@
points: []
},
"通信畅通区域": {
+ allowPicking: false,
type: 'txctqy',
bj: 0.5,
qsjd: 0,
@@ -145,12 +159,14 @@
},
"通信网标绘": {
type: "txw",
+ allowPicking: false,
useModify: false,
lon: 102.70854539488224, lat: 31.0098468100060593, height: 0,
points: []
},
"光电对抗侦察区域": {
type: 'gddkzcqy',
+ allowPicking: false,
bj: 0.5,
qsjd: 0,
zzjd: 360,
@@ -158,6 +174,7 @@
useModify: false,
},
"光电有源对抗干扰波束": {
+ allowPicking: false,
type: 'gdyydkgrbs',
kcgls: 1,
kcjd: 30,
@@ -165,6 +182,7 @@
useModify: false,
},
"漫反射干扰区域": {
+ allowPicking: false,
type: 'mfsgrqy',
bj: 1,
qsjd: 30,
@@ -173,6 +191,7 @@
useModify: false,
},
'烟幕形成区域': {
+ allowPicking: false,
type: 'ymxcqy',
points: [{lon: 102.64984, lat: 30.99237, height: 0},
{lon: 102.66012682459443, lat: 30.995109020954718, height: 0},
@@ -182,6 +201,7 @@
useModify: false,
},
"掩护区域": {
+ allowPicking: false,
type: 'yhqy',
points: [{lon: 102.642853926199, lat: 31.012509646376447, height: 0},
{lon: 102.65927322610115, lat: 31.01540811637356, height: 0},
@@ -191,30 +211,35 @@
useModify: false,
},
"协同关系": {
+ allowPicking: false,
type: 'xtgx',
points: [{lon: 102.642853926199, lat: 31.012509646376447, height: 0},
{lon: 102.66192135373299, lat: 31.005988487769518, height: 0}],
useModify: false,
},
"干扰线": {
+ allowPicking: false,
type: 'grx',
points: [{lon: 102.732420985008, lat: 30.97556325857848, height: 0},
{lon: 102.73983041603873, lat: 30.97504986175468, height: 0}],
useModify: false
},
"预警线": {
+ allowPicking: false,
type: 'yjx',
useModify: false,
points: [{lon: 102.732420985008, lat: 30.97956325857848, height: 0},
{lon: 102.73983041603873, lat: 30.98004986175468, height: 0}]
},
"目标分配线": {
+ allowPicking: false,
type: 'mbfpx',
useModify: false,
points: [{lon: 102.732420985008, lat: 30.97756325857848, height: 0},
{lon: 102.73983041603873, lat: 30.97804986175468, height: 0}]
},
"目标醒目": {
+ allowPicking: false,
bz: true,
xz: true,
bzlx: 'simple',
@@ -243,6 +268,7 @@
.then(mdText => {
this.setState({htmlString: window.marked.parse(mdText)});
});
+ this.showOptions();
}
showOptions = () => {
diff --git a/public/example/ExampleHtmlBoardPage.md b/public/example/ExampleHtmlBoardPage.md
index 724638c..a5dd91a 100644
--- a/public/example/ExampleHtmlBoardPage.md
+++ b/public/example/ExampleHtmlBoardPage.md
@@ -4,7 +4,7 @@
```jsx
import React, {Component} from 'react'
import './ExampleHtmlBoardPage.css'
-import {Bp, GIS} from "../iclient3d-plot-diy";
+import {Bp, GIS} from "iclient3d-plot-diy";
import {Button} from "antd";
import $ from "jquery";
diff --git a/public/example/ExampleSelectPage.md b/public/example/ExampleSelectPage.md
index a7666d1..4443a4c 100644
--- a/public/example/ExampleSelectPage.md
+++ b/public/example/ExampleSelectPage.md
@@ -9,7 +9,7 @@
import {Button} from "antd";
-export class ExampleSelectPage extends Component {
+export default class ExampleSelectPage extends Component {
optionObjs = {
diff --git a/public/example/ExampleSimpleEventPage.md b/public/example/ExampleSimpleEventPage.md
index 4156a3d..f946b48 100644
--- a/public/example/ExampleSimpleEventPage.md
+++ b/public/example/ExampleSimpleEventPage.md
@@ -5,6 +5,7 @@
import React, {Component} from 'react'
import './CommonExample.css'
import {GIS} from "iclient3d-plot-diy";
+import {Button} from "antd";
export default class ExampleSimpleEventPage extends Component {
drawOps = [];
@@ -25,15 +26,60 @@
this.setState({htmlString: window.marked.parse(mdText)});
});
//监听拨盘事件
+ this.mapFunction.mapApiService.showDrawDatas([{
+ code: 'asdladjakl',
+ bz: true,
+ bzColor: '#e000ff',
+ bzLineColor: '#ff0000',
+ bzlx: 'simple',
+ jbwb: 'R:00017',
+ type: "2002",
+ returnHeight: true,
+ useModify: false,
+ lon: 102.33054539488224,
+ lat: 31.005468100060593,
+ height: 0,
+ points: [],
+ iconSize: [[20, 20], [30, 30], [40, 40]]
+ }, {
+ type: 'yhqy',
+ code: 'xxcxvawda',
+ points: [{lon: 102.642853926199, lat: 31.012509646376447, height: 0},
+ {lon: 102.65927322610115, lat: 31.01540811637356, height: 0},
+ {lon: 102.66192135373299, lat: 31.005988487769518, height: 0},
+ {lon: 102.64755620178961, lat: 31.00246196283815, height: 0},
+ {lon: 102.642853926199, lat: 31.012509646376447, height: 0}],
+ useModify: false,
+
+ }])
}
showData() {
- this.mapFunction.mapApiService.mapClickEvent.addEventListener((id, primitive, isPoint) => {
- alert(id);
+ // 左击 如果需要dom时的监听
+ this.mapFunction.addEventListener((id, overlay, primitive, data) => {
+ alert('gis组件的左击事件:' + id);
}, this);
+
+ // 左击如果需要底层对象的监听
+ this.mapFunction.mapClickEvent.addEventListener((id, primitive, isPoint) => {
+ console.log(id, primitive, isPoint);
+ alert('左击事件:' + id);
+ }, this);
+
+ // 右键监听
this.mapFunction.mapApiService.mapRightClickEvent.addEventListener((id, primitive, isPoint) => {
- alert(id);
+ console.log(id, primitive, isPoint);
+ alert('右击事件' + id);
}, this);
+ }
+
+ drawPolygon() {
+ //监听拨盘事件
+ this.mapFunction.mapApiService.draw({
+ code: 'xxcx_new_',
+ type: 'yhqy',
+ useModify: true,
+ });
}
render() {
@@ -49,6 +95,7 @@
showDefaultLayer={true}
/>
</div>
+ <Button type="primary" onClick={this.drawPolygon.bind(this)}>新画一个面</Button>
<div className={"code_wrapper"}>
<div dangerouslySetInnerHTML={{__html: this.state.htmlString}}></div>
</div>
diff --git a/public/example/ExampleXzxxPage.md b/public/example/ExampleXzxxPage.md
index c2e2b87..af20317 100644
--- a/public/example/ExampleXzxxPage.md
+++ b/public/example/ExampleXzxxPage.md
@@ -62,11 +62,28 @@
}]
},
+ "单色线": {
+ type: "line",
+ bklx: 'solid',
+ bkkd: 4,
+ color: '#64c324',
+ useModify: false,
+ points: [{
+ lon: 103.73554539488224,
+ lat: 31.005068100060593,
+ height: 0,
+ }, {
+ lon: 104.73554539488224,
+ lat: 32.005068100060593,
+ height: 0,
+ }]
+ },
"双色线": {
type: "line",
bklx: 'double',
- color: '#64c324',
- color2: '#6932cc',
+ bkkd: 4,
+ color: '#ff0000',
+ color2: '#0000ff',
useModify: false,
points: [{
lon: 103.73554539488224,
@@ -80,7 +97,7 @@
},
"通信抗测向线2": {
type: "txdkcxx2",
- kcjd: 30,
+ kcjd: 120,
kcgls: 10,
kcwb: '123123',
color: '#0059FFA3',
@@ -117,6 +134,17 @@
lat: 32.005068100060593,
height: 0,
}]
+ },
+ "干扰波束": {
+ type: "grbs",
+ color: '#D5013A',
+ useModify: false,
+ lon: 102.23554539488224,
+ lat: 31.005068100060593,
+ height: 0,
+ qsjd: 30,
+ zzjd: 130,
+ bj: 100
}
}
line_star
@@ -135,6 +163,7 @@
.then(mdText => {
this.setState({htmlString: window.marked.parse(mdText)});
});
+ this.showOptions();
}
showOptions = () => {
@@ -144,6 +173,14 @@
options.push(this.optionObjs[key]);
}
this.mapFunction.mapApiService.showDrawDatas(options);
+
+ // this.mapFunction.mapApiService.draw(options[0]);
+ // setTimeout(() => {
+ // let p = this.mapFunction.mapApiService.getDraw(options[0].code);
+ // p.drawEnd.subscribe(value => {
+ // alert(p.export());
+ // })
+ // })
}
};
@@ -197,6 +234,7 @@
plotUrl={this.state.plotUrl}
mapRef={this}
showDefaultLayer={false}
+ global={[102.5, 30.5, 103.5, 31.5]}
/>
</div>
<Button type="primary" onClick={this.showOptions.bind(this)}>显示已有标绘数据</Button>
diff --git a/public/example/profile/ProfilePage.md b/public/example/profile/ProfilePage.md
index 9ddd726..d57491c 100644
--- a/public/example/profile/ProfilePage.md
+++ b/public/example/profile/ProfilePage.md
@@ -6,6 +6,7 @@
import * as echarts from 'echarts';
import {Button} from "antd";
import {CloseOutlined} from "@ant-design/icons";
+import {getLocalText} from "iclient3d-plot-diy";
export default class ProfilePage extends PureComponent {
chartRef = React.createRef();
@@ -125,7 +126,7 @@
<div className="sightLine-char-container">
<div className="title-container">
<div className="title-name">
- <span>剖面分析</span>
+ <span>{getLocalText('profile')}</span>
</div>
<div className="icon-container">
<Button type="primary" onClick={this.closeEvent.bind(this)}><CloseOutlined/></Button>
diff --git "a/public/\345\206\233\344\272\213\346\240\207\347\273\230\346\226\207\346\241\243.md" "b/public/\345\206\233\344\272\213\346\240\207\347\273\230\346\226\207\346\241\243.md"
index 20dd3bf..83e0f00 100644
--- "a/public/\345\206\233\344\272\213\346\240\207\347\273\230\346\226\207\346\241\243.md"
+++ "b/public/\345\206\233\344\272\213\346\240\207\347\273\230\346\226\207\346\241\243.md"
@@ -38,6 +38,7 @@
| 拖动框要素css选择器 | infoWindowSelector | 通过样式选择,不要使用id,默认为 .info-window |
| 拖动框拖动部分要素css选择器 | infoWindowTitleSelector | 通过样式选择,不要使用id,默认为 .info-window-heading |
| 拖动框按钮要素css选择器 | infoWindowBtnPinSelector | 通过样式选择,不要使用id,默认为 .btn-pin |
+| 允许点击 | allowPicking | |
<br />
@@ -54,6 +55,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -70,6 +72,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -86,6 +89,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -102,6 +106,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -118,6 +123,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -134,6 +140,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -150,6 +157,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -166,6 +174,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -182,6 +191,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -195,6 +205,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -211,6 +222,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -227,6 +239,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -243,6 +256,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -259,6 +273,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -281,6 +296,7 @@
| 唯一标识 | code | 唯一标识,如果不传会动态生成一个唯一标识 |
| 军标代码类型 | type | yhqy |
| 坐标点 | points | 格式:{lon: 111, lat:22, height: 10000}[] |
+| 允许点击 | allowPicking | |
<br />
@@ -291,6 +307,7 @@
| ------------ | ------ | ------------------------------------------ |
| 军标代码类型 | type | xtgx |
| 坐标点 | points | 格式:{lon: 111, lat:22, height: 10000}[] |
+| 允许点击 | allowPicking | |
<br />
@@ -302,6 +319,7 @@
| 唯一标识 | code | 唯一标识,如果不传会动态生成一个唯一标识 |
| 军标代码类型 | type | grx |
| 坐标点 | points | 格式:{lon: 111, lat:22, height: 10000}[] |
+| 允许点击 | allowPicking | |
<br />
@@ -313,6 +331,7 @@
| 唯一标识 | code | 唯一标识,如果不传会动态生成一个唯一标识 |
| 军标代码类型 | type | yjx |
| 坐标点 | points | 格式:{lon: 111, lat:22, height: 10000}[] |
+| 允许点击 | allowPicking | |
<br />
@@ -324,6 +343,7 @@
| 唯一标识 | code | 唯一标识,如果不传会动态生成一个唯一标识 |
| 军标代码类型 | type | mbfpx |
| 坐标点 | points | 格式:{lon: 111, lat:22, height: 10000}[] |
+| 允许点击 | allowPicking | |
<br />
@@ -340,6 +360,7 @@
| 线颜色 | color | 边框类型 = solid 或者 dashed 时有效,格式:#ff0000 |
| 线透明度 | alpha | 边框类型 = solid 或者 dashed 时有效,格式: 0 ~ 1 |
| 线图片 | bktp | 边框类型 = custom是有效,图片相对地址, 大小:100px * 36px |
+| 允许点击 | allowPicking | |
<br />
@@ -359,6 +380,7 @@
| 填充类型 | tclx | 左斜线(紫色)(SlashLeft)、右斜线(红色)(SlashRight)、纯色(color)、点矩阵(pointMatrix)、烟幕(Smokescreen) 、自定义(custom) |
| 填充颜色 | fillColor | 填充类型 = color 时,格式:#ff0000 |
| 填充透明度 | fillAlpha | 填充类型 = color 时,格式:0 ~ 1 |
+| 允许点击 | allowPicking | |
<br />
@@ -383,6 +405,7 @@
| 填充类型 | tclx | 左斜线(紫色)(SlashLeft)、右斜线(红色)(SlashRight)、纯色(color)、点矩阵(pointMatrix)、烟幕(Smokescreen) 、自定义(custom) |
| 填充颜色 | fillColor | 填充类型 = color 时,格式:#ff0000 |
| 填充透明度 | fillAlpha | 填充类型 = color 时,格式:0 ~ 1 |
+| 允许点击 | allowPicking | |
<br />
@@ -397,6 +420,7 @@
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
| 半径数组 | bjs | 格式:[1,2,3....],单位:km |
+| 允许点击 | allowPicking | |
<br />
@@ -409,7 +433,7 @@
| 军标代码类型 | type | 固定 grgxx |
| 颜色 | color | #000000格式 |
| 坐标点 | points | 格式:{lon: 111, lat:22, height: 10000}[] |
-| <br /> | | |
+| 允许点击 | allowPicking | |
### 25. 双色线
@@ -421,7 +445,7 @@
| 颜色 | color | #000000格式 |
| 颜色2 | color2 | #FFFFFF格式 |
| 坐标点 | points | 格式:{lon: 111, lat:22, height: 10000}[] |
-| <br /> | | |
+| 允许点击 | allowPicking | |
### 26. 通信抗测向线2
@@ -437,6 +461,7 @@
| 经度 | lat | 经度 |
| 纬度 | lon | 纬度 |
| 高度 | height | 高度 |
+| 允许点击 | allowPicking | |
<br />
@@ -449,6 +474,7 @@
| 军标代码类型 | type | 固定 tzrwfjx |
| 颜色 | color | #000000格式 |
| 坐标点 | points | 格式:{lon: 111, lat:22, height: 10000}[] |
+| 允许点击 | allowPicking | |
### 28. 连指任务分界线
@@ -459,5 +485,6 @@
| 军标代码类型 | type | 固定 lzrwfjx |
| 颜色 | color | #000000格式 |
| 坐标点 | points | 格式:{lon: 111, lat:22, height: 10000}[] |
+| 允许点击 | allowPicking | |
<br />
diff --git a/src/example/ExampleAggregatorPage.js b/src/example/ExampleAggregatorPage.js
index 9b64b7b..799958b 100644
--- a/src/example/ExampleAggregatorPage.js
+++ b/src/example/ExampleAggregatorPage.js
@@ -82,7 +82,7 @@
render() {
return (
<div className={"example_draw_container"}>
- <h3>自动聚合</h3>
+ <h3>自动聚合5000点</h3>
<div className={"map_wrapper"}>
<GIS refs={e => {
this.mapFunction = e
diff --git a/src/example/ExampleBpPage.js b/src/example/ExampleBpPage.js
index 2287c9a..0094486 100644
--- a/src/example/ExampleBpPage.js
+++ b/src/example/ExampleBpPage.js
@@ -49,7 +49,6 @@
.then(mdText => {
this.setState({htmlString: window.marked.parse(mdText)});
});
- this.showData();
//监听拨盘事件
this.mapFunction.addBpListener(function (id, dom) {
if (id && dom) {
@@ -64,7 +63,7 @@
{name: '图标1', img: './project3d/icon/bpImgs/icon-1.png'},
{name: '图标2', img: './project3d/icon/bpImgs/icon-2.png'},
{name: '图标3', img: './project3d/icon/bpImgs/icon-3.png'},
- {name: '关闭', img: './project3d/icon/bpImgs/icon-4.png'},
+ {name: '图标4', img: './project3d/icon/bpImgs/icon-4.png'},
]
};
this.setState({
@@ -75,9 +74,6 @@
this.setState({
clickBpIndex: index
});
- if (index === 3) {
- this.closeBp();
- }
});
}
}, this);
diff --git a/src/example/ExampleDefaultMap2dPage.js b/src/example/ExampleDefaultMap2dPage.js
index 096a739..80da31f 100644
--- a/src/example/ExampleDefaultMap2dPage.js
+++ b/src/example/ExampleDefaultMap2dPage.js
@@ -18,6 +18,18 @@
.then(mdText => {
this.setState({htmlString: window.marked.parse(mdText)});
});
+ let op = {
+ code: "lddkzcqy",
+ type: "lddkzcqy",
+ lon: 2,
+ lat: 27,
+ height: 0,
+ bj: 400,
+ qsjd: 0,
+ zzjd: 360,
+ useModify: false
+ }
+ this.mapFunction.mapApiService.appendBh('bh', [op]);
}
render() {
diff --git a/src/example/ExampleDrawPage.js b/src/example/ExampleDrawPage.js
index 84064b1..50d25b0 100644
--- a/src/example/ExampleDrawPage.js
+++ b/src/example/ExampleDrawPage.js
@@ -10,6 +10,7 @@
optionObjs = {
"目标简标": {
+ allowPicking: false,
code: '123123',
bz: true,
bzlx: 'simple',
@@ -22,6 +23,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"目标详标": {
+ allowPicking: false,
bz: true,
bzlx: 'detail',
jbwb: 'R:00017',
@@ -33,6 +35,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"飞行简标": {
+ allowPicking: false,
bz: true,
bzlx: 'simple',
jbwb: "P:00019",
@@ -47,6 +50,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"飞行详标": {
+ allowPicking: false,
bz: true,
bzlx: 'detail',
jbwb: 'P:00019',
@@ -62,6 +66,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"雷达对抗侦察区域": {
+ allowPicking: false,
type: "lddkzcqy",
bj: 1,
qsjd: 30,
@@ -71,6 +76,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"雷达对抗干扰波束": {
+ allowPicking: false,
type: 'lddkgrps',
bj: 1,
qsjd: 30,
@@ -80,6 +86,7 @@
iconSize: [[20, 20], [30, 30], [40, 40]]
},
"雷达对抗测向线": {
+ allowPicking: false,
type: "lddkcxx",
kcwb: "10110",
kcgls: 1,
@@ -89,6 +96,7 @@
points: []
},
"雷达对抗关系": {
+ allowPicking: false,
type: "lddkgx",
kcwb: "10110",
kcgls: 1,
@@ -100,6 +108,7 @@
points: []
},
"雷达对目标探测": {
+ allowPicking: false,
type: "lddmbtc",
bj: 0.5,
qsjd: 0,
@@ -108,6 +117,7 @@
useModify: false,
},
"通信对抗侦察区域": {
+ allowPicking: false,
type: "txdkzcqy",
bj: 0.5,
qsjd: 0,
@@ -116,6 +126,7 @@
useModify: false,
},
"通信对抗干扰波束": {
+ allowPicking: false,
type: "txdkgrps",
bj: 1,
qsjd: 30,
@@ -124,6 +135,7 @@
useModify: false,
},
"通信对抗测向线": {
+ allowPicking: false,
type: "txdkcxx",
kcgls: 1,
kcjd: 30,
@@ -133,6 +145,7 @@
points: []
},
"通信畅通区域": {
+ allowPicking: false,
type: 'txctqy',
bj: 0.5,
qsjd: 0,
@@ -142,12 +155,14 @@
},
"通信网标绘": {
type: "txw",
+ allowPicking: false,
useModify: false,
lon: 102.70854539488224, lat: 31.0098468100060593, height: 0,
points: []
},
"光电对抗侦察区域": {
type: 'gddkzcqy',
+ allowPicking: false,
bj: 0.5,
qsjd: 0,
zzjd: 360,
@@ -155,6 +170,7 @@
useModify: false,
},
"光电有源对抗干扰波束": {
+ allowPicking: false,
type: 'gdyydkgrbs',
kcgls: 1,
kcjd: 30,
@@ -162,6 +178,7 @@
useModify: false,
},
"漫反射干扰区域": {
+ allowPicking: false,
type: 'mfsgrqy',
bj: 1,
qsjd: 30,
@@ -170,6 +187,7 @@
useModify: false,
},
'烟幕形成区域': {
+ allowPicking: false,
type: 'ymxcqy',
points: [{lon: 102.64984, lat: 30.99237, height: 0},
{lon: 102.66012682459443, lat: 30.995109020954718, height: 0},
@@ -179,6 +197,7 @@
useModify: false,
},
"掩护区域": {
+ allowPicking: false,
type: 'yhqy',
points: [{lon: 102.642853926199, lat: 31.012509646376447, height: 0},
{lon: 102.65927322610115, lat: 31.01540811637356, height: 0},
@@ -188,30 +207,35 @@
useModify: false,
},
"协同关系": {
+ allowPicking: false,
type: 'xtgx',
points: [{lon: 102.642853926199, lat: 31.012509646376447, height: 0},
{lon: 102.66192135373299, lat: 31.005988487769518, height: 0}],
useModify: false,
},
"干扰线": {
+ allowPicking: false,
type: 'grx',
points: [{lon: 102.732420985008, lat: 30.97556325857848, height: 0},
{lon: 102.73983041603873, lat: 30.97504986175468, height: 0}],
useModify: false
},
"预警线": {
+ allowPicking: false,
type: 'yjx',
useModify: false,
points: [{lon: 102.732420985008, lat: 30.97956325857848, height: 0},
{lon: 102.73983041603873, lat: 30.98004986175468, height: 0}]
},
"目标分配线": {
+ allowPicking: false,
type: 'mbfpx',
useModify: false,
points: [{lon: 102.732420985008, lat: 30.97756325857848, height: 0},
{lon: 102.73983041603873, lat: 30.97804986175468, height: 0}]
},
"目标醒目": {
+ allowPicking: false,
bz: true,
xz: true,
bzlx: 'simple',
diff --git a/src/example/ExampleSimpleEventPage.js b/src/example/ExampleSimpleEventPage.js
index d3cfc3d..20b86fb 100644
--- a/src/example/ExampleSimpleEventPage.js
+++ b/src/example/ExampleSimpleEventPage.js
@@ -1,6 +1,7 @@
import React, {Component} from 'react'
import './CommonExample.css'
import {GIS} from "iclient3d-plot-diy";
+import {Button} from "antd";
export default class ExampleSimpleEventPage extends Component {
drawOps = [];
@@ -21,15 +22,60 @@
this.setState({htmlString: window.marked.parse(mdText)});
});
//监听拨盘事件
+ this.mapFunction.mapApiService.showDrawDatas([{
+ code: 'asdladjakl',
+ bz: true,
+ bzColor: '#e000ff',
+ bzLineColor: '#ff0000',
+ bzlx: 'simple',
+ jbwb: 'R:00017',
+ type: "2002",
+ returnHeight: true,
+ useModify: false,
+ lon: 102.33054539488224,
+ lat: 31.005468100060593,
+ height: 0,
+ points: [],
+ iconSize: [[20, 20], [30, 30], [40, 40]]
+ }, {
+ type: 'yhqy',
+ code: 'xxcxvawda',
+ points: [{lon: 102.642853926199, lat: 31.012509646376447, height: 0},
+ {lon: 102.65927322610115, lat: 31.01540811637356, height: 0},
+ {lon: 102.66192135373299, lat: 31.005988487769518, height: 0},
+ {lon: 102.64755620178961, lat: 31.00246196283815, height: 0},
+ {lon: 102.642853926199, lat: 31.012509646376447, height: 0}],
+ useModify: false,
+
+ }])
}
showData() {
- this.mapFunction.mapApiService.mapClickEvent.addEventListener((id, primitive, isPoint) => {
- alert(id);
+ // 左击 如果需要dom时的监听
+ this.mapFunction.addEventListener((id, overlay, primitive, data) => {
+ alert('gis组件的左击事件:' + id);
}, this);
+
+ // 左击如果需要底层对象的监听
+ this.mapFunction.mapClickEvent.addEventListener((id, primitive, isPoint) => {
+ console.log(id, primitive, isPoint);
+ alert('左击事件:' + id);
+ }, this);
+
+ // 右键监听
this.mapFunction.mapApiService.mapRightClickEvent.addEventListener((id, primitive, isPoint) => {
- alert(id);
+ console.log(id, primitive, isPoint);
+ alert('右击事件' + id);
}, this);
+ }
+
+ drawPolygon() {
+ //监听拨盘事件
+ this.mapFunction.mapApiService.draw({
+ code: 'xxcx_new_',
+ type: 'yhqy',
+ useModify: true,
+ });
}
render() {
@@ -45,6 +91,7 @@
showDefaultLayer={true}
/>
</div>
+ <Button type="primary" onClick={this.drawPolygon.bind(this)}>新画一个面</Button>
<div className={"code_wrapper"}>
<div dangerouslySetInnerHTML={{__html: this.state.htmlString}}></div>
</div>
diff --git a/src/example/ExampleXzxxPage.js b/src/example/ExampleXzxxPage.js
index fea9c7d..ae9efd5 100644
--- a/src/example/ExampleXzxxPage.js
+++ b/src/example/ExampleXzxxPage.js
@@ -58,12 +58,28 @@
}]
},
+ "单色线": {
+ type: "line",
+ bklx: 'solid',
+ bkkd: 4,
+ color: '#64c324',
+ useModify: false,
+ points: [{
+ lon: 103.73554539488224,
+ lat: 31.005068100060593,
+ height: 0,
+ }, {
+ lon: 104.73554539488224,
+ lat: 32.005068100060593,
+ height: 0,
+ }]
+ },
"双色线": {
type: "line",
bklx: 'double',
- bkkd: 10,
- color: '#64c324',
- color2: '#6932cc',
+ bkkd: 4,
+ color: '#ff0000',
+ color2: '#0000ff',
useModify: false,
points: [{
lon: 103.73554539488224,
diff --git a/src/example/profile/ProfilePage.js b/src/example/profile/ProfilePage.js
index 84f22ad..538343a 100644
--- a/src/example/profile/ProfilePage.js
+++ b/src/example/profile/ProfilePage.js
@@ -2,6 +2,7 @@
import * as echarts from 'echarts';
import {Button} from "antd";
import {CloseOutlined} from "@ant-design/icons";
+import {getLocalText} from "iclient3d-plot-diy";
export default class ProfilePage extends PureComponent {
chartRef = React.createRef();
@@ -121,7 +122,7 @@
<div className="sightLine-char-container">
<div className="title-container">
<div className="title-name">
- <span>剖面分析</span>
+ <span>{getLocalText('profile')}</span>
</div>
<div className="icon-container">
<Button type="primary" onClick={this.closeEvent.bind(this)}><CloseOutlined/></Button>
--
Gitblit v1.9.3