
Security News
The Changelog Podcast: Practical Steps to Stay Safe on npm
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.
react-leaflet-semicircle-18
Advanced tools
React wrapper of leaflet-semicircle for react-leaflet.
Semicircle vector layers for Leaflet maps. Extends L.Circle and L.CircleMarker.
Most recently tested with Leaflet 1.7.1 and React-Leaflet 3.1.0
The current version of this library supports React Leaflet v3.
If you are using React Leaflet v2, please use the v2 version of this library:
https://github.com/clementallen/react-leaflet-semicircle/tree/v2
npm install react-leaflet-semicircle --save
import { MapContainer, TileLayer } from 'react-leaflet';
import { SemiCircle, SemiCircleMarker } from 'react-leaflet-semicircle';
<MapContainer center={[51.505, -0.09]} zoom={13}>
<TileLayer
url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
attribution='© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
/>
<SemiCircle
position={[51.505, -0.09]}
radius={2000}
startAngle={90}
stopAngle={180}
/>
<SemiCircleMarker
position={[51.505, -0.09]}
radius={20}
startAngle={90}
stopAngle={180}
/>
</MapContainer>;
<SemiCircle
position={[51.505, -0.09]}
radius={2000}
startAngle={90}
stopAngle={180}
/>
| Name | Type | Example | Description |
|---|---|---|---|
| position [required] | L.LatLng[] or Array[number, number] | [51.505, -0.09] | Latitude and Longitude of the semicircle center |
| radius [required] | number | 2000 | Radius of the semicircle in metres |
| startAngle | number | 90 | Starting bearing of the semicircle |
| stopAngle | number | 180 | Ending bearing of the semicircle |
All other options from L.Circle are also supported. View them here
<SemiCircleMarker
position={[51.505, -0.09]}
startAngle={90}
stopAngle={180
/>
| Name | Type | Example | Description |
|---|---|---|---|
| position [required] | L.LatLng[] or Array[number, number] | [51.505, -0.09] | Latitude and Longitude of the semicirclemarker center |
| startAngle | number | 90 | Starting bearing of the semicirclemarker |
| stopAngle | number | 180 | Ending bearing of the semicirclemarker |
All other options from L.CircleMarker are also supported. View them here
Each component comes with additional methods that can be accessed via React Refs.
const semiCircleRef = React.useRef();
// ----
<SemiCircle
position={[51.505, -0.09]}
radius={2000}
startAngle={90}
stopAngle={180}
ref={semiCircleRef}
/>;
Use setDirection(direction, size) to display a semicircle of size degrees at direction.
semiCircleRef.current.setDirection(90, 90);
Use setStartAngle(angle) to set the start angle of the semicircle to angle
semiCircleRef.current.setStartAngle(90);
Use setStopAngle(angle) to set the stop angle of the semicircle to angle
semiCircleRef.current.setStopAngle(90);
FAQs
React wrapper of leaflet-semicircle
We found that react-leaflet-semicircle-18 demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.

Security News
Experts push back on new claims about AI-driven ransomware, warning that hype and sponsored research are distorting how the threat is understood.

Security News
Ruby's creator Matz assumes control of RubyGems and Bundler repositories while former maintainers agree to step back and transfer all rights to end the dispute.