# Class: ModelsOverlay

## ModelsOverlay()

#### new ModelsOverlay()

模型层

Source:
  - ModelsOverlay.js, line 12

### Methods

#### (async, static) addModel(model) → {Promise.<Void>}

添加一个模型

##### Parameters:

Name | Type | Description
--- | --- | ---
`model` | Object | 模型（Model类型的Object）

Source:
  - ModelsOverlay.js, line 41

##### Returns:

Type
  Promise.<Void>

#### (async, static) addModels(models) → {Promise.<Void>}

添加一组模型

##### Parameters:

Name | Type | Description
--- | --- | ---
`models` | Array | 一组模型 （存有Model对象的Id的数组）

Source:
  - ModelsOverlay.js, line 56

##### Returns:

Type
  Promise.<Void>

#### (async, static) createObj() → {Promise.<ModelsOverlay>}

构造一个新的ModelsOverlay对象

Source:
  - ModelsOverlay.js, line 23

##### Returns:

Type
  Promise.<ModelsOverlay>

#### (async, static) getAllModels() → {Array}

获取所有模型

Source:
  - ModelsOverlay.js, line 196

##### Returns:

模型列表 （包含一组Model对象的数组）

Type
  Array

#### (async, static) getModel(index) → {Promise.<Model>}

获取指定索引的模型

##### Parameters:

Name | Type | Description
--- | --- | ---
`index` | Number | 模型索引 从0开始 （int类型的Number）

Source:
  - ModelsOverlay.js, line 175

##### Returns:

索引对应的模型

Type
  Promise.<Model>

#### (async, static) getModelCount() → {Number}

获取模型数目

Source:
  - ModelsOverlay.js, line 143

##### Returns:

模型数目 （int类型的Number）

Type
  Number

#### (async, static) indexOf(model) → {Number}

获取模型的索引

##### Parameters:

Name | Type | Description
--- | --- | ---
`model` | Object | 模型 （Model类型的Object）

Source:
  - ModelsOverlay.js, line 159

##### Returns:

模型索引 -1表示没有找到该模型 （int类型的Number）

Type
  Number

#### (async, static) moveModel(fromIndex, toIndex) → {Promise.<Void>}

移动模型,改变模型的层次序列

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromIndex` | Number | 被移动的模型的索引 （int类型的Number）
`toIndex` | Number | 移动模型到toIndex处,如果toIndex为-1 表示移动到最上面 （int类型的Number）

Source:
  - ModelsOverlay.js, line 219

##### Returns:

Type
  Promise.<Void>

#### (async, static) removeAllModels() → {Promise.<Void>}

删除所有模型

Source:
  - ModelsOverlay.js, line 129

##### Returns:

Type
  Promise.<Void>

#### (async, static) removeModel(model) → {Promise.<Void>}

删除一个模型

##### Parameters:

Name | Type | Description
--- | --- | ---
`model` | Object | 模型 （Model类型的Object）

Source:
  - ModelsOverlay.js, line 94

##### Returns:

Type
  Promise.<Void>

#### (async, static) removeModelByIndex(index) → {Promise.<Void>}

删除指定索引的模型

##### Parameters:

Name | Type | Description
--- | --- | ---
`index` | Number | 索引 （int类型的Number）

Source:
  - ModelsOverlay.js, line 79

##### Returns:

Type
  Promise.<Void>

#### (async, static) removeModels(models) → {Promise.<Void>}

删除一组模型

##### Parameters:

Name | Type | Description
--- | --- | ---
`models` | Array | 一组模型 （包含Model对象的数组）

Source:
  - ModelsOverlay.js, line 109

##### Returns:

Type
  Promise.<Void>

#### (async, static) saveToFile(strModelFile, trunc) → {boolean}

保存所有的模型覆盖物到文件中,可以通过该文件构建模型层

示例代码:
String strModelFile = ""; modelsOverlay.saveToFile(strModelFile,false); SimpleModelLayer modelLayer = new SimpleModelLayer(); modelLayer.setURL(strModelFile); mapView.stopCurRequest(new MapViewStopCurRequestCallback() { public void onDidStopCurRequest() { mapView.getMap().append(modelLayer); mapView.forceRefresh(); } });

##### Parameters:

Name | Type | Description
--- | --- | ---
`strModelFile` | String | 模型文件
`trunc` | boolean | 如果文件存在true表示截断,false表示追加

Source:
  - ModelsOverlay.js, line 246

##### Returns:

true-成功 ； false-失败

Type
  boolean