@ltv/leaflet.glify
v1.1.1
Published
web gl renderer plugin for leaflet
Downloads
4
Readme
Leaflet.glify
web gl renderer plugin for leaflet
Pronounced leaflet-G.L.-Ify, or leaflet-glify, or L.-G.L.-Ify, or L-glify, or elglify
inspired by http://bl.ocks.org/Sumbera/c6fed35c377a46ff74c3 & need.
Objective
- To provide a means of rendering a massive amount of data visually in a way that does not degrade user experience
- Remaining as simple as possible with current fastest libs
- Providing the same sort of user experience one would get using standard html and elements
Simple Polygon Usage
L.glify.shapes({
map: map,
data: geoJson,
click: function(e, feature) {
//do something when a shape is clicked
}
});
Simple Points Usage
L.glify.points({
map: map,
data: points,
click: function(e, point, xy) {
//do something when a point is clicked
}
});
(Planned) Simple Lines Usage
L.glify.lines({
map: map,
data:geojson,
click: function(e, feature, xy) {
//do something when a line is clicked
}
});
L.glify.shapes
Options
map
{Object}
required leaflet mapdata
{Object}
required geojson datavertexShaderSource
{String|Function}
optional glsl vertex shader source, defaults to useL.glify.shader.vertex
fragmentShaderSource
{String|Function}
optional glsl fragment shader source, defaults to useL.glify.shader.fragment.polygon
click
{Function}
optional event handler for clicking a shapecolor
{Function|Object|String}
optional, default is 'random'- When
color
is aFunction
its arguments are gets theindex
:number
, and thefeature
:object
that is being colored
- When
className
{String} a class name applied to canvas, default is ''
L.glify.points
Options
map
{Object}
required leaflet mapdata
{Object}
required geojson datavertexShaderSource
{String|Function}
optional glsl vertex shader source, defaults to useL.glify.shader.vertex
fragmentShaderSource
{String|Function}
optional glsl fragment shader source, defaults to useL.glify.shader.fragment.point
click
{Function}
optional event handler for clicking a pointcolor
{Function|Object|String}
optional, default is 'random'- When
color
is aFunction
its arguments are gets theindex
:number
, and thepoint
:array
that is being colored
- When
opacity
{Number} a value from 0 to 1, default is 0.8className
{String} a class name applied to canvas, default is ''size
{Number|Function} pixel size of pointsensitivity
{Number} exagurates the size of the clickable area to make it easier to click a point
L.glify
methods
longitudeFirst()
latitudeFirst()
instances
points(options)
shapes(options)
flattenData(data)
latLonToPixel(lat, lon)
Roadmap
Soon to come, lines, and limitless styles.