官术网_书友最值得收藏!

Structure of OpenLayers 3

OpenLayers 3 is a well structured, modular, and complex library, where flexibility and consistency take higher priority than performance. However, this does not mean OpenLayers 3 is slow. On the contrary, the library highly outperforms its predecessor; therefore its comfortable and logical design does not really adversely affect its performance. The relationship of some of the most essential parts of the library can be described with a radial Universal Modeling Language (UML) diagram, such as the following:

Note

Reading a UML scheme can seem difficult, and can be difficult if it is a proper one. However, this simplified scheme is quite easy to understand. With regard to the arrows, 1 represents a one-to-one relation, while the 0..n and 1 symbols denote a one-to-many relationship.

You will probably never get into direct contact with the two superclasses at the top of the OpenLayers 3 hierarchy: ol.Observable, and ol.Object. However, most of the classes you actively use are children of these classes. You can always count on their methods when you design a web mapping or WebGIS application.

In the diagram, we can see that the parent of the most essential objects is the ol.Observable class. This superclass ensures all of its children have consistent listener methods. For example, every descendant of this superclass bears the on, once, and un functions, making registering event listeners to them as easy as possible.

The next superclass, ol.Object, extends its parent with methods capable of easy property management. Every inner property managed by its methods (get, set, and unset) are observable. There are also convenience methods for bulk setting and getting properties, called getProperties and setProperties. Most of the other frequently used classes are direct, or indirect, descendants of this superclass.

主站蜘蛛池模板: 兴宁市| 区。| 凤翔县| 淮北市| 尚志市| 喀喇沁旗| 浦城县| 临安市| 化隆| 武山县| 炉霍县| 政和县| 尖扎县| 屏山县| 北流市| 滁州市| 道真| 南通市| 武乡县| 贵州省| 桐庐县| 海丰县| 大荔县| 盘锦市| 长寿区| 宁武县| 茶陵县| 昌都县| 山阴县| 衡水市| 和平县| 定日县| 许昌市| 崇文区| 靖宇县| 西丰县| 城步| 太湖县| 巴彦县| 广平县| 磐石市|