Skip to content
导览

Class: GeometryManager

基本体3D元素管理类

Details

开启绘制基本体元素

Examples

js
const geometryManager = await cloud.getGeometryManager()   // 在CreateApp时调用
const geometryManager = await cloud.getGeometryManager()   // 在CreateApp时调用

Hierarchy

Properties

pSceneManager

pSceneManager: SceneManager

Methods

setFinishedCallback

setFinishedCallback(fn): void

Details

设置绘制完成的回调函数

Examples

js
async function CallBack( GeometryObject | null) {
console.warn(GeometryObject)
}
geometryManager = await cloud.getGeometryManager();
await geometryManager.setFinishedCallback(CallBack);
async function CallBack( GeometryObject | null) {
console.warn(GeometryObject)
}
geometryManager = await cloud.getGeometryManager();
await geometryManager.setFinishedCallback(CallBack);

Parameters

NameTypeDescription
fn(object: null | GeometryObject) => void函数对象,参数为Node|null,返回值为void

Returns

void


setCancelCallback

setCancelCallback(fn): void

Details

设置绘制完成的回调函数

Examples

js
async function CallBack( GeometryObject | null) {
console.warn(GeometryObject)
}
geometryManager = await cloud.getGeometryManager();
await geometryManager.setCancelCallback(CallBack);
async function CallBack( GeometryObject | null) {
console.warn(GeometryObject)
}
geometryManager = await cloud.getGeometryManager();
await geometryManager.setCancelCallback(CallBack);

Parameters

NameTypeDescription
fn(object: null | GeometryObject) => void函数对象,参数为Node|null,返回值为void

Returns

void


setDoubleClickCallback

setDoubleClickCallback(fn): void

Details

设置双击回调函数

Examples

js
async function CallBack( GeometryObject | null) {
console.warn(GeometryObject)
}
geometryManager = await cloud.getGeometryManager();
await geometryManager.setDoubleClickCallback(CallBack);
async function CallBack( GeometryObject | null) {
console.warn(GeometryObject)
}
geometryManager = await cloud.getGeometryManager();
await geometryManager.setDoubleClickCallback(CallBack);

Parameters

NameTypeDescription
fn(object: null | GeometryObject) => void函数对象,参数为Node|null,返回值为void

Returns

void


getAllLayer

getAllLayer(): Promise<GeometryLayer[]>

Details

获取所有图层对象

Examples

js
const geometryManager = await cloud.getGeometryManager()
await geometryManager.getAllLayer();
const geometryManager = await cloud.getGeometryManager()
await geometryManager.getAllLayer();

Returns

Promise<GeometryLayer[]>

GeometryLayer数组


removeLayer

removeLayer(laylers): Promise<boolean>

Details

批量移除图层

Examples

js
const geometryManager = await cloud.getGeometryManager()
var layers =  await geometryManager.getAllLayer();
await geometryManager.removeLayer(layers);
const geometryManager = await cloud.getGeometryManager()
var layers =  await geometryManager.getAllLayer();
await geometryManager.removeLayer(layers);

Parameters

NameType
laylersGeometryLayer[]

Returns

Promise<boolean>


drawBodyGeometry

drawBodyGeometry(layerName, type, style, parent, bGCSNode): Promise<any>

Details

开启基本体绘制事件

Examples

js
geometryManager= await cloud.getGeometryManager()
var param={
    m_color:"0xffffffff"
     }
geometryManager.drawBodyGeometry("wfw",'Cylinder',param);
geometryManager= await cloud.getGeometryManager()
var param={
    m_color:"0xffffffff"
     }
geometryManager.drawBodyGeometry("wfw",'Cylinder',param);

Parameters

NameTypeDescription
layerNamestring图层名称
typeBodyGeometry基本体类型 ('cylinder','Cone','Box','Sphere','Prisme','Hemisphere','FanshapedColumn','AnnularSectorColumn',' AnnulusColumn')
styleGeometryBodyStyle基本体样式
parentNode绘制的基本体挂载的父节点(选填,填了的话不能为空)
bGCSNodeboolean父节点是否是GCSNode(选填,parent参数不填,这个参数也没必要填)

Returns

Promise<any>


drawSurfaceGeometry

drawSurfaceGeometry(layerName, type, style, parent, bGCSNode): Promise<any>

Details

开启面绘制事件

Examples

js
geometryManager= await cloud.getGeometryManager()
var param={
    m_color:"0xffffffff"
     }
geometryManager.drawSurfaceGeometry("wfw",'Disk',param);
geometryManager= await cloud.getGeometryManager()
var param={
    m_color:"0xffffffff"
     }
geometryManager.drawSurfaceGeometry("wfw",'Disk',param);

Parameters

NameTypeDescription
layerNamestring图层名称
typeSurfaceGeometry基本体类型 ('Rectangle' 'Torus' 'Disk' 'Polygon')
styleGeometrySurfaceStyle基本体样式
parentNode绘制的基本体挂载的父节点(选填,填了的话不能为空)
bGCSNodeboolean父节点是否是GCSNode(选填,parent参数不填,这个参数也没必要填)

Returns

Promise<any>


drawLineGeometry

drawLineGeometry(layerName, type, style, parent, bGCSNode): Promise<any>

Details

开启线绘制事件

Examples

js
const geometryManager= await cloud.getGeometryManager()
var param={
    m_color:"0xffffffff"
    m_LineWidth: 0.1
     }
geometryManager.drawLineGeometry("wfw",'Polyline',param);
const geometryManager= await cloud.getGeometryManager()
var param={
    m_color:"0xffffffff"
    m_LineWidth: 0.1
     }
geometryManager.drawLineGeometry("wfw",'Polyline',param);

Parameters

NameTypeDescription
layerNamestring图层名称
typePolyline基本体类型
styleGeometryLineStyle基本体样式
parentNode绘制的基本体挂载的父节点(选填,填了的话不能为空)
bGCSNodeboolean父节点是否是GCSNode(选填,parent参数不填,这个参数也没必要填)

Returns

Promise<any>


addCylinder_GCS

addCylinder_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建圆柱体

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
 EndPoint:    //圆柱底面中点
     {
       lon: 135.0,
       lat: 50.0,
       alt: 1.0,
     },
   Radius: 1.0,   //半径
   StartPoint:   //圆柱顶面中点
      {
        lon: 135.0,
        lat: 50.0,
        alt: 2.0,
      },
  };
const geo = await geometryManager.addCylinder_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
 EndPoint:    //圆柱底面中点
     {
       lon: 135.0,
       lat: 50.0,
       alt: 1.0,
     },
   Radius: 1.0,   //半径
   StartPoint:   //圆柱顶面中点
      {
        lon: 135.0,
        lat: 50.0,
        alt: 2.0,
      },
  };
const geo = await geometryManager.addCylinder_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsCylinderParams_GCS创建基本体的参数 CylinderParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

GeometryObject


addSphere_GCS

addSphere_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建球体

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
    Center: //球心(经纬高)
      {
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
      },
  Radius: 1.0,  //球半径
};
const geo = await geometryManager.addSphere_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
    Center: //球心(经纬高)
      {
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
      },
  Radius: 1.0,  //球半径
};
const geo = await geometryManager.addSphere_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质
paramsSphereParams_GCS创建基本体的参数
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>


addCylinderShell_GCS

addCylinderShell_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建圆环体

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
   EndPoint: {  //圆环体顶点圆心点
        lon: 135.0,
        lat: 50.0,
        alt: 2.0,
      },
     InnerRadius: 10, //内半径
     OutterRadius: 15, //外半径
     StartPoint: {  //圆环体底面圆心点
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
     },
};
const geo = await geometryManager.addCylinderShell_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
   EndPoint: {  //圆环体顶点圆心点
        lon: 135.0,
        lat: 50.0,
        alt: 2.0,
      },
     InnerRadius: 10, //内半径
     OutterRadius: 15, //外半径
     StartPoint: {  //圆环体底面圆心点
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
     },
};
const geo = await geometryManager.addCylinderShell_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsCylinderShellParams_GCS创建基本体的参数 CylinderShellParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addBox_GCS

addBox_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建长方体

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
        AxisX: [1,0,0] , //长
        AxisY: [0,1,0] , //宽
        AxisZ: [0,0,1] , //高
        Origin: {  //长方体中心点
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
        },
};
const parent = Node;
const geo = await geometryManager.addBox_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
        AxisX: [1,0,0] , //长
        AxisY: [0,1,0] , //宽
        AxisZ: [0,0,1] , //高
        Origin: {  //长方体中心点
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
        },
};
const parent = Node;
const geo = await geometryManager.addBox_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsBoxParams_GCS创建基本体的参数
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addRightCone_GCS

addRightCone_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建圆锥

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  }
var params =  {
      //圆锥底面圆心
  BottomCenter:  {
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
      },
       //圆锥底面半径
  BottomRadius: 2.0 ,
       //圆锥顶面圆心
  TopCenter:  {
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
      },
};
const geo = await geometryManager.addRightCone_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  }
var params =  {
      //圆锥底面圆心
  BottomCenter:  {
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
      },
       //圆锥底面半径
  BottomRadius: 2.0 ,
       //圆锥顶面圆心
  TopCenter:  {
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
      },
};
const geo = await geometryManager.addRightCone_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsRightConeParams_GCS创建基本体的参数 RightConeParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addStraightPrism_GCS

addStraightPrism_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建直棱柱

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
BottomOutline:[ //棱柱的底部顶点
  {
            lon: 113.2335978559,
            lat: 32.9910124712,
            alt: 41.0050358037,
        },
        {
            lon: 113.233761740,
            lat: 32.9911840305,
            alt: 41.0050358037,
        },
        {
            lon: 113.2337944056,
            lat: 32.9910579976,
            alt: 41.0050358037,
        },
        {
            lon: 113.2337148846,
            lat: 32.9909662028,
            alt: 41.0050358037,
        },
        {
            lon: 113.2335978559,
            lat: 32.9910124712,
            alt: 41.0050358037,
        },
],
UpDir: //棱柱的高度
  [
     0,
     10,
     0,
],
};
const geo = await geometryManager.addStraightPrism_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
BottomOutline:[ //棱柱的底部顶点
  {
            lon: 113.2335978559,
            lat: 32.9910124712,
            alt: 41.0050358037,
        },
        {
            lon: 113.233761740,
            lat: 32.9911840305,
            alt: 41.0050358037,
        },
        {
            lon: 113.2337944056,
            lat: 32.9910579976,
            alt: 41.0050358037,
        },
        {
            lon: 113.2337148846,
            lat: 32.9909662028,
            alt: 41.0050358037,
        },
        {
            lon: 113.2335978559,
            lat: 32.9910124712,
            alt: 41.0050358037,
        },
],
UpDir: //棱柱的高度
  [
     0,
     10,
     0,
],
};
const geo = await geometryManager.addStraightPrism_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsStraightPrismParams_GCS创建基本体的参数 StraightPrismParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addHemisphere_GCS

addHemisphere_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建半球体

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
   Center:  {   //半球底面圆心
      lon: 134.0,
        lat: 50.0,
        alt: 1.0,
      },
   EndPoint:  {  //半球顶面终点
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
      },
   MainRadiusScale: 1, //主半径缩放值
};

const geo = await geometryManager.addHemisphere_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
   Center:  {   //半球底面圆心
      lon: 134.0,
        lat: 50.0,
        alt: 1.0,
      },
   EndPoint:  {  //半球顶面终点
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
      },
   MainRadiusScale: 1, //主半径缩放值
};

const geo = await geometryManager.addHemisphere_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsHemisphereParams_GCS创建基本体的参数 HemisphereParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addFan_GCS

addFan_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建扇体

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
  Height: 2.0,  //扇体高度
    InnerRadius: 1.0,  //扇体内半径
    LocalEular: [0,0,0],  //欧拉角
    LocalPosition:  {
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
    },  //扇体局部坐标位置
    OutterRadius: 2.0, //扇体外半径
    TurnningRadian: 1.5,//扇面的弧度
};

const geo = await geometryManager.addFan_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
  Height: 2.0,  //扇体高度
    InnerRadius: 1.0,  //扇体内半径
    LocalEular: [0,0,0],  //欧拉角
    LocalPosition:  {
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
    },  //扇体局部坐标位置
    OutterRadius: 2.0, //扇体外半径
    TurnningRadian: 1.5,//扇面的弧度
};

const geo = await geometryManager.addFan_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsFanParams_GCS创建基本体的参数 FanParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addRectangle_GCS

addRectangle_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建矩形面

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params =    {
   DirectX: [1,0,0],
   DirectY: [0,0,1],
   Position: {
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
      },
 };
const geo = await geometryManager.addRectangle_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params =    {
   DirectX: [1,0,0],
   DirectY: [0,0,1],
   Position: {
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
      },
 };
const geo = await geometryManager.addRectangle_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsRectangleParams_GCS创建基本体的参数 RectangleParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addTorus_GCS

addTorus_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建圆环面

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
   Center: {
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
      },
   InnerRadius: 1.0 ,
   OutterRadius: 2.0 ,
   Normal:[0,1,0] ,
   SampleArcCount: 16 ,
},

const geo = await geometryManager.addTorus_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
   Center: {
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
      },
   InnerRadius: 1.0 ,
   OutterRadius: 2.0 ,
   Normal:[0,1,0] ,
   SampleArcCount: 16 ,
},

const geo = await geometryManager.addTorus_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsTorusParams_GCS创建基本体的参数 TorusParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addCircle_GCS

addCircle_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建圆面

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
  Center: {
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
      }, //圆面圆心
   Radius: 1.0, //圆面半径
   Normal: [0,1,0],//圆面法向
};

const geo = await geometryManager.addCircle_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
  Center: {
      lon: 134.0,
        lat: 50.0,
        alt: 2.0,
      }, //圆面圆心
   Radius: 1.0, //圆面半径
   Normal: [0,1,0],//圆面法向
};

const geo = await geometryManager.addCircle_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsCircleParams_GCS创建基本体的参数 CircleParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addPolyline_GCS

addPolyline_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建多段线

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
   Vertexes:[
  {
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
    },
    {
        lon: 147.0,
        lat: 51.0,
        alt: 1.0,
    },
    {
        lon: 155.0,
        lat: 45.0,
        alt: 1.0,
    },
    {
        lon: 134.0,
        lat: 50.0,
        alt: 1.0,
    }
],
   LineWidth: 0.1,  //线宽
   TextureRate: 1, //线的纹理率
 };

const geo = await geometryManager.addPolyline_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
   Vertexes:[
  {
        lon: 135.0,
        lat: 50.0,
        alt: 1.0,
    },
    {
        lon: 147.0,
        lat: 51.0,
        alt: 1.0,
    },
    {
        lon: 155.0,
        lat: 45.0,
        alt: 1.0,
    },
    {
        lon: 134.0,
        lat: 50.0,
        alt: 1.0,
    }
],
   LineWidth: 0.1,  //线宽
   TextureRate: 1, //线的纹理率
 };

const geo = await geometryManager.addPolyline_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsPolylineParams_GCS创建基本体的参数 PolylineParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addPolygon_GCS

addPolygon_GCS(layerName, material, params, parent): Promise<GeometryObject>

Details

GCS坐标下全参创建多边形面

Examples

js
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
    bottomOutline: [  //多边形面顶点(点的顺序是顺时针则为正面,逆时针为反面,高度要一致)
     {
            lon: 113.2335978559,
            lat: 32.9910124712,
            alt: 41.0050358037,
        },
        {
            lon: 113.233761740,
            lat: 32.9911840305,
            alt: 41.0050358037,
        },
        {
            lon: 113.2337944056,
            lat: 32.9910579976,
            alt: 41.0050358037,
        },
        {
            lon: 113.2337148846,
            lat: 32.9909662028,
            alt: 41.0050358037,
        },
        {
            lon: 113.2335978559,
            lat: 32.9910124712,
            alt: 41.0050358037,
        },
]};
const geo = await geometryManager.addPolygon_GCS(layerName, material, params);
const geometryManager= await cloud.getGeometryManager();
var layerName = 'wfw';
var material =
  {
    "Diffuse":'0xff00ff00', //颜色(ARGB)
  };
var params = {
    bottomOutline: [  //多边形面顶点(点的顺序是顺时针则为正面,逆时针为反面,高度要一致)
     {
            lon: 113.2335978559,
            lat: 32.9910124712,
            alt: 41.0050358037,
        },
        {
            lon: 113.233761740,
            lat: 32.9911840305,
            alt: 41.0050358037,
        },
        {
            lon: 113.2337944056,
            lat: 32.9910579976,
            alt: 41.0050358037,
        },
        {
            lon: 113.2337148846,
            lat: 32.9909662028,
            alt: 41.0050358037,
        },
        {
            lon: 113.2335978559,
            lat: 32.9910124712,
            alt: 41.0050358037,
        },
]};
const geo = await geometryManager.addPolygon_GCS(layerName, material, params);

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体材质 Material
paramsPolygonParams_GCS创建基本体的参数 PolygonParams_GCS
parentNode创建的基本体挂载的父节点 Node(选填,填了的话不能为空)

Returns

Promise<GeometryObject>

obj 基本体对象


addGeometry

addGeometry(Params, parent): Promise<GeometryObject>

Details

添加基本体

Examples

js
const geometryManager = await cloud.getGeometryManager()
   const param = {
     layerName: 'wfw',  // 图层名
     type: '.primt'  // 创建的属于基本体还是管线(.pipe)
     Material:   // 材质信息,只包括 Diffuse 即可,其他不需要可不写
    {
     "BumpMode" : 0, // 选填
     "MaterialType" : 0,  //选填
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00',//颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理(图片路径)
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
  {
    EndPoint:    //圆柱底面中点
      [
        32.762351989746094,
        0.019871402531862259,
        12.645557403564453,
      ],
    Radius: 1.0,   //半径
    StartPoint:   //圆柱顶面中点
       [
         32.762351989746094,
         1.0198713541030884,
         12.645557403564453,
       ],
  },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'Cylinder:',  // 类型 :圆柱
}
const param = {
    layerName: 'wfw',
    type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       EndPoint: //圆环体底面中点
         [
           32.762351989746094,
           0.019871402531862259,
           12.645557403564453,
         ],
       InnerRadius: 1.0, //内半径
       OutterRadius: 2.0, //外半径
       StartPoint:  //圆环体顶面中点
         [
           32.762351989746094,
           1.0198713541030884,
           12.645557403564453,
         ],
     },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'CylinderShell:', //圆环体
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       AxisX: //长
         [
           1.0,
           0.0,
           0.0,
         ],
       AxisY: //高
         [
           0.0,
           1.0,
           0.0,
         ],
       AxisZ: //宽
         [
           0.0,
           0.0,
           1.0,
         ],
       Origin: //起点
         [
           25.725822448730469,
           0.020117653533816338,
           20.446044921875,
         ],
     },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'Box:', //长方体
   }

 const param = {
     layerName: 'wfw',
      type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       BottomCenter: //圆锥底面中心
         [
           32.846622467041016,
           0.019996654242277145,
           11.432461738586426,
         ],
       BottomRadius: 1, //底面半径
       TopCenter:  //圆锥顶点
         [
           32.846622467041016,
           2.019996654242277145,
           11.432461738586426,
         ],
     },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'RightCone:', //圆锥
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00',//颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       BottomOutline: //棱柱底面顶点
         [
           [
             51.72938346862793,
             0.019996890798211098,
             12.864355087280273,
           ],
           [
             53.311290740966797,
             0.019996890798211098,
             13.134355545043945,
           ],
           [
             52.469329833984375,
             0.019996890798211098,
             16.024374008178711,
           ],
           [
             51.404380798339844,
             0.019996890798211098,
             19.26191234588623,
           ],
         ],
       UpDir: //高
         [
           0.0000000000000001,
           2.019996654242277145,
           0.00000000000000001,
         ],
     },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'StraightPrism:',//棱柱
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Center: //球心
         [
           29.697965621948242,
           0.018986180424690247,
           17.002664566040039,
         ],
       Radius: 1.0, //球半径
     },
     Type: 'Sphere:', //球体
   }

 const param = {
     layerName: 'wfw',
      type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Center: //半球底面中心
         [
           41.262523651123047,
           0.019996508955955505,
           13.421402931213379,
         ],
       EndPoint: //半球顶点
         [
           41.262523651123047,
           1.0199965238571167,
           13.421402931213379,
         ],
       MainRadiusScale: 2.0, //主半径缩放值
     },
     Type: 'Hemisphere:', //半球
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Height: 1.0, //高
       InnerRadius: 0.0, //内半径(内半径为0创建像奶酪形状的扇体,半径不为0创建像被咬掉尖尖的奶酪的扇环体)
       LocalEular: //欧拉角
         [
           0.0,
           0.0,
           0.0,
         ],
       LocalPosition: //局部位置
         [
           0.0,
           0.0,
           0.0,
         ],
       OutterRadius: 2.0, //外半径
       TurnningRadian: 1.0, //旋转弧度
     },
     Type: 'Fan:', //扇体
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
 {
   DirectX: //长
  [
    1.0,
    0.0,
    0.0,
  ],
   DirectY: //宽
  [
    0.0,
    0.0,
    1.0,
  ],
   Position: //中心点
 [
   28.988201141357422,
   0.019997134804725647,
   13.229571342468262,
 ],
 },
    Type: 'PolygonRectangle:', //矩形面
}

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00',//颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Center: //圆心
         [
           27.927724838256836,
           0.019996985793113708,
           12.672779083251953,
         ],
       InnerRadius: 1.5, //内半径
       Normal: //法向
         [
           0.0,
           1.0,
           0.0,
         ],
       OutterRadius: 2.0, //外半径
       SampleArcCount: 16, //弧度计数(值越大圆环越圆)
     },
     Type: 'PolygonTorus:', //圆环
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Center: //圆心
         [
           30.195535659790039,
           0.019997365772724152,
           12.911725997924805,
         ],
       Normal: //法向
         [
           0,
           1,
           0,
         ],
       Radius: 1.0, //半径
     },
     Type: 'PolygonCircle:', //圆面
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Outline: //多边形的顶点(传入的顶点是顺时针,多边形为正,逆时针则为反面)
         [
           [
             31.72938346862793,
             0.019996890798211098,
             12.864355087280273,
           ],
           [
             31.404380798339844,
             0.019996890798211098,
             11.26191234588623,
           ],
           [
             32.469329833984375,
             0.019996890798211098,
             11.024374008178711,
           ],
           [
             33.311290740966797,
             0.019996890798211098,
             13.134355545043945,
           ],
         ],
     },
     Type: 'Polygon:', //多变形
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       LineWidth: 0.10000000149011612, //多段线的线宽
       TextureRate: 1.0, //线的纹理率(一般来说不变)
       Vertexes: //多线段的顶点
         [
           [
             15.625022888183594,
             0.0099849095568060875,
             29.745611190795898,
           ],
           [
             37.157989501953125,
             0.010088586248457432,
             28.169088363647461,
           ],
           [
             36.95220947265625,
             0.010002888739109039,
             16.018711090087891,
           ],
           [
             27.902980804443359,
             0.0099409837275743484,
             14.839985847473145,
           ],
           [
             20.155799865722656,
             0.0099557051435112953,
             24.936176300048828,
           ],
         ],
     },
     Type: 'Polyline:', //多段线
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Degree: 240, // 圆箭头默认度数
       LineWidth: 0.10000000000000001, // 线宽度
       Radius: 1, // 半径
       SampleArcCount: 64, // 分段数
       UpDir: // (忽略,没有用到)
         [
           0.0,
           1.0,
           0.0,
         ],
       Vertexes: // 箭头两个顶点
         [
           [
             28.132368087768555,
             0.0099962083622813225,
             12.514093399047852,
           ],
           [
             26.386974334716797,
             -3.880821168422699e-06,
             11.793605804443359,
           ],
         ],
     },
     Type: 'ArrowLine:', //箭头
 }
await geometryManager.addGeometry(param)
const geometryManager = await cloud.getGeometryManager()
   const param = {
     layerName: 'wfw',  // 图层名
     type: '.primt'  // 创建的属于基本体还是管线(.pipe)
     Material:   // 材质信息,只包括 Diffuse 即可,其他不需要可不写
    {
     "BumpMode" : 0, // 选填
     "MaterialType" : 0,  //选填
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00',//颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理(图片路径)
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
  {
    EndPoint:    //圆柱底面中点
      [
        32.762351989746094,
        0.019871402531862259,
        12.645557403564453,
      ],
    Radius: 1.0,   //半径
    StartPoint:   //圆柱顶面中点
       [
         32.762351989746094,
         1.0198713541030884,
         12.645557403564453,
       ],
  },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'Cylinder:',  // 类型 :圆柱
}
const param = {
    layerName: 'wfw',
    type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       EndPoint: //圆环体底面中点
         [
           32.762351989746094,
           0.019871402531862259,
           12.645557403564453,
         ],
       InnerRadius: 1.0, //内半径
       OutterRadius: 2.0, //外半径
       StartPoint:  //圆环体顶面中点
         [
           32.762351989746094,
           1.0198713541030884,
           12.645557403564453,
         ],
     },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'CylinderShell:', //圆环体
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       AxisX: //长
         [
           1.0,
           0.0,
           0.0,
         ],
       AxisY: //高
         [
           0.0,
           1.0,
           0.0,
         ],
       AxisZ: //宽
         [
           0.0,
           0.0,
           1.0,
         ],
       Origin: //起点
         [
           25.725822448730469,
           0.020117653533816338,
           20.446044921875,
         ],
     },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'Box:', //长方体
   }

 const param = {
     layerName: 'wfw',
      type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       BottomCenter: //圆锥底面中心
         [
           32.846622467041016,
           0.019996654242277145,
           11.432461738586426,
         ],
       BottomRadius: 1, //底面半径
       TopCenter:  //圆锥顶点
         [
           32.846622467041016,
           2.019996654242277145,
           11.432461738586426,
         ],
     },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'RightCone:', //圆锥
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00',//颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       BottomOutline: //棱柱底面顶点
         [
           [
             51.72938346862793,
             0.019996890798211098,
             12.864355087280273,
           ],
           [
             53.311290740966797,
             0.019996890798211098,
             13.134355545043945,
           ],
           [
             52.469329833984375,
             0.019996890798211098,
             16.024374008178711,
           ],
           [
             51.404380798339844,
             0.019996890798211098,
             19.26191234588623,
           ],
         ],
       UpDir: //高
         [
           0.0000000000000001,
           2.019996654242277145,
           0.00000000000000001,
         ],
     },
     RealtimeRefresh: true, // 创建实时更新的基本体,可以通过setParam接口修改参数
     Type: 'StraightPrism:',//棱柱
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Center: //球心
         [
           29.697965621948242,
           0.018986180424690247,
           17.002664566040039,
         ],
       Radius: 1.0, //球半径
     },
     Type: 'Sphere:', //球体
   }

 const param = {
     layerName: 'wfw',
      type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Center: //半球底面中心
         [
           41.262523651123047,
           0.019996508955955505,
           13.421402931213379,
         ],
       EndPoint: //半球顶点
         [
           41.262523651123047,
           1.0199965238571167,
           13.421402931213379,
         ],
       MainRadiusScale: 2.0, //主半径缩放值
     },
     Type: 'Hemisphere:', //半球
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Height: 1.0, //高
       InnerRadius: 0.0, //内半径(内半径为0创建像奶酪形状的扇体,半径不为0创建像被咬掉尖尖的奶酪的扇环体)
       LocalEular: //欧拉角
         [
           0.0,
           0.0,
           0.0,
         ],
       LocalPosition: //局部位置
         [
           0.0,
           0.0,
           0.0,
         ],
       OutterRadius: 2.0, //外半径
       TurnningRadian: 1.0, //旋转弧度
     },
     Type: 'Fan:', //扇体
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
 {
   DirectX: //长
  [
    1.0,
    0.0,
    0.0,
  ],
   DirectY: //宽
  [
    0.0,
    0.0,
    1.0,
  ],
   Position: //中心点
 [
   28.988201141357422,
   0.019997134804725647,
   13.229571342468262,
 ],
 },
    Type: 'PolygonRectangle:', //矩形面
}

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00',//颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Center: //圆心
         [
           27.927724838256836,
           0.019996985793113708,
           12.672779083251953,
         ],
       InnerRadius: 1.5, //内半径
       Normal: //法向
         [
           0.0,
           1.0,
           0.0,
         ],
       OutterRadius: 2.0, //外半径
       SampleArcCount: 16, //弧度计数(值越大圆环越圆)
     },
     Type: 'PolygonTorus:', //圆环
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Center: //圆心
         [
           30.195535659790039,
           0.019997365772724152,
           12.911725997924805,
         ],
       Normal: //法向
         [
           0,
           1,
           0,
         ],
       Radius: 1.0, //半径
     },
     Type: 'PolygonCircle:', //圆面
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Outline: //多边形的顶点(传入的顶点是顺时针,多边形为正,逆时针则为反面)
         [
           [
             31.72938346862793,
             0.019996890798211098,
             12.864355087280273,
           ],
           [
             31.404380798339844,
             0.019996890798211098,
             11.26191234588623,
           ],
           [
             32.469329833984375,
             0.019996890798211098,
             11.024374008178711,
           ],
           [
             33.311290740966797,
             0.019996890798211098,
             13.134355545043945,
           ],
         ],
     },
     Type: 'Polygon:', //多变形
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       LineWidth: 0.10000000149011612, //多段线的线宽
       TextureRate: 1.0, //线的纹理率(一般来说不变)
       Vertexes: //多线段的顶点
         [
           [
             15.625022888183594,
             0.0099849095568060875,
             29.745611190795898,
           ],
           [
             37.157989501953125,
             0.010088586248457432,
             28.169088363647461,
           ],
           [
             36.95220947265625,
             0.010002888739109039,
             16.018711090087891,
           ],
           [
             27.902980804443359,
             0.0099409837275743484,
             14.839985847473145,
           ],
           [
             20.155799865722656,
             0.0099557051435112953,
             24.936176300048828,
           ],
         ],
     },
     Type: 'Polyline:', //多段线
   }

 const param = {
     layerName: 'wfw',
     type: '.primt',
    Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0,
     },
   },
     Params:
     {
       Degree: 240, // 圆箭头默认度数
       LineWidth: 0.10000000000000001, // 线宽度
       Radius: 1, // 半径
       SampleArcCount: 64, // 分段数
       UpDir: // (忽略,没有用到)
         [
           0.0,
           1.0,
           0.0,
         ],
       Vertexes: // 箭头两个顶点
         [
           [
             28.132368087768555,
             0.0099962083622813225,
             12.514093399047852,
           ],
           [
             26.386974334716797,
             -3.880821168422699e-06,
             11.793605804443359,
           ],
         ],
     },
     Type: 'ArrowLine:', //箭头
 }
await geometryManager.addGeometry(param)

Parameters

NameTypeDescription
Paramsanyjson格式
parentNode创建的基本体挂载的父节点 Node(选填,填的节点必须有效,不能为空)

Returns

Promise<GeometryObject>


addGeometryForJson_GCS

addGeometryForJson_GCS(layerName, material, geometrys, parent): Promise<GeometryObject[]>

Details

批量添加基本体

Example

js
const layerName = "wls";
const material = {
     "Diffuse":'0xff00ff00', //颜色(ARGB)
   };
 const geometrys = [
 {   Params:
   {
     EndPoint:    //圆柱底面中点
     {
       lon: 135.0,
       lat: 50.0,
       alt: 1.0,
     },
    Radius: 1.0,   //半径
    StartPoint:   //圆柱顶面中点
    {
      lon: 135.0,
      lat: 50.0,
      alt: 2.0,
    },
   },
     Type: 'Cylinder:', //圆柱
 },
 {
     Params:
     {
       EndPoint: //圆环体的底面中心
       {
         lon: 135.0,
         lat: 50.0,
         alt: 1.0,
       },
       InnerRadius: 1.0,  //圆环体的内半径
       OutterRadius: 2.0,  //圆环体的外半径
       StartPoint: //圆环体的底面中心
       {
          lon: 135.0,
          lat: 50.0,
          alt: 2.0,
       },
     },
      Type: 'CylinderShell:', //圆环体
 }
];
var geometryManager = await cloud.getGeometryManager()
await geometryManager.addGeometryForJson_GCS (layerName,material,geometrys)
const layerName = "wls";
const material = {
     "Diffuse":'0xff00ff00', //颜色(ARGB)
   };
 const geometrys = [
 {   Params:
   {
     EndPoint:    //圆柱底面中点
     {
       lon: 135.0,
       lat: 50.0,
       alt: 1.0,
     },
    Radius: 1.0,   //半径
    StartPoint:   //圆柱顶面中点
    {
      lon: 135.0,
      lat: 50.0,
      alt: 2.0,
    },
   },
     Type: 'Cylinder:', //圆柱
 },
 {
     Params:
     {
       EndPoint: //圆环体的底面中心
       {
         lon: 135.0,
         lat: 50.0,
         alt: 1.0,
       },
       InnerRadius: 1.0,  //圆环体的内半径
       OutterRadius: 2.0,  //圆环体的外半径
       StartPoint: //圆环体的底面中心
       {
          lon: 135.0,
          lat: 50.0,
          alt: 2.0,
       },
     },
      Type: 'CylinderShell:', //圆环体
 }
];
var geometryManager = await cloud.getGeometryManager()
await geometryManager.addGeometryForJson_GCS (layerName,material,geometrys)

Parameters

NameTypeDescription
layerNamestring图层名称
materialMaterial基本体样式
geometrysany基本体参数(json数组类型)
parentNode绘制的基本体挂载的父节点(选填,填了的话不能为空)

Returns

Promise<GeometryObject[]>

GeometryObject数组


addGeometryForJson

addGeometryForJson(params, parent): Promise<GeometryObject[]>

Details

批量添加基本体

Example

js
const param
= {
     geometrys: [
       {
         layerName: 'new', //图层名
         type: '.primt'
          Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0
     }
   },
         Params:
  {
    EndPoint: //圆柱底面圆心
      [
        32.762351989746094,
        0.019871402531862259,
        12.645557403564453,
      ],
    Radius: 1.0, //半径
    StartPoint: //圆柱顶面圆心
       [
         32.762351989746094,
         1.0198713541030884,
         12.645557403564453,
       ],
  },
         Type: 'Cylinder:', //圆柱
       },
       {
         layerName: 'wfw',
          type: '.primt'
          Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0
     }
   },
         Params:
  {
    EndPoint: //圆环体的底面中心
      [
        13.762351989746094,
        0.019871402531862259,
        6.645557403564453,
      ],
    InnerRadius: 1.0,  //圆环体的内半径
    OutterRadius: 2.0,  //圆环体的外半径
    StartPoint: //圆环体的底面中心
       [
         13.762351989746094,
         1.0198713541030884,
         6.645557403564453,
       ],
  },
         Type: 'CylinderShell:', //圆环体
       }],
   }
var geometryManager = await cloud.getGeometryManager()
await geometryManager.addGeometryForJson (param)
const param
= {
     geometrys: [
       {
         layerName: 'new', //图层名
         type: '.primt'
          Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0
     }
   },
         Params:
  {
    EndPoint: //圆柱底面圆心
      [
        32.762351989746094,
        0.019871402531862259,
        12.645557403564453,
      ],
    Radius: 1.0, //半径
    StartPoint: //圆柱顶面圆心
       [
         32.762351989746094,
         1.0198713541030884,
         12.645557403564453,
       ],
  },
         Type: 'Cylinder:', //圆柱
       },
       {
         layerName: 'wfw',
          type: '.primt'
          Material:
   {
     "BumpMode" : 0,
     "MaterialType" : 0,
     "Metallic" : 0.5, //金属光泽度
     "NormalOrBumpScale" : 1.0, //凸起比例
     "Roughness" : 0.5, //粗糙度
     "Diffuse":'0xff00ff00', //颜色(ARGB)
     "DiffuseTexture":"", //贴图纹理
     "UVAnimation" :  //纹理动画速度
     {
       "x" : 0.02,
       "y" : 0.0
     }
   },
         Params:
  {
    EndPoint: //圆环体的底面中心
      [
        13.762351989746094,
        0.019871402531862259,
        6.645557403564453,
      ],
    InnerRadius: 1.0,  //圆环体的内半径
    OutterRadius: 2.0,  //圆环体的外半径
    StartPoint: //圆环体的底面中心
       [
         13.762351989746094,
         1.0198713541030884,
         6.645557403564453,
       ],
  },
         Type: 'CylinderShell:', //圆环体
       }],
   }
var geometryManager = await cloud.getGeometryManager()
await geometryManager.addGeometryForJson (param)

Parameters

NameTypeDescription
paramsany格式json 批量添加基本体的参数
parentNode绘制的基本体挂载的父节点(选填,填了的话不能为空)

Returns

Promise<GeometryObject[]>

GeometryObject数组


addGeometryByUrl

addGeometryByUrl(url): Promise<GeometryObject[]>

根据url批量添加几何体

Example

调用示例:

ts
var geometryManager = await cloud.getGeometryManager()
await geometryManager.addGeometryByUrl(url)
var geometryManager = await cloud.getGeometryManager()
await geometryManager.addGeometryByUrl(url)

Parameters

NameTypeDescription
urlstring几何体数据来源url地址 数据格式: { "geometrys":[ { "guid":xxxx, //自定义几何体guid "layerName": "new", //图层名 "Material": "0xff0000ff", //颜色 RGB形式 "Params":{}, //几何体数据 "Type":"", //几何体类型 }, { "guid":xxxx, //自定义几何体guid "layerName": "wfw", //图层名 "Material": "0xff0000ff", ////颜色 RGB形式 "Params":{}, //几何体数据 "Type":"", //几何体类型 }, ] }

Returns

Promise<GeometryObject[]>


stopDrawing

stopDrawing(): Promise<any>

Details

终止绘制操作

Examples

调用示例:

js
var geometryManager = await cloud.getGeometryManager()
await geometryManager.stopDrawing()
var geometryManager = await cloud.getGeometryManager()
await geometryManager.stopDrawing()

Returns

Promise<any>


getNodesParam

getNodesParam(params): Promise<any>

获取叶子节点基本体参数(叶子节点下面挂载的是基本体才可以)

Examples

js
let arr:Array<LeafNodeParam>=[];
const param: LeafNodeParam=
{
 LeafNodeGuid:node.guid
}
arr.push(param)
let geometryManager = await cloud.getGeometryManager();
let info =await geometryManager.getNodesParam(arr)
let arr:Array<LeafNodeParam>=[];
const param: LeafNodeParam=
{
 LeafNodeGuid:node.guid
}
arr.push(param)
let geometryManager = await cloud.getGeometryManager();
let info =await geometryManager.getNodesParam(arr)

Parameters

NameTypeDescription
paramsLeafNodeParam[]参数数组

Returns

Promise<any>