OpenStreetMap(OSM) for developers
This article from: http://wiki.openstreetmap.org/wiki/Develop
OpenStreetMap isn't just open data - it's also open source, and you can help!
There are two major areas where you can get involved:
- Developing the OpenStreetMap Platform - this includes the OpenStreetMap.org website and related components and services.
- Using OpenStreetMap - you can use OpenStreetMap data together with software and services from our community to build anything you want.
Get In Touch
If you have questions, ideas or just want to meet fellow developers, you can contact the OpenStreetMap development community by using channels listed below.
- IRC
- #osm-dev channel on the OFTC network
- Mailing Lists
How the pieces fit together
The code that runs openstreetmap.org is composed of independent components that work together to provide an API, Slippy Map, and other bits of functionality.
You don't have to be a guru to get involved. We welcome all sorts of contributions, like documentation, design, testing, and more.
The Rails port is the Ruby on Rails application that powers openstreetmap.org; it's where OSM's pages and basic API originate. OpenStreetMap's data, "the planet", are stored in PostgreSQL with PostGIS, and rendered into pretty map tiles with Mapnik. The Slippy Map interface for those tiles — what lets you pan and zoom the map — is powered by Leaflet.
Internally, osm2pgsql and osmosis are essential infrastructure for converting OSM XML to PostGIS. They work with Planet.osm and other extracts, which let other sites use and distribute OSM data.
Users can add and modify OpenStreetMap data thanks to open-source editors. chief amongst them Potlatch 2 and JOSM.
Background
There's plenty to know about OpenStreetMap's style of storing & modifying geodata that will help you get how things work. Read up on the XML schema and Data Primitives if you want to work on data-related tasks.
Also, OpenStreetMap runs on a relatively small server deployment for its size - see our notes on server hardware for details. There are also API v0.6 mirrors and Dev and Test APIs which help with testing code that interacts with the OSM API.
How to Get Involved
Many of OpenStreetMap's projects use Git (mirror at GitHub), and so you can simply fork a repo and contribute changes.
For larger changes, you may want to get an account on a development server to do serious testing.
Main Projects
由此可知,OpenStreetMap提供开发者不同开发语言的支持则一目了然。
The OSM website Rails Port (Ruby)
This does the UI and API for the site. The Rails port page has plenty of useful information for getting started. Design help is needed here: read Rails_port/UI for a quickstart guide for designers. New users can also review pull requests as practice for getting the Rails Port set up. You can also help by contributing translations.
Desktop map data editor JOSM (Java)
JOSM is one of the most popular and powerful OpenStreetMap editors.
New online map data editor iD (Javascript)
iD is the newest editor for OpenStreetMap. Users can help by testing & reporting bugs, or tackling issues tagged get-started.
Online map data editor Potlatch 2 (Actionscript)
Potlatch 2 was the default editor for new OpenStreetMap users. You can also help by contributing translations.
Desktop map data editor Merkaartor (C++)
The Merkaator project, another great editor for OSM data, is also accepting donations to support development & travel.
OSM data processing swiss army knife Osmosis (Java)
Osmosis is our swiss army knife for processing OpenStreetMap data. Documentation and testing are especially welcome here.
OSM data importer for rendering or geocoding osm2pgsql (C)
osm2pgsql a powertool for importing OSM XML files into PostGIS databases. Documentation and testing are especially welcome here.
Slippy map library Leaflet (Javascript)
Provides the general slippy map interface. Javascript whizzes can help us make the home page's maps even faster.
Map rendering Mapnik (C++)
The main backend for the rendering of the maps that are produced from OSM data.
OpenStreetMap(OSM) for developers的更多相关文章
- OpenStreetMap(OSM) JMap Viewer(Java swing map)
This article from:http://wiki.openstreetmap.org/wiki/JMapViewer JMapViewer is a java component which ...
- OpenLayers 添加OpenStreetMap(OSM)瓦片层示例
This article from:http://wiki.openstreetmap.org/wiki/OpenLayers_Simple_Example Deploy an OpenStreetM ...
- OpenStreetMap(OSM) features
目录 1 Primary features 1.1 Aerialway 1.2 Aeroway 1.3 Amenity 1.3.1 Sustenance 1.3.2 Education 1.3.3 T ...
- OpenStreetMap架构
OpenStreetMap框架简介 1.OSM平台开发 OpenStreetMap(缩写OSM)地图是一个合作项目,我们的目标是创建一个免费的内容,让所有的人都可以编辑的世界地图. OSM在地图上由一 ...
- 使用随机森林实现OSM路网城市多车道信息提取
Multilane roads extracted from the OpenStreetMap urban road network using random forests.,DOI:10.111 ...
- DotNet 资源大全中文版(Awesome最新版)
Awesome系列的.Net资源整理.awesome-dotnet是由quozd发起和维护.内容包括:编译器.压缩.应用框架.应用模板.加密.数据库.反编译.IDE.日志.风格指南等. 算法与数据结构 ...
- 【资源大全】.NET资源大全中文版(Awesome最新版)
算法与数据结构(Algorithms and Data structures) 应用程序接口(API) 应用程序框架(Application Frameworks) 模板引擎(Application ...
- Solr笔记--转载
Solr 是一种可供企业使用的.基于 Lucene 的搜索服务器,它支持层面搜索.命中醒目显示和多种输出格式.在这篇分两部分的文章中,Lucene Java™ 的提交人 Grant Ingersoll ...
- JOSM学习下载地址
JOSM is an extensible editor for OpenStreetMap (OSM) written in Java 7. Currently it supports load ...
随机推荐
- python核心编程-第五章-习题
1.长整型表示数的范围比整型更大.在python中,整型.长整型趋于统一,普通用户不用特别关注两者区别,仅当需引用C语言时需要特别注意. 2.操作符 (a) def product(x,y): ret ...
- 独木舟上的旅行--nyoj题目71
独木舟上的旅行 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客 ...
- 烧饼(nyoj779)
描述烧饼有两面,要做好一个兰州烧饼,要两面都弄热.当然,一次只能弄一个的话,效率就太低了.有这么一个大平底锅,一次可以同时放入k个兰州烧饼,一分钟能做好一面.而现在有n个兰州烧饼,至少需要多少分钟才能 ...
- SQL Server SQLOS
SQLOS 抽象出了: 1.任务高度管理子系统. 2.内存管理子系统. 3.错误,异常处理机制. 4.死锁侦测各解决机制. 5.运行第三方代码. 好处: 1.减少线种的上下文切换.空闲连接不占用线程.
- eclipsecpp从可执行程序员中导入源代码并调试
如果寻找跨平台IDE及调试环境,那eclipse是最佳选择了,因为它有一项超强功能:可以从可执行程序员导入源代码并调试程序,这种特性是非常适合自定义MakeFile项目,不需要改变项目现有结果,即可自 ...
- 杭电oj 1328
Tips:本题中没有任何难度,直接按普通逻辑进行计算即可. #include<stdio.h> #include<string.h> ]={'A','B','C','D','E ...
- JAVA学习第二十九课(经常使用对象API)- String类
多线程告一段落,開始经常使用对象API的涉及,背也要背下来!.! 日后开发,遇见最多的对象是文字,也就是字符串 String类 字符串是一个特殊对象 字符串一旦初始化就不能够被改变 一.特点 publ ...
- 【单调队列】【3-21个人赛】【problmeB】
Problem B Time Limit : 4000/2000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other) Total Sub ...
- js的事件属性方法一览表
event对象常用属性和方法 event 对象用来表示当前事件,事件有很多状态,例如,鼠标单击时的位置,按下键盘时的按键,发生事件的HTML元素,是否执行默认动作,是否冒泡等,这些都是作为event对 ...
- asp.net 获取IP地理位置的几个主要接口
腾讯的IP地址API接口地址:http://fw.qq.com/ipaddress 新浪的IP地址查询接口:http://int.dpool.sina.com.cn/iplookup/iplookup ...