# BaseLayerPickerViewModel

#### new Cesium.BaseLayerPickerViewModel(options)
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 23

The view model for `BaseLayerPicker`.

Name | Type | Description
--- | --- | ---

`options`

Object

Object with the following properties:

Name | Type | Default | Description
--- | --- | --- | ---
`globe` | Globe |  | The Globe to use.
`imageryProviderViewModels` | Array.<ProviderViewModel> | `[]` | optional The array of ProviderViewModel instances to use for imagery.
`selectedImageryProviderViewModel` | ProviderViewModel |  | optional The view model for the current base imagery layer, if not supplied the first available imagery layer is used.
`terrainProviderViewModels` | Array.<ProviderViewModel> | `[]` | optional The array of ProviderViewModel instances to use for terrain.
`selectedTerrainProviderViewModel` | ProviderViewModel |  | optional The view model for the current base terrain layer, if not supplied the first available terrain layer is used.

##### Throws:

- DeveloperError : imageryProviderViewModels must be an array.
- DeveloperError : terrainProviderViewModels must be an array.

### Members

#### buttonImageUrl : String
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 161

Gets the button background image. This property is observable.

#### buttonTooltip : String
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 137

Gets the button tooltip. This property is observable.

#### dropDownVisible : Boolean
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 63

Gets or sets whether the imagery selection drop-down is currently visible.

Default Value: `false`

#### globe : Globe
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 297

Gets the globe.

#### imageryProviderViewModels : Array.<ProviderViewModel>
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 49

Gets or sets an array of ProviderViewModel instances available for imagery selection. This property is observable.

#### selectedImagery : ProviderViewModel
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 174

Gets or sets the currently selected imagery. This property is observable.

Default Value: `undefined`

#### selectedTerrain : ProviderViewModel
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 236

Gets or sets the currently selected terrain. This property is observable.

Default Value: `undefined`

#### terrainProviderViewModels : Array.<ProviderViewModel>
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 56

Gets or sets an array of ProviderViewModel instances available for terrain selection. This property is observable.

#### toggleDropDown : Command
Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js 285

Gets the command to toggle the visibility of the drop down.