Applies the brush to the specified group, which must be a selection of SVG G elements. This function is typically not invoked directly, and is instead invoked via selection.call.
For details see: https://github.com/d3/d3-brush#_brush
A D3 selection of SVG G elements.
Rest
...args: any[]Optional arguments to be passed in.
Clear the active selection of the brush on the specified SVG G element(s) selection.
A D3 selection of SVG G elements.
Optional
event: EventReturns the current extent accessor.
Set the brushable extent to the specified array of points and returns this brush.
The brush extent determines the size of the invisible overlay and also constrains the brush selection; the brush selection cannot go outside the brush extent.
array of points [[x0, y0], [x1, y1]], where [x0, y0] is the top-left corner and [x1, y1] is the bottom-right corner.
Set the brushable extent to the specified array of points returned by the accessor function evaluated for each element in the selection/transition and returns this brush.
The brush extent determines the size of the invisible overlay and also constrains the brush selection; the brush selection cannot go outside the brush extent.
An extent accessor function which is evaluated for each selected element, in order, being passed the current datum (d), the current index (i), and the current group (nodes), with this as the current DOM element. The function returns an array of points [[x0, y0], [x1, y1]], where [x0, y0] is the top-left corner and [x1, y1] is the bottom-right corner.
Returns the current filter function.
Returns the current filter function.
Sets the filter to the specified filter function and returns the brush.
If the filter returns falsey, the initiating event is ignored and no brush gesture is started. Thus, the filter determines which input events are ignored. The default filter ignores mousedown events on secondary buttons, since those buttons are typically intended for other purposes, such as the context menu.
A filter function which is evaluated for each selected element,
in order, being passed the current event event
and datum d
, with the this
context as the current DOM element.
The function returns a boolean value.
Returns the current handle size, which defaults to six.
Sets the size of the brush handles to the specified number and returns the brush.
This method must be called before applying the brush to a selection; changing the handle size does not affect brushes that were previously rendered. The default size is 6.
Size of the handle.
Returns the current key modifiers flag.
Sets the key modifiers flag and returns the brush.
The key modifiers flag determines whether the brush listens to key events during brushing. The default value is true.
New value for key modifiers flag.
Clear the active selection of the brush on the specified SVG G element(s) selection.
A selection or a transition of SVG G elements
The selection must be defined as an array of numbers, or null to clear the brush selection. For a two-dimensional brush, it must be defined as [[x0, y0], [x1, y1]], where x0 is the minimum x-value, y0 is the minimum y-value, x1 is the maximum x-value, and y1 is the maximum y-value. For an x-brush, it must be defined as [x0, x1]; for a y-brush, it must be defined as [y0, y1]. The selection may also be specified as a function which returns such an array; if a function, it is invoked for each selected element, being passed the current datum d and index i, with the this context as the current DOM element. The returned array defines the brush selection for that element.
Optional
event: EventReturns the first currently-assigned listener matching the specified typenames, if any.
The typenames is a string containing one or more typename separated by whitespace. Each typename is a type, optionally followed by a period (.) and a name, such as "brush.foo"" and "brush.bar"; the name allows multiple listeners to be registered for the same type. The type must be one of the following: start (at the start of a brush gesture, such as on mousedown), brush (when the brush moves, such as on mousemove), or end (at the end of a brush gesture, such as on mouseup.)
Removes the current event listeners for the specified typenames, if any.
The typenames is a string containing one or more typename separated by whitespace. Each typename is a type, optionally followed by a period (.) and a name, such as "brush.foo"" and "brush.bar"; the name allows multiple listeners to be registered for the same type. The type must be one of the following: start (at the start of a brush gesture, such as on mousedown), brush (when the brush moves, such as on mousemove), or end (at the end of a brush gesture, such as on mouseup.)
Use null to remove the listener.
Sets the event listener for the specified typenames and returns the brush. If an event listener was already registered for the same type and name, the existing listener is removed before the new listener is added. When a specified event is dispatched, each listener will be invoked with the same context and arguments as selection.on listeners.
The typenames is a string containing one or more typename separated by whitespace. Each typename is a type, optionally followed by a period (.) and a name, such as "brush.foo"" and "brush.bar"; the name allows multiple listeners to be registered for the same type. The type must be one of the following: start (at the start of a brush gesture, such as on mousedown), brush (when the brush moves, such as on mousemove), or end (at the end of a brush gesture, such as on mouseup.)
An event listener function which is evaluated for each selected element,
in order, being passed the current event event
and datum d
, with the this
context as the current DOM element.
Returns the current touch support detector, which defaults to a function returning true, if the "ontouchstart" event is supported on the current element.
Sets the touch support detector to the specified boolean value and returns the brush.
Touch event listeners are only registered if the detector returns truthy for the corresponding element when the brush is applied. The default detector works well for most browsers that are capable of touch input, but not all; Chrome’s mobile device emulator, for example, fails detection.
A boolean value. true when touch event listeners should be applied to the corresponding element, otherwise false.
Sets the touch support detector to the specified function and returns the drag behavior.
Touch event listeners are only registered if the detector returns truthy for the corresponding element when the brush is applied. The default detector works well for most browsers that are capable of touch input, but not all; Chrome’s mobile device emulator, for example, fails detection.
A touch support detector function, which returns true when touch event listeners should be applied to the corresponding element. The function is evaluated for each selected element to which the brush was applied, in order, being passed the current datum (d), the current index (i), and the current group (nodes), with this as the current DOM element. The function returns a boolean value.
A D3 brush behavior
The generic refers to the type of the datum for the group element on which brush behavior is defined.