diff --git a/README.md b/README.md
index 73d024d..bacff1a 100644
--- a/README.md
+++ b/README.md
@@ -825,7 +825,7 @@ function(d) {
---
-#### **Shape** [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L19)
+#### **Shape** [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L21)
This is a global class, and extends all of the methods and functionality of [BaseClass
](https://github.com/d3plus/d3plus-common#BaseClass).
@@ -868,6 +868,8 @@ This is a global class, and extends all of the methods and functionality of [# Shape.**render**([*callback*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L489)
+# Shape.**render**([*callback*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L535)
Renders the current Shape to the page. If a *callback* is specified, it will be called once the shapes are done drawing.
@@ -890,7 +892,7 @@ Renders the current Shape to the page. If a *callback* is specified, it will be
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**active**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L623)
+# Shape.**active**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L698)
If *value* is specified, sets the highlight accessor to the specified function and returns the current class instance.
@@ -898,7 +900,7 @@ If *value* is specified, sets the highlight accessor to the specified function a
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**activeOpacity**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L642)
+# Shape.**activeOpacity**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L717)
When shapes are active, this is the opacity of any shape that is not active.
@@ -906,7 +908,7 @@ When shapes are active, this is the opacity of any shape that is not active.
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**activeStyle**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L652)
+# Shape.**activeStyle**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L727)
The style to apply to active shapes.
@@ -914,7 +916,7 @@ The style to apply to active shapes.
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**ariaLabel**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L662)
+# Shape.**ariaLabel**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L737)
If *value* is specified, sets the aria-label attribute to the specified function or string and returns the current class instance.
@@ -922,7 +924,7 @@ If *value* is specified, sets the aria-label attribute to the specified function
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**backgroundImage**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L674)
+# Shape.**backgroundImage**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L749)
If *value* is specified, sets the background-image accessor to the specified function or string and returns the current class instance.
@@ -930,7 +932,7 @@ If *value* is specified, sets the background-image accessor to the specified fun
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**data**([*data*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L686)
+# Shape.**data**([*data*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L761)
If *data* is specified, sets the data array to the specified array and returns the current class instance. If *data* is not specified, returns the current data array. A shape will be drawn for each object in the array.
@@ -938,7 +940,7 @@ If *data* is specified, sets the data array to the specified array and returns t
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**discrete**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L698)
+# Shape.**discrete**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L773)
Determines if either the X or Y position is discrete along a Line, which helps in determining the nearest data point on a line for a hit area event.
@@ -946,7 +948,7 @@ Determines if either the X or Y position is discrete along a Line, which helps i
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**duration**([*ms*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L708)
+# Shape.**duration**([*ms*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L783)
If *ms* is specified, sets the animation duration to the specified number and returns the current class instance. If *ms* is not specified, returns the current animation duration.
@@ -954,7 +956,7 @@ If *ms* is specified, sets the animation duration to the specified number and re
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**fill**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L720)
+# Shape.**fill**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L795)
If *value* is specified, sets the fill accessor to the specified function or string and returns the current class instance.
@@ -962,7 +964,7 @@ If *value* is specified, sets the fill accessor to the specified function or str
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**fillOpacity**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L732)
+# Shape.**fillOpacity**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L807)
Defines the "fill-opacity" attribute for the shapes.
@@ -970,7 +972,7 @@ Defines the "fill-opacity" attribute for the shapes.
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**hover**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L744)
+# Shape.**hover**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L819)
If *value* is specified, sets the highlight accessor to the specified function and returns the current class instance.
@@ -978,7 +980,7 @@ If *value* is specified, sets the highlight accessor to the specified function a
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**hoverStyle**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L763)
+# Shape.**hoverStyle**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L838)
The style to apply to hovered shapes.
@@ -986,7 +988,7 @@ The style to apply to hovered shapes.
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**hoverOpacity**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L773)
+# Shape.**hoverOpacity**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L848)
If *value* is specified, sets the hover opacity to the specified function and returns the current class instance.
@@ -994,7 +996,7 @@ If *value* is specified, sets the hover opacity to the specified function and re
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**hitArea**([*bounds*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L792)
+# Shape.**hitArea**([*bounds*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L867)
If *bounds* is specified, sets the mouse hit area to the specified function and returns the current class instance. If *bounds* is not specified, returns the current mouse hit area accessor.
@@ -1014,7 +1016,7 @@ function(d, i, shape) {
```
-# Shape.**id**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L802)
+# Shape.**id**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L877)
If *value* is specified, sets the id accessor to the specified function and returns the current class instance.
@@ -1022,7 +1024,7 @@ If *value* is specified, sets the id accessor to the specified function and retu
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**label**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L812)
+# Shape.**label**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L887)
If *value* is specified, sets the label accessor to the specified function or string and returns the current class instance.
@@ -1030,7 +1032,7 @@ If *value* is specified, sets the label accessor to the specified function or st
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**labelBounds**([*bounds*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L831)
+# Shape.**labelBounds**([*bounds*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L906)
If *bounds* is specified, sets the label bounds to the specified function and returns the current class instance. If *bounds* is not specified, returns the current inner bounds accessor.
@@ -1050,7 +1052,7 @@ function(d, i, shape) {
```
-# Shape.**labelConfig**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L841)
+# Shape.**labelConfig**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L916)
A pass-through to the config method of the TextBox class used to create a shape's labels.
@@ -1058,7 +1060,7 @@ A pass-through to the config method of the TextBox class used to create a shape'
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**opacity**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L851)
+# Shape.**opacity**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L926)
If *value* is specified, sets the opacity accessor to the specified function or number and returns the current class instance.
@@ -1066,7 +1068,7 @@ If *value* is specified, sets the opacity accessor to the specified function or
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**pointerEvents**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L861)
+# Shape.**pointerEvents**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L936)
If *value* is specified, sets the pointerEvents accessor to the specified function or string and returns the current class instance.
@@ -1074,7 +1076,7 @@ If *value* is specified, sets the pointerEvents accessor to the specified functi
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**role**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L871)
+# Shape.**role**(*value*) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L946)
If *value* is specified, sets the role attribute to the specified function or string and returns the current class instance.
@@ -1082,7 +1084,7 @@ If *value* is specified, sets the role attribute to the specified function or st
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**rotate**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L883)
+# Shape.**rotate**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L958)
If *value* is specified, sets the rotate accessor to the specified function or number and returns the current class instance.
@@ -1090,7 +1092,7 @@ If *value* is specified, sets the rotate accessor to the specified function or n
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**rx**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L893)
+# Shape.**rx**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L968)
Defines the "rx" attribute for the shapes.
@@ -1098,7 +1100,7 @@ Defines the "rx" attribute for the shapes.
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**ry**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L903)
+# Shape.**ry**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L978)
Defines the "rx" attribute for the shapes.
@@ -1106,7 +1108,7 @@ Defines the "rx" attribute for the shapes.
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**scale**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L913)
+# Shape.**scale**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L988)
If *value* is specified, sets the scale accessor to the specified function or string and returns the current class instance.
@@ -1114,7 +1116,7 @@ If *value* is specified, sets the scale accessor to the specified function or st
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**select**([*selector*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L923)
+# Shape.**select**([*selector*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L998)
If *selector* is specified, sets the SVG container element to the specified d3 selector or DOM element and returns the current class instance. If *selector* is not specified, returns the current SVG container element.
@@ -1122,7 +1124,7 @@ If *selector* is specified, sets the SVG container element to the specified d3 s
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**shapeRendering**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L937)
+# Shape.**shapeRendering**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1012)
If *value* is specified, sets the shape-rendering accessor to the specified function or string and returns the current class instance.
@@ -1137,7 +1139,7 @@ function(d) {
```
-# Shape.**sort**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L947)
+# Shape.**sort**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1022)
If *value* is specified, sets the sort comparator to the specified function and returns the current class instance.
@@ -1145,7 +1147,7 @@ If *value* is specified, sets the sort comparator to the specified function and
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**stroke**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L957)
+# Shape.**stroke**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1032)
If *value* is specified, sets the stroke accessor to the specified function or string and returns the current class instance.
@@ -1153,7 +1155,7 @@ If *value* is specified, sets the stroke accessor to the specified function or s
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**strokeDasharray**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L967)
+# Shape.**strokeDasharray**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1042)
Defines the "stroke-dasharray" attribute for the shapes.
@@ -1161,7 +1163,7 @@ Defines the "stroke-dasharray" attribute for the shapes.
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**strokeLinecap**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L977)
+# Shape.**strokeLinecap**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1052)
Defines the "stroke-linecap" attribute for the shapes. Accepted values are `"butt"`, `"round"`, and `"square"`.
@@ -1169,7 +1171,7 @@ Defines the "stroke-linecap" attribute for the shapes. Accepted values are `"but
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**strokeOpacity**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L987)
+# Shape.**strokeOpacity**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1062)
Defines the "stroke-opacity" attribute for the shapes.
@@ -1177,7 +1179,7 @@ Defines the "stroke-opacity" attribute for the shapes.
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**strokeWidth**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L997)
+# Shape.**strokeWidth**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1072)
If *value* is specified, sets the stroke-width accessor to the specified function or string and returns the current class instance.
@@ -1185,7 +1187,7 @@ If *value* is specified, sets the stroke-width accessor to the specified functio
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**textAnchor**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1007)
+# Shape.**textAnchor**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1082)
If *value* is specified, sets the text-anchor accessor to the specified function or string and returns the current class instance.
@@ -1193,7 +1195,23 @@ If *value* is specified, sets the text-anchor accessor to the specified function
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**vectorEffect**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1017)
+# Shape.**texture**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1092)
+
+Defines the texture used inside of each shape. This uses the [textures.js](https://riccardoscalco.it/textures/) package, and expects either a simple string (`"lines"` or `"circles"`) or a more complex Object containing the various properties of the texture (ie. `{texture: "lines", orientation: "3/8", stroke: "darkorange"}`). If multiple textures are necessary, provide an accsesor Function that returns the correct String/Object for each given data point and index.
+
+
+This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
+
+
+# Shape.**textureDefault**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1102)
+
+A series of global texture methods to be used for all textures (ie. `{stroke: "darkorange", strokeWidth: 2}`).
+
+
+This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
+
+
+# Shape.**vectorEffect**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1112)
If *value* is specified, sets the vector-effect accessor to the specified function or string and returns the current class instance.
@@ -1201,7 +1219,7 @@ If *value* is specified, sets the vector-effect accessor to the specified functi
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**verticalAlign**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1027)
+# Shape.**verticalAlign**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1122)
If *value* is specified, sets the vertical alignment accessor to the specified function or string and returns the current class instance.
@@ -1209,7 +1227,7 @@ If *value* is specified, sets the vertical alignment accessor to the specified f
This is a static method of [Shape
](#Shape), and is chainable with other methods of this Class.
-# Shape.**x**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1041)
+# Shape.**x**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1136)
If *value* is specified, sets the x accessor to the specified function or number and returns the current class instance.
@@ -1224,7 +1242,7 @@ function(d) {
```
-# Shape.**y**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1055)
+# Shape.**y**([*value*]) [<>](https://github.com/d3plus/d3plus-shape/blob/master/src/Shape/Shape.js#L1150)
If *value* is specified, sets the y accessor to the specified function or number and returns the current class instance.
@@ -1637,4 +1655,4 @@ This is a global typedef.
-###### Documentation generated on Wed, 05 Apr 2023 16:58:23 GMT
+###### Documentation generated on Thu, 08 Feb 2024 21:24:45 GMT