# BaseLayerPickerViewModel

#### new Cesium.BaseLayerPickerViewModel(options)
widgets/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 27

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/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 165

Gets the button background image. This property is observable.

#### buttonTooltip : string
widgets/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 141

Gets the button tooltip. This property is observable.

#### dropDownVisible : boolean
widgets/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 67

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

Default Value: `false`

#### globe : Globe
widgets/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 332

Gets the globe.

#### imageryProviderViewModels : Array.<ProviderViewModel>
widgets/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 53

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

#### selectedImagery : ProviderViewModel
widgets/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 178

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

Default Value: `undefined`

#### selectedTerrain : ProviderViewModel
widgets/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 245

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

Default Value: `undefined`

#### terrainProviderViewModels : Array.<ProviderViewModel>
widgets/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 60

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

#### toggleDropDown : Command
widgets/Source/BaseLayerPicker/BaseLayerPickerViewModel.js 320

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

Need help? The fastest way to get answers is from the community and team on the Cesium Forum.