[API](/solutions/geotoolkit/geotoolkit_js/apis/readme) / [geotoolkit](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit) / [welllog](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog) / [multiwell](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#multiwell) / [IWellTrack](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#iwelltrack) / IWellTrack

# Class: IWellTrack

[multiwell](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#multiwell).[IWellTrack](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#iwelltrack).IWellTrack

Define an interface for well track

**`Interface`**

**`Deprecated`**

since 4.0. Use WellTrack directly

## Hierarchy

- [`IBaseWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack)
↳ **`IWellTrack`**


## Implemented by

- [`WellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.welltrack.welltrack)


## Table of contents

Constructors
- [new IWellTrack()](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack.md#new iwelltrack())


Methods
| [addTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#addtrack) | [asNode](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#asnode) | [connectTool](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#connecttool) |
|  --- | --- | --- |
| [disconnectTool](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#disconnecttool) | [fitToWidth](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#fittowidth) | [getBounds](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getbounds) |
| [getData](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getdata) | [getDataBinding](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getdatabinding) | [getDepthLimits](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getdepthlimits) |
| [getDepthScale](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getdepthscale) | [getHeader](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getheader) | [getLayoutStyle](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getlayoutstyle) |
| [getManipulatorLayer](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getmanipulatorlayer) | [getMarkerLayer](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getmarkerlayer) | [getTag](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#gettag) |
| [getTitle](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#gettitle) | [getTool](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#gettool) | [getToolByName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#gettoolbyname) |
| [getTrackAt](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#gettrackat) | [getTrackIndex](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#gettrackindex) | [getTracksCount](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#gettrackscount) |
| [getVisible](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getvisible) | [getVisibleDepthLimits](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#getvisibledepthlimits) | [insertTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#inserttrack) |
| [loadTemplate](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#loadtemplate) | [removeTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#removetrack) | [saveTemplate](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#savetemplate) |
| [setBounds](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#setbounds) | [setData](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#setdata) | [setDataBinding](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#setdatabinding) |
| [setDepthLimits](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#setdepthlimits) | [setDepthScale](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#setdepthscale) | [setTitle](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#settitle) |
| [setVisibleDepthLimits](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack#setvisibledepthlimits) |


## Contents

Constructors
#### new IWellTrack()

• **new IWellTrack**()

#### Inherited from

IBaseWellTrack.constructor

Methods
#### addTrack

▸ `Abstract` **addTrack**(`track`): [`LogTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.logtrack.logtrack)

Add a track to the back

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `track` | [`InsertTrack`](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#logtrackcontainer#inserttrack) | track to add or options to specify adding track |


#### Returns

[`LogTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.logtrack.logtrack)

#### asNode

▸ `Abstract` **asNode**(): [`Node`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.node.node)

Return track as [Node](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.node.node) instance

#### Returns

[`Node`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.node.node)

#### Inherited from

[IBaseWellTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack).[asNode](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack#asnode)

#### connectTool

▸ `Abstract` **connectTool**(`tool`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Connect a new tool with a tool name to the widget

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `tool` | [`AbstractTool`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.controls.tools.abstracttool.abstracttool) | [`AbstractTool`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.controls.tools.abstracttool.abstracttool)[] | tool associated with the widget |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

this

#### disconnectTool

▸ `Abstract` **disconnectTool**(`tool`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Disconnect the tool from the widget

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `tool` | [`AbstractTool`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.controls.tools.abstracttool.abstracttool) | [`AbstractTool`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.controls.tools.abstracttool.abstracttool)[] | tool to disconnect |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

this

#### fitToWidth

▸ `Abstract` **fitToWidth**(): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Resize tracks to fit width of the well

#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

#### getBounds

▸ `Abstract` **getBounds**(): [`Rect`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rect.rect)

Return track bounds

#### Returns

[`Rect`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rect.rect)

#### Inherited from

[IBaseWellTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack).[getBounds](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack#getbounds)

#### getData

▸ `Abstract` **getData**(): [`AbstractDataTable`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.abstractdatatable.abstractdatatable) | [`DataSource`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.datasource.datasource)

Returns data source

#### Returns

[`AbstractDataTable`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.abstractdatatable.abstractdatatable) | [`DataSource`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.datasource.datasource)

#### getDataBinding

▸ `Abstract` **getDataBinding**(): [`DataBinding`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.databinding.databinding)

Return the data binding

#### Returns

[`DataBinding`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.databinding.databinding)

#### getDepthLimits

▸ `Abstract` **getDepthLimits**(): [`Range`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.range.range)

Returns depth range

#### Returns

[`Range`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.range.range)

#### Inherited from

[IBaseWellTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack).[getDepthLimits](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack#getdepthlimits)

#### getDepthScale

▸ `Abstract` **getDepthScale**(`scaleUnit?`, `deviceUnit?`): `number`

Return scale to device. How many scale units in one device unit.

**`Example`**

```ts
import {UnitFactory} from '@int/geotoolkit/util/UnitFactory';
//  to get the current depth scale of well.
const uf = UnitFactory.getInstance();
well.getDepthScale(uf.getUnit("cm"), uf.getUnit("cm"));
```

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `scaleUnit` | `string` | [`AbstractUnit`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.abstractunit.abstractunit) | scale unit of the display. if it is not specified then it takes from track container |
| `Optional` `deviceUnit` | `string` | [`AbstractUnit`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.abstractunit.abstractunit) | device unit of the display. if it is not specified then it takes from track container |


#### Returns

`number`

a index scale to device or NaN if scale if not available

#### getHeader

▸ `Abstract` **getHeader**(): [`WellTrackHeader`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.welltrackheader.welltrackheader)

Return track header for internal use only

#### Returns

[`WellTrackHeader`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.welltrackheader.welltrackheader)

#### getLayoutStyle

▸ `Abstract` **getLayoutStyle**(): [`LayoutStyle`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.layout.layoutstyle.layoutstyle)<`string` | `number`&gt;

Returns layout style

#### Returns

[`LayoutStyle`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.layout.layoutstyle.layoutstyle)<`string` | `number`&gt;

#### Inherited from

[IBaseWellTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack).[getLayoutStyle](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack#getlayoutstyle)

#### getManipulatorLayer

▸ `Abstract` **getManipulatorLayer**(): [`CompositeNode`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.compositenode.compositenode)<[`Node`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.node.node)&gt;

Return track manipulator layer

#### Returns

[`CompositeNode`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.compositenode.compositenode)<[`Node`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.node.node)&gt;

#### Inherited from

[IBaseWellTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack).[getManipulatorLayer](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack#getmanipulatorlayer)

#### getMarkerLayer

▸ `Abstract` **getMarkerLayer**(): [`Layer`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.layer.layer)<[`Node`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.node.node)&gt;

Return a layer to display markers

#### Returns

[`Layer`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.layer.layer)<[`Node`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.scene.node.node)&gt;

#### getTag

▸ `Abstract` **getTag**(): `any`

Returns Tag

#### Returns

`any`

#### Inherited from

[IBaseWellTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack).[getTag](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack#gettag)

#### getTitle

▸ `Abstract` **getTitle**(): `string`

Return title

#### Returns

`string`

well title

#### getTool

▸ `Abstract` **getTool**(): [`CompositeTool`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.controls.tools.compositetool.compositetool)

Returns root tool associated to this widget

#### Returns

[`CompositeTool`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.controls.tools.compositetool.compositetool)

#### getToolByName

▸ `Abstract` **getToolByName**(`name`): [`AbstractTool`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.controls.tools.abstracttool.abstracttool)

Return tool by name

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `name` | `string` | name of the tool |


#### Returns

[`AbstractTool`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.controls.tools.abstracttool.abstracttool)

#### getTrackAt

▸ `Abstract` **getTrackAt**(`index`): [`LogTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.logtrack.logtrack)

Returns [LogTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.logtrack.logtrack) at specified index

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `index` | `number` | index to return track at |


#### Returns

[`LogTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.logtrack.logtrack)

#### getTrackIndex

▸ `Abstract` **getTrackIndex**(`track`): `number`

Return index of track

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `track` | [`LogTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.logtrack.logtrack) | to get index |


#### Returns

`number`

index of the track

#### getTracksCount

▸ `Abstract` **getTracksCount**(): `number`

Returns amount of tracks

#### Returns

`number`

amount of tracks

#### getVisible

▸ `Abstract` **getVisible**(): `boolean`

Return a depth range, which is visible now

#### Returns

`boolean`

#### getVisibleDepthLimits

▸ `Abstract` **getVisibleDepthLimits**(): [`Range`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.range.range)

Return a depth range, which is visible now

#### Returns

[`Range`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.range.range)

#### Overrides

[IBaseWellTrack](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack).[getVisibleDepthLimits](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.ibasewelltrack.ibasewelltrack#getvisibledepthlimits)

#### insertTrack

▸ `Abstract` **insertTrack**(`index`, `track`): [`LogTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.logtrack.logtrack)

Insert track to the container at specified index

**`Example`**

```ts
import {TrackType} from '@int/geotoolkit/welllog/TrackType';
// The code below shows how to create a well track with position from 0 to 300 in the model coordinates and depth range from 500 to 1000
const well = widget.insertTrack(1, {
'type': TrackType.LogTrack,
'width': 400
});
```

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `index` | `number` | index of the track |
| `track` | [`InsertTrack`](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#logtrackcontainer#inserttrack) | track to insert or type of track or track options |


#### Returns

[`LogTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.logtrack.logtrack)

#### loadTemplate

▸ `Abstract` **loadTemplate**(`template`, `registry?`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Load template

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `template` | `string` | template to be applied to the widget |
| `Optional` `registry` | [`Registry`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.persistence.registry.registry) | registry |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

this

#### removeTrack

▸ `Abstract` **removeTrack**(`track`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Remove the track with headers and footers

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `track` | [`LogTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.logtrack.logtrack) | track to remove |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

this

#### saveTemplate

▸ `Abstract` **saveTemplate**(`registry?`): `string`

Save template

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `registry` | [`Registry`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.persistence.registry.registry) | registry |


#### Returns

`string`

return template as a string

#### setBounds

▸ `Abstract` **setBounds**(`bounds`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets bounds of the node in the parent coordinates

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `bounds` | [`Rect`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.rect.rect) | bound of the node in the parent coordinates |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

#### setData

▸ `Abstract` **setData**(`data`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets a new data model

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `data` | [`AbstractDataTable`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.abstractdatatable.abstractdatatable) | [`DataSource`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.datasource.datasource) | logdata |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

this

#### setDataBinding

▸ `Abstract` **setDataBinding**(`binding`, `silent?`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets the data binding

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `binding` | [`DataBinding`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.databinding.databinding) | data binding |
| `Optional` `silent` | `boolean` | silent mode to forbid |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

this

#### setDepthLimits

▸ `Abstract` **setDepthLimits**(`minIndex`, `maxIndex`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets depth limits for all tracks

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `minIndex` | `number` | min index limit |
| `maxIndex` | `number` | max index limit |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

▸ `Abstract` **setDepthLimits**(`range`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets depth limits for all tracks

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `range` | [`Range`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.range.range) | depth range |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

▸ `Abstract` **setDepthLimits**(`minIndex`, `maxIndex?`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets the same depth or time limits for all tracks

**`Example`**

```ts
// full depth limits or scrollable limits of your widget can be set as follows:
widget.setDepthLimits(minDepth, maxDepth);
```

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `minIndex` | `number` | [`Range`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.range.range) | min index limit |
| `Optional` `maxIndex` | `number` | max index limit |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

this

#### setDepthScale

▸ `Abstract` **setDepthScale**(`scale`, `scaleUnit?`, `deviceUnit?`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets a depth scale factor.

**`Throws`**

Will throw an error if the current scale is NaN

**`Example`**

```ts
import {UnitFactory} from '@int/geotoolkit/util/UnitFactory';
//  To set depth scale range as a ratio, you can use units as follows
const unitFactory = UnitFactory.getInstance();
well.setDepthScale(30, unitFactory.getUnit("feet"), unitFactory.getUnit("inch")); //1 inch == 30 feet
```

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `scale` | `number` | A number of depth units in device unit. |
| `Optional` `scaleUnit` | [`AbstractUnit`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.abstractunit.abstractunit) | scale unit of the display. if it is not specified then it takes from track container |
| `Optional` `deviceUnit` | [`AbstractUnit`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.abstractunit.abstractunit) | device unit of the display. if it is not specified then it takes from track container |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

this

#### setTitle

▸ `Abstract` **setTitle**(`title`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets well title

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `title` | `string` | well title |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

this

#### setVisibleDepthLimits

▸ `Abstract` **setVisibleDepthLimits**(`fromIndex`, `toIndex?`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets visible depth limits

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `fromIndex` | [`Range`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.range.range) | depth range |
| `Optional` `toIndex` | `boolean` | option to fit to container visible limits |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

▸ `Abstract` **setVisibleDepthLimits**(`fromIndex`, `toIndex`, `fitHeight?`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets visible depth limits

**`Example`**

```ts
// Set visible limits to fit visible area of container
well.setVisibleDepthLimits(limits, true);
```

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `fromIndex` | `number` | start depth |
| `toIndex` | `number` | end range |
| `Optional` `fitHeight` | `boolean` | option to fit to container visible limits |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

▸ `Abstract` **setVisibleDepthLimits**(`fromIndex`, `toIndex?`, `fitHeight?`): [`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)

Sets visible depth limits
By default it tries to fit depth based on the current visible limits of the well. If container limits
should be used then specify the last parameter to true

**`Example`**

```ts
// Set visible limits to fit visible area of container
well.setVisibleDepthLimits(limits, true);
```

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `fromIndex` | `number` | [`Range`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.range.range) | start depth or depth range |
| `Optional` `toIndex` | `number` | `boolean` | end range or option to fit to container visible limits |
| `Optional` `fitHeight` | `boolean` | option to fit to container visible limits |


#### Returns

[`IWellTrack`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.multiwell.iwelltrack.iwelltrack)