ahalota / leaflet.draw-extension Goto Github PK
View Code? Open in Web Editor NEWAdd a "shapefile" button to the leaflet draw toolbar.
Add a "shapefile" button to the leaflet draw toolbar.
Hi Anika,
Thank you very much for sharing such a great toolππ½ I'm wondering if it is possible to revise it so that it zooms to the uploaded shapefile extent.
Thanks in advance,
Mel
Hi Anika,
Saw this posted to the L.Draw list - very cool!
Regarding this line in your readme - "I really want this to work as an added feature to the Draw control, not needing to be an extended class. Please tell me how to do this if you know!" - I have some advice.
I think there are two ways you can do this pretty easily.
The first is:
1.) wrapping your _addShapefileButton method into an extension of the L.Toolbar class, like L.Draw.Toolbar and L.Edit.Toolbar.
2.) using addInitHook on L.Draw.Control to add another entry to this._toolbars that points to this class.
This technique would be best if you also plan on adding a "export to shapefile" button or something like that.
The second way would be to explicitly set L.DrawToolbar.addToolbar to something like this:
L.DrawToolbar.addToolbar.prototype = function (map) {
var container = L.Toolbar.prototype.addToolbar.call(this, map);
// ... your onAdd logic
return container;
}
This is a bit more hacky, and would break if L.DrawToolbar ever explicitly defines an addToolbar method, but might be easier/faster for you to implement.
In both cases, you'd need to make sure that you add your code after leaflet.draw.src is included but before the draw control is instantiated.
Either way, hope this helps, and good luck!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.