# # Interface: VisualElement

## # Hierarchy

- `VisualElement`

  ↳ `ArcElement`

  ↳ `LineElement`

  ↳ `PointElement`

  ↳ `BarElement`

## # Methods

### # draw

▸ draw(`ctx`, `area?`): `void`

#### # Parameters

Name | Type
--- | ---
`ctx` | `CanvasRenderingContext2D`
`area?` | `ChartArea`

#### # Returns

`void`

#### # Defined in

index.esm.d.ts:1685
(opens new window)

### # getCenterPoint

▸ getCenterPoint(`useFinalPosition?`): `Object`

#### # Parameters

Name | Type
--- | ---
`useFinalPosition?` | `boolean`

#### # Returns

`Object`

Name | Type
--- | ---
`x` | `number`
`y` | `number`

#### # Defined in

index.esm.d.ts:1689
(opens new window)

### # getRange

▸ `Optional` getRange(`axis`): `number`

#### # Parameters

Name | Type
--- | ---
`axis` | `"x"` | `"y"`

#### # Returns

`number`

#### # Defined in

index.esm.d.ts:1690
(opens new window)

### # inRange

▸ inRange(`mouseX`, `mouseY`, `useFinalPosition?`): `boolean`

#### # Parameters

Name | Type
--- | ---
`mouseX` | `number`
`mouseY` | `number`
`useFinalPosition?` | `boolean`

#### # Returns

`boolean`

#### # Defined in

index.esm.d.ts:1686
(opens new window)

### # inXRange

▸ inXRange(`mouseX`, `useFinalPosition?`): `boolean`

#### # Parameters

Name | Type
--- | ---
`mouseX` | `number`
`useFinalPosition?` | `boolean`

#### # Returns

`boolean`

#### # Defined in

index.esm.d.ts:1687
(opens new window)

### # inYRange

▸ inYRange(`mouseY`, `useFinalPosition?`): `boolean`

#### # Parameters

Name | Type
--- | ---
`mouseY` | `number`
`useFinalPosition?` | `boolean`

#### # Returns

`boolean`

#### # Defined in

index.esm.d.ts:1688
(opens new window)