npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

maptalks.autoadsorb

v1.0.0-beta.1

Published

Adsorb vertux/border/both of geos on layer When drawing or editing

Downloads

74

Readme

maptalks.autoadsorb

Adsorb vertux/border/both of geos on layer When drawing or editing,inspired on maptalks.snapto

Examples

DEMO

Install

  • Install with npm: npm install maptalks.autoadsorb.
  • Install with yarn: yarn add maptalks.autoadsorb.
  • Download from dist directory.
  • Use unpkg CDN: https://cdn.jsdelivr.net/npm/maptalks.autoadsorb/dist/maptalks.autoadsorb.min.js

Usage

As a plugin, maptalks.autoadsorb must be loaded after maptalks.js in browsers. You can also use 'import { Autoadsorb } from "maptalks.autoadsorb" when developing with webpack.

<!-- ... -->
<script src="https://cdn.jsdelivr.net/npm/maptalks.autoadsorb/dist/maptalks.autoadsorb.min.js"></script>
<!-- ... -->
// new Autoadsorb, option layers is necessary.
const autoAdsorb = new maptalks.Autoadsorb({ layers: [layer] })

// or you can update some options later
autoAdsorb.setMode('vertux')
autoAdsorb.setDistance(20)

// Use when drawing with DrawTool.
autoAdsorb.bindDrawTool(drawTool)

// Use when editing geometry.
autoAdsorb.bindGeometry(geometry)

// Forced refresh of adsorption geometries.Usually used after drawend or editend.
autoAdsorb.refreshTargets()

API Reference

new maptalks.Autoadsorb(options)
  • options Object options
    • layers Array Get layer array or layerID array of the adsorption target.
    • mode String there are three modes, auto/vertux/border, auto by default.
    • distance Number the distance in pixel from mouse to the snap point, 10 by default.
    • shellPoints Number number of shell points in Circle and Ellipse, 60 by default.The larger the number, the smoother the experience when adsorption Circle and Ellipse.
    • needCtrl Boolean do adsorb only with Ctrl, default is false.

bindDrawTool(drawtool) bind a drawtool on map.

bindGeometry(geometry) bind a geometry on map which need edited.

refreshTargets() forced refresh of adsorption geometries.

isEnable() get enable status

setMode() adsorb mode, 'vertux' will only adsorb Point ,'border' will only adsorb Line, and 'auto' will find both but may find Point only if Point and Line at very close

getMode() get mode now

setDistance() adsorb distance, used to set how far to find geometries around

getDistance() get distance now

remove() clear private object

Contributing

We welcome any kind of contributions including issue reportings, pull requests, documentation corrections, feature requests and any other helps.

Develop

The only source file is index.js.

It is written in ES6, transpiled by babel and tested with mocha and expect.js.

Scripts

  • Install dependencies
$ npm install
  • Watch source changes and generate runnable bundle repeatedly
$ gulp watch
  • Package and generate minified bundles to dist directory
$ gulp minify
  • Lint
$ npm run lint

More Things