| .. | ||
| dist | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
svg.select.js
An extension of svg.js which allows to select elements with mouse
Note: Duo to naming conflicts the exported method was renamed from select() to selectize().
Demo
For a demo see http://svgdotjs.github.io/svg.select.js/
Get Started
-
Install
svg.select.jsusing bower:bower install svg.select.js -
Include the script after svg.js into your page
<script src="svg.js"></script> <script src="svg.select.js"></script> -
Select a rectangle using this simple piece of code:
<div id="myDrawing"></div> var drawing = new SVG('myDrawing').size(500, 500); drawing.rect(50,50).selectize()
Usage
Select
var draw = SVG('drawing');
var rect = draw.rect(100,100);
rect.selectize();
// or deepSelect
rect.selectize({deepSelect:true});
Unselect
rect.selectize(false);
// or deepSelect
rect.selectize(false, {deepSelect:true});
You can specify which points to be drawn (default all will be drawn)
The list can be an array of strings or a comma separated list / string, representing each position, in correspondence with the classes:
lt- left toprt- right toprb- right bottomlb- left bottomt- topr- rightb- bottoml- left
Example of drawing only top and right points:
rect.selectize({
points: ['t', 'r'] // or 't, r'
})
There is also an extra option called pointsExclude which can be a list of points to be excluded from the points list.
So let's say that you need all the points except top and right:
rect.selectize({
pointsExclude: ['t', 'r'] // or 't, r'
})
You can style the selection with the classes
svg_select_boundingRectsvg_select_pointssvg_select_points_lt- left topsvg_select_points_rt- right topsvg_select_points_rb- right bottomsvg_select_points_lb- left bottomsvg_select_points_t- topsvg_select_points_r- rightsvg_select_points_b- bottomsvg_select_points_l- leftsvg_select_points_rot- rotation pointsvg_select_points_point- deepSelect points
Options
- points: Points should be drawn (default
['lt', 'rt', 'rb', 'lb', 't', 'r', 'b', 'l']) - pointsExclude: Same as points option, only thing that this excludes listed points, you can use (default
[]) - classRect: Classname of the rect from the bounding Box (default
svg_select_boundingRect) - classPoints: Classname/Prefix of the Points (default
svg_select_points) - pointSize: Size of the point. Radius for the
pointType: 'circle'or size of a rect forpointType: 'rect'(default7) - rotationPoint: Draws the point for doing rotation (default
true) - deepSelect: Only for polygon/polyline/line. Selects the points itself (default
false) - pointType: Type of a point,
circleorrector function (see functions for drawing circle or rect points) (defaultcircle)