1.0.7 • Published 3 days ago

@siposdani87/expo-maps-polygon-editor v1.0.7

Weekly downloads
-
License
MIT
Repository
github
Last release
3 days ago

@siposdani87/expo-maps-polygon-editor

Version Download License

This multi polygon editor written in TypeScript for the React Native Maps component. This component allows you to select, create, or modify areas on Apple Maps and Google Maps. You can edit multiple polygons at the same time.

Getting Started

Installing

npm install @siposdani87/expo-maps-polygon-editor

Basic Usage

Check example directory for more samples and options.

import { PolygonEditor, getRandomPolygonColors, PolygonEditorRef, MapPolygonExtendedProps } from '@siposdani87/expo-maps-polygon-editor';

const [strokeColor, fillColor] = getRandomPolygonColors();
const polygons: MapPolygonExtendedProps[] = [{
    key: 'key_0',
    coordinates: [
        {
            latitude: 47.64623435880296,
            longitude: 17.488861083984375,
        },
        {
            latitude: 47.69155620579073,
            longitude: 17.514411988020868,
        },
        {
            latitude: 47.65998584885824,
            longitude: 17.54299213146342,
        },
    ],
    strokeWidth: 2,
    strokeColor,
    fillColor,
}];

export const PolygonEditorComponents = () => {
    const polygonEditorRef = useRef<PolygonEditorRef>(null);

    return (
        <MapView
            style={styles.mapContainer}
        >
            <PolygonEditor
                ref={polygonEditorRef}
                polygons={polygons}
            />
        </MapView>
    );
};

const styles = StyleSheet.create({
    mapContainer: {
        ...StyleSheet.absoluteFillObject,
    },
});

Props

PolygonEditor

PropTypeDescription
polygons *MapPolygonExtendedProps[]Input polygons array
onPolygonChange(index: number, polygon: MapPolygonExtendedProps) => voidchange polygon callback
onPolygonCreate(polygon: MapPolygonExtendedProps) => voidcreate polygon callback
onPolygonRemove(index: number) => voidDelete polygon callback
onPolygonSelect(index: number, polygon: MapPolygonExtendedProps) => voidSelect polygon callback
onPolygonUnselect(index: number, polygon: MapPolygonExtendedProps) => voidDeselect polygon callback
disabledbooleanDisable editing on component

Preview

Overview

Bugs or Requests

If you encounter any problems feel free to open an issue. If you feel the library is missing a feature, please raise a ticket. Pull request are also welcome.

Developer

Dániel Sipos

Sponsors

This project is generously supported by TrophyMap, I18Nature, and several other amazing organizations.

1.0.7

3 days ago

1.0.6

2 months ago

1.0.5

4 months ago

1.0.4

10 months ago

1.0.3

10 months ago

1.0.2

12 months ago

1.0.1

1 year ago

1.0.0

1 year ago

0.9.0

1 year ago

0.7.0

1 year ago

0.6.0

2 years ago

0.5.0

2 years ago

0.4.0

2 years ago

0.3.0

2 years ago

0.2.0

2 years ago

0.1.1

3 years ago

0.1.0

3 years ago