Communauté

Etes-vous intéressé par un groupe d'utilisateurs Autodesk pour les Infrastructures ?

Geospatial France - lun, 02/13/2017 - 09:22

Tout est dans le titre : êtes-vous intéressé par un groupe d’utilisateurs des solutions Autodesk pour les Infrastructures ?

Le succès du PRUG (Paris Revit User Group) donne un bon exemple de ce que peut réaliser un tel groupe.

Vincent Fredon a lancé un appel sur Civil Made in France.

Si vous êtes intéressé, contactez-le ! Son adresse email est du type prénom.nom@autodesk.com

Et sinon, n’hésitez pas à laisser un commentaire ici ou sur le blog de Vincent.

Catégories: Société

Meilleurs vœux 2017 ! Best wishes for 2017 !

Oslandia - lun, 01/23/2017 - 12:00

(english below)


Meilleurs voeux 2017

Toute l'équipe d'Oslandia vous présente ses meilleurs voeux pour cette nouvelle année pleine de découvertes, de richesses, de vitalité et d'Open Source.

L'année 2016 fût rythmée par nos participations

  • aux diverses conférences : FOSS4G 2016, PG Session #8, Rencontre QGIS
  • Code Sprints : OSGeo "C-tribe", QGIS Server

Nous avons contribué aux différents outils dans les domaines

  • de la 3D : py3DTiles, iTowns, building server, pgmorton, SFCGAL/PostGIS
  • des transports : Tempus
  • de la gestion des réseaux d'eau : QWAT
  • des web services : mod_pep

et de QGIS : QGIS Server multithreadé, meshlayer, fonction de loupe sur carte, gestion des diagrammes, etc..


L'année 2016 a donc été riche et nous souhaitons faire encore mieux pour 2017. Nous allons continuer à vous accompagner sur tout besoin en SIG Open Source, 3D et données spatiales. Et ça démarre fort avec le recrutement de nouveaux collaborateurs et des projets innovants!


A très bientôt,


L'équipe Oslandia


Pour toute information ou demande : infos@oslandia.com

Happy new year 2017

The whole team at Oslandia sends you its best wishes for this new year, full of innovation, prosperity, energy and Open Source.

2016 was marked with our involvement in

  • conferences: FOSS4G 2016, PG Session #8, QGIS Meeting
  • Code Sprints: OSGeo "C-tribe", QGIS Server

We have contributed tools in numerous fields, e.g.

  • 3D : py3DTiles, iTowns, building server, pgmorton, SFCGAL/PostGIS
  • transportation: Tempus
  • water network management: QWAT
  • web services: mod_pep

and QGIS: QGIS Server multithreading, meshlayer, magnifying glass on map features, diagrams management, etc..


2016 was full of promises and we are committed to doing even better in 2017. We will continue to collaborate with you in Open Source GIS, 3D and spatial data. New collaborators and innovative projects: this new year starts with exciting perspectives !


Stay tuned!


Oslandia Team


For any information : infos@oslandia.com

Catégories: Société

Enquête sur le BIM pour les infrastructures - en français

Geospatial France - ven, 01/06/2017 - 08:49

Que vous réalisiez déjà vos projets d’infrastructures en BIM ou non, votre avis intéressera Dodge Data & Analytics.

A la suite de l’enquête, Dodge réalisera un rapport concernant les Etats Unis, la Grande Bretagne, l’Allemagne et la France.

Vous avez jusqu’à fin janvier 2017 pour répondre en ligne à l’enquête, en français.

Vous avez votre mot à dire sur le BIM !

Lien pour l’enquête en français

Catégories: Société

Bonne année 2017 !

Geospatial France - mar, 01/03/2017 - 12:18

C’est de saison : je vous souhaite une très bonne année 2017, avec santé, réussite et toutes les autres options :-)

Du côté du blog Geospatial made in France, c’est aussi l’occasion de partager quelques statistiques, depuis la création en juin 2007 :
- plus de 1.1 millions de pages vues
- 848 articles (849 avec celui-ci)
- et toujours autour de 1000 abonnés (RSS ou mails)

Les articles sont automatiquement publiés sur Twitter et LinkedIn, ce qui m’apporte souvent plus d’interactions avec les lecteurs.

2017 sera aussi une année qui verra de nouvelle technologie Autodesk, et le lancement du Leica BLK360 avec Autodesk ReCap 360 Pro, que j’ai hâte de voir en œuvre.

A très bientôt !

Catégories: Société

Passez de bonnes fêtes !

Geospatial France - lun, 12/19/2016 - 08:52

Je vais sans doute poster un peu moins dans les semaines qui viennent.
Je voulais tout de même vous souhaiter de passer de bonnes fêtes, et vous donne rendez-vous l’année prochaine !

Catégories: Société

Envoyer des SMS en Python avec l’API OVH

NeoGeo-Online - lun, 11/28/2016 - 17:07

Un petit post technique pour partager une expérience récente et servir aussi d’aide-mémoire tant il n’a pas été simple de trouver la configuration adéquate. Il s’agit d’envoyer des SMS depuis un script python, dans un contexte d’envoi d’alertes dans mon cas, mais ça peut aussi être utile dans d’autres cas (Nouvel an, Saint-Valentin…). On dispose pour cela de l’API OVH, pour peu qu’on y ait souscrit une offre SMS (c’est la partie la plus simple).

  • Charger l’API OVH en python

Première étape ensuite, disposer depuis Python d’un accès à l’API. Si comme moi vous commencez par la page « Premiers pas avec l’API » d’OVH, vous trouverez en bas de celle-ci le lien vers la « surcouche » de l’API en Python. Première erreur. Je ne sais pas si c’est déprécié ou n’a jamais bien fonctionné, mais il suffit en fait de passer par pip et d’installer la librairie ovh !

Donc :

pip install ovh

Et la meilleure doc est finalement là : https://github.com/ovh/python-ovh

  • Comprendre les différentes clés.

Comme l’indique la première page de la doc de la librairie Python sur Pypi, l’instanciation d’un objet Client de l’API nécessite de transmettre trois paramètres liés à votre compte : une « application key », une « application secret » et une « consumer key » ! Pour les deux premières, c’est assez simple, il suffit d’aller à la page dédiée sur le site OVH : on y créé son « application » et en retour on obtient les clé applicative et son mot de passe. Pour la troisième ça se corse… Il faut faire un script permettant de la générer. Il est indiqué sur la page github, mais mérite qu’on s’y arrête :

# -*- encoding: utf-8 -*- import ovh # create a client using configuration client = ovh.Client() # Request RO, /me API access ck = client.new_consumer_key_request() ck.add_rules(ovh.API_READ_ONLY, "/me") # Request token validation = ck.request() print "Please visit %s to authenticate" % validation['validationUrl'] raw_input("and press Enter to continue...") # Print nice welcome message print "Welcome", client.get('/me')['firstname'] print "Btw, your 'consumerKey' is '%s'" % validation['consumerKey']

Déjà la partie de création de l’objet client suppose que vous appliquiez ce qui a été fait dans les paragraphes précédents de la doc (ce qui n’est pas forcément le cas). Donc on fait plutôt ça :

client = ovh.Client('ovh-eu', application_key='your_application_key', application_secret='your_application_secret, consumer_key='' )

Ensuite, modifiez aussi le script pour activer les droits nécessaires à l’envoi des SMS et à l’accès à votre compte :

# Request RW, /me and /sms API access ck = client.new_consumer_key_request() ck.add_recursive_rules(ovh.API_READ_ONLY, "/me") ck.add_recursive_rules(ovh.API_READ_WRITE, "/sms")

et lancez le script en ligne de commande.
Celui-ci va générer un lien, et vous demander d’appuyer sur Entrée pour continuer. Mais visitez bien le lien d’abord ! Sur la page web correspondante, validez les droits indiqués, choisissez leur limite de validité et seulement alors terminez l’exécution du script en appuyant sur Entrée en ligne de commande. Normalement vous obtenez alors votre précieuse « consumer key » qui va vous permettre d’instancier dans de nouveaux scripts des objets ovh.Client dotés des droits qui leur ont été associés. On va donc pouvoir envoyer des SMS via les méthodes de l’API OVH.

  • Envoyer un SMS pour de vrai

On trouve vite dans la doc de l’API les URL à utiliser pour manipuler des SMS, qui recourrent toutes à une dimension « serviceName » référencée nulle part (non, ce n’est pas « sms »). Il faut récupérer cette dernière par une première requête à l’API, de la forme :

res = client.get('/sms')

qui renvoie un tableau avec une seule valeur, celle du nom interne de votre service, avec lequel on peut alors construire l’URL de base pour la suite :

url = '/sms/' + res[0] + '/jobs/'

On voit ensuite dans la doc de l’API qu’il suffit de faire un POST sur /jobs pour envoyer des SMS, mais la liste des paramètres obligatoires ou optionnels est longue et pas forcément juste… Si vous aurez sans doute des idées quant au contenu du message, il vous faudra obligatoirement un paramètre « sender » correspondant à l’expéditeur du SMS. C’est une string, mais qui doit correspondre à un compte expéditeur créé dans la console d’administation de votre compte OVH-Télécom. Il faut le savoir, d’autant que le paramètre est marqué comme facultatif dans la doc (mais l’API elle-même vous rappelle vitre à l’ordre lors de vos essais infructueux). Par défaut vous en avez un qui correspond à votre compte général OVH, mais vous pouvez aussi en créer de nouveaux, avec des noms plus adaptés à l’application. Une fois le nom du Sender récupéré dans l’admin, ça devient plus simple :

result_send = client.post(url, charset='UTF-8', coding='7bit', message="Votre message", noStopClause=False, priority='high', receivers= ["+336xxxxxxxx","+336xxxxxxxx"], senderForResponse=False, validityPeriod=2880, sender="Le nom du sender tel que proposé dans l'admin" ) print json.dumps(result_send, indent=4) # pour l'affichage du résultat de la transaction.

Remarquez néanmoins l’utilisation de la numérotation internationale et quelques paramètres dont la description est proposée dans la doc de l’API.
Normalement c’est bon, vos destinataires devraient recevoir leurs messages.
A bientôt

Catégories: Société

4ème rencontre francophone des utilisateurs de QGIS

Camptocamp - ven, 11/25/2016 - 14:26

Montpellier SupAgro et l'OSGeo-fr organisent la 4ème rencontre francophone des utilisateurs de la solution QGIS qui se déroulera à Montpellier, les 1er et 2 décembre 2016.

Cet article 4ème rencontre francophone des utilisateurs de QGIS est apparu en premier sur Camptocamp.

Catégories: Société

Conférence BIM Autodesk - 8 décembre, Paris

Geospatial France - jeu, 11/17/2016 - 01:07

 

Le 8 décembre prochain, Autodesk organise la conférence BIM, avec des  retours d’expériences de clients.

Venez écouter, et interagir avec Vinci Construction France, Arcadis, Artelia, Areva, Cebatec, Egis, et Systra !

L’agenda est disponible sur le site de l’évènement, avec la liste des intervenants.

Inscrivez-vous en ligne rapidement, les places sont comptées !

Catégories: Société

py3dtiles

Oslandia - mar, 11/08/2016 - 10:00

py3dtiles is a Python module aiming to manage the 3DTiles format.



For now, only the Point Cloud specification is supported but some development are expected soon to extend the coverage of the library to other parts of the specification!


The module is still in development but an early version is already available on Pypi here.


Who's using py3dtiles?

py3dtiles is currently used by LOPoCS, a server streaming Point Cloud from Postgis, to send data to Cesium.



Open Source

Everything is on github : https://github.com/Oslandia/py3dtiles

Support

Please let us know if you are interested in development, training or consulting around these pieces of technology.


Do not hesitate to contact us at infos@oslandia.com.

Catégories: Société

LOPoCS : Stream your Point Cloud from Postgis

Oslandia - jeu, 11/03/2016 - 10:00

LOPOCS is a point cloud server written in Python, allowing to load Point Cloud from Postgis thanks to the pgpointcloud extension.



Point Cloud are loaded in database thanks to PDAL and patches are compressed in LAZ. To stream hundreds of millions of points with LOD in an effective way, points are ordered with the Midoc algorithm and a revert Morton code is used when too many patches are involved!


The Potree viewer is currently able to display points coming from LOPoCS through a simple HTTP protocol.



Open Source

Some development has been in made in various projects:


Everything is on github : https://github.com/LI3DS/

Collaboration

LI³DS is an OpenSource project by Oslandia and IGN for 3D scanning and data management. LOPoCS is the result of a great collaboration, in particular with Rémi Cura and Mathieu Brédif.


And plenty of new people in perspective!

Support

Please let us know if you are interested in development, training or consulting around these pieces of technology.


Do not hesitate to contact us at infos@oslandia.com.

Catégories: Société

Rencontres QGIS utilisateurs les 1er et 2 décembre 2016 à Montpellier

Oslandia - mer, 11/02/2016 - 11:00

Cette année encore, l'OSGEO-fr et Montpellier SupAgro organisent deux jours de rencontres dédiées aux utilisateurs de QGIS.

Chez Oslandia nous sommes fiers d'être parmi les mécènes de cet évènement cette fois encore.

Le thème des conférences est cette année :

QGIS, un outil adapté à mon métier?

Nous serons présents pour vous rencontrer et parler de QGIS et des applications métier de gestion de l'eau à destination des collectivités (Eau potable, Assainissement).

L'annonce de l'évènement

L'appel à contribution

Les inscriptions ouvrent cette semaine, réservez vos créneaux !
Catégories: Société

Additions to the MapFish Protocol

Eric Lemoine - sam, 04/18/2009 - 23:55

We recently added new stuff to the MapFish Protocol.

As a refresher, let’s first take a look at what the MapFish Protocol had before the new additions.

(Note that you’d need the JSONovich FireFox extension to see the output of the examples given below in your web browser.)

Geographic query params

  • box={x1},{y1},{x2},{y2}: the features within the specified bounding box
  • geometry={geojson_string}: the features within the specified geometry
  • lon={lon}&lat={lat}&tolerance={tol}: the features within the specified tolerance of the specified lon/lat

Examples:

Limiting and Sorting

  • limit={num}: the maximum number of features returned
  • offset={num}: the number of features to skip
  • order_by={field_name}: the name of the field to use to order the features
  • dir=ASC|DESC: the ordering direction

Examples:

The new params

  • no_geom=true|false: so that the returned feature has no geometry (“geometry”: null)
  • attrs={field1}[,{field2},...]: to restrict the list of properties returned in the features
  • queryable={field1}[,{field2},...]: the names of the feature fields that can be queried
  • {field}__{query_op}={value}: filter expression, field must be in the list of fields specified by queryable, query_op is one of “eq”, “ne”, “lt, “le”, “gt”, “ge”, “like”, “ilike”

And now an example combining all the new parameters:

The above query returns a GeoJSON representation of the summits whose names include “col” and whose elevations are greater than or equal to 3500. The returned features have no geometry and their attributes include “name” and “elevation” only.

Not including the geometry in the features makes the parsing in the browser much faster, so for cases where the geometries aren’t needed this is a big win.

Credits for the “queryable={field}&{field}__{query_op}={value}” syntax goes to FeatureServer!


Catégories: Technique

Secure TileCache With Pylons and Repoze

Eric Lemoine - dim, 02/15/2009 - 19:14

This post shows how one can secure TileCache with Pylons and Repoze.

In a Pylons application one can run a WSGI application from within a controller action. Here is a simple example:

class MainController(BaseController) def action(self, environ, start_response): return wsgiApp(environ, start_response)

TileCache is commonly run from within mod_python. TileCache can also be run as a WSGI application, therefore it can be run from within the controller action of a Pylons application. Here’s how:

from TileCache.Service import wsgiApp class MainController(BaseController) def tilecache(self, environ, start_response): return wsgiApp(environ, start_response)

Pretty cool… But it gets really interesting when repoze.what is added to the picture. For those who don’t know repoze.what, repoze.what is an authorization framework for WSGI applications. repoze.what now provides a Pylons plugin, making it easy to protect controllers and controller actions in a Pylons application. Here’s how our tilecache action can be protected:

from TileCache.Service import wsgiApp from repoze.what.predicates import has_permission from repoze.what.plugins.pylonshq import ActionProtector class MainController(BaseController) @ActionProtector(has_permission('tilecache')) def tilecache(self, environ, start_response): return wsgiApp(environ, start_response)

With the above, anyone who tries to access /tilecache will have to be granted the tilecache permission. Otherwise, authorization will be denied.

TileCache is secured!

People often want finer-grained authorization, like give certain users access to certain layers. With Pylons’ routing system this can be easily and elegantly achieved using repoze.what, I will show that in a later post.


Catégories: Technique
S'abonner à OSGeo-fr agrégateur