初遇Citymaker (七)
调用
-
let p1 = cw5.geometryCreator.createPoint(150139, 37917, 64);
-
let p2 = cw5.geometryCreator.createPoint(150180, 37854, 64);
-
let poi1 = cw5.geometryCreator.createPOI(150258, 37887, 64);
-
let line = cw5.geometryCreator.createPolyline([[150139, 37917, 64],
-
[150180, 37854, 64],
-
[150258, 37887, 64]]);
-
let polygon = cw5.geometryCreator.createPolygon([[150139, 37917, 64],
-
[150180, 37854, 64], [150258, 37887, 64],
-
[150139, 37917, 64]]);
-
-
-
let symbolL = cw5.symbolCreator.createPolylineSymbol("#c1ff3c", 1);
-
let symbolP = cw5.symbolCreator.createPointSymbol_Simple(null, 20);
-
let symbolPI = cw5.symbolCreator.createPointSymbol_Image("E:\\3d_pack_3\\example\\static\\images\\p.png", 30);
-
let symbolPOI = cw5.symbolCreator.createPOISymbol("E:\\3d_pack_3\\example\\static\\images\\p.png", 40, "mytest");
-
let symbolPolygon = cw5.symbolCreator.createPolygonSymbol();
-
let symbolPolygon3D = cw5.symbolCreator.createPolygonSymbol_3D();
-
-
switch (index) {
-
case 1:
-
cw5.renderLayerCtrl.createLayer("p", p1, symbolP);
-
cw5.renderLayerCtrl.createLayer("p2", p2, symbolPI);
-
cw5.renderLayerCtrl.createLayer("poi1", poi1, symbolPOI);
-
break;
-
case 2:
-
cw5.renderLayerCtrl.createLayer("line", line, symbolL);
-
break;
-
case 3:
-
cw5.renderLayerCtrl.createLayer("polygon", polygon, symbolPolygon);
-
break;
-
case 4:
-
cw5.renderLayerCtrl.createLayer("polygon2", polygon, symbolPolygon3D);
-
break;
-
case 5:
-
cw5.renderLayerCtrl.hideLayer("polygon2", polygon, symbolPolygon3D);
-
break;
-
case 6:
-
cw5.renderLayerCtrl.showLayer("polygon2", polygon, symbolPolygon3D);
-
break;
-
case 7:
-
cw5.renderLayerCtrl.hideAllLayers();
-
break;
-
case 8:
-
cw5.renderLayerCtrl.showAllLayers();
-
break;
-
case 9:
-
cw5.renderLayerCtrl.closeLayer("line");
-
break;
-
case 10:
-
cw5.renderLayerCtrl.closeAllLayers();
-
break;
-
case 11:
-
let res=cw5.renderLayerCtrl.getAllLayers();
-
console.log(res)
-
break;
- 渲染类
-
import { cw5 } from "../index.js";
-
-
-
export const renderInnerUtils={}
-
-
const funType={}
-
-
/**
-
* 创建渲染要素类 内部类,逻辑上实现feature层
-
* @param geometry 要素类
-
* @param symbol 符号类
-
*/
-
renderInnerUtils.createRenderGeometry=function (geometry,symbol) {
-
if(funType[geometry.type]==null){
-
console.log("暂不支持此类型的geometry渲染")
-
return
-
}
-
let innerSymbol;
-
if(symbol!=null){
-
innerSymbol=symbol.symbol
-
}
-
else{
-
innerSymbol=null;
-
}
-
-
let rg= funType[geometry.type](geometry.object,innerSymbol)
-
return rg
-
}
-
-
-
-
funType.point=function(object,symbol) {
-
let rg= cw5.__g.objectManager.createRenderPoint(object,symbol,cw5.rootId)
-
return rg
-
}
-
-
funType.polyline=function(object,symbol) {
-
let rg= cw5.__g.objectManager.createRenderPolyline(object,symbol,cw5.rootId);
-
return rg
-
}
-
-
funType.POI=function(object,symbol) {
-
object.imageName =symbol.imageName;
-
object.size=symbol.size
-
object.name=symbol.name
-
object.showName=symbol.showName
-
object.maxVisibleDistance=symbol.maxVisibleDistance
-
object.minVisibleDistance=symbol.minVisibleDistance
-
let rg= cw5.__g.objectManager.createRenderPOI(object);//创建POI渲染对象
-
return rg
-
}
-
-
funType.polygon=function(object,symbol) {
-
-
let rg =cw5.__g.objectManager.createRenderPolygon(object, symbol,cw5.rootId)
-
-
return rg
-
}
-
-
funType.multiPolygon=function(object,symbol) {
-
let rg =cw5.__g.objectManager.createRenderMultiPolygon(object, symbol,cw5.rootId)
-
-
return rg
-
}
-
-
funType.modelPoint=function(object,symbol) {
-
let rg= cw5.__g.objectManager.createRenderModelPoint(object,symbol,cw5.rootId);
-
return rg
-
}
- 图层类
```JavaScript
import { renderInnerUtils } from "./renderInnerUtils";
import { cw5 } from "../index.js";
更多参考 https://xiaozhuanlan.com/topic/8521097643
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律