MapServer应用开发平台示例

MapServer为当前开源WebGIS的应用代表,在西方社会应用面极为广泛,现介绍几个基于它的开源应用平台。

1.GeoMOOSE

       GeoMoose is a Web Client Javascript Framework for displaying distributed cartographic data.

Among it's many strengths, it can handle large numbers of mapping layers, all mapping display is abstracted to separate layers.  This allows for the abstraction of the maintenance and updating tasks as well.

The GeoMoose project is client-side code that uses a variety of JavaScript, XML, and DHTML technologies to interface with other web-clients. The primary target of Moose is for integration with the University of Minnesota's MapServer, but is not dependent upon it for operation. Design objectives include:

  • Code must be developed in an Services Oriented Architecture.
  • Configurability for users.
  • Easy maintenance for data owners.
  • A client interface for MapServer, but designed to be open to other server engines.
  • Targeted use cases for local governments.

 

GeoMoose treats all data layers and interface tools as services.  This makes it very easy to design and add new tools as needed.  It also makes GeoMoose a very good candidate for building links from Map based to Tabular datasets.  GeoMoose is designed around the idea of using Web based URL services as an integration method.  It's very easy to integrate in any existing Web based service to GeoMoose.  The same goes for the Toolset inside of GeoMoose. 

GeoMoose is currently built as a front end to MapServer (CGI).  Because of this, it can utilize any of the output functions that MapServer provides, including Raster, XML, and OGC compliant formats.   Each data layer can be displayed as a raster image, a Imagemap for displaying Popups on a per layer basis, as well as be used as a basis for doing additional data requests based on polygons, or buffered elements in a layer.  OGC services such as WMS (and soon WFS) can also be used directly by GeoMoose.   There is no need to even have a CGI service such as MapServer, if the right OGC services are available.  There is also the capability to draw in the mapping interface and use these new elements as data layers in the interface, including, using them as selection criteria.  GeoMoose is very flexible as far as what services it utilizes, while it's currently built against MapServer, other Raster based data services can also be used by GeoMoose.

In addition to the data owners managing their own publishing tasks, GeoMoose, the interface, is initialized via a XML file called a MapBook.  This MapBook can be constructed by anyone, so even the Mapping interface itself can be managed by anyone. Project leaders can build interfaces with Zoom-to controls and with only the pertinent layers being displayed.  The organization of the layers in the catalog can be grouped, turned on/off by default, have opacity applied to them, and be reordered, or stacked, in the "Z" direction.  Placement of the interface elements is also governed by the XML file.  The Services integration is also handled in the XML file, so separate services can be integrated by the non-GIS professional as well.

New capabilities are being added all the time.  There is a very good Windows install based on MS4W available for Download, with a Linux version on the way. Last Updated ( Friday, 23 January 2009 )

基于Javascript架构的MapServer开源应用系统,支持XML配置,现已基本汉化。

 

2.pmapper

    The p.mapper framework is intended to offer broad functionality and multiple configurations in order to facilitate the setup of a MapServer application based on PHP/MapScript.

 

Functions included are:

  • DHTML (DOM) zoom/pan interface (no use of frames)
  • Zoom/pan also via keyboard keys, mouse wheel, reference map, slider
  • Easy configuration of layout and behaviour with XML config file
  • Query functions (identify, select, search)
  • Fully featured attribute search, including suggest, select boxes, etc.
  • Flexible layout of query results via JavaScript templates
  • Query results display with database joins and hyperlinks
  • Multilingual user interface - pre-defined: EN, DE, IT, FR, NL, SK, ES, RU, BR, HR, HU, ZH, JA
  • Fully XHTML 1.0 Strict compliant
  • HTML legends and various display styles of legend and layers/TOC
  • Print functions: HTML and PDF
  • DHTML pop-up windows and dialogs
  • Pop-up identify when moving with mouse over map
  • Support for point layers with data in a database supported by PEAR framework
  • Distance and area measurement function
  • Adding points of interest with labels on map
  • Start map with pre-defined zoom extent: via explicit extent or layer feature
  • Plugin API to add custom functionality
  • Various plugins: layer transparency, query result export, and more

p.mapper has been tested with MapServer version 4.0 to 5.2 under Windows, Linux, and Mac OS X.

 

3.CartoWeb

 CartoWeb is a comprehensive and ready-to-use Web-GIS (Geographical Information System) as well as a convenient framework for building advanced and customized applications.

Developed by Camptocamp SA, it is based on the UMN MapServer engine and is released under the GNU General Public License (GPL).

Written using innovative language PHP5, CartoWeb is highly modular and customizable thanks to its object-oriented architecture. It runs evenly on Windows or Unix-like platforms and shows its real power when associated to PostgreSQL/PostGIS.

Last but not least, CartoWeb may be set up as a SOAP Web Service enabling to have front-end server on one machine and data and map generation on an other.

转载于:https://www.cnblogs.com/cnzzb/archive/2009/02/12/1388873.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/391788.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pymc3 贝叶斯线性回归_使用PyMC3进行贝叶斯媒体混合建模,带来乐趣和收益

pymc3 贝叶斯线性回归Michael Johns, Zhenyu Wang, Bruno Dupont, and Luca Fiaschi迈克尔约翰斯,王振宇,布鲁诺杜邦和卢卡菲亚斯基 “If you can’t measure it, you can’t manage it, or fix it”“如果无法衡量,就无法管理或修复它” –…

ols线性回归_普通最小二乘[OLS]方法使用于机器学习的简单线性回归变得容易

ols线性回归Hello Everyone!大家好! I am super excited to be writing another article after a long time since my previous article was published.自从上一篇文章发表很长时间以来,我很高兴能写另一篇文章。 A Simple Linear Regression [SLR] is…

Amazon Personalize:帮助释放精益数字业务的高级推荐解决方案的功能

By Gerd Wittchen盖德维琴 推荐解决方案的动机 (Motivation for recommendation solutions) Rapid changes in customer behaviour requires businesses to adapt at an ever increasing pace. The recent changes to our work and personal life has forced entire nations t…

Linux 链接文件讲解

链接文件是Linux文件系统的一个优势。如需要在系统上维护同一文件的两份或者多份副本,除了保存多份单独的物理文件之外,可以采用保留一份物理文件副本和多个虚拟副本的方式,这种虚拟的副本就成为链接。链接是目录中指向文件真实位置的占位符。…

系统滚动条实现的NUD控件Unusable版

昨天研究了一下系统滚动条,准备使用它来实现一个NumericUpDown控件,因为它可以带来最正宗的微调按钮外观,并说了一下可以使用viewport里的onScroll事件来获取系统滚动条的上下点击动作。 同时昨天还说了onScroll事件的一个问题是&#xf…

[习题].FindControl()方法 与 PlaceHolder控件 #2(动态加入「子控件」的事件)

这是我的文章备份,有空请到我的网站走走, http://www.dotblogs.com.tw/mis2000lab/ 才能掌握我提供的第一手信息,谢谢您。 http://www.dotblogs.com.tw/mis2000lab/archive/2011/07/26/placeholder_findcontrol_eventhandler.aspx [习题].Fi…

西雅图治安_数据科学家对西雅图住宿业务的分析

西雅图治安介绍 (Introduction) Airbnb provides an online platform for hosts to accommodate guests with short-term lodging. Guests can search for lodging using filters such as lodging type, dates, location, and price, and can search for specific types of hom…

【贪心】买卖股票的最佳时机含手续费

/** 贪心:每次选取更低的价格买入,遇到高于买入的价格就出售(此时不一定是最大收益)。* 使用buy表示买入股票的价格和手续费的和。遍历数组,如果后面的股票价格加上手续费* 小于buy,说明有更低的买入价格更新buy。如…

排序算法Java代码实现(二)—— 冒泡排序

本篇内容: 冒泡排序冒泡排序 算法思想: 冒泡排序的原理是:从左到右,相邻元素进行比较。 每次比较一轮,就会找到序列中最大的一个或最小的一个。这个数就会从序列的最右边冒出来。 代码实现: /*** */ packag…

创意产品 分析_使用联合分析来发展创意

创意产品 分析Advertising finds itself in a tenacious spot these days serving two masters: creativity and data.如今,广告业处于一个顽强的位置,服务于两个大师:创造力和数据。 On the one hand, it values creativity; and it’s not…

vue.js 安装

写 一个小小的安装步骤 踩坑过来的 点击.然后安装cnpm.再接着使用文章说明继续安装 # 全局安装 vue-cli $ cnpm install --global vue-cli # 创建一个基于 webpack 模板的新项目 $ vue init webpack my-project这时候一路空格 选项.当遇到第一个让你敲 Y/N 的时候 选择Y …

pandas之表格样式

在juoyter notebook中直接通过df输出DataFrame时&#xff0c;显示的样式为表格样式&#xff0c;通过sytle可对表格的样式做一些定制&#xff0c;类似excel的条件格式。 df pd.DataFrame(np.random.rand(5,4),columns[A,B,C,D]) s df.style print(s,type(s)) #<pandas.io.f…

多层感知机 深度神经网络_使用深度神经网络和合同感知损失的能源产量预测...

多层感知机 深度神经网络in collaboration with Hsu Chung Chuan, Lin Min Htoo, and Quah Jia Yong.与许忠传&#xff0c;林敏涛和华佳勇合作。 1. Introduction1.简介 Since the early 1990s, several countries, mostly in the European Union and North America, had sta…

蓝牙调试工具如何使用_使用此有价值的工具改进您的蓝牙项目:第2部分!

蓝牙调试工具如何使用This post is originally from www.jaredwolff.com. 这篇文章最初来自www.jaredwolff.com。 This is Part 2 of configuring your own Bluetooth Low Energy Service using a Nordic NRF52 series processor. If you haven’t seen Part 1 go back and ch…

使用Matplotlib Numpy Pandas构想泰坦尼克号高潮

Did you know, a novel predicted the Titanic sinking 14 years previously to the actual disaster???您知道吗&#xff0c;一本小说预言泰坦尼克号在14年前沉没到了真正的灾难中&#xff1f;&#xff1f;&#xff1f; In 1898 (14 years before the Titanic sank), Amer…

pca数学推导_PCA背后的统计和数学概念

pca数学推导As I promised in the previous article, Principal Component Analysis (PCA) with Scikit-learn, today, I’ll discuss the mathematics behind the principal component analysis by manually executing the algorithm using the powerful numpy and pandas lib…

红黑树分析

红黑树的性质&#xff1a; 性质1&#xff1a;每个节点要么是黑色&#xff0c;要么是红色。 性质2&#xff1a;根节点是黑色。性质3&#xff1a;每个叶子节点&#xff08;NIL&#xff09;是黑色。性质4&#xff1a;每个红色节点的两个子节点一定都是黑色。不能有两个红色节点相…

overlay 如何实现跨主机通信?- 每天5分钟玩转 Docker 容器技术(52)

上一节我们在 host1 中运行了容器 bbox1&#xff0c;今天将详细讨论 overlay 网络跨主机通信的原理。 在 host2 中运行容器 bbox2&#xff1a; bbox2 IP 为 10.0.0.3&#xff0c;可以直接 ping bbox1&#xff1a; 可见 overlay 网络中的容器可以直接通信&#xff0c;同时 docke…

Python:实现图片裁剪的两种方式——Pillow和OpenCV

原文&#xff1a;https://blog.csdn.net/hfutdog/article/details/82351549 在这篇文章里我们聊一下Python实现图片裁剪的两种方式&#xff0c;一种利用了Pillow&#xff0c;还有一种利用了OpenCV。两种方式都需要简单的几行代码&#xff0c;这可能也就是现在Python那么流行的原…

鼠标移动到ul图片会摆动_我们可以从摆动时序分析中学到的三件事

鼠标移动到ul图片会摆动An opportunity for a new kind of analysis of Major League Baseball data may be upon us soon. Here’s how we can prepare.不久之后&#xff0c;我们将有机会对美国职棒大联盟数据进行新的分析。 这是我们准备的方法。 It is tempting to think t…