Comments (10)
A ma connaissance, ce n'est pas une fonctionnalité disponible dans GeoNature-citizen.
Leaflet.markercluster est la librairie Leaflet permettant de faire des clusters quand plusieurs points sont proches ou au même endroit :
Donc je ne pense que cela soit là qu'il faut que tu interviennes.
Mais plutôt sur le style global Leaflet des objets.
Peux-tu préciser ce que tu souhaiterais faire et sur quelles pages ?
Afficher les données par maille quand on est à une échelle plus large est possible bien sur, avec des développements.
from geonature-citizen.
Merci pour ce retour rapide !
En effet, pour mon deuxième chemin, j'ai été trop loin. J'ai effectivement testé une modif du rayon des clusters qui semble avoir fonctionné.
Je souhaiterais gérer plus précisément (selon le seuil de zoom) la représentation des objets sur la page des observations principalement (+détail mais pour ca c'est bon avec le symbole png).
Je suis passé à coté pour le style global. C'est dans frontend/node_modules ?
Et pourquoi pas, être capable d'afficher une grille avec densité d'objet dans le genre de celle-ci :
Cordialement
from geonature-citizen.
OK cette carte est pour la saisie, pour indiquer si l'espèce est vue dans la maille (vert), non vue (rouge) ou ne sait pas (bleu) donc c'est un peu différent.
Je pense donc que ce que tu veux faire est plutôt comme ce qu'on fait dans GeoNature-atlas : https://biodiversite.ecrins-parcnational.fr/espece/61057
Je pense pas que cela soit dans les node_modules où sont juste installées les librairies JS, mais je ne maîtrise pas le sujet.
Et pour afficher des densités, il faut d'abord calculer le nombre d'observations par maille avec une intersection géographique.
Donc y a un peu de boulot et il faut des compétences en développement que je n'ai pas.
Bon courage :-)
from geonature-citizen.
Oui en effet, je me doute que pour un maillage de densité il y a un certain nombre de chose à faire.
Du coup quand vous indiquez
Mais plutôt sur le style global Leaflet des objets.
Est-ce que vous savez quel fichier est concerné ?
Merci
from geonature-citizen.
Est-ce que vous savez quel fichier est concerné ?
Non pas du tout.
from geonature-citizen.
Bonjour @jonath35 et @camillemonchicourt,
Je ne pense pas avoir compris pour le "style global leaflet des objets", que voulez-vous entendre par là ?
from geonature-citizen.
Bonjour,
Merci pour vos retours.
Je vais essayer de trouver le code source correspondant au lien indiqué plus haut :
Je pense donc que ce que tu veux faire est plutôt comme ce qu'on fait dans GeoNature-atlas : https://biodiversite.ecrins-parcnational.fr/espece/61057
from geonature-citizen.
De façon basique, j'ai modifié le fichier /frontend/src/app/programs/base/map/map.component.ts
En ajoutant des variables qui définissent différentes icônes, une variable d'affectation et une variable pour récupérer le niveau de zoom :
var Icon_petite = L.icon({iconUrl: MAP_CONFIG['OBS_POINTER'],iconSize: [200, 200],iconAnchor: [100, 100]});
var Icon_grande = L.icon({iconUrl: MAP_CONFIG['OBS_POINTER'],iconSize: [600, 600],iconAnchor: [300, 300]});
var icon_nom;
var zoom;
Plus bas dans la partie :
export abstract class BaseMapComponent implements OnChanges {
[....]
this.observationMap.on('zoomend', () => {
//recuperer le zoom
zoom = this.observationMap.getZoom();
//tester le zoom, affecter le symbole
if (zoom > 15) {
icon_nom = Icon_grande;
} else {
icon_nom = Icon_petite;
}
this.loadFeatures();
});
[...]
Il ne s'agit que d'une configuration simpliste et certainement perfectible mais elle permet de remonter le niveau de zoom.
from geonature-citizen.
Bonjour,
Je constate que si cette modification permet d'adapter le comportement sur le module observation, un bug apparait dans le module "site".
Si on rafraichie la page d'un programme "site", une erreur apparait :
TypeError: Cannot read property 'parentNode' of undefined
at remove (/home/geonatadmin/gncitizen/frontend/dist/server.js:255569:20)
at NewClass.onRemove (/home/geonatadmin/gncitizen/frontend/dist/server.js:264091:5)
at NewClass.removeLayer (/home/geonatadmin/gncitizen/frontend/dist/server.js:259936:12)
at NewClass.removeFrom (/home/geonatadmin/gncitizen/frontend/dist/server.js:259817:10)
at NewClass.remove (/home/geonatadmin/gncitizen/frontend/dist/server.js:259806:17)
at NewClass.remove (/home/geonatadmin/gncitizen/frontend/dist/server.js:257056:22)
at SitesMapComponent../src/app/programs/base/map/map.componentOrig.ts.BaseMapComponent.ngOnDestroy (/home/geonatadmin/gncitizen/frontend/dist/server.js:341400:29)
at callProviderLifecycles (/home/geonatadmin/gncitizen/frontend/dist/server.js:24530:18)
at callElementProvidersLifecycles (/home/geonatadmin/gncitizen/frontend/dist/server.js:24498:13)
at callLifecycleHooksChildrenFirst (/home/geonatadmin/gncitizen/frontend/dist/server.js:24488:29)
l'utilisation de variable devrait certainement être mieux implémentée dans ma modif mais ce qui est étonnant c'est que ce problème n'apparait pas sur le module observation.
J'ai du mal à identifier les corrections à apporter.
Merci d'avance pour votre aide.
from geonature-citizen.
J'ajoute un commentaire en espérant faire avancer le sujet.
Pour mieux cerner le problème, j'ai simplement ajouté :
this.observationMap.on('zoomend', () => {
this.loadFeatures();
});
l. 236 du ficher /base/map/map.component.ts, avant la fin de initMap(...} sans autre code.
Le problème ci-dessus se manifeste toujours avec un F5 sur un programme "site" alors qu'il ne se présente pas sur un programme "observation".
Il semble donc que dans l'appel ou l’exécution de la fonction loadFeatures() et visiblement sur le RemoveLayer il y ait un problème de contexte.. Mais je bloque toujours.
Merci d'avance
from geonature-citizen.
Related Issues (20)
- [Module sites] Edition des sites et vistes par les utilisateurs HOT 1
- [Module sites] Edition des sites existants par son créateur HOT 1
- [Module sites] Edition des visites de sites par leur créateur HOT 1
- Installation de TaxHub automatique HOT 3
- liste tronquée saisie observation HOT 34
- Appel à Taxhub directement depuis le front pour récupérer la liste des taxons HOT 2
- Validation des observations avant affichage HOT 4
- [Observations] Amélioration de la fonctionnalité autocomplete de taxon HOT 16
- [Observations] Affichage du taxon sélectionné HOT 3
- [Backoffice] Amélioration de l'affichage HOT 3
- Catalogue de programmes HOT 1
- saisie hors zone géographique HOT 1
- [Installation] Version de wtforms HOT 4
- formulaire de saisie de visites: champs multiples? HOT 6
- Erreur suite a install docker HOT 1
- [Backoffice] Exporter les observations HOT 3
- Création de mot de passe impossible avec certains caractères spéciaux ?
- [Backend] Lru_cache empêche l'accès aux média récents des taxons HOT 1
- [Formulaire espèce] Pb d'interaction à la sélection d'un taxon
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from geonature-citizen.