WO2012144893A2 - Method and system for generating maps in an n-dimensional space - Google Patents
Method and system for generating maps in an n-dimensional space Download PDFInfo
- Publication number
- WO2012144893A2 WO2012144893A2 PCT/NL2012/050255 NL2012050255W WO2012144893A2 WO 2012144893 A2 WO2012144893 A2 WO 2012144893A2 NL 2012050255 W NL2012050255 W NL 2012050255W WO 2012144893 A2 WO2012144893 A2 WO 2012144893A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- boundary
- dimensional
- representation
- zone
- scale
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three-dimensional [3D] modelling for computer graphics
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three-dimensional [3D] modelling for computer graphics
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/36—Level of detail
Definitions
- the present invention relates to a method for generating maps in an n- dimensional space.
- the present invention further relates to a system for generating maps in an n-dimensional space.
- the present invention further relates to a client-server combination for generating maps in an n-dimensional space.
- the present invention further relates to a server for said client server combination.
- the present invention further relates to a client for said client server combination.
- Digital map data is usually based on a reference (or base) map showing an area partitioned into zones by boundaries.
- a map is a particular example of a 2D representation, but more and more 3D 'maps' are being created and used nowadays.
- the zones in the map represent different cultural and/or geographical features.
- the display is part of a client and the map data is provided by a remote server it is desired to limit the amount of data to be send by the server.
- a data structure that stores the results of a generalization as a scale-less map inside a spatial DBMS.
- This structure enables interactive visualization of polygonal subdivisions on any scale by maintaining a topological structure from which a map can be reconstructed.
- the reconstruction of a polygonal subdivision for a given scale is done in two steps. The first step retrieves the necessary boundary lines from the database together with information on how these boundaries should be combined for a subdivision. The second step reconstructs a topologic layer from these boundaries.
- the two steps in the process are modeled in such a way that the first step can be efficiently implemented on top of a standard spatial DBMS (with three simple SQL queries).
- the second part of the process which is more iterative, can be either performed at the client side or on an application server.
- An important feature of the data structure is that the data is stored topologically in such a way that as much of the geometry of an object is re-used. This avoids redundancy (and potential related inconsistencies) and makes the storage compact and ensures that only little data needs to be shipped from the database.
- An integral part of the setup of the data structure is the use of a third geometric dimension for the scale information different for every object at instance level (and therefore not limited to a fixed number of scales for the whole dataset).
- 3D indexing methods on the combined geometric and scale data. This in turn allows the efficient selection of records based on both the geometric as well as the scale requirements in simple queries.
- the 3D geometries that are used to support these indexes are 3D boxes that are created as the 2D bounding boxes of the geometric shapes of respectively the edges and the faces, extended with the scale values for the third dimension. Selection of faces takes place by intersection of 3D boxes with a 3D rectangle.
- a collapse operation comprises a sequence of sub-operations.
- a 2D feature is replaced by a one -dimensional feature or by a zero-dimensional feature.
- a rectangle representing a road is replaced by a line.
- the area previously occupied by the rectangle is split and the parts are reassigned to the adjacent zones.
- Other generalization operations such as "typify" are possible.
- a typify operation a complicated pattern is replaced by a simplified pattern. For example, in a typified representation a group of islands is replaced by a representative smaller set of islands.
- each of the images is directly generated, by applying optimization techniques, from the map having the highest level of detail.
- the generation is quite computation intensive and therefore just a limited number of fixed scales (LoDs) are computed. Subsequent LoDs may not 'fit well' as they are independently generated from the highest LoD.
- LoDs fixed scales
- the levels of detail are generated iteratively. I.e. each level of detail is generated from the next higher level of detail. This is less computational intensive and therefore many more LoDs may be computed.
- the end-result of this iterative approach may be less good than an optimized end-result directly generated from the highest LoD.
- the article describes a hybrid approach, wherein first a dataset at a lowest level of detail is generated. Subsequently a set of intermediate datasets is generated that uses the information in the next higher level of detail and the information in the lowest level of detail.
- subsequent steps involve a discontinuity in the displayed features. For example zones that may be present in a particular level of detail, may suddenly disappear in the next level of detail.
- a method for generating a vario-scale visual representation of n-dimensional objects comprising the steps of
- S2 positioning a higher and a lower detailed n-dimensional object representation in an (n+1)- dimensional space, having in addition to the dimensions of the n- dimensional object representations an additional dimension, wherein the higher and the lower detailed n-dimensional object representations are assigned a first and a second value (scale level) for said additional dimension respectively,
- determining (S4) an intermediate n-dimensional object representation by calculating a cross-section (optionally fixed value for dimension n+1, i.e. the scale) between an n-dimensional slicing object and the constructed trans-scale boundary segments, wherein the cross-sections of said trans-scale boundary segments with the slicing object form the boundaries of the corresponding zones assigned to said represented objects in the intermediate n-dimensional representation.
- first steps S1-S3 are applied for each of the objects iteratively before step S4 is executed.
- a zone is an interior forming a connected and bounded part of a partitioned n- dimensional (nD)-space.
- nD n-dimensional
- a zone in 2D and higher dimensions has one outer boundary and may in addition have one or more inner boundaries.
- a zone is an area bounded by (straight or curved) lines.
- a zone is a volume bounded in that space.
- An example of a zone in 4D-space is a 4D-volume bounded is space and time.
- a boundary limits a zone or another boundary within a topological structure.
- a boundary that limits a zone is the largest n-1 dimensional primitive that is shared by said zone and a neighboring zone.
- a 3D-object may have a 2D boundary in the form of planes.
- nD-space every boundary (of dimension n- 1) is associated with exactly two zones.
- a boundary set is a set of concatenated boundaries that together enclose an interior connected zone.
- a boundary segment is a smallest unit within a boundary.
- a line segment is a boundary segment in a polyline boundary, i.e. a boundary comprising a plurality of line segments concatenated by vertices (nodes).
- a boundary segment is for example a polygon, e.g. a triangle forming part of a polyhedral boundary.
- An object is a real-world, e.g. a biological, physical or even virtual (e.g.
- a distinct feature classification e.g. according to a cultural or a geographical classification scheme.
- a 2D map zones may have the feature classification "forest” or “water” as an indication for the objects.
- a 3D map zones may have the feature classification "building” or “air.”
- higher dimensional zones are conceivable; e.g. representations of moving or changing 3D objects, such as in geology applications.
- a 4D zone may represent a building that exists within a 3D zone during a particular time interval.
- nD-object representation is a representation by an nD-space partitioned into zones that each represent exactly one object.
- An (n*)-dimensional object representation in (n+1)- dimensional space is an object representation including a scale dimension in addition to the dimensions of the nD-object representation.
- the n*D-object representation embeds the nD higher and lower detailed representations by assigning each nD-object representation a respective scale value.
- Trans-scale boundary segments are boundary segments extending between mutually corresponding boundary segments in subsequent nD-object representations embedded within the (n+l)D space.
- Trans-scale boundary segments have a dimension that is 1 higher than the dimension of the dimension of the boundary segments in said nD object representation and that dimension is equal to the dimension of said nD object representation, i.e. they have the dimension n.
- Vario-scale object representation ((n+l)D-object representation) is a completed n*D-object-representation by adding the trans-scale boundaries formed by the trans- scale boundary segments. The two n*D-object representations and the corresponding trans-scale boundaries completely bound the vario-scale (n+l)D-object
- a vario-scale object representation is a geometrical object in the (n+l)D-space, e.g. a (n+l)D-zone in the (n+l)D-space.
- a road- object is represented by an area (2D) in the original 2D representation and represented as a volume in the vario-scale object representation defined by the trans-scale boundary extending between an area representing the road-object in its higher detailed n*D object representation and a corresponding area representing the same road-object in its subsequent, lower detailed n*D object representation embedded in said (n+l)D object-representation.
- a vario-scale object representation may collapse in a direction of decreasing scale.
- a road-object is represented as a plane (2D)
- at a smaller scale it is represented by a line (ID) and at a still smaller scale it is represented by a point (ID).
- ID the line
- ID the point
- the vario-scale object representation for the road-object comprises four trans-scale boundary-segments that extend between the plane in said relatively large scale representation and the line in said smaller scale representation.
- the vario-scale object representation comprises a planar vario-scale object
- This vario- scale object part has a trans-scale boundary comprising a first trans-scale boundary element formed by said line and a second and a third trans-scale boundary element formed by the connection lines between the end-points of said line in said smaller scale representation and the point in said still smaller scale representation.
- the number of dimensions of a collapsed object representation is a monotonically non- increasing function of the additional scale dimension. For example an area object can collapse to line object and then to point object (but not first collapse to point object and then expand again to line object). Alternatively an area object could directly collapse to a point object. Note: some objects may start as lower dimensional objects in the highest detailed representation; e.g. in a 2D-representation a power cable may be represented as ID line object.
- Collapsed vario-scale object representation-parts are defined as those parts of a vario-scale object representation having less than n+1 dimensions within the (n+l)D space.
- An example thereof is the planar vario-scale object representation part of the road object.
- the objects are represented by zones that are defined by points pi having respective n-dimensional coordinates (xu, Xi ⁇ , Xin), and in the lower detailed representation by points Pi with n-dimensional coordinates (Xu, Xi ⁇ , Xin).
- the objects may be represented for example by n-dimensional simplexes (n-simplex for short) that are defined by the coordinates of their vertices.
- the n-simplexes are delimited by n+1 simplexes of dimension n- 1.
- the zones may be n-dimensional polytopes (n- polytopes for short) bounded by (n- 1) -dimensional polytopes, e.g.
- polygons in 2D delimited by line segments polyhedrons in 3D delimited by polygons or polychorons in 4D that are delimited by polyhedrons.
- other, non-linear, geometric descriptions may be used, such as Bezier curves, Bezier surfaces etc, however, for practical purposes descriptions by n-polytopes are most useful.
- an (n+1) -dimensional object representation is constructed that has in addition to the dimensions of the n- dimensional object representation an additional dimension.
- one or more additional (n-dimensional) trans-scale boundary segments are constructed that are delimited between mutually corresponding boundary segments in the higher and lower detailed n-dimensional representation.
- an object may have a first polygonal zone zl with a first boundary set bl in the first, higher detailed representation and a second polygonal zone Zl with a second boundary set Bl in the second, lower detailed representation.
- the polygonal zone Zl may be a degenerated polygon, i.e. a polygon having all its vertices arranged on a line or sharing one coordinate.
- One or more additional boundaries connect each point on the boundary set bl with a corresponding point on the boundary set Bl. Basically it is sufficient to construct an additional boundary object as a single 'tubular' shape 1 having the polygonal zone zl as its first end surface and the polygonal zone Zl as its second end surface. It will usually be more practical to construct a 'tubular' shape as a plurality of connected trans-scale boundaries that extend between the boundary set of zone zl and boundary set of zone Zl corresponding therewith.
- trans-scale boundaries are composed of trans -scale boundary segments extending between corresponding boundary segments in the boundary set of zl and the boundary set of Zl.
- aggregations may be made depending on the circumstances. For example two opposing triangles may be replaced by a quadrangle in case they are in the same plane.
- the vertices of the triangles may coincide with the vertices of the polygons.
- each pair of neighbouring vertices in boundary set bl form the first and second vertices of a triangle of which the third vertex is from the boundary set Bl, and likewise each pair of neighbouring vertices in boundary set Bl form the first and second vertices of a triangle of which the third vertex is from the boundary set b l.
- boundary set bl has a higher number of vertices than Bl
- part of the triangles having their base in bl may share a common vertex of Bl as their third vertex.
- boundary set Bl has a higher number of vertices than bl
- part of the triangles having their base in Bl may share a common vertex of bl as their third vertex.
- the description for the boundary set Bl may be extended with N intermediary vertices that are arranged on the boundary set Bl, between the original vertices of Bl.
- N intermediary vertices that are arranged on the boundary set Bl, between the original vertices of Bl.
- a boundary set Bl' is obtained that is equivalent to the original boundary set, but that has the same number of vertices with changing shape and/or diameter (as bl and B2 are not equal).
- bl a boundary set bl having a smaller number of vertices than a boundary set Bl may be extended with additional vertices.
- a 3D higher detail zone zl and a corresponding lower detail zone Zl in the form of polyhedrons bounded by polygons may be converted into equivalent polyhedrons by partitioning one or more faces of the polyhedrons and making sure that there are corresponding boundary segments in bl and Bl (and similar for higher dimensions).
- the trans-scale boundaries are concatenated into a trans- scale boundary set that connects each point on the boundary set bl with a point on the corresponding (opposite) boundary set Bl.
- boundary sets bl, Bl are matched segment-wise. Boundary segments of bl are matched with corresponding boundary segments in Bl.
- the lower detailed representation is derived from the higher detailed representation, or both representations are directly derived from a common representation.
- a higher detailed object representation comprises a concave zone zl (representing a disappearing object) that merges with a second zone z2 (representing a growing object) into a single destination zone in a lower detailed object representation
- the method comprises the step of subdividing said concave zone into convex subzones.
- the zone zl is concave
- the trans-scale boundary constructed between b2 and B2 is self intersecting. It is noted that not every merge with a concave zone necessarily results into a mutually intersecting trans-scale boundary. In practice various triangulations of a trans-scale boundary are possible of which usually one or more are non-intersecting.
- auxiliary zones zla, zlb, ... are constructed to that end the zone zl is first partitioned into convex subzones. Directly adjacent subzone zla is merged with a neighbouring zone z2.
- the first auxiliary zone boundary set b2a bounds the concatenation zone z2' of the first auxiliary zone zla and zone z2.
- a second auxiliary zone boundary set b2b bounds said
- an intermediate n-dimensional representation is obtained by calculating a cross-section between an n-dimensional slicing object and the constructed (n+1) -dimensional objects.
- the cross-section it is sufficient to know the parameters that define the (n+1)- dimensional objects. For example, in case the (n+1) -dimensional objects are described by a mesh of (n+l)-simplexes, the cross-section with the n-dimensional slicing object is calculated using the vertices of the (n+l)-simplexes.
- the cross-section can be calculated from the end-points and control points of the Bezier shapes.
- the cross-sections can be calculated. The steps between subsequent scale-levels can be selected arbitrarily small, so that a true smooth zoom-in or zoom-out is obtained without discontinuities in subsequent images.
- the n-dimensional slicing object is an n-dimensional hyperplane having a fixed value for s independent of the other coordinates.
- the n-dimensional slicing object has a value for the additional dimension that is a function of the coordinates in the n dimensions defined by the n-dimensional object-representations, e.g. the slicing object may be a tilted hyperplane.
- the slicing object may be a tilted hyperplane.
- This feature can be used in so-called mixed scale maps. For example, in a 3D perspective view map objects nearby may be rendered with more detail than remote objects. Also more complicated functions may be used for the value s of the slicing object, for example to obtain the effect of a fish- eye lens. In all case the method of the present invention results in topological correct boundaries between the displayed objects (without overlaps or unintended gaps).
- topologically correct representations When generating the structure from a topologically correct highest detailed n-dimensional representation, care should be taken that the derived lower detailed n-dimensional representations are also topologically correct, i.e. it should be prevented that zones representing objects overlap each other or that gaps are present between zones.
- Various methods are known to generate such topologically correct representations, such as the constrained t-GAP method described in the above-mentioned article. Starting from topologically correct lower detailed and the higher detailed n-dimensional representations, also topologically correct
- intermediate representations are obtained. This is relatively easy in case that the (to be merged and disappearing) object zone involved is convex.
- the (to be merged) concave object zones may first be partitioned into convex sub-zones to achieve topologically correct intermediate representations as indicated in more detail in the sequel.
- care must be taken that the simplified version of the boundary remains inside the space covered by the two zones incident with the shared boundary (and in this manner making sure that no intersections are introduced).
- a reduction step denoted as merge is realized in an embodiment of the method according to the first aspect wherein a higher detailed n-dimensional object representation comprises at least one disappearing zone (representing a
- disappearing object that merges with at least one growing zone (representing a growing object) into a single destination zone in a lower detailed n-dimensional object representation, said at least one disappearing zone and said at least one growing zone having a common boundary, said common boundary being mapped onto the opposite boundary segments (corresponding boundary segments) of the disappearing zone.
- a reduction step denoted as collapse is realized in an embodiment of the method according to the first aspect wherein a higher detailed n-dimensional object representation comprises at least one, typically elongated, zone, representing a collapsing object arranged between neighbouring zones representing its neighbouring objects, and wherein a lower detailed ( ⁇ n)- dimensional object representing the collapsed object, and corresponding remaining parts of the space originally occupied by the collapsing object are merged with the neighbouring zones (objects).
- a reduction step denoted as simplify is realized in an embodiment of the method according to the first aspect, wherein a higher detailed n-dimensional object representation comprises a zone having boundaries with a first number of boundary segments, and wherein a lower detailed n-dimensional object representation comprises a corresponding zone having boundaries with a second number of boundary segments, wherein the second number of boundary segments is smaller than the first number.
- the boundary segments are (n-l)-dimensional object in nD space, e.g. line or curve segments bounding an area or plane segments bounding a volume.
- boundary segments are represented by polynomial objects, a simplification of the boundary is obtained by a reduction of the polynomial order of these objects. I.e.
- n th order polynomial segments are replaced by m th order segments, wherein n, m are integers and n>m ⁇ l.
- second order polynomial boundary segments may be approximated by linear boundary segments.
- n th order polynomial surface segments are replaced by m th order polynomial surface segments.
- a boundary in the higher detailed representation does not have the same number of boundary segments as its corresponding boundary in the lower detailed representation. This situation typically occurs in case of a merge between two (object-representing) zones, wherein a higher detailed n-dimensional
- trans-scale boundary object is constructed that is composed of a number nl of triangles having their base in the common boundary in the higher detailed n-dimensional object representation and a number n2 - 2 of triangles having their base in the opposite boundary in the lower detailed n-dimensional object representation.
- a pre-processing is applied to either the original boundary (common boundary) or the opposite boundary (corresponding boundary), before the trans-scale boundary segments are constructed.
- This preprocessing is performed by the following steps:
- the common boundary and the opposite boundary mutually have an equal number of internal nodes arranged in a sequence along the common boundary and the opposite boundary respectively.
- the internal nodes of the common boundary are denoted as primary nodes and the internal nodes of the opposite boundary are denoted as secondary nodes.
- an edge is constructed between each primary node on the common boundary and a secondary node on the opposite boundary on which said primary node is mapped (corresponding secondary node).
- These edges define the trans-scale boundary segments.
- This approach is equally suitable to a higher dimensional application.
- a boundary is defined by a set of 2D-boundary segments each defined by set of ID-boundary segments that are each defined by nodes.
- the number of ID-boundary segments can be equalized and subsequently the number of 2D-boundary segments can be equalized.
- trans-scale boundary segments can be constructed that extend between the 2D-boundary segments.
- a system for generating a visual representation in an n-dimensional space.
- the system comprises a first facility for generating for each object to be represented a higher and a lower detailed n- dimensional object representation that each comprising digital data describing a zone fitting in a space -partitioning, which zone is defined by (n- 1)- dimensional boundaries, each boundary being shared with a neighbouring zone.
- the system according to the second aspect further comprises a second facility for positioning an n-dimensional object representation into an (n+1)- dimensional space, having in addition to the dimensions of the n-dimensional representations a scale (s) as an additional dimension, wherein the higher and the lower detailed n- dimensional representation respectively are assigned a first and a second value for said additional dimension.
- the system further has a third facility for creating an (n+1) -dimensional object representation by constructing trans-scale boundary segments between mutually opposite boundaries in the higher and the lower detailed n-dimensional representation.
- the system according to the second aspect further comprises a fourth facility for determining an intermediate n-dimensional representation by calculating a cross-section between an n-dimensional mapping object (slicing plane) and the trans- scale boundaries composed of the trans-scale boundary segments in said
- the system according to the second aspect may be arranged in an integrated unit comprising all its facilities in a single unit.
- facilities of the system may be arranged at mutually different locations and be coupled via a wired or wireless communication channel.
- An embodiment of the system according to the second aspect of the present invention is arranged as a client-server combination this itself forms the third aspect of the invention.
- the client-server combination comprises a server according to the fourth aspect of the invention and a client according to the fifth aspect of the invention.
- the server according to the fourth aspect of the invention comprises the first facility for generating the higher and a lower detailed n-dimensional representation.
- the server according to the fourth aspect of the invention further comprises the second facility for positioning these higher and lower detailed n-dimensional representation in an (n+1) -dimensional space, and the third facility for creating a vario-scale (n+1) -dimensional representation by constructing trans-scale boundary segments between mutually corresponding boundary segments in the first and a second n-dimensional representation.
- the client according to the fifth aspect of the invention comprises the fourth facility for determining an intermediate n-dimensional representation. Accordingly, the client is capable of generating true n-dimensional vario-scale maps by slicing the received (n+1)- dimensional representations obtained from the server with the appropriated n-dimensional slicing surface.
- the client is arranged to issue a request to the server specifying both the spatial and scale ranges.
- the server is arranged to provide data of a transformed (n+1) -dimensional representation for subsequently increasing scales and starting with data for the smallest scale, i.e. with the lowest level of detail.
- the client is arranged to simultaneously render an intermediate n-dimensional representation with a gradually increasing scale for scale values in between scale values for which the server already has provided data of the transformed (n+1) -dimensional representation.
- the client-server combination for generating true vario-scale maps in an n-dimensional space supports progressive transfer.
- the client-server combination is capable of responding to for (n+1) -dimensional representations both for n-dimensional initial map requests and for n-dimensional delta map requests for zooming-in/out and panning.
- FIG. 1 shows examples of different approaches for generating representations (maps) of different level of detail from a source representation (map),
- FIG. 2 shows various generalization operations for generating lower level of detail representations
- FIG. 2a shows an example of a portion of a reference object representation (map)
- FIG. 2b shows the result of a collapse operation
- FIG. 2c shows the result of a merge operation
- FIG. 2d shows the result of a simplify operation
- FIG. 2e shows a topologically generalized area partitioning structure corresponding to the sequence of operations applied to FIG. 2a
- FIG. 3 schematically shows a method according to the first aspect of the invention
- FIG. 4A shows a merge operation in more detail
- FIG. 4B schematically shows the (n+1)- dimensional object representation in this case
- FIG. 5 shows a triangulation of a trans-scale boundary
- FIG. 6 schematically shows examples of slicing objects
- FIG. 7a shows an (n+l)-dimensional representation derived from the n- dimensional representations as described with reference to FIG. 2a to 2d,
- FIG. 7b shows intermediate representations for a first set of intermediate scale-values
- FIG. 7c shows intermediate representations for a second set of intermediate scale-values
- FIG. 7d shows intermediate representations for a third set of intermediate scale-values
- FIG. 7e shows a vario-scale representation obtained from the n-dimensional representations according to a known method
- FIG. 7f shows intermediate representations obtained from the result of FIG. 7e for a first set of intermediate scale-values (note the equal set of representations sll, sl2, sl3, 14, which is not very useful),
- FIG. 7g shows intermediate representations obtained from the result of FIG. 7e for a second set of intermediate scale-values (note the sudden change in representation between sl4 and s21 and the equal set of representations s21, s22, s23, 24, which is not very useful),
- FIG. 7h shows intermediate representations obtained from the result of FIG. 7e for a third set of intermediate scale-values (note the sudden change in
- FIG. 8A shows intermediate n-dimensional representations obtained with a set of "horizontal" slicing objects for constant scale
- FIG. 8B shows an example wherein the slicing object is a tilted plane
- FIG. 8C shows the intermediate n-dimensional representation that is obtained by a cross-section of the (n+1) -dimensional representation with a tilted slicing object
- FIG. 9A illustrates a curved slicing object by its curves of constant scale
- FIG. 9B illustrates a mixed scale representation obtained with the slicing object of FIG. 9A
- FIG. 10A - 10F illustrates various stages of a merging step, wherein a concave disappearing zone zl is merged with a growing zone z2, therein,
- FIG. 10A shows a part of a map with the original zones
- FIG. 10B shows said part wherein, now with the concave zone zl partitioned into convex zones zla, zlb, zlc, and zld,
- FIG. IOC shows said part wherein it is illustrated how a convex part zla within the concave zone is merged with the growing zone
- FIG. 10D shows said part after the operation illustrated in FIG. IOC
- FIG. 10E shows a further stage
- FIG. 10F shows a final stage
- FIG. 11 schematically shows a sequence of a first n-dimensional object representation, one or more auxiliary n-dimensional object representations and the second n-dimensional object representation embedded in an (n+1) -dimensional representation, as well as trans-scale boundary segments constructed therein,
- FIG. 12 shows another example of a concave zone partitioned into convex zones (now in case of a zone with a hole),
- FIG. 13A - 13D show an example of related 3D-object representations, based on the merge operation, therein,
- FIG. 13A shows a higher detailed 3D-object representation
- FIG. 13D shows a corresponding lower detailed 3D-object representation
- FIG. 13B shows a corresponding first intermediate 3D-object representation
- FIG. 13C shows a corresponding second intermediate 3D-object
- FIG. 14A - 14C show in more detail a generic construction of an intermediate
- FIG. 14A shows an example of a higher detailed 3D-object-representation
- FIG. 14B shows a mapping of corresponding elements in said shared boundary elements and opposite boundary elements
- FIG. 14C shows how an intermediate 3D-object-representation is obtained
- FIG. 15A - 15C show two examples of a simplify operation, therein
- FIG. 15A shows a merged object in a 3D object-representation
- FIG. 15B shows the result of a first type of the simplify operation
- FIG. 15C shows the result of a second type of the simplify operation
- FIG. 16A - 16D show a mapping of corresponding elements in a higher detailed 3D-object-representation and in a corresponding lower detailed 3D-object representation obtained by a simplify operation, therein
- FIG. 16A shows the object of FIG. 15A, including node/vertex references
- FIG. 16B shows the object of FIG. 15B, including node/vertex references
- FIG. 16C shows the object of FIG. 15C, including node/vertex references
- FIG. 16D shows a table with a mapping between the references used in FIG.
- FIG. 17A shows a pseudo 4D-view of the 4D-representation constructed from the 3D-representations shown in FIG. 16A and 16B, and
- FIG. 17B shows a pseudo 4D-view of the 4D-representation constructed from the 3D-representations shown in FIG. 16A and 16C,
- FIG. 18 shows a first embodiment of a system according to the second aspect of the invention
- FIG. 19 shows a second embodiment of a system according to the second aspect of the invention.
- FIG. 19A shows the second embodiment of FIG. 19 in more detail
- FIG. 19B shows another part of an embodiment of the system in more detail
- FIG. 20 shows an embodiment of a system according to a third aspect of the invention comprising a server according to the fourth aspect of the invention and a client according to the fifth aspect of the invention
- FIG. 20A shows an example of the embodiment of the system according to the third aspect in more detail
- FIG. 21A shows a first operational mode (simple initial map request) of the embodiment of the system according to the third aspect
- FIG. 2 IB shows a second operational mode (progressive initial map request) of the embodiment of the system according to the third aspect
- FIG. 21C shows a third operational mode (progressive zoom-in request) of the embodiment of the system according to the third aspect
- FIG. 2 ID shows a fourth operational mode (progressive zoom-out request) of the embodiment of the system according to the third aspect
- FIG. 21E shows a fifth operational mode (simple pan request) of the embodiment of the system according to the third aspect
- FIG. 21F shows a sixth operational mode (progressive pan request) of the embodiment of the system according to the third aspect.
- Maps or other object representations may show objects with an amount of detail depending on the scale of the representation. When decreasing the scale, the size of the area increases, but the amount of detail available for individual objects decreases.
- the reference (or base) map represents the objects involved with the highest detail.
- FIG. 1 schematically shows various approaches for generating lower level of detail object representations, by way of example at scales s2, s3, s4 from a reference object representation at scale si.
- each lower level of detail representation is directly constructed from the reference object representation.
- each subsequent lower level of detail representation is constructed from the next higher level representation.
- the third approach (c) as described in more detail in the cited article of Haunert et al. is a hybrid approach.
- FIG. 2 shows in more detail various generalization operations for generating lower level of detail representations.
- FIG. 2a shows an example of a portion of a reference object representation or reference map.
- FIG. 2b shows the result of a collapse operation.
- a collapse operation comprises a sequence of sub -operations.
- a 2D feature is replaced by a one -dimensional feature or by a zero- dimensional feature.
- E.g. an elongated polygonal area representing a road z3 is replaced by a polyline.
- the area previously occupied by the elongated object is split and the parts are reassigned to the adjacent zones, here the zones zl, z2 and z4 respectively representing farmland, forest and water.
- FIG. 2c shows the result of a merge operation.
- FIG. 2d shows the result of this operation.
- a simplify operation a shared boundary between zones is replaced by a simplified boundary that approximates the original boundary for example by a reduction of the number of line segments used, while preventing that the new boundary intersects other existing boundaries.
- the boundary between zones zl and z4 is simplified.
- a topological generalized area partitioning (tGAP) structure specifies the desired generalization operations for each level of detail. The corresponding tGAP structure for this example is shown in FIG. 2e.
- FIG. la to lc and FIG. 2a to 2d illustrate that regardless the generalization method and the generalization operations involved a step to a next lower level of detail involves a discontinuity in the displayed features. Zones that may be present in a particular level of detail, may suddenly disappear in the next level of detail.
- FIG. 3 schematically illustrates an embodiment of a method according to the first aspect of the present invention that avoids such discontinuities.
- the method generates a vario-scale visual representation of n-dimensional objects based on an (n+1)- dimensional space.
- the method comprises a first step SI of generating a higher and a lower detailed n-dimensional object representation.
- the higher and lower detailed n-dimensional object representation may be generated with a method known as such, for example the hybrid method described in the article by Haunert et al. or with one of the other methods referred therein. As these methods are known as such they will not be described in further detail here.
- the generated higher and lower detailed n-dimensional object representation each comprise digital data representing objects.
- the n-dimensional object representations have zones delimited by (n-1)- dimensional boundaries having at least one boundary segment.
- the n- dimensional object representations may be 2-dimensional maps wherein the zones represent different cultural and/or geographical features.
- n-dimensional object representations are positioned in an (n+1)- dimensional space, having in addition to the dimensions of the n-dimensional object representations an additional dimension, wherein the higher and the lower detailed n-dimensional object representations are assigned a first and a second value (scale level) for said additional dimension respectively.
- an object representation in 3D-space is obtained having the two dimensions, e.g. (x,y) of the map, and in addition the scale dimension.
- the resulting coordinate system for the object representation is x,y,s.
- a fourth step S4 an intermediate n-dimensional representation is determined by calculating a cross-section between an n-dimensional slicing object and the constructed (n+1) -dimensional objects.
- Zone zl is bounded by boundary segments bl, b2, b 7, b8, b6.
- the boundary segments of zone zl extend between nodes or vertices nl, n2, n8, n6, n5.
- Zone z2 is bounded by boundary segments b3, b4, b5, b8, b7.
- the boundary segments of zone z2 extend between nodes or vertices n8, n3, n4, n5, n6.
- zones zl and z2 are merged into destination zone Z2.
- Destination zone is bounded by boundary segments Bl, B3, B4, B5 that extend between nodes nl, n2, n3, n4.
- This 3D object representation comprises the scale s as an additional dimension.
- the labels of the boundary segments bl, b2, etc. and Bl, B2, etc. are not shown in FIG. 4B. In this respect reference is made to FIG. 4A.
- a generalized boundary also denoted as trans-scale boundary is now constructed between corresponding boundary segments of the higher and lower n- dimensional representation.
- zone z2 is expanded to zone Z2.
- boundary segments b3, b4, b5, b8, 67 at scale si correspond to boundary segments B3, B4, B5, Bl at scale s2.
- the mapping at the level of the boundary segments is: boundary segment b4 at scale si corresponds to boundary segment B4 at scale s2, boundary segment b3 at scale si corresponds to the concatenation of boundary segments B3 at scale s2, boundary segment b5 corresponds to the concatenation of boundary segments B5 at scale s2, and the concatenation of boundary segments b7+b8 at scale si corresponds to boundary segment Bl at scale s2.
- zone zl collapses. Accordingly the boundary segments bl, b2, b7, b8, b6 defining zone zl at scale si collapse into boundary segment Bl at scale s2.
- a trans-scale boundary having trans-scale boundary segments defined between mutually corresponding boundary segments of the objects according to the higher detailed representation and the lower detailed representation is constructed.
- the trans-scale boundary comprises a first segment delimited between b4 in the higher detailed representation and B4 in the lower detailed representation.
- the first segment may be described as a triangulated surface defined by a first triangle n4, N4, n3 and a second triangle n3, N3, N4.
- the second segment may be described as a triangulated surface defined by a first triangle i%4, i%5, N4 and a second triangle n5, Nl, N4.
- a third segment is delimited between b3 in the higher detailed representation and B3 in the lower detailed representation.
- the third segment may be described as a triangulated surface defined by a first triangle n3, n8,N3 and a second triangle n8, n2, N3.
- a fourth segment is the shared boundary with the to be removed zone and is delimited between segments b8, b 7, in the higher detailed representation and between segment Bl in the lower detailed representation.
- the fourth segment may be described as the set of triangles Nl, n5, n6; n6, Nl, n7; n7, Nl, N2; and N2, n7, n8.
- n7 is a constructed additional node.
- FIG. 5 shows the top -view of a situation wherein the mutually corresponding boundaries in the lower detailed object-representation (scale s2) and in the higher detailed object- representation (scale si) have a different number of linear boundary segments.
- a trans-scale boundary segment can be composed of a number LS_s of triangles having their base in the shared boundary b_s in the higher detailed object representation, and their top in the corresponding boundary set b_o in the lower detailed object-representation and a number LS_o - 2 of triangles having their base in the opposite boundary b_o in the first object representation and their top in the shared boundary b_s in the higher detailed object representation.
- the number of linear segments of the mutually corresponding boundaries b_s (shared) and b_o (opposite) may be harmonized by subdividing linear segments in the boundary having the lower number of segments so as to obtain a mutually equal number of boundary segments.
- a boundary segment b 7 is subdivided into two linear segments
- node i%7 interconnected by node i%7, so that both boundaries have 3 segments.
- the next step involves determining an intermediate n-dimensional representation by calculating a cross-section between an n-dimensional slicing object SO and the constructed trans- scale boundary of the (n+1)- dimensional representation.
- the cross-section of said trans-scale boundary with the slicing object SO forms the boundary of the corresponding zone assigned to said object in the intermediate n-dimensional representation.
- a is a value in the range of 0 to 1.
- FIG. 6 shows a further alternative wherein the slicing object S02 is a curved plane.
- FIG. 7a-7d further illustrates an embodiment of the present invention with the n-dimensional representations of FIG. 2.
- FIG. 7a shows the vario-scale visual representation constructed from the n- dimensional representations as described with reference to FIG. 2.
- the vario-scale representation of FIG. 7a has in addition to the dimensions x,y a scale dimension s In the (n+1) -dimensional object representation of FIG. 7, the highest detailed n- dimensional object representation of FIG. 2a is assigned a first value si (scale level) for said additional dimension.
- the next lower n-dimensional object representation of FIG. 2b is assigned a second value s2.
- the subsequent next lower n-dimensional object representations of FIG. 2c, FIG. 2d are assigned a third value s3, s4
- FIG. 7d shows intermediate
- FIG. 7e shows a space-scale representation obtained from the n-dimensional representations according to the method known from Vermeij et al, referred to above.
- FIG. 7f shows intermediate representations obtained from the result of FIG. 7e for a first set of intermediate scale-values
- FIG. 7g shows intermediate representations obtained from the result of FIG. 7e for a second set of intermediate scale-values
- FIG. 7h shows intermediate representations obtained from the result of FIG. 7e for a third set of intermediate scale-values
- FIG. 8B shows an example wherein the slicing object SO is a tilted plane.
- FIG. 8C shows the intermediate n-dimensional representation that is obtained by a cross-section of the (n+l)-dimensional representation with the tilted slicing object SO. The result is called a mixed-scale map as in one image both higher and lower detail representations are seamlessly integrated.
- FIG. 8A shows the intermediate n-dimensional representations obtained with a set of 'horizontal' slicing objects, i.e. slicing objects for constant scale.
- FIG. 9A and 9B shows another example.
- the slicing objects SO has relatively small scale value for coordinates close to the centre of the x-y coordinate system and the scale value increases with the distance from the centre.
- the slicing object is for example a curved surface having the value for s:
- FIG. 9B The cross-section between such a slicing object and the (n+1)- dimensional object representation results in an intermediary representation as shown in FIG. 9B, wherein objects near the centre are represented larger and objects remote from the centre are represented smaller: a mixed scale map. Note that this is a simulation of a true mixed scale map (taken from Harrie, L., Sarjakoski, L. T., and Lehto, L.
- FIG. 10A shows a part of an n-dimensional object representation at a high level of detail, having a first concave zone zl, and a second zone z2.
- zones zl and z2 are merged into zone Z2, wherein zone zl is the disappearing zone.
- FIG. 10F shows the concave zone.
- the concave zone is first subdivided into convex subzones zla, zlb, zlc, zld as shown in FIG. 10B.
- FIG. IOC to FIG. 10F further illustrate a stepwise merge of the convex subzones zla, zld with the consuming zone z2.
- a convex subzone zla of the first zone zl is selected that has a common boundary with the second zone z2 (growing object).
- An auxiliary n- dimensional object representation is constructed as shown in FIG. 10D, wherein a new first zone is defined by separating (removing) the selected convex zone zla from the first zone zl and wherein a new second zone z2 ' is defined by merging the selected convex zone zla with the second zone z2.
- the first auxiliary n-dimensional object representation is assigned a scale value intermediate a scale value assigned to the scale values assigned to the n-dimensional object representation at a high level of detail of FIG. 10A and to the n-dimensional object representation at a low level of detail of FIG.
- Trans-scale boundaries (comprising trans-scale boundary segments between mutually corresponding boundary segments) between mutually corresponding boundaries in the n-dimensional object representation at a high level of detail and in the first auxiliary n-dimensional object representation are then constructed as schematically illustrated in FIG. IOC.
- This intermediate result is a second auxiliary n-dimensional object representation that is assigned a scale value intermediate a scale value assigned to the scale values assigned to the first auxiliary n-dimensional object representation of FIG. 10D and to the n-dimensional object representation at a low level of detail of FIG. 10F.
- the last constructed auxiliary n-dimensional object representation is the n-dimensional object
- auxiliary n-dimensional object representations are assigned scale values in the range between the scale values assigned to the n-dimensional object representation at a high level of detail and the n-dimensional object representation at a low level of detail.
- FIG. 11 wherein the n-dimensional object representation having the higher level of detail as illustrated in FIG. 10A is assigned scale value si, the first auxiliary n-dimensional object representation, of FIG 10D is assigned scale value s2, the second auxiliary n-dimensional object representation of FIG. 10E is assigned scale value s3.
- the third auxiliary n-dimensional object representation, of FIG. 10F which is also the n-dimensional object representation having the lower level of detail is assigned scale value s4, wherein si > s2 > s3 > s4.
- trans-scale boundary segments are constructed that extend between mutually corresponding boundary segments between each pair of subsequent n-dimensional object representations in a depth order selected from the sequence of a first n-dimensional object representation, one or more auxiliary n- dimensional object representations and the second n-dimensional object
- FIG. 12 shows another example, wherein the concave zone zl is shaped as a ring around an island zS.
- the concave zone zl is partitioned into sub-zones zla, zlb, zlc and zld.
- a merger of zone zl with zone z2 is performed stepwise by first merging subzone zla with zone z2 resulting in zone z2 subsequently merging subzones zlb and zlc with zone z2' resulting in zone z2", and finally merging subzone zld with zone z2" resulting in a zone Z2 at lower level of detail.
- the present invention is not limited to 2D objects.
- the method is equally applicable to higher dimensional objects. This is further clarified by the following example.
- FIG. 13A and 13D respectively show a higher and a lower detailed 3D object representation.
- zones zi and zii are each represented by digital data as 3D-zones in said n- dimensional object
- the zones zi, zii are delimited by (n- 1)- dimensional boundaries having at least one boundary segment.
- each zone is delimited by its set of faces, front face, back face, left side face, right side face, bottom face and top face (note that zone zii has 7 faces as left face has 2 parts: of which one is shared with zone zi), These faces form the boundary segments.
- FIG. 13A shows a set of two 3D objects in the form of zones in a higher level of detail 3D representation.
- Zone zi represents for example a first building
- zone zii represents a second building
- zone ziii (not depicted) represents a background.
- FIG. 13D In the lower detailed 3D object-representation as shown in FIG. 13D zone zi and zone zii are merged into zone ZII. Zone Zi disappears in this merging operation so that de lower detached representation has no ZI.
- FIG. 13B and FIG. 13C show subsequent intermediate 3D representations.
- FIG. 14A-FIG. 14C show how a topological correct mapping is achieved using a generic approach (explained below). A generic gradual transition is shown with a growing zone zii and a shrinking and gradually disappearing zone zi.
- FIG. 14A again shows the higher detailed 3D object-presentation as in FIG. 13A.
- Zones zi, zii are convex objects that have a shared boundary formed by the right side-face (dark) of zone zi.
- Object zi is to be removed in a merge operation with growing object zii.
- this shared boundary is mapped to a destination boundary comprising bottom face 1, top face 3, front face 2, back face 4 and left side face 5 as indicated in FIG. 14A.
- FIG. 14B the shared boundary between the zones zi and zii is now partitioned into boundary segments to equalize the number of faces, edges and nodes in the shared boundary and the destination (or opposite) boundary.
- the shared boundary is provided with additional nodes a,b,c,d that are mapped to nodes A,B,C,D, edges a-b, b-c, etc mapped to A-B, B-C, etc, and faces 1-5 that are mapped to faces 1-5 of the destination (opposite) boundary.
- Lower and higher case characters indicate elements in the higher-detailed 3D representation and in the lower detailed 3D-representation respectively.
- a 4D object representation is constructed, that has in addition to the dimensions of the 3D object representations an additional dimension.
- the higher and the lower detailed 3D object representations are assigned a first and a second value (si, s2 of scale level s) for said additional dimension respectively.
- nodes A, B, C, D in the lower detailed representation are defined by their 3D spatial coordinates x,y,z and a value s2 for fourth coordinate s.
- a trans-scale boundary is constructed that is delimited between mutually corresponding boundary segments of said at least one object in the higher detailed and the lower detailed n-dimensional representation.
- the boundary segments of zone zii in the higher detailed representation are the top, bottom front, back, right and two left side face of zone zii.
- the lower left side face of zone zii forms a shared boundary with zone zi and a remaining portion, not shared with zone zi.
- the shared portion is partitioned in faces 1-5 (black) that are mapped to faces 1-5 (blue) of the destination (opposite) boundary as indicated above.
- Each pair of a face 1-5 and its corresponding face 1-5 to which it is mapped delimits a trans-scale n-dimensional boundary segment in (n+1)- dimensional space. For example consider face 1 in the shared boundary, which is defined by nodes a, d, f, e in the higher detailed representation. This face 1 is mapped to corresponding face 1 in the destination boundary defined by A, D, F, E in the lower detailed
- nodes E, F are not shown in the drawing.
- Node E has the same values for the coordinates x,y,z as its corresponding node e, but only has a different scale value, s2 instead of si.
- node _Fonly differs by its scale value from node /.
- the trans-scale boundary segment delimited by face 1: a, d, e, f in the higher detailed representation and its corresponding face 1: A, D, E, F in the lower detailed representation comprises four other faces: a first face a, d, D, A; a second face d, f, F, D; a third face /, e, E, F and a fourth face e, a, A, E.
- trans-scale boundary segment is constructed that is delimited between each of the other faces 2-5 in the higher detailed object- representation and its corresponding one of the other faces in the lower detailed object-representation.
- respective trans-scale boundary segments are constructed that each are delimited between each of the other faces of zone zii not part of the shared boundary in the higher detailed object-representation and their corresponding one of the other faces in the lower detailed object- representation.
- An intermediate 3D representation for zone zii is now obtained by calculating a cross-section between a 3D slicing object and the constructed 4D representation, wherein the cross-section of said trans-scale boundary with the slicing object forms the boundary of the corresponding zone assigned to said object in the intermediate 3D representation.
- the value s may be a function of one or more of the coordinates x,y,z, so that the intermediate representation has a level of detail that is position dependent; e.g. to support the generation of 3D perspective views.
- FIG. 14C shows an example of an intermediate representation obtained, in the generic general transition, when the slicing object has a value s equal to
- the present invention is set out for a simple case, wherein only a limited number of objects are involved and it is shown how the trans-scale boundary is calculated for a single object.
- the higher and the lower detailed n- dimensional representation may represent plurality of objects; e.g. forming a partition of space (at every scale).
- the step of determining the trans-scale boundary and the step of calculating the cross-section is executed for each of the objects.
- a boundary segment of an object is shared with another object. Accordingly once a trans-scale boundary element delimited by said boundary segment in the higher detailed representation and its corresponding boundary segment in the lower detailed representation is calculated for an object, it can be reused for the other object sharing said boundary element.
- FIG. 15A-C show examples of a simplify operation in the 3D case.
- FIG. 15A shows a merged zone ZII obtained by a merging operation as illustrated with reference to FIG. 13A - 13D and with reference to FIG. 14A - 14C.
- FIG. 15B shows a result according to a simplify operation of a first type, wherein the object is approximated by its "bounding box", i.e. the smallest cuboid that contains the object.
- FIG. 15C shows a result according to a simplify operation of a second type, wherein the object is otherwise approximated (with a tilted roof).
- FIG. 16A-16C shows how the object nodes of zone ZII are mapped in accordance with each of the two simplify option to resp. zone ⁇ and ⁇ ".
- FIG. 16D shows a table with a mapping between the references used in FIG. 16A and 16B, as well as a mapping between the references used in FIG. 16A and 16C.
- FIG. 17A, B show a pseudo 4D impression for the merge followed by one of the two simplify options.
- this view it is shown how an (n+1)- dimensional object representation is constructed, having in addition to the dimensions x,y,z, the additional dimension s. Representations are assigned a first and a second value si, s2 for said additional dimension respectively.
- FIG. 17A shows how the higher detailed 3D representation for zone zii is assigned scale value si in the 4D object- representation and how the lower detailed 3D representation for the resulting merged and simplified zone ⁇ (first type of simplification) is assigned scale value s2 in the 4D object-representation.
- the dotted lines indicate the relation between mutually corresponding nodes in the representations for si and s2.
- FIG. 17B shows how the higher detailed 3D representation for zone zii is assigned scale value si in the 4D object-representation and how the lower detailed 3D representation for the resulting merged and simplified zone ZII" (second type simplification) is assigned scale value s2 in the 4D object-representation.
- the dotted lines indicate the relation between mutually corresponding nodes in the representations for si and s2.
- FIG. 18 shows a system according to the second aspect of the invention for generating a visual representation in an n-dimensional space.
- the system comprises a first facility 10 for generating a higher and a lower detailed n-dimensional representation Rh, Rl respectively each comprising digital data representing objects, said n-dimensional representations having zones delimited by boundaries having at least one boundary segment.
- the first facility 10 generates the higher and a lower detailed n-dimensional representation Rh, Rl, from a reference map Rref, which has the highest level of detail.
- Rref reference map
- the system has a second facility with a first unit 20 for positioning the representation R+ in an (n+1)- dimensional space.
- the system further has a third facility 30 for constructing (n+1) -dimensional
- This fourth facility 40 determines an intermediate n-dimensional
- n-dimensional representations may include concave objects.
- the higher detailed n-dimensional representation Rh has a concave first zone zl as shown in FIG. 10A that disappears as a result of a merging operation with another zone z2 into a destination zone Z2 as shown in FIG. 10F.
- FIG. 19 shows another embodiment of a system according to the second aspect that is modified in that an additional unit 15 is provided for generating auxiliary n-dimensional representations Rl, R2 from the lower and the higher n- dimensional representation Rl, Rh.
- This embodiment of the system is also suitable for handling non-convex objects.
- the additional unit 15 provides the second facility 20 with a set of n-dimensional representations including the auxiliary n-dimensional representations Rl, R2 and the lower and the higher n- dimensional representation Rl, Rh.
- the last constructed auxiliary n-dimensional representation is the lower detailed n-dimensional representation Rl and the other constructed auxiliary n- dimensional representations Rl, R2 are assigned scale values in the range between the scale values assigned to the higher detailed n-dimensional representation Rh and the lower detailed n-dimensional representation Rl.
- the second unit 30 is arranged for constructing trans-scale boundary segments extending between mutually corresponding boundary segments in each pair of subsequent n-dimensional representations in a scale order selected from the sequence of the higher detailed n-dimensional representation Rh, one or more auxiliary n-dimensional representations Rl, R2 and the lower detailed n- dimensional representation Rl.
- FIG. 19A shows an example of the additional unit 15 in the embodiment of FIG. 19 in more detail.
- the additional unit 15 has a selection facility 151, for selecting an n- dimensional representation Rk to be processed from a first and a second input. One of the inputs is arranged to receive the higher detailed n-dimensional representation Rh.
- the additional unit 15 has a identification facility 152 for receiving the selected n-dimensional representation Rk and for identifying therein a convex subzone in the first zone, for example subzone zla in the disappearing zone zl in FIG. 10B, that has a common boundary with the second zone, for example z2 (growing object).
- the presence of the disappearing and the growing object is indicated by the first facility 10, for example on the basis of a tGAP representation.
- the identification facility 152 provides an n-dimensional output representation Rk' having identified therein the convex subzone zla.
- the additional unit 15 further has a merging facility 153 for constructing from said n-dimensional output representation Rk' an auxiliary n-dimensional representation Rk+1 wherein a new first zone, e.g. (zlb+zlc+zld in FIG. 10D) is defined by separating the selected convex zone zla from the first (disappearing) zone zl and wherein a new second (growing) zone z2 ' is defined by merging the selected convex zone zla with the second zone z2.
- a merging facility 153 for constructing from said n-dimensional output representation Rk' an auxiliary n-dimensional representation Rk+1 wherein a new first zone, e.g. (zlb+zlc+zld in FIG. 10D) is defined by separating the selected convex zone zla from the first (disappearing) zone zl and wherein a new second (growing) zone z2 ' is defined by merging the selected convex zone
- the control facility 50 repeatedly activates the selection facility 151, the identification facility 152 and the merging facility 153. In the next iteration the control facility 50 causes the selection facility 151 to select the auxiliary n- dimensional representation Rk+1 as the new n-dimensional representation Rk to be processed. In this new n-dimensional representation Rk to be processed the new first zone (zlb+zlc+zld) replaces the first zone zl, and the new second zone z2 replaces the second zone z2.
- the control facility 50 ends the procedure if all convex subzones are merged into the second zone. In this way one or more auxiliary n-dimensional representations Rl, R2 are obtained in addition to the lower detailed n-dimensional representation and the higher detailed n-dimensional representation.
- an n-dimensional representation may have a plurality of concave zones.
- the identification facility 152 identifies for each of the concave disappearing zones that is to be merged with another, growing zone, a subzone in the disappearing zone that has a common boundary with the growing zone.
- the identification facility 152 may identify these one by one or for two or more disappearing zones in parallel, depending on the processing capabilities of the identification facility 152.
- the merging facility 153 merges each of the identified subzones with its corresponding growing zone, i.e. the growing zone with which it has the common boundary.
- the merging facility 153 may carry out the merging operation one by one or for two or more subzones in parallel, depending on the processing capabilities of the merging facility 153.
- Each of the auxiliary n-dimensional representations Rl, R2 as well as the lower detailed n-dimensional representation and the higher detailed n-dimensional representation is assigned a scale value.
- the n-dimensional object representation Rh having the higher level of detail is assigned scale value si
- the first auxiliary n- dimensional object representation Rl is assigned scale value s2
- the second auxiliary n-dimensional object R2 is assigned scale value s3.
- the third auxiliary n- dimensional object representation which is also the n-dimensional object representation having the lower level of detail Rl is assigned scale value s4, wherein si > s2 > s3 > s4.
- Output facility 154 provides these n- dimensional object representations to facility 20.
- Facility 20 uses these n-dimensional representations Rh, Rl, R2, Rl for positioning these as representation R+ in an (n+1) -dimensional space.
- facility 30 constructs an (n+1) -dimensional representation R++ by creating trans- scale boundary segments between mutually corresponding boundary segments in each pair of subsequent n-dimensional representations in a scale order selected from the sequence of the higher detailed n-dimensional representation Rh, one or more auxiliary n-dimensional representations Rl, R2 and the lower detailed n- dimensional representation Rl.
- FIG. 19B shows a further embodiment of a system according to the second aspect.
- facility 30 comprises a first counter and a second counter 31, 32.
- the first counter 31 is arranged for counting a first number of interior nodes Ns on a common (shared) boundary b_s between zones representing respective objects.
- the second counter 32 is arranged for counting a second number No of interior nodes of the corresponding (opposite) boundary b_o (of the
- the system of FIG. 19B further comprises a comparator 33 for determining a difference AN between said first and said second number, as well as a modification facility 34, 35.
- the modification facility 34, 35 is arranged for adding a number of additional nodes to the one of the common boundary and the corresponding boundary having the lower number of nodes. The number of additional nodes is equal to the absolute value I AN ⁇ said difference. If the common boundary b_s has the lower number of nodes then modification facility 34 modifies the common boundary by adding said number / AN/ of additional nodes, therewith obtaining a modified common boundary b'_s.
- modification facility 35 modifies the corresponding boundary b_o by adding said number I AN I of additional nodes, therewith obtaining a modified corresponding boundary b'_o.
- the common boundary and the corresponding boundary so obtained have an equal number of internal nodes arranged along the common boundary and the corresponding boundary respectively.
- the internal nodes of the common boundary will also be denoted as primary nodes and the internal nodes of the corresponding boundary will also be denoted as secondary nodes.
- the system of FIG. 19B further has an edge construction facility 36 for constructing an edge Eso between each primary node on the common boundary and a secondary node on the corresponding boundary on which said primary node is mapped (corresponding secondary node).
- the system has a segment construction facility 37 for constructing trans-scale boundary segments Sso between mutually corresponding boundary segments in the common boundary and corresponding boundary for each subsequent pair of constructed edges.
- an embodiment of the system according to the second aspect is configured in a client-server combination (according to the third aspect of the invention) as a server 1A according to the fourth aspect of the invention that is coupled via a communication channel 1C to a client IB according to the fifth aspect of the invention.
- the server comprises the first facility 10 for generating the higher and a lower detailed n-dimensional representation Rh, Rl, from the reference map Rref, which has the highest level of detail.
- the server also comprises the second facility 20 for constructing the (n+1)- dimensional representation R+ and the third facility 30 for constructing trans- scale boundary segments between mutually corresponding boundary segments in the first and a second n-dimensional representation embedded in the representation R+ in an(n+l)- dimensional space.
- the server 1A is arranged to provide the extended (n+1) -dimensional representation R++ to the client IB, via the communication channel 1C.
- the client IB comprises the fourth facility 40 for determining an
- intermediate n-dimensional representation Rs by calculating a cross-section between an n-dimensional slicing object SO and the trans-scale boundaries in the extended (n+1) -dimensional representation R++.
- the client IB specifies the n-dimensional slicing object SO, for example with user interface 60, and the resulting intermediate n-dimensional representation Rs is displayed on a display 70.
- the server 1A is arranged to respond to requests Q from the client.
- the following main types of requests may be considered.
- a progressive transfer of data generally is not so useful. Note that the number of selected objects may be large, so it can take some time before a map covering a requested area Al can be created by the client.
- FIG. 21C A request to provide the n-polytopes for a progressive zoom-in as shown in FIG. 21C. Note the shrinking of the spatial range from an area Al at scale si to an area AO at scale sO. Alternatively it is possible to provide for a simple zoom- in. In that case the client does not need to receive 'intermediate' n-polytopes (this alternative is not depicted in FIG. 21).
- FIG. 2 ID A request to provide the n-polytopes for a progressive zoom-out as shown in FIG. 2 ID. Note the growing of the spatial range from an area Al at scale si to an area A2 at scale s2. In this case the n-polytopes are sorted based on largest scale value from the larger to the smaller scale value (which is the reverse order of a zoom-in) Alternatively, also a simple zoom-out is possible without sending
- the server subsequently transmits more and more detailed data (gradually changing from scale sn to scale si) for the requested spatial range A3, and the client can gradually increase the level of detail with which the image data in said spatial range A3 is displayed.
- ASIC application specific integrated circuit
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Remote Sensing (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
A method for generating a vario-scale visual representation of n-dimensional objects (together forming a space partition) is presented comprising the steps of - generating a higher and a lower detailed n-dimensional object representation each comprising digital data representing objects by zones in said n-dimensional object representations, said zones being delimited by (n-1)-dimensional boundaries having at least one boundary segment, - positioning the higher and lower detailed object representation in an (n+1)-dimensional space, having in addition to the dimensions of the n-dimensional object representations an additional dimension, wherein the higher and the lower detailed n-dimensional object representations are assigned a first and a second value for said additional dimension respectively, - constructing an (n+1)-dimensional object representation by creating trans-scale boundary segments between mutually corresponding boundary segments in the higher detailed and the lower detailed n-dimensional representation, - determining an intermediate n-dimensional representation by calculating a cross-section between an n-dimensional slicing object and the constructed trans-scale boundaries.
Description
Method and system for generating maps in an n-dimensional space.
BACKGROUND OF THE INVENTION Field of the invention
The present invention relates to a method for generating maps in an n- dimensional space.
The present invention further relates to a system for generating maps in an n-dimensional space.
The present invention further relates to a client-server combination for generating maps in an n-dimensional space.
The present invention further relates to a server for said client server combination.
The present invention further relates to a client for said client server combination.
Related Art
Digital map data is usually based on a reference (or base) map showing an area partitioned into zones by boundaries. A map is a particular example of a 2D representation, but more and more 3D 'maps' are being created and used nowadays. The zones in the map represent different cultural and/or geographical features. When displaying digital map data it is necessary to make a selection of the range to be displayed. The resolution of the display limits the level of detail (LoD) with which the selected range can be displayed. When displaying a larger range the image to be displayed must be simplified in order to achieve that the image is sufficiently clear to the user. Accordingly for smaller scale values the level of detail decreases.
Moreover when the display is part of a client and the map data is provided by a remote server it is desired to limit the amount of data to be send by the server.
Various efforts have been made to achieve this.
One such approach is described by Van Oosterom in "The Re active -tree: A
Storage Structure for a Seamless, Scaleless Geographic Database', Proc. Auto-Carto 10, Baltimore, Maryland, pages 393-407, March 1991. This publication describes reactive data structures, i.e. vector based structures tailored to efficient storage and
retrieval of geometric objects at different levels of detail. The publication further considers construction of a 3D minimal bounding rectangle/block (MBR) or R-tree for efficient selection of integrated space and scale queries. In particular a 3D R-tree is considered, wherein the objects are represented by bounding boxes having an extent in the xy-plane corresponding to the bounding rectangles of the objects and an extent in the z-direction corresponding to the importance (scale) of the objects. The number of importance levels is comparable to the typically used fixed map number of (paper) map scales in one system, say 5 to 6 levels.
Another approach is described by Vermeij et al, in "Storing and using scale- less topological data efficiently in a client-server DBMS environment", in
Proceedings of the 7th International Conference on GeoComputation, University of Southampton, United Kingdom, 8 - 10 September 2003. According to this approach a data structure is provided that stores the results of a generalization as a scale-less map inside a spatial DBMS. This structure enables interactive visualization of polygonal subdivisions on any scale by maintaining a topological structure from which a map can be reconstructed. The reconstruction of a polygonal subdivision for a given scale is done in two steps. The first step retrieves the necessary boundary lines from the database together with information on how these boundaries should be combined for a subdivision. The second step reconstructs a topologic layer from these boundaries. The two steps in the process are modeled in such a way that the first step can be efficiently implemented on top of a standard spatial DBMS (with three simple SQL queries). The second part of the process, which is more iterative, can be either performed at the client side or on an application server. An important feature of the data structure is that the data is stored topologically in such a way that as much of the geometry of an object is re-used. This avoids redundancy (and potential related inconsistencies) and makes the storage compact and ensures that only little data needs to be shipped from the database. An integral part of the setup of the data structure is the use of a third geometric dimension for the scale information different for every object at instance level (and therefore not limited to a fixed number of scales for the whole dataset). This enables the use of 3D indexing methods on the combined geometric and scale data. This in turn allows the efficient selection of records based on both the geometric as well as the scale requirements in simple queries. The 3D geometries that are used to support these indexes are 3D
boxes that are created as the 2D bounding boxes of the geometric shapes of respectively the edges and the faces, extended with the scale values for the third dimension. Selection of faces takes place by intersection of 3D boxes with a 3D rectangle.
Another approach is described by Haunert, Dilo and Van Oosterom in
"Constrained set-up of the tGAP structure for progressive vector data transfer", Computers & Geosciences, 35 (2009) pp. 2191 - 2203. Starting from a reference map, a sequence of so called levels of detail are generated. The reference map has the highest level of detail. The level of detail can be reduced by various generalization operations including merge, simplify, and collapse (split and merge). In a simplify operation a shared boundary between zones is replaced by a simplified boundary that approximates the original boundary for example by a reduction of the number of line segments used, while at the same time making sure that the new boundary does not intersect any other existing boundary. In a merge operation a pair of zones merges into a single destination zone. I.e. one of the zones disappears. A collapse operation comprises a sequence of sub-operations. In a collapse operation a 2D feature is replaced by a one -dimensional feature or by a zero-dimensional feature. E.g. a rectangle representing a road is replaced by a line. The area previously occupied by the rectangle is split and the parts are reassigned to the adjacent zones. These are the most common operations used. However, also other generalization operations such as "typify" are possible. In a typify operation a complicated pattern is replaced by a simplified pattern. For example, in a typified representation a group of islands is replaced by a representative smaller set of islands.
By providing a set of images, each with a different level of detail, it is possible to stepwise zoom in into an area and stepwise display more detail. The article referred above describes various approaches to generate said sequence of images with different levels of detail. According to a first approach each of the images is directly generated, by applying optimization techniques, from the map having the highest level of detail. The generation is quite computation intensive and therefore just a limited number of fixed scales (LoDs) are computed. Subsequent LoDs may not 'fit well' as they are independently generated from the highest LoD. According to a second approach the levels of detail are generated iteratively. I.e. each level of detail is generated from the next higher level of detail. This is less computational
intensive and therefore many more LoDs may be computed. The end-result of this iterative approach may be less good than an optimized end-result directly generated from the highest LoD. In particular the article describes a hybrid approach, wherein first a dataset at a lowest level of detail is generated. Subsequently a set of intermediate datasets is generated that uses the information in the next higher level of detail and the information in the lowest level of detail. For all the approaches presented above, it is a disadvantage that subsequent steps involve a discontinuity in the displayed features. For example zones that may be present in a particular level of detail, may suddenly disappear in the next level of detail.
SUMMARY OF THE INVENTION
It is a first object of the invention to provide a method that allows for a smooth transition from a higher to a lower level of detail.
It is a second object of the invention to provide a system that allows for a smooth transition from a higher to a lower level of detail.
It is a third object of the invention to provide a client-server combination that allows for a smooth transition from a higher to a lower level of detail.
It is a fourth object of the invention to provide a server suitable for use in such a combination.
It is a fifth object of the invention to provide a client suitable for use in such a combination.
According to a first aspect of the invention a method is provided for generating a vario-scale visual representation of n-dimensional objects (at largest scale fitting in a space-partitioning), comprising the steps of
generating (SI) for each object to be represented a higher and a lower detailed n-dimensional object representation, that each comprise digital data describing a zone fitting in a space -partitioning, which zone is defined by (n- 1)- dimensional boundary segments, each boundary segment being shared with a neighbouring zone,
positioning (S2) a higher and a lower detailed n-dimensional object representation in an (n+1)- dimensional space, having in addition to the dimensions
of the n- dimensional object representations an additional dimension, wherein the higher and the lower detailed n-dimensional object representations are assigned a first and a second value (scale level) for said additional dimension respectively,
constructing (S3) non-intersecting trans-scale boundary segments (n- dimensional in (n+1)- dimensional space) between mutually corresponding boundary segments of the higher detailed and the lower detailed n-dimensional object representation (per object resulting in a gradually changing representation in the scale dimension),
determining (S4) an intermediate n-dimensional object representation by calculating a cross-section (optionally fixed value for dimension n+1, i.e. the scale) between an n-dimensional slicing object and the constructed trans-scale boundary segments, wherein the cross-sections of said trans-scale boundary segments with the slicing object form the boundaries of the corresponding zones assigned to said represented objects in the intermediate n-dimensional representation.
Typically first steps S1-S3 are applied for each of the objects iteratively before step S4 is executed.
DEFINITIONS
Throughout the description and the claims the following definitions are used. A zone is an interior forming a connected and bounded part of a partitioned n- dimensional (nD)-space. A zone in 2D and higher dimensions has one outer boundary and may in addition have one or more inner boundaries. In a 2D-space a zone is an area bounded by (straight or curved) lines. In a 3D-space a zone is a volume bounded in that space. An example of a zone in 4D-space is a 4D-volume bounded is space and time.
A boundary limits a zone or another boundary within a topological structure. A boundary that limits a zone is the largest n-1 dimensional primitive that is shared by said zone and a neighboring zone.
For example a 3D-object may have a 2D boundary in the form of planes.
These planes have a ID boundary in the form of lines and these have a boundary in the form of end-points (0D). In nD-space every boundary (of dimension n- 1) is associated with exactly two zones.
A boundary set is a set of concatenated boundaries that together enclose an interior connected zone.
A boundary segment is a smallest unit within a boundary. For example in 2D a line segment is a boundary segment in a polyline boundary, i.e. a boundary comprising a plurality of line segments concatenated by vertices (nodes). In 3D a boundary segment is for example a polygon, e.g. a triangle forming part of a polyhedral boundary.
An object is a real-world, e.g. a biological, physical or even virtual (e.g.
ownership) phenomenon having a distinct feature classification (e.g. according to a cultural or a geographical classification scheme). For example in a 2D map zones may have the feature classification "forest" or "water" as an indication for the objects. In a 3D map zones may have the feature classification "building" or "air." Also higher dimensional zones are conceivable; e.g. representations of moving or changing 3D objects, such as in geology applications. As another example, a 4D zone may represent a building that exists within a 3D zone during a particular time interval.
An n-dimensional object representation (nD-object representation) is a representation by an nD-space partitioned into zones that each represent exactly one object.
An (n*)-dimensional object representation in (n+1)- dimensional space (n*D- object representation) is an object representation including a scale dimension in addition to the dimensions of the nD-object representation. The n*D-object representation embeds the nD higher and lower detailed representations by assigning each nD-object representation a respective scale value.
Trans-scale boundary segments are boundary segments extending between mutually corresponding boundary segments in subsequent nD-object representations embedded within the (n+l)D space. Trans-scale boundary segments have a dimension that is 1 higher than the dimension of the dimension of the boundary segments in said nD object representation and that dimension is equal to the dimension of said nD object representation, i.e. they have the dimension n.
Vario-scale object representation ((n+l)D-object representation) is a completed n*D-object-representation by adding the trans-scale boundaries formed by the trans- scale boundary segments. The two n*D-object representations and the corresponding
trans-scale boundaries completely bound the vario-scale (n+l)D-object
representation. Therewith a vario-scale object representation is a geometrical object in the (n+l)D-space, e.g. a (n+l)D-zone in the (n+l)D-space. For example a road- object is represented by an area (2D) in the original 2D representation and represented as a volume in the vario-scale object representation defined by the trans-scale boundary extending between an area representing the road-object in its higher detailed n*D object representation and a corresponding area representing the same road-object in its subsequent, lower detailed n*D object representation embedded in said (n+l)D object-representation.
In case of a collapse an object is represented with a reduced number of dimensions when reducing scale. A vario-scale object representation may collapse in a direction of decreasing scale. For example, at a relatively large scale a road-object is represented as a plane (2D), at a smaller scale it is represented by a line (ID) and at a still smaller scale it is represented by a point (ID). Accordingly, in this case the vario-scale object representation for the road-object comprises four trans-scale boundary-segments that extend between the plane in said relatively large scale representation and the line in said smaller scale representation. Furthermore, the vario-scale object representation comprises a planar vario-scale object
representation part that extends between the line in said smaller scale
representation and the point in said still smaller scale representation. This vario- scale object part has a trans-scale boundary comprising a first trans-scale boundary element formed by said line and a second and a third trans-scale boundary element formed by the connection lines between the end-points of said line in said smaller scale representation and the point in said still smaller scale representation. The number of dimensions of a collapsed object representation is a monotonically non- increasing function of the additional scale dimension. For example an area object can collapse to line object and then to point object (but not first collapse to point object and then expand again to line object). Alternatively an area object could directly collapse to a point object. Note: some objects may start as lower dimensional objects in the highest detailed representation; e.g. in a 2D-representation a power cable may be represented as ID line object.
Collapsed vario-scale object representation-parts are defined as those parts of a vario-scale object representation having less than n+1 dimensions within the
(n+l)D space. An example thereof is the planar vario-scale object representation part of the road object.
Generally speaking in the higher detailed representation the objects are represented by zones that are defined by points pi having respective n-dimensional coordinates (xu, Xi∑, Xin), and in the lower detailed representation by points Pi with n-dimensional coordinates (Xu, Xi∑, Xin). The objects may be represented for example by n-dimensional simplexes (n-simplex for short) that are defined by the coordinates of their vertices. The n-simplexes are delimited by n+1 simplexes of dimension n- 1. More generally, the zones may be n-dimensional polytopes (n- polytopes for short) bounded by (n- 1) -dimensional polytopes, e.g. polygons in 2D delimited by line segments, polyhedrons in 3D delimited by polygons or polychorons in 4D that are delimited by polyhedrons. In principle, also other, non-linear, geometric descriptions may be used, such as Bezier curves, Bezier surfaces etc, however, for practical purposes descriptions by n-polytopes are most useful.
Starting from the higher detailed and the lower detailed n*D representations
(e.g. a higher detailed 2D map and a lower detailed 2D map) an (n+1) -dimensional object representation is constructed that has in addition to the dimensions of the n- dimensional object representation an additional dimension. The higher and the lower detailed n-dimensional object representations are assigned a first and a second value (scale levels si and s2) for said additional dimension respectively. Accordingly the coordinates pi for the higher detailed representation are extended in one dimension higher to (xu, Xi2, Xin, Xn+1— S 1) and the coordinates for the lower detailed representation are extended to (Xu, Xi∑, Xin, Xn+i=s2).
Subsequently one or more additional (n-dimensional) trans-scale boundary segments are constructed that are delimited between mutually corresponding boundary segments in the higher and lower detailed n-dimensional representation. The additional trans-scale boundary-segments and the two versions of the n-dimensional object having the first and the second value (xn+i=sl and Xn+i=s2) for the additional dimension together completely bound the (n+1) -dimensional objects in the (n+1)- dimensional representation. For example in case that n = 2, an object may have a first polygonal zone zl with a first boundary set bl in the first, higher detailed representation and a second polygonal zone Zl with a second boundary set Bl in the
second, lower detailed representation. The polygonal zone Zl may be a degenerated polygon, i.e. a polygon having all its vertices arranged on a line or sharing one coordinate. One or more additional boundaries connect each point on the boundary set bl with a corresponding point on the boundary set Bl. Basically it is sufficient to construct an additional boundary object as a single 'tubular' shape1 having the polygonal zone zl as its first end surface and the polygonal zone Zl as its second end surface. It will usually be more practical to construct a 'tubular' shape as a plurality of connected trans-scale boundaries that extend between the boundary set of zone zl and boundary set of zone Zl corresponding therewith. These trans-scale boundaries are composed of trans -scale boundary segments extending between corresponding boundary segments in the boundary set of zl and the boundary set of Zl. Typically the segments are n-simplexes, i.e. triangles in case n=2 and tetrahedra in case n=3. However, aggregations may be made depending on the circumstances. For example two opposing triangles may be replaced by a quadrangle in case they are in the same plane. In case the zones zl and Zl are polygonal, the vertices of the triangles may coincide with the vertices of the polygons. In case the boundary sets bl, Bl of zones zl, Zl have the same number of vertices, then typically each pair of neighbouring vertices in boundary set bl form the first and second vertices of a triangle of which the third vertex is from the boundary set Bl, and likewise each pair of neighbouring vertices in boundary set Bl form the first and second vertices of a triangle of which the third vertex is from the boundary set b l.
In case the boundary set bl has a higher number of vertices than Bl, then part of the triangles having their base in bl may share a common vertex of Bl as their third vertex. Likewise, in case the boundary set Bl has a higher number of vertices than bl, then part of the triangles having their base in Bl may share a common vertex of bl as their third vertex.
Alternatively, in case the boundary set bl has a number of vertices that is N higher than that of Bl, then the description for the boundary set Bl may be extended with N intermediary vertices that are arranged on the boundary set Bl, between the original vertices of Bl. In this way a boundary set Bl' is obtained that is equivalent to the original boundary set, but that has the same number of vertices with changing shape and/or diameter (as bl and B2 are not equal).
as bl. In the same way a boundary set bl having a smaller number of vertices than a boundary set Bl may be extended with additional vertices.
In a similar way a 3D higher detail zone zl and a corresponding lower detail zone Zl in the form of polyhedrons bounded by polygons may be converted into equivalent polyhedrons by partitioning one or more faces of the polyhedrons and making sure that there are corresponding boundary segments in bl and Bl (and similar for higher dimensions).
As indicated above, the trans-scale boundaries are concatenated into a trans- scale boundary set that connects each point on the boundary set bl with a point on the corresponding (opposite) boundary set Bl.
Typically the boundary sets bl, Bl are matched segment-wise. Boundary segments of bl are matched with corresponding boundary segments in Bl. Typically the lower detailed representation is derived from the higher detailed representation, or both representations are directly derived from a common representation.
In an embodiment of the method according to the first aspect of the invention a higher detailed object representation comprises a concave zone zl (representing a disappearing object) that merges with a second zone z2 (representing a growing object) into a single destination zone in a lower detailed object representation, the method comprises the step of subdividing said concave zone into convex subzones. In case that the zone zl is concave, it is possible that the trans-scale boundary constructed between b2 and B2 is self intersecting. It is noted that not every merge with a concave zone necessarily results into a mutually intersecting trans-scale boundary. In practice various triangulations of a trans-scale boundary are possible of which usually one or more are non-intersecting. However, in case there is no such triangulation available or in order to systematically avoid self intersection of the trans-scale boundary the constructed trans-scale boundary is constructed part wise as claimed in claim 3. In this part wise construction auxiliary zones zla, zlb, ... are constructed to that end the zone zl is first partitioned into convex subzones. Directly adjacent subzone zla is merged with a neighbouring zone z2. The first auxiliary zone boundary set b2a bounds the concatenation zone z2' of the first auxiliary zone zla and zone z2. Next a second auxiliary zone boundary set b2b bounds said
concatenation z-2' with subsequent neighbouring (sub)zones zlb + z2' resulting into
z2". This process is repeated until all subzones are merged with zone z2 and the zone Z2 is obtained. The auxiliary zones zla, zlb, z2 z2", ... and their auxiliary zone boundary sets bla, bib, b2a, b2b, ... are assigned subsequently higher scale levels.
After constructing the (n+1)- dimensional representation, it can be used for efficiently obtaining vario-scale n-dimensional representations. Starting from the so obtained (n+1) -dimensional representation an intermediate n-dimensional representation is obtained by calculating a cross-section between an n-dimensional slicing object and the constructed (n+1) -dimensional objects. For calculating the cross-section it is sufficient to know the parameters that define the (n+1)- dimensional objects. For example, in case the (n+1) -dimensional objects are described by a mesh of (n+l)-simplexes, the cross-section with the n-dimensional slicing object is calculated using the vertices of the (n+l)-simplexes. Should the (n+1) -dimensional objects be described by Bezier shapes, the cross-section can be calculated from the end-points and control points of the Bezier shapes. As claimed in claim 9, the n-dimensional slicing object may be an n-dimensional hyperplane defined by the additional coordinate s= sp, wherein sp is a predetermined value for the scale independent of the coordinates defined by the n-dimensional space. In that case all objects are rendered with the same scale sp. For arbitrary scale levels s the cross-sections can be calculated. The steps between subsequent scale-levels can be selected arbitrarily small, so that a true smooth zoom-in or zoom-out is obtained without discontinuities in subsequent images.
It is not necessary that the n-dimensional slicing object is an n-dimensional hyperplane having a fixed value for s independent of the other coordinates. In an embodiment as claimed in claim 10, the n-dimensional slicing object has a value for the additional dimension that is a function of the coordinates in the n dimensions defined by the n-dimensional object-representations, e.g. the slicing object may be a tilted hyperplane. In this way it can be achieved that some of the objects are rendered with more detail than others. This feature can be used in so-called mixed scale maps. For example, in a 3D perspective view map objects nearby may be rendered with more detail than remote objects. Also more complicated functions may be used for the value s of the slicing object, for example to obtain the effect of a fish-
eye lens. In all case the method of the present invention results in topological correct boundaries between the displayed objects (without overlaps or unintended gaps).
When generating the structure from a topologically correct highest detailed n-dimensional representation, care should be taken that the derived lower detailed n-dimensional representations are also topologically correct, i.e. it should be prevented that zones representing objects overlap each other or that gaps are present between zones. Various methods are known to generate such topologically correct representations, such as the constrained t-GAP method described in the above-mentioned article. Starting from topologically correct lower detailed and the higher detailed n-dimensional representations, also topologically correct
intermediate representations are obtained. This is relatively easy in case that the (to be merged and disappearing) object zone involved is convex. The (to be merged) concave object zones may first be partitioned into convex sub-zones to achieve topologically correct intermediate representations as indicated in more detail in the sequel. In case of simplification of a shared boundary, care must be taken that the simplified version of the boundary remains inside the space covered by the two zones incident with the shared boundary (and in this manner making sure that no intersections are introduced).
In order to obtain a reduction of a level of detail in a lower detailed representation various reduction steps are possible.
A reduction step denoted as merge is realized in an embodiment of the method according to the first aspect wherein a higher detailed n-dimensional object representation comprises at least one disappearing zone (representing a
disappearing object) that merges with at least one growing zone (representing a growing object) into a single destination zone in a lower detailed n-dimensional object representation, said at least one disappearing zone and said at least one growing zone having a common boundary, said common boundary being mapped onto the opposite boundary segments (corresponding boundary segments) of the disappearing zone.
A reduction step denoted as collapse is realized in an embodiment of the method according to the first aspect wherein a higher detailed n-dimensional object representation comprises at least one, typically elongated, zone, representing a collapsing object arranged between neighbouring zones representing its
neighbouring objects, and wherein a lower detailed (<n)- dimensional object representing the collapsed object, and corresponding remaining parts of the space originally occupied by the collapsing object are merged with the neighbouring zones (objects).
A reduction step denoted as simplify is realized in an embodiment of the method according to the first aspect, wherein a higher detailed n-dimensional object representation comprises a zone having boundaries with a first number of boundary segments, and wherein a lower detailed n-dimensional object representation comprises a corresponding zone having boundaries with a second number of boundary segments, wherein the second number of boundary segments is smaller than the first number. The boundary segments are (n-l)-dimensional object in nD space, e.g. line or curve segments bounding an area or plane segments bounding a volume. Alternatively in case boundary segments are represented by polynomial objects, a simplification of the boundary is obtained by a reduction of the polynomial order of these objects. I.e. nth order polynomial segments are replaced by mth order segments, wherein n, m are integers and n>m≥l. For example second order polynomial boundary segments may be approximated by linear boundary segments. In 3D nth order polynomial surface segments are replaced by mth order polynomial surface segments.
Typically a boundary in the higher detailed representation does not have the same number of boundary segments as its corresponding boundary in the lower detailed representation. This situation typically occurs in case of a merge between two (object-representing) zones, wherein a higher detailed n-dimensional
representation comprises at least a disappearing and a growing zone having a common boundary, having a corresponding opposite boundary in a disappearing zone. Also in that case various approaches are possible to construct the trans-scale boundary segments between these boundaries. Typically (for a 2-dimensional representation) the common boundary and the opposite boundary corresponding therewith each are formed by concatenated line segments the common boundary having a first number nl and the opposite boundary having a second number n2 of line segments. According to a first approach a trans-scale boundary object is constructed that is composed of a number nl of triangles having their base in the
common boundary in the higher detailed n-dimensional object representation and a number n2 - 2 of triangles having their base in the opposite boundary in the lower detailed n-dimensional object representation.
According to a second approach first a pre-processing is applied to either the original boundary (common boundary) or the opposite boundary (corresponding boundary), before the trans-scale boundary segments are constructed. This preprocessing is performed by the following steps:
counting a first number of interior nodes on the common boundary, counting a second number of interior nodes of a opposite boundary on which said common boundary is mapped,
determining a difference between said first and said second number, if the first and the second number are not equal then adding a number of additional nodes equal to the absolute value of said difference to the one of the common boundary and the opposite boundary having the lower number of nodes. Therewith the common boundary and the opposite boundary mutually have an equal number of internal nodes arranged in a sequence along the common boundary and the opposite boundary respectively. The internal nodes of the common boundary are denoted as primary nodes and the internal nodes of the opposite boundary are denoted as secondary nodes.
Subsequently an edge is constructed between each primary node on the common boundary and a secondary node on the opposite boundary on which said primary node is mapped (corresponding secondary node). These edges define the trans-scale boundary segments. This approach is equally suitable to a higher dimensional application. In case of a 3D application, for example, a boundary is defined by a set of 2D-boundary segments each defined by set of ID-boundary segments that are each defined by nodes. Once the number of internal nodes is equalized according to the second approach, the number of ID-boundary segments can be equalized and subsequently the number of 2D-boundary segments can be equalized. Subsequently trans-scale boundary segments can be constructed that extend between the 2D-boundary segments.
According to a second aspect of the present invention a system is provided for generating a visual representation in an n-dimensional space. The system comprises a first facility for generating for each object to be represented a higher and a lower
detailed n- dimensional object representation that each comprising digital data describing a zone fitting in a space -partitioning, which zone is defined by (n- 1)- dimensional boundaries, each boundary being shared with a neighbouring zone.
The system according to the second aspect further comprises a second facility for positioning an n-dimensional object representation into an (n+1)- dimensional space, having in addition to the dimensions of the n-dimensional representations a scale (s) as an additional dimension, wherein the higher and the lower detailed n- dimensional representation respectively are assigned a first and a second value for said additional dimension.
The system further has a third facility for creating an (n+1) -dimensional object representation by constructing trans-scale boundary segments between mutually opposite boundaries in the higher and the lower detailed n-dimensional representation.
The system according to the second aspect further comprises a fourth facility for determining an intermediate n-dimensional representation by calculating a cross-section between an n-dimensional mapping object (slicing plane) and the trans- scale boundaries composed of the trans-scale boundary segments in said
transformed (n+1) -dimensional representation.
The system according to the second aspect may be arranged in an integrated unit comprising all its facilities in a single unit. Alternatively facilities of the system may be arranged at mutually different locations and be coupled via a wired or wireless communication channel.
An embodiment of the system according to the second aspect of the present invention is arranged as a client-server combination this itself forms the third aspect of the invention. The client-server combination comprises a server according to the fourth aspect of the invention and a client according to the fifth aspect of the invention.
The server according to the fourth aspect of the invention comprises the first facility for generating the higher and a lower detailed n-dimensional representation. The server according to the fourth aspect of the invention further comprises the second facility for positioning these higher and lower detailed n-dimensional representation in an (n+1) -dimensional space, and the third facility for creating a vario-scale (n+1) -dimensional representation by constructing trans-scale boundary
segments between mutually corresponding boundary segments in the first and a second n-dimensional representation.
The client according to the fifth aspect of the invention comprises the fourth facility for determining an intermediate n-dimensional representation. Accordingly, the client is capable of generating true n-dimensional vario-scale maps by slicing the received (n+1)- dimensional representations obtained from the server with the appropriated n-dimensional slicing surface.
In the system according to the third aspect of the invention configured as a client-server combination. The client is arranged to issue a request to the server specifying both the spatial and scale ranges. In response to said request the server is arranged to provide data of a transformed (n+1) -dimensional representation for subsequently increasing scales and starting with data for the smallest scale, i.e. with the lowest level of detail. In this system the client is arranged to simultaneously render an intermediate n-dimensional representation with a gradually increasing scale for scale values in between scale values for which the server already has provided data of the transformed (n+1) -dimensional representation.
In this way the client-server combination for generating true vario-scale maps in an n-dimensional space, supports progressive transfer.
In this way the client-server combination is capable of responding to for (n+1) -dimensional representations both for n-dimensional initial map requests and for n-dimensional delta map requests for zooming-in/out and panning.
BRIEF DESCRIPTION OF THE DRAWINGS
These and other aspects are described in more detail with reference to the drawing. Therein:
FIG. 1 shows examples of different approaches for generating representations (maps) of different level of detail from a source representation (map),
FIG. 2 shows various generalization operations for generating lower level of detail representations,
In particular FIG. 2a shows an example of a portion of a reference object representation (map),
FIG. 2b shows the result of a collapse operation,
FIG. 2c shows the result of a merge operation,
FIG. 2d shows the result of a simplify operation,
FIG. 2e shows a topologically generalized area partitioning structure corresponding to the sequence of operations applied to FIG. 2a,
FIG. 3 schematically shows a method according to the first aspect of the invention,
FIG. 4A shows a merge operation in more detail,
FIG. 4B schematically shows the (n+1)- dimensional object representation in this case,
FIG. 5 shows a triangulation of a trans-scale boundary,
FIG. 6 schematically shows examples of slicing objects,
FIG. 7a shows an (n+l)-dimensional representation derived from the n- dimensional representations as described with reference to FIG. 2a to 2d,
FIG. 7b shows intermediate representations for a first set of intermediate scale-values,
FIG. 7c shows intermediate representations for a second set of intermediate scale-values,
FIG. 7d shows intermediate representations for a third set of intermediate scale-values,
FIG. 7e shows a vario-scale representation obtained from the n-dimensional representations according to a known method,
FIG. 7f shows intermediate representations obtained from the result of FIG. 7e for a first set of intermediate scale-values (note the equal set of representations sll, sl2, sl3, 14, which is not very useful),
FIG. 7g shows intermediate representations obtained from the result of FIG. 7e for a second set of intermediate scale-values (note the sudden change in representation between sl4 and s21 and the equal set of representations s21, s22, s23, 24, which is not very useful),
FIG. 7h shows intermediate representations obtained from the result of FIG. 7e for a third set of intermediate scale-values (note the sudden change in
representation between s24 and s31 and the equal set of representations s31, s32, s33, 34, which is not very useful),
FIG. 8A shows intermediate n-dimensional representations obtained with a set of "horizontal" slicing objects for constant scale,
FIG. 8B shows an example wherein the slicing object is a tilted plane, FIG. 8C shows the intermediate n-dimensional representation that is obtained by a cross-section of the (n+1) -dimensional representation with a tilted slicing object,
FIG. 9A illustrates a curved slicing object by its curves of constant scale, FIG. 9B illustrates a mixed scale representation obtained with the slicing object of FIG. 9A,
FIG. 10A - 10F illustrates various stages of a merging step, wherein a concave disappearing zone zl is merged with a growing zone z2, therein,
FIG. 10A shows a part of a map with the original zones,
FIG. 10B shows said part wherein, now with the concave zone zl partitioned into convex zones zla, zlb, zlc, and zld,
FIG. IOC shows said part wherein it is illustrated how a convex part zla within the concave zone is merged with the growing zone,
FIG. 10D shows said part after the operation illustrated in FIG. IOC, FIG. 10E shows a further stage,
FIG. 10F shows a final stage,
FIG. 11 schematically shows a sequence of a first n-dimensional object representation, one or more auxiliary n-dimensional object representations and the second n-dimensional object representation embedded in an (n+1) -dimensional representation, as well as trans-scale boundary segments constructed therein,
FIG. 12 shows another example of a concave zone partitioned into convex zones (now in case of a zone with a hole),
FIG. 13A - 13D show an example of related 3D-object representations, based on the merge operation, therein,
FIG. 13A shows a higher detailed 3D-object representation,
FIG. 13D shows a corresponding lower detailed 3D-object representation, FIG. 13B shows a corresponding first intermediate 3D-object representation,
FIG. 13C shows a corresponding second intermediate 3D-object
representation,
FIG. 14A - 14C show in more detail a generic construction of an intermediate
3D-representation, therein
FIG. 14A shows an example of a higher detailed 3D-object-representation, FIG. 14B shows a mapping of corresponding elements in said shared boundary elements and opposite boundary elements,
FIG. 14C shows how an intermediate 3D-object-representation is obtained, FIG. 15A - 15C show two examples of a simplify operation, therein
FIG. 15A shows a merged object in a 3D object-representation,
FIG. 15B shows the result of a first type of the simplify operation,
FIG. 15C shows the result of a second type of the simplify operation,
FIG. 16A - 16D show a mapping of corresponding elements in a higher detailed 3D-object-representation and in a corresponding lower detailed 3D-object representation obtained by a simplify operation, therein
FIG. 16A shows the object of FIG. 15A, including node/vertex references, FIG. 16B shows the object of FIG. 15B, including node/vertex references,
FIG. 16C shows the object of FIG. 15C, including node/vertex references, FIG. 16D shows a table with a mapping between the references used in FIG.
16A and 16B, as well as a mapping between the references used in FIG. 16A and
16C,
FIG. 17A shows a pseudo 4D-view of the 4D-representation constructed from the 3D-representations shown in FIG. 16A and 16B, and
FIG. 17B shows a pseudo 4D-view of the 4D-representation constructed from the 3D-representations shown in FIG. 16A and 16C,
FIG. 18 shows a first embodiment of a system according to the second aspect of the invention,
FIG. 19 shows a second embodiment of a system according to the second aspect of the invention,
FIG. 19A shows the second embodiment of FIG. 19 in more detail,
FIG. 19B shows another part of an embodiment of the system in more detail, FIG. 20 shows an embodiment of a system according to a third aspect of the invention comprising a server according to the fourth aspect of the invention and a client according to the fifth aspect of the invention,
FIG. 20A shows an example of the embodiment of the system according to the third aspect in more detail,
FIG. 21A shows a first operational mode (simple initial map request) of the embodiment of the system according to the third aspect,
FIG. 2 IB shows a second operational mode (progressive initial map request) of the embodiment of the system according to the third aspect,
FIG. 21C shows a third operational mode (progressive zoom-in request) of the embodiment of the system according to the third aspect,
FIG. 2 ID shows a fourth operational mode (progressive zoom-out request) of the embodiment of the system according to the third aspect,
FIG. 21E shows a fifth operational mode (simple pan request) of the embodiment of the system according to the third aspect,
FIG. 21F shows a sixth operational mode (progressive pan request) of the embodiment of the system according to the third aspect.
DETAILED DESCRIPTION OF EMBODIMENTS In the following detailed description numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be understood by one skilled in the art that the present invention may be practiced without these specific details. In other instances, well known methods, procedures, and components have not been described in detail so as not to obscure aspects of the present invention.
It will be understood that, although the terms first, second, third etc. may be used herein to describe various elements, facilities and/or units, these elements, facilities and/or units should not be limited by these terms. These terms are only used to distinguish one element, facility or unit from other elements, facilities or units. Thus, a first element facility or unit discussed below could be termed a second element, facility or unit without departing from the teachings of the present invention.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein. All publications, patent applications, patents, and other references mentioned herein are incorporated by reference in their entirety. In case of conflict, the present specification, including definitions, will control. In addition, the materials, methods, and examples are illustrative only and not intended to be limiting.
Like numbers and other references refer to like elements throughout unless otherwise indicated.
Maps or other object representations may show objects with an amount of detail depending on the scale of the representation. When decreasing the scale, the size of the area increases, but the amount of detail available for individual objects decreases. The reference (or base) map represents the objects involved with the highest detail.
FIG. 1 schematically shows various approaches for generating lower level of detail object representations, by way of example at scales s2, s3, s4 from a reference object representation at scale si.
According to a first approach (a) each lower level of detail representation is directly constructed from the reference object representation. According to a second approach (b) each subsequent lower level of detail representation is constructed from the next higher level representation. The third approach (c) as described in more detail in the cited article of Haunert et al. is a hybrid approach. Therein
subsequently a set of intermediate datasets is generated that uses the information in the next higher level of detail and the information in the lowest level of detail
FIG. 2 shows in more detail various generalization operations for generating lower level of detail representations. FIG. 2a shows an example of a portion of a reference object representation or reference map. FIG. 2b shows the result of a collapse operation. A collapse operation comprises a sequence of sub -operations. In a collapse operation a 2D feature is replaced by a one -dimensional feature or by a zero-
dimensional feature. E.g. an elongated polygonal area representing a road z3 is replaced by a polyline. The area previously occupied by the elongated object is split and the parts are reassigned to the adjacent zones, here the zones zl, z2 and z4 respectively representing farmland, forest and water. FIG. 2c shows the result of a merge operation. In a merge operation a pair of zones, here the zones zl and z2, merges into a single destination zone, here zone zl. I.e. one of the zones disappears. A third example is a simplify operation. FIG. 2d shows the result of this operation. In a simplify operation a shared boundary between zones is replaced by a simplified boundary that approximates the original boundary for example by a reduction of the number of line segments used, while preventing that the new boundary intersects other existing boundaries. In this case the boundary between zones zl and z4 is simplified. A topological generalized area partitioning (tGAP) structure, specifies the desired generalization operations for each level of detail. The corresponding tGAP structure for this example is shown in FIG. 2e.
The generalization operations described with reference to FIG. 2 are the most common operations used. However, as described above, also other generalization operations such as "typify" are possible (and can be represented in the mentioned tGAP structure).
FIG. la to lc and FIG. 2a to 2d illustrate that regardless the generalization method and the generalization operations involved a step to a next lower level of detail involves a discontinuity in the displayed features. Zones that may be present in a particular level of detail, may suddenly disappear in the next level of detail. FIG. 3 schematically illustrates an embodiment of a method according to the first aspect of the present invention that avoids such discontinuities. The method generates a vario-scale visual representation of n-dimensional objects based on an (n+1)- dimensional space. The method comprises a first step SI of generating a higher and a lower detailed n-dimensional object representation. The higher and lower detailed n-dimensional object representation may be generated with a method known as such, for example the hybrid method described in the article by Haunert et al. or with one of the other methods referred therein. As these methods are known as such they will not be described in further detail here. The generated higher and lower detailed n-dimensional object representation each comprise digital data representing objects. The n-dimensional object representations have zones delimited
by (n-1)- dimensional boundaries having at least one boundary segment. The n- dimensional object representations may be 2-dimensional maps wherein the zones represent different cultural and/or geographical features. Although the method is mainly described here for a pair of a higher and a lower detailed n-dimensional object representation, the present invention is also designed to be applied to a set of n-dimensional object representations, together forming a partition of space.
In a second step S2 n-dimensional object representations are positioned in an (n+1)- dimensional space, having in addition to the dimensions of the n-dimensional object representations an additional dimension, wherein the higher and the lower detailed n-dimensional object representations are assigned a first and a second value (scale level) for said additional dimension respectively. Accordingly, in the case of a 2D map an object representation in 3D-space is obtained having the two dimensions, e.g. (x,y) of the map, and in addition the scale dimension. In that case the resulting coordinate system for the object representation is x,y,s. In a third step (S3) a (n+1)- dimensional object representation is created by constructing generalized (or trans- scale) boundary segments (n-dimensional) between mutually corresponding boundary segments of the higher and lower n-dimensional representation. If o(x,y) and 0(x,y) are functions that assign an object to a location x,y in the higher detailed object representation and the lower detailed object representation, then the (n+1)- dimensional object representation is defined as Os(x,y,sl) = o(x,y) and Os(x,y,s2) = 0(x,y).
In a fourth step S4 an intermediate n-dimensional representation is determined by calculating a cross-section between an n-dimensional slicing object and the constructed (n+1) -dimensional objects.
These steps are now described in more detail with various examples.
FIG. 4A schematically shows a first, higher level of detail (n=2)- dimensional object representation having a first object represented by zone zl and a second object represented by zone z2. Zone zl is bounded by boundary segments bl, b2, b 7, b8, b6. The boundary segments of zone zl extend between nodes or vertices nl, n2, n8, n6, n5. Zone z2 is bounded by boundary segments b3, b4, b5, b8, b7. The boundary segments of zone z2 extend between nodes or vertices n8, n3, n4, n5, n6. The zones have a common boundary part comprising segments b7, b8, from n8 to n5 via n6.
In the next lower level of detail representation zones zl and z2 are merged into destination zone Z2. Destination zone is bounded by boundary segments Bl, B3, B4, B5 that extend between nodes nl, n2, n3, n4.
FIG. 4B schematically shows the (n+l=3)-dimensional object representation in this case. This 3D object representation comprises the scale s as an additional dimension. The higher detailed representation is represented at scale s = si and the lower detailed representation is represented at scale s = s2 in this 3D object representation. For clarity the labels of the boundary segments bl, b2, etc. and Bl, B2, etc. are not shown in FIG. 4B. In this respect reference is made to FIG. 4A.
A generalized boundary, also denoted as trans-scale boundary is now constructed between corresponding boundary segments of the higher and lower n- dimensional representation.
In this example zone z2 is expanded to zone Z2. Accordingly the boundary segments b3, b4, b5, b8, 67 at scale si correspond to boundary segments B3, B4, B5, Bl at scale s2. The mapping at the level of the boundary segments is: boundary segment b4 at scale si corresponds to boundary segment B4 at scale s2, boundary segment b3 at scale si corresponds to the concatenation of boundary segments B3 at scale s2, boundary segment b5 corresponds to the concatenation of boundary segments B5 at scale s2, and the concatenation of boundary segments b7+b8 at scale si corresponds to boundary segment Bl at scale s2.
In this example zone zl collapses. Accordingly the boundary segments bl, b2, b7, b8, b6 defining zone zl at scale si collapse into boundary segment Bl at scale s2.
Having identified the mutually corresponding boundary segments of the higher and lower n-dimensional representation subsequently a trans-scale boundary having trans-scale boundary segments defined between mutually corresponding boundary segments of the objects according to the higher detailed representation and the lower detailed representation is constructed.
According to the first mapping the trans-scale boundary comprises a first segment delimited between b4 in the higher detailed representation and B4 in the lower detailed representation. The first segment may be described as a triangulated surface defined by a first triangle n4, N4, n3 and a second triangle n3, N3, N4.
Possible triangulations are described with reference to FIG. 5.
A second segment is delimited between 65 in the higher detailed
representation and B5 in the lower detailed representation. The second segment may be described as a triangulated surface defined by a first triangle i%4, i%5, N4 and a second triangle n5, Nl, N4. Likewise a third segment is delimited between b3 in the higher detailed representation and B3 in the lower detailed representation. The third segment may be described as a triangulated surface defined by a first triangle n3, n8,N3 and a second triangle n8, n2, N3.
A fourth segment is the shared boundary with the to be removed zone and is delimited between segments b8, b 7, in the higher detailed representation and between segment Bl in the lower detailed representation. According to a possible triangulation the fourth segment may be described as the set of triangles Nl, n5, n6; n6, Nl, n7; n7, Nl, N2; and N2, n7, n8. Therein n7 is a constructed additional node. The results are summarized in the following table. Column 1 (Boundary si)
indicates the boundary segments of the object boundary in the higher detailed representation. Column 2 (Boundary s2) indicates the boundary segments of the object boundary in the lower detailed representation. The third column (TS) indicates the vertices of the trans-scale boundary segments defined by the mutually corresponding boundary segments. The fourth column (TR) indicates a set of triangles that describe the trans-scale boundary segment.
realized in various ways. One of those ways is illustrated in FIG. 5. FIG. 5 shows the top -view of a situation wherein the mutually corresponding boundaries in the lower detailed object-representation (scale s2) and in the higher detailed object- representation (scale si) have a different number of linear boundary segments. In this example a shared boundary b_s in the higher detailed representation has a number LS_s = 7 concatenated linear segments and its corresponding (opposite) boundary set b_o (in the zone to be removed) has a number LS_o=5 concatenated linear segments. A trans-scale boundary segment can be composed of a number LS_s
of triangles having their base in the shared boundary b_s in the higher detailed object representation, and their top in the corresponding boundary set b_o in the lower detailed object-representation and a number LS_o - 2 of triangles having their base in the opposite boundary b_o in the first object representation and their top in the shared boundary b_s in the higher detailed object representation.
As a pre-processing step the number of linear segments of the mutually corresponding boundaries b_s (shared) and b_o (opposite) may be harmonized by subdividing linear segments in the boundary having the lower number of segments so as to obtain a mutually equal number of boundary segments. In the example of FIG. 4B a boundary segment b 7 is subdivided into two linear segments
interconnected by node i%7, so that both boundaries have 3 segments.
After construction of the (n+l=3)-dimensional representation, the next step involves determining an intermediate n-dimensional representation by calculating a cross-section between an n-dimensional slicing object SO and the constructed trans- scale boundary of the (n+1)- dimensional representation. The cross-section of said trans-scale boundary with the slicing object SO forms the boundary of the corresponding zone assigned to said object in the intermediate n-dimensional representation.
Several options are possible for the slicing object SO. In an embodiment the slicing object SO is a plane with a fixed value for the scale, for example a value s = .sl+(l- ).s2, wherein a is a value in the range of 0 to 1. This is schematically shown in FIG. 6, as well as an alternative, wherein the slicing object SOI is a tilted plane. FIG. 6 shows a further alternative wherein the slicing object S02 is a curved plane.
FIG. 7a-7d further illustrates an embodiment of the present invention with the n-dimensional representations of FIG. 2.
FIG. 7a shows the vario-scale visual representation constructed from the n- dimensional representations as described with reference to FIG. 2. The vario-scale representation of FIG. 7a has in addition to the dimensions x,y a scale dimension s In the (n+1) -dimensional object representation of FIG. 7, the highest detailed n- dimensional object representation of FIG. 2a is assigned a first value si (scale level) for said additional dimension. The next lower n-dimensional object representation of FIG. 2b is assigned a second value s2. The subsequent next lower n-dimensional
object representations of FIG. 2c, FIG. 2d are assigned a third value s3, s4
respectively.
FIG. 7b shows intermediate (n=2)- dimensional representations obtained by calculating a cross-section between an (n=2)- dimensional horizontal slicing object, and the constructed trans-scale boundaries of the objects. The subsequent intermediate (n=2)- dimensional representations are calculated with respective planes having a value s in the range between si and s2. For example, when si is set to 4 and s2 is set to 3, the slicing planes may have the values sll -4, s12 = 3.75, sl3 = 3.5 and sl4 = 3.25. FIG. 7c shows intermediate representations obtained with a slicing object formed by a plane with a scale value in the range between s2 and s3, for example with s21 = 3, s22 = 2.75, etc. FIG. 7d shows intermediate
representations obtained with a slicing object formed by a plane with a scale value in the range between s3 and s4. By gradually changing the value s of the plane forming the slicing object a continuous transition is obtained from a higher detailed representation to a lower detailed representation of a set of objects.
For comparison FIG. 7e shows a space-scale representation obtained from the n-dimensional representations according to the method known from Vermeij et al, referred to above.
FIG. 7f shows intermediate representations obtained from the result of FIG. 7e for a first set of intermediate scale-values,
FIG. 7g shows intermediate representations obtained from the result of FIG. 7e for a second set of intermediate scale-values,
FIG. 7h shows intermediate representations obtained from the result of FIG. 7e for a third set of intermediate scale-values,
In this case the results obtained for intermediate scale-values within the same set are the same (and do not contribute to smooth zoom, which is based on gradual change). Accordingly, although intermediary representations can be obtained for arbitrary scale values, the known method still results in abrupt transitions at the boundaries defined by the scale values for the n-dimensional representations from which the (n+1)- dimensional representation is constructed.
As indicated with reference to FIG. 6 the slicing object is not necessarily a plane for a constant value of s. FIG. 8B shows an example wherein the slicing object
SO is a tilted plane. FIG. 8C shows the intermediate n-dimensional representation that is obtained by a cross-section of the (n+l)-dimensional representation with the tilted slicing object SO. The result is called a mixed-scale map as in one image both higher and lower detail representations are seamlessly integrated. For comparison FIG. 8A shows the intermediate n-dimensional representations obtained with a set of 'horizontal' slicing objects, i.e. slicing objects for constant scale. In the
intermediate representation of FIG. 8C it is achieved that within the plane of said intermediate representation a gradual transition in the level of detail is achieved. This makes it possible for example to represent nearby objects in detail, while simultaneously presenting an overview of remote objects.
FIG. 9A and 9B shows another example. Therein FIG. 9A illustrates curves of constant scale (S=l, S=0,5 etc) for a slicing object. The slicing objects SO has relatively small scale value for coordinates close to the centre of the x-y coordinate system and the scale value increases with the distance from the centre.
The cross-section between such a slicing object and the (n+1)- dimensional object representation results in an intermediary representation as shown in FIG. 9B, wherein objects near the centre are represented larger and objects remote from the centre are represented smaller: a mixed scale map. Note that this is a simulation of a true mixed scale map (taken from Harrie, L., Sarjakoski, L. T., and Lehto, L.
(2002). A variable-scale map for small display cartography. International Archives of Photogrammetry Remote Sensing and Spatial Information Sciences, 34(4):237-242). This simulation does not show less detailed representations towards the outside, but only the in size reduced representations.
A particular situation arises if a disappearing object (zone) involved in a merge is concave. This situation is illustrated in FIG. 10A. FIG. 10A shows a part of an n-dimensional object representation at a high level of detail, having a first concave zone zl, and a second zone z2. In the second map having the low level of detail, zones zl and z2 are merged into zone Z2, wherein zone zl is the disappearing zone. This situation is shown in FIG. 10F. According to an embodiment of the method according to the first aspect, the concave zone is first subdivided into convex
subzones zla, zlb, zlc, zld as shown in FIG. 10B. FIG. IOC to FIG. 10F further illustrate a stepwise merge of the convex subzones zla, zld with the consuming zone z2.
In the first step a convex subzone zla of the first zone zl is selected that has a common boundary with the second zone z2 (growing object). An auxiliary n- dimensional object representation is constructed as shown in FIG. 10D, wherein a new first zone is defined by separating (removing) the selected convex zone zla from the first zone zl and wherein a new second zone z2 ' is defined by merging the selected convex zone zla with the second zone z2. The first auxiliary n-dimensional object representation is assigned a scale value intermediate a scale value assigned to the scale values assigned to the n-dimensional object representation at a high level of detail of FIG. 10A and to the n-dimensional object representation at a low level of detail of FIG. 10F. Trans-scale boundaries (comprising trans-scale boundary segments between mutually corresponding boundary segments) between mutually corresponding boundaries in the n-dimensional object representation at a high level of detail and in the first auxiliary n-dimensional object representation are then constructed as schematically illustrated in FIG. IOC.
These steps are repeated, now with the new second (further growing) zone z2 ' as the second zone, and with the new, reduced first (further shrinking) zone as the first zone. As illustrated in FIG. 10D, in this case the selected convex subzone is subzone zlb. After merging this subzone with zone z2 ' the intermediary result of FIG. 10E is obtained. This intermediate result is a second auxiliary n-dimensional object representation that is assigned a scale value intermediate a scale value assigned to the scale values assigned to the first auxiliary n-dimensional object representation of FIG. 10D and to the n-dimensional object representation at a low level of detail of FIG. 10F.
In the second auxiliary n-dimensional object representation of FIG. 10E a new consuming (growing) subzone z2" is formed that bounds to two convex subzones lc and Id of the original concave zone zl. These convex subzones lc, Id may be merged simultaneously with the new second zone z2". Therewith the result of FIG. 10F is obtained wherein only the second zone Z2 remains.
In this process, each subsequent auxiliary n-dimensional object
representation is assigned a subsequently lower scale value. The last constructed auxiliary n-dimensional object representation is the n-dimensional object
representation at a low level of detail and the other constructed auxiliary n- dimensional object representations are assigned scale values in the range between the scale values assigned to the n-dimensional object representation at a high level of detail and the n-dimensional object representation at a low level of detail. This is illustrated in FIG. 11, wherein the n-dimensional object representation having the higher level of detail as illustrated in FIG. 10A is assigned scale value si, the first auxiliary n-dimensional object representation, of FIG 10D is assigned scale value s2, the second auxiliary n-dimensional object representation of FIG. 10E is assigned scale value s3. The third auxiliary n-dimensional object representation, of FIG. 10F, which is also the n-dimensional object representation having the lower level of detail is assigned scale value s4, wherein si > s2 > s3 > s4.
In a subsequent step trans-scale boundary segments are constructed that extend between mutually corresponding boundary segments between each pair of subsequent n-dimensional object representations in a depth order selected from the sequence of a first n-dimensional object representation, one or more auxiliary n- dimensional object representations and the second n-dimensional object
representation. These trans-scale boundary segments are schematically indicated as dotted lines in FIG. 11
FIG. 12 shows another example, wherein the concave zone zl is shaped as a ring around an island zS. The concave zone zl is partitioned into sub-zones zla, zlb, zlc and zld. A merger of zone zl with zone z2 is performed stepwise by first merging subzone zla with zone z2 resulting in zone z2 subsequently merging subzones zlb and zlc with zone z2' resulting in zone z2", and finally merging subzone zld with zone z2" resulting in a zone Z2 at lower level of detail.
The present invention is not limited to 2D objects. The method is equally applicable to higher dimensional objects. This is further clarified by the following example.
FIG. 13A and 13D respectively show a higher and a lower detailed 3D object representation. In the higher detailed 3D object representation zones zi and zii are
each represented by digital data as 3D-zones in said n- dimensional object
representations. The zones zi, zii are delimited by (n- 1)- dimensional boundaries having at least one boundary segment. In this case each zone is delimited by its set of faces, front face, back face, left side face, right side face, bottom face and top face (note that zone zii has 7 faces as left face has 2 parts: of which one is shared with zone zi), These faces form the boundary segments.
FIG. 13A shows a set of two 3D objects in the form of zones in a higher level of detail 3D representation. Zone zi represents for example a first building, zone zii represents a second building and zone ziii (not depicted) represents a background.
Also a lower level of detail 3D object representation is generated as shown in
FIG. 13D. In the lower detailed 3D object-representation as shown in FIG. 13D zone zi and zone zii are merged into zone ZII. Zone Zi disappears in this merging operation so that de lower detached representation has no ZI. FIG. 13B and FIG. 13C show subsequent intermediate 3D representations. FIG. 14A-FIG. 14C show how a topological correct mapping is achieved using a generic approach (explained below). A generic gradual transition is shown with a growing zone zii and a shrinking and gradually disappearing zone zi.
FIG. 14A again shows the higher detailed 3D object-presentation as in FIG. 13A. Zones zi, zii are convex objects that have a shared boundary formed by the right side-face (dark) of zone zi. Object zi is to be removed in a merge operation with growing object zii. In the lower detailed 3D object representation of FIG. 13D, this shared boundary is mapped to a destination boundary comprising bottom face 1, top face 3, front face 2, back face 4 and left side face 5 as indicated in FIG. 14A. As shown in FIG. 14B, the shared boundary between the zones zi and zii is now partitioned into boundary segments to equalize the number of faces, edges and nodes in the shared boundary and the destination (or opposite) boundary. In the example shown the shared boundary is provided with additional nodes a,b,c,d that are mapped to nodes A,B,C,D, edges a-b, b-c, etc mapped to A-B, B-C, etc, and faces 1-5 that are mapped to faces 1-5 of the destination (opposite) boundary. Lower and higher case characters indicate elements in the higher-detailed 3D representation and in the lower detailed 3D-representation respectively.
A 4D object representation is constructed, that has in addition to the dimensions of the 3D object representations an additional dimension. The higher and the lower detailed 3D object representations are assigned a first and a second value (si, s2 of scale level s) for said additional dimension respectively.
For example, nodes a, b, c, d of the zone zii in the higher detailed
representation are defined by their 3-dimensional spatial coordinates x,y,z and a value si for fourth coordinate s. For example nodes A, B, C, D in the lower detailed representation are defined by their 3D spatial coordinates x,y,z and a value s2 for fourth coordinate s.
Next a trans-scale boundary is constructed that is delimited between mutually corresponding boundary segments of said at least one object in the higher detailed and the lower detailed n-dimensional representation. In this case the boundary segments of zone zii in the higher detailed representation are the top, bottom front, back, right and two left side face of zone zii. The lower left side face of zone zii forms a shared boundary with zone zi and a remaining portion, not shared with zone zi. The shared portion is partitioned in faces 1-5 (black) that are mapped to faces 1-5 (blue) of the destination (opposite) boundary as indicated above. Each pair of a face 1-5 and its corresponding face 1-5 to which it is mapped delimits a trans-scale n-dimensional boundary segment in (n+1)- dimensional space. For example consider face 1 in the shared boundary, which is defined by nodes a, d, f, e in the higher detailed representation. This face 1 is mapped to corresponding face 1 in the destination boundary defined by A, D, F, E in the lower detailed
representation. For clarity nodes E, F are not shown in the drawing. Node E has the same values for the coordinates x,y,z as its corresponding node e, but only has a different scale value, s2 instead of si. Likewise node _Fonly differs by its scale value from node /. The trans-scale boundary segment delimited by face 1: a, d, e, f in the higher detailed representation and its corresponding face 1: A, D, E, F in the lower detailed representation comprises four other faces: a first face a, d, D, A; a second face d, f, F, D; a third face /, e, E, F and a fourth face e, a, A, E. Together these faces form one of the (n=3)- dimensional boundaries of the (n+l=4)-dimensional representation. Analogously a trans-scale boundary segment is constructed that is delimited between each of the other faces 2-5 in the higher detailed object-
representation and its corresponding one of the other faces in the lower detailed object-representation. Further, analogously respective trans-scale boundary segments are constructed that each are delimited between each of the other faces of zone zii not part of the shared boundary in the higher detailed object-representation and their corresponding one of the other faces in the lower detailed object- representation.
The concatenation of all trans-scale (n=3)- dimensional boundary segments forms the vario-scale (n+1)- dimensional representation associated with the zone zii- ZII.
An intermediate 3D representation for zone zii is now obtained by calculating a cross-section between a 3D slicing object and the constructed 4D representation, wherein the cross-section of said trans-scale boundary with the slicing object forms the boundary of the corresponding zone assigned to said object in the intermediate 3D representation.
Analogous to the 2D case the slicing object may be formed by an object according to the definition s = constant, wherein said constant value is a value in the range between si and s2. Alternatively the value s may be a function of one or more of the coordinates x,y,z, so that the intermediate representation has a level of detail that is position dependent; e.g. to support the generation of 3D perspective views.
FIG. 14C shows an example of an intermediate representation obtained, in the generic general transition, when the slicing object has a value s equal to
(sl+s2)/2. In the so obtained intermediary representation the original boundary is extended with the volume indicated by dotted lines.
For clarity the present invention is set out for a simple case, wherein only a limited number of objects are involved and it is shown how the trans-scale boundary is calculated for a single object. In practice the higher and the lower detailed n- dimensional representation may represent plurality of objects; e.g. forming a partition of space (at every scale). The step of determining the trans-scale boundary and the step of calculating the cross-section is executed for each of the objects. In practice a boundary segment of an object is shared with another object. Accordingly once a trans-scale boundary element delimited by said boundary segment in the higher detailed representation and its corresponding boundary segment in the lower
detailed representation is calculated for an object, it can be reused for the other object sharing said boundary element.
FIG. 15A-C show examples of a simplify operation in the 3D case. FIG. 15A shows a merged zone ZII obtained by a merging operation as illustrated with reference to FIG. 13A - 13D and with reference to FIG. 14A - 14C. FIG. 15B shows a result according to a simplify operation of a first type, wherein the object is approximated by its "bounding box", i.e. the smallest cuboid that contains the object. FIG. 15C shows a result according to a simplify operation of a second type, wherein the object is otherwise approximated (with a tilted roof).
FIG. 16A-16C shows how the object nodes of zone ZII are mapped in accordance with each of the two simplify option to resp. zone ΖΙΓ and ΖΠ".
FIG. 16D shows a table with a mapping between the references used in FIG. 16A and 16B, as well as a mapping between the references used in FIG. 16A and 16C.
FIG. 17A, B show a pseudo 4D impression for the merge followed by one of the two simplify options. In this view it is shown how an (n+1)- dimensional object representation is constructed, having in addition to the dimensions x,y,z, the additional dimension s. Representations are assigned a first and a second value si, s2 for said additional dimension respectively. FIG. 17A shows how the higher detailed 3D representation for zone zii is assigned scale value si in the 4D object- representation and how the lower detailed 3D representation for the resulting merged and simplified zone ΖΙΓ (first type of simplification) is assigned scale value s2 in the 4D object-representation. The dotted lines indicate the relation between mutually corresponding nodes in the representations for si and s2. FIG. 17B shows how the higher detailed 3D representation for zone zii is assigned scale value si in the 4D object-representation and how the lower detailed 3D representation for the resulting merged and simplified zone ZII" (second type simplification) is assigned scale value s2 in the 4D object-representation. The dotted lines indicate the relation between mutually corresponding nodes in the representations for si and s2.
FIG. 18 shows a system according to the second aspect of the invention for generating a visual representation in an n-dimensional space. The system comprises a first facility 10 for generating a higher and a lower detailed n-dimensional
representation Rh, Rl respectively each comprising digital data representing objects, said n-dimensional representations having zones delimited by boundaries having at least one boundary segment. The first facility 10 generates the higher and a lower detailed n-dimensional representation Rh, Rl, from a reference map Rref, which has the highest level of detail. As indicated with reference to FIG. 1 various options are possible to generate the higher and lower detailed n-dimensional representation Rh, Rl from a reference map (representation) Rref.
The system has a second facility with a first unit 20 for positioning the representation R+ in an (n+1)- dimensional space. The representation R+ uses in addition to the dimensions of the n-dimensional representations Rh, Rl an additional dimension (s = scale), and the higher and the lower detailed n-dimensional representation Rh, Rl are assigned a first and a second value si, s2 for said additional dimension of representation i?+ in an (n+1) -dimensional space. The system further has a third facility 30 for constructing (n+1) -dimensional
representation R++ by creating trans-scale boundary segments between mutually corresponding boundary segments in the higher and the lower detailed n- dimensional representation embedded in the representation R+. This (n+1)- dimensional representation R++ is provided to a fourth facility 40 of the system.
This fourth facility 40 determines an intermediate n-dimensional
representation Rs by calculating a cross-section between an n-dimensional slicing object SO and the trans-scale boundaries in the (n+1) -dimensional representation R++.
In practice the n-dimensional representations may include concave objects. For example the higher detailed n-dimensional representation Rh has a concave first zone zl as shown in FIG. 10A that disappears as a result of a merging operation with another zone z2 into a destination zone Z2 as shown in FIG. 10F.
FIG. 19 shows another embodiment of a system according to the second aspect that is modified in that an additional unit 15 is provided for generating auxiliary n-dimensional representations Rl, R2 from the lower and the higher n- dimensional representation Rl, Rh. This embodiment of the system is also suitable for handling non-convex objects. The additional unit 15 provides the second facility 20 with a set of n-dimensional representations including the auxiliary n-dimensional
representations Rl, R2 and the lower and the higher n- dimensional representation Rl, Rh.
The last constructed auxiliary n-dimensional representation is the lower detailed n-dimensional representation Rl and the other constructed auxiliary n- dimensional representations Rl, R2 are assigned scale values in the range between the scale values assigned to the higher detailed n-dimensional representation Rh and the lower detailed n-dimensional representation Rl.
The second unit 30 is arranged for constructing trans-scale boundary segments extending between mutually corresponding boundary segments in each pair of subsequent n-dimensional representations in a scale order selected from the sequence of the higher detailed n-dimensional representation Rh, one or more auxiliary n-dimensional representations Rl, R2 and the lower detailed n- dimensional representation Rl.
FIG. 19A shows an example of the additional unit 15 in the embodiment of FIG. 19 in more detail.
The additional unit 15 has a selection facility 151, for selecting an n- dimensional representation Rk to be processed from a first and a second input. One of the inputs is arranged to receive the higher detailed n-dimensional representation Rh.
In said example the additional unit 15 has a identification facility 152 for receiving the selected n-dimensional representation Rk and for identifying therein a convex subzone in the first zone, for example subzone zla in the disappearing zone zl in FIG. 10B, that has a common boundary with the second zone, for example z2 (growing object). The presence of the disappearing and the growing object is indicated by the first facility 10, for example on the basis of a tGAP representation. The identification facility 152 provides an n-dimensional output representation Rk' having identified therein the convex subzone zla.
The additional unit 15 further has a merging facility 153 for constructing from said n-dimensional output representation Rk' an auxiliary n-dimensional representation Rk+1 wherein a new first zone, e.g. (zlb+zlc+zld in FIG. 10D) is defined by separating the selected convex zone zla from the first (disappearing) zone
zl and wherein a new second (growing) zone z2 ' is defined by merging the selected convex zone zla with the second zone z2.
The control facility 50 repeatedly activates the selection facility 151, the identification facility 152 and the merging facility 153. In the next iteration the control facility 50 causes the selection facility 151 to select the auxiliary n- dimensional representation Rk+1 as the new n-dimensional representation Rk to be processed. In this new n-dimensional representation Rk to be processed the new first zone (zlb+zlc+zld) replaces the first zone zl, and the new second zone z2 replaces the second zone z2. The control facility 50 ends the procedure if all convex subzones are merged into the second zone. In this way one or more auxiliary n-dimensional representations Rl, R2 are obtained in addition to the lower detailed n-dimensional representation and the higher detailed n-dimensional representation.
For clarity, in this example reference is only made to a single concave zone zl. In practice an n-dimensional representation may have a plurality of concave zones. In that case, the identification facility 152 identifies for each of the concave disappearing zones that is to be merged with another, growing zone, a subzone in the disappearing zone that has a common boundary with the growing zone. The identification facility 152 may identify these one by one or for two or more disappearing zones in parallel, depending on the processing capabilities of the identification facility 152. Subsequently the merging facility 153 merges each of the identified subzones with its corresponding growing zone, i.e. the growing zone with which it has the common boundary. The merging facility 153 may carry out the merging operation one by one or for two or more subzones in parallel, depending on the processing capabilities of the merging facility 153.
Each of the auxiliary n-dimensional representations Rl, R2 as well as the lower detailed n-dimensional representation and the higher detailed n-dimensional representation is assigned a scale value. The n-dimensional object representation Rh having the higher level of detail is assigned scale value si, the first auxiliary n- dimensional object representation Rl, is assigned scale value s2, the second auxiliary n-dimensional object R2 is assigned scale value s3. The third auxiliary n- dimensional object representation which is also the n-dimensional object
representation having the lower level of detail Rl is assigned scale value s4, wherein si > s2 > s3 > s4.
Output facility 154 provides these n- dimensional object representations to facility 20. Facility 20 uses these n-dimensional representations Rh, Rl, R2, Rl for positioning these as representation R+ in an (n+1) -dimensional space. Subsequently facility 30 constructs an (n+1) -dimensional representation R++ by creating trans- scale boundary segments between mutually corresponding boundary segments in each pair of subsequent n-dimensional representations in a scale order selected from the sequence of the higher detailed n-dimensional representation Rh, one or more auxiliary n-dimensional representations Rl, R2 and the lower detailed n- dimensional representation Rl.
FIG. 19B shows a further embodiment of a system according to the second aspect. In that further embodiment facility 30 comprises a first counter and a second counter 31, 32. The first counter 31 is arranged for counting a first number of interior nodes Ns on a common (shared) boundary b_s between zones representing respective objects. The second counter 32 is arranged for counting a second number No of interior nodes of the corresponding (opposite) boundary b_o (of the
disappearing zone) on which said common boundary b_s is mapped. The system of FIG. 19B further comprises a comparator 33 for determining a difference AN between said first and said second number, as well as a modification facility 34, 35. The modification facility 34, 35 is arranged for adding a number of additional nodes to the one of the common boundary and the corresponding boundary having the lower number of nodes. The number of additional nodes is equal to the absolute value I AN Ιοΐ said difference. If the common boundary b_s has the lower number of nodes then modification facility 34 modifies the common boundary by adding said number / AN/ of additional nodes, therewith obtaining a modified common boundary b'_s. If the corresponding boundary b_o has the lower number of nodes then modification facility 35 modifies the corresponding boundary b_o by adding said number I AN I of additional nodes, therewith obtaining a modified corresponding boundary b'_o. The common boundary and the corresponding boundary so obtained have an equal number of internal nodes arranged along the common boundary and the corresponding boundary respectively. In the sequel the internal nodes of the
common boundary will also be denoted as primary nodes and the internal nodes of the corresponding boundary will also be denoted as secondary nodes.
The system of FIG. 19B further has an edge construction facility 36 for constructing an edge Eso between each primary node on the common boundary and a secondary node on the corresponding boundary on which said primary node is mapped (corresponding secondary node).
The system has a segment construction facility 37 for constructing trans-scale boundary segments Sso between mutually corresponding boundary segments in the common boundary and corresponding boundary for each subsequent pair of constructed edges.
In an embodiment, schematically shown in FIG. 20 an embodiment of the system according to the second aspect is configured in a client-server combination (according to the third aspect of the invention) as a server 1A according to the fourth aspect of the invention that is coupled via a communication channel 1C to a client IB according to the fifth aspect of the invention.
In the client-server arrangement part of the facilities are assigned to the server 1A and a remaining part of the facilities is assigned to the client IB. In an embodiment shown in FIG. 20A, the server comprises the first facility 10 for generating the higher and a lower detailed n-dimensional representation Rh, Rl, from the reference map Rref, which has the highest level of detail. In that embodiment the server also comprises the second facility 20 for constructing the (n+1)- dimensional representation R+ and the third facility 30 for constructing trans- scale boundary segments between mutually corresponding boundary segments in the first and a second n-dimensional representation embedded in the representation R+ in an(n+l)- dimensional space. The server 1A is arranged to provide the extended (n+1) -dimensional representation R++ to the client IB, via the communication channel 1C.
The client IB comprises the fourth facility 40 for determining an
intermediate n-dimensional representation Rs by calculating a cross-section between an n-dimensional slicing object SO and the trans-scale boundaries in the extended (n+1) -dimensional representation R++. The client IB specifies the n-dimensional
slicing object SO, for example with user interface 60, and the resulting intermediate n-dimensional representation Rs is displayed on a display 70.
The server 1A is arranged to respond to requests Q from the client. The following main types of requests may be considered.
1. A request to provide an initial map based on simple n-dimensional spatial range overlap selection of the relevant (n+l)-polytopes representing the vario-scale n-dimensional zones in the requested area Al for the requested scale si as illustrated in FIG. 21A. In this case a progressive transfer of data generally is not so useful. Note that the number of selected objects may be large, so it can take some time before a map covering a requested area Al can be created by the client.
2. A request to provide initial map based on (n+1)- dimensional
(orthogonal) spatial-scale range overlap selection of the relevant (n+l)-polytopes representing the vario-scale n-dimensional zones in the requested area Al starting from the smallest scale sn (most coarse representation) until the required scale si as illustrated in FIG. 2 IB. The server sends the selected (n+l)-polytopes sorted on smallest scale value, this will enable progressive transfer for an area Al. The client can quickly start drawing an initial course representation, while still receiving more detail.
3. A request to provide the n-polytopes for a progressive zoom-in as shown in FIG. 21C. Note the shrinking of the spatial range from an area Al at scale si to an area AO at scale sO. Alternatively it is possible to provide for a simple zoom- in. In that case the client does not need to receive 'intermediate' n-polytopes (this alternative is not depicted in FIG. 21).
4. A request to provide the n-polytopes for a progressive zoom-out as shown in FIG. 2 ID. Note the growing of the spatial range from an area Al at scale si to an area A2 at scale s2. In this case the n-polytopes are sorted based on largest scale value from the larger to the smaller scale value (which is the reverse order of a zoom-in) Alternatively, also a simple zoom-out is possible without sending
'intermediate' n-polytopes (not depicted in FIG. 21)
5. A request to provide the n-polytopes for a simple pan from a first area
Al to a next area A3 represented at the same scale si as shown in FIG. 21E. In that case the server immediately transmits the object data for the required level of detail.
6. A request to provide the n-polytopes for a progressive transfer pan as shown in FIG. 2 IF from a first area Al to a second area A3. In that case the server subsequently transmits more and more detailed data (gradually changing from scale sn to scale si) for the requested spatial range A3, and the client can gradually increase the level of detail with which the image data in said spatial range A3 is displayed.
In the claims the word "comprising" does not exclude other elements or steps, and the indefinite article "a" or "an" does not exclude a plurality. A single component or other unit may fulfill the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different claims does not indicate that a combination of these measures cannot be used to advantage. Any reference signs in the claims should not be construed as limiting the scope.
Functions of the system may be carried out by dedicated hardware, such as an application specific integrated circuit (ASIC), but may alternatively be
implemented by a suitable programmed general purpose processor, or by a combination of dedicated hardware and general purpose processors.
Claims
1. Method for generating a vario-scale visual representation of n- dimensional objects (at largest scale fitting in space -partitioning), comprising the steps of
generating (SI) for each object to be represented a higher and a lower detailed n-dimensional object representation, that each comprise digital data describing a zone fitting in a space -partitioning, which zone is defined by (n- 1)- dimensional boundary segments, each boundary segment being shared with a neighbouring zone,
positioning (S2) a higher and a lower detailed n-dimensional object representation in an (n+1) -dimensional space, having in addition to the dimensions of the n-dimensional object representations an additional dimension, wherein the higher and the lower detailed n-dimensional object representations are assigned a first and a second value (scale level) for said additional dimension respectively, constructing (S3) non-intersecting trans-scale boundary segments (n- dimensional in (n+1) -dimensional space) between mutually corresponding boundary segments of the higher detailed and the lower detailed n-dimensional object representation (per object resulting in a gradually changing cross-section in the scale dimension),
determining (S4) an intermediate n-dimensional object representation by calculating a cross-section (optionally fixed value for dimension n+1, i.e. the scale) between an n-dimensional slicing object and the constructed trans-scale boundaries, wherein the cross-sections of said trans-scale boundaries with the slicing object form the boundaries of the corresponding zones assigned to said represented objects in the intermediate n-dimensional representation.
2. Method according to claim 1, wherein a higher detailed object representation comprises at least a first, concave, zone (disappearing object) that merges with a second zone (growing object) into a single destination zone in a lower detailed object representation, the method comprising the step of subdividing said at least one concave zone into convex subzones.
3. Method according to claim 2, further comprising the steps of a. selecting a convex subzone in the first zone (disappearing object) that has a common boundary with the second zone (growing object),
b. constructing an auxiliary object representation wherein a new first
(disappearing) zone is defined by separating (removing) the selected convex subzone from the first zone and wherein a new second (growing) zone is defined by merging the selected convex subzone with the second zone,
c. repeating steps a-b with the new first zone as the first zone, and the new second zone as the second zone until all convex subzones are merged into the second zone, wherein each subsequent auxiliary object representation is assigned a subsequently smaller scale value, the last constructed auxiliary object
representation being the lower detailed object representation and the other constructed auxiliary object representations being assigned scale values in the range between the scale values assigned to the higher detailed object representation and the lower detailed object representation,
d. constructing trans-scale boundary segments extending between mutually corresponding boundary segments in each pair of subsequent object representations in a scale order selected from the sequence of higher detailed object representation, one or more auxiliary object representations and the lower detailed object representation.
4. Method according to one of the previous claims, wherein a higher detailed n- dimensional object representation comprises at least one disappearing zone
(disappearing object) that merges with at least one growing zone (growing object) into a single destination zone in a lower detailed n-dimensional object
representation, said at least one disappearing zone and said at least one growing zone having a common boundary, said common boundary being mapped onto opposite boundaries (corresponding boundaries) of a boundary set of the
disappearing zone.
5. Method according to one of the previous claims, wherein a higher detailed n- dimensional object representation comprises at least one, typically elongated, zone, representing a collapsing object arranged between neighbouring zones representing its neighbouring objects, and wherein a lower detailed n-dimensional object representation comprises a destination zone of lower dimension representing the collapsed object, and corresponding remaining parts of the space originally occupied by the collapsing object are merged with the neighboring zones (objects).
6. Method according to one of the previous claims, wherein a higher detailed n- dimensional object representation comprises a zone having a boundary with a first number of boundary segments, and wherein a lower detailed n-dimensional object representation comprises a corresponding zone having a boundary with a second number of boundary segments, wherein the second number of boundary segments is smaller than the first number, and/or wherein one or more boundary segments in the lower detailed n-dimensional object representation are represented by boundary elements of a lower polynomial order (e.g. linear instead of 2nd order) as compared with their corresponding boundary segments in the higher detailed n-dimensional object representation.
7. Method according to one of the previous claims, wherein a higher detailed n- dimensional object representation comprises at least a first (disappearing) and a second (growing) zone having a common boundary that correspond to an opposite boundary of the disappearing zone, wherein the common boundary and the therewith corresponding opposite boundary each are formed by concatenated line segments, the common boundary having a first number nl and the opposite boundary having a second number n2 of line segments, the method comprising constructing a trans-scale boundary object that is composed of a number nl of triangles having their base in the common boundary in the higher detailed n- dimensional object representation and a number n2 - 2 of triangles having their base in the opposite boundary in the lower detailed n-dimensional object representation.
8. Method according to one of the previous claims, wherein a common boundary (between a growing and a disappearing zone) in a higher detailed n-dimensional object representation is mapped onto a corresponding opposite boundary of disappearing zone (in a lower detailed n-dimensional object representation), the method comprising:
counting a first number of interior nodes on the common boundary, counting a second number of interior nodes of a corresponding opposite boundary on which said common boundary is mapped,
determining a difference between said first and said second number, if the first and the second number are not equal then adding a number of additional nodes equal to the absolute value of said difference to the one of the common boundary and the corresponding opposite boundary having the lower number of nodes,
the common boundary and the corresponding opposite boundary therewith mutually having an equal number of internal nodes arranged in a sequence along the common boundary and the corresponding opposite boundary respectively, the internal nodes of the common boundary being denoted as primary nodes and the internal nodes of the corresponding opposite boundary being denoted as secondary nodes,
constructing an edge between each primary node on the common boundary and a secondary node on the corresponding opposite boundary on which said primary node is mapped (corresponding secondary node).
9. Method according to one of the previous claims, wherein the n-dimensional slicing object is a hyperplane having a constant value for the additional dimension.
10. Method according to one of the claims 1 to 8, wherein the n-dimensional slicing object has a value for the additional dimension that is a function of the coordinates in the n dimensions defined by the n-dimensional object-representations (used for producing so called mixed-scale maps).
11. System for generating a vario-scale visual representation in an n-dimensional space, (at largest scale fitting in space-partitioning), comprising
a first facility (10) for generating for each object to be represented a higher and a lower detailed n-dimensional object representation (Rh, Rl resp.) each comprising digital data describing a zone fitting in a space-partitioning, which zone is defined by (n-1)- dimensional boundary segments, each boundary segment being shared with a neighbouring zone, a second facility (20) for positioning the higher and the lower detailed object representations in an (n+1) -dimensional space, having in addition to the dimensions of the n-dimensional object representations a scale (s) as an additional dimension, wherein the higher and the lower detailed n-dimensional object representation respectively are assigned a first and a second value for said additional dimension, and
a third facility (30) for constructing an (n+1) -dimensional object
representation by creating trans-scale boundary segments between mutually corresponding boundary segments in the higher detailed and the lower detailed n- dimensional representation,
a fourth facility (40) for determining an intermediate n-dimensional object representation by calculating a cross-section between an n-dimensional slicing object (slicing plane SO) and the trans-scale boundaries in said extended (n+1) -dimensional object representation, wherein the cross-sections of said trans-scale boundaries with the slicing object form the boundaries of the corresponding zones assigned to said represented objects in the intermediate n-dimensional representation.
12. System according to claim 11, wherein the third facility (30) comprises:
a first counter (31) for counting a first number of interior nodes on a common boundary between zones representing respective a growing and a disappearing object,
a second counter (32) for counting a second number of interior nodes of the corresponding opposite boundary (of disappearing zone) on which said common boundary is mapped,
- a comparator (33) for determining a difference between said first and said second number,
a modification facility (34, 35) for adding a number of additional nodes to the one of the common boundary and the corresponding opposite boundary having the lower number of nodes if the first and the second number are not equal, the number of additional nodes being equal to the absolute value of said difference,
the common boundary and the corresponding opposite boundary therewith mutually having an equal number of internal nodes arranged along the common boundary and the corresponding opposite boundary respectively, the internal nodes of the common boundary being denoted as primary nodes and the internal nodes of the corresponding opposite boundary being denoted as secondary nodes,
an edge construction facility (36) for constructing an edge between each primary node on the common boundary and a secondary node on the corresponding opposite boundary on which said primary node is mapped (corresponding secondary node),
a segment construction facility (37) for constructing trans-scale boundary segments between mutually corresponding boundary segments in the common boundary and corresponding opposite boundary for each subsequent pair of constructed edges.
13. System according to claim 11 or 12, wherein the third facility comprises a. a identification facility (152) for identifying a convex subzone in a first zone (disappearing object) that has a common boundary with a second zone (growing object),
b. an auxiliary n-dimensional representation construction facility (15) for constructing an auxiliary n-dimensional object representation wherein a new first zone is defined by separating the selected convex zone from the first (disappearing) zone and wherein a new second (growing) zone is defined by merging the selected convex zone with the second zone,
c. a control unit (50) for repeatedly activating the identification facility (152) and the construction facility (15), wherein the new first zone replaces the first zone, and the new second zone replaces the second zone until all convex subzones are merged into the second zone, wherein each subsequent auxiliary n-dimensional representation is assigned a subsequently smaller scale value, the last constructed auxiliary n-dimensional representation being the lower detailed n-dimensional representation and the other constructed auxiliary n-dimensional representation being assigned scale values in the range between the scale values assigned to the higher detailed n-dimensional representation and the lower detailed n-dimensional representation ,
d. a construction facility for constructing trans-scale boundary segments extending between mutually corresponding boundary segments in each pair of subsequent n-dimensional object representations in a scale order selected from the sequence of the higher detailed n- dimensional object representation, one or more auxiliary n-dimensional object representations and the lower detailed n-dimensional object representation.
14. System according to one of the claims 11- 13, comprising a client (IB) and a server (1A) mutually coupled by a communication channel (1C), wherein the server (1A) comprises
the first facility (10) for generating a higher and a lower detailed n- dimensional representation (Rh, Rl resp.)
- the second facility (20) for positioning the higher and the lower detailed n- dimensional representation (R+) in an (n+1) -dimensional space, and
the third facility (30) for construction an (n+1) -dimensional object
representation (R++) by creating trans-scale boundary segments between mutually corresponding boundary segments in the first and a second n-dimensional representation,
and wherein the client (IB) comprises the fourth facility for determining an intermediate n-dimensional representation (Rs).
15. System according to claim 14, wherein the client (IB) is arranged to issue a request (Q) to the server (1A) and wherein the server in response to said request is arranged to provide data of an extended (n+1) -dimensional representation (R++) for subsequently decreasing scales and starting with data for the highest scale, and wherein the client (IB) is arranged to render (simultaneously while receiving data) an intermediate n-dimensional representation (Rs) with a gradually decreasing scale for scale values in between scale values for which the server (1A) already has provided data of the extended (n+1) -dimensional representation (R++).
16. System according to claim 14 or 15, wherein the client (IB) further comprises a display device (70),
a user interface (60).
17. System according to claim 14 or 15, wherein the server (1A) comprises a storage facility for storing a reference map.
18. A server (1A) as defined by one of the claims 14, 15 or 17.
19. A client (IB) as defined by one of the claims 14, 15 or 16.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| NL2006630 | 2011-04-19 | ||
| NL2006630A NL2006630C2 (en) | 2011-04-19 | 2011-04-19 | Method and system for generating maps in an n-dimensional space. |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2012144893A2 true WO2012144893A2 (en) | 2012-10-26 |
| WO2012144893A3 WO2012144893A3 (en) | 2013-01-17 |
Family
ID=46025854
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/NL2012/050255 Ceased WO2012144893A2 (en) | 2011-04-19 | 2012-04-18 | Method and system for generating maps in an n-dimensional space |
Country Status (2)
| Country | Link |
|---|---|
| NL (1) | NL2006630C2 (en) |
| WO (1) | WO2012144893A2 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105809735A (en) * | 2016-03-11 | 2016-07-27 | 武汉大学 | Topology maintenance method based on three-dimensional geometric body combination |
| IT201700052882A1 (en) * | 2017-05-16 | 2018-11-16 | Gec Srl | METHOD AND DEVICE TO DISPLAY DIGITAL MAPS MAPS |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6222555B1 (en) * | 1997-06-18 | 2001-04-24 | Christofferson Enterprises, Llc | Method for automatically smoothing object level of detail transitions for regular objects in a computer graphics display system |
-
2011
- 2011-04-19 NL NL2006630A patent/NL2006630C2/en not_active IP Right Cessation
-
2012
- 2012-04-18 WO PCT/NL2012/050255 patent/WO2012144893A2/en not_active Ceased
Non-Patent Citations (4)
| Title |
|---|
| HARRIE, L.; SARJAKOSKI, L. T.; LEHTO, L.: "A variable-scale map for small display cartography", INTERNATIONAL ARCHIVES OF PHOTOGRAMMETRY REMOTE SENSING AND SPATIAL INFORMATION SCIENCES, vol. 34, no. 4, 2002, pages 237 - 242 |
| HAUNERT, DILO; VAN OOSTEROM: "Constrained set-up of the tGAP structure for progressive vector data transfer", COMPUTERS & GEOSCIENCES, vol. 35, 2009, pages 2191 - 2203, XP026697449, DOI: doi:10.1016/j.cageo.2008.11.002 |
| VAN OOSTEROM, THE REACTIVE-TREE: A STORAGE STRUCTURE FOR A SEAMLESS, SCALELESS GEOGRAPHIC DATABASE, March 1991 (1991-03-01), pages 393 - 407 |
| VERMEIJ ET AL.: "Storing and using scale- less topological data efficiently in a client-server DBMS environment", PROCEEDINGS OF THE 7TH INTERNATIONAL CONFERENCE ON GEOCOMPUTATION, 8 September 2003 (2003-09-08) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105809735A (en) * | 2016-03-11 | 2016-07-27 | 武汉大学 | Topology maintenance method based on three-dimensional geometric body combination |
| IT201700052882A1 (en) * | 2017-05-16 | 2018-11-16 | Gec Srl | METHOD AND DEVICE TO DISPLAY DIGITAL MAPS MAPS |
Also Published As
| Publication number | Publication date |
|---|---|
| NL2006630C2 (en) | 2012-10-22 |
| WO2012144893A3 (en) | 2013-01-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11922534B2 (en) | Tile based computer graphics | |
| USRE44348E1 (en) | Detail-in-context terrain displacement algorithm with optimizations | |
| US7965902B1 (en) | Large-scale image processing using mass parallelization techniques | |
| van Oosterom et al. | Vario-scale data structures supporting smooth zoom and progressive transfer of 2D and 3D data | |
| US9224238B2 (en) | Seamless texturing of 3D meshes of objects from multiple views | |
| CN106780736A (en) | Map data processing method and device, three-dimensional map generation method and device | |
| KR102410351B1 (en) | Single pass flexible screen/scale rasterization | |
| CN107615279A (en) | Generation of Virtual 3D Model Based on Virtual Hexahedron Model | |
| CN103077497B (en) | Image in level of detail model is carried out to the method and apparatus of convergent-divergent | |
| CN111563947A (en) | Interactive real-time volume rendering method of global three-dimensional cloud | |
| CN114549338A (en) | Method and device for generating electronic map and computer readable storage medium | |
| CN112102489A (en) | Navigation interface display method and device, computing equipment and storage medium | |
| CN116109765A (en) | Three-dimensional rendering method and device for labeling objects, computer equipment and storage medium | |
| CN120182455B (en) | A method, system and computer-readable storage medium for rendering land parcel lines on the ground | |
| KR20170080315A (en) | Map processing method based on multi-scale model for building object | |
| NL2006630C2 (en) | Method and system for generating maps in an n-dimensional space. | |
| US9454554B1 (en) | View dependent query of multi-resolution clustered 3D dataset | |
| CN101441781A (en) | Curved surface overturning method | |
| JP2003323461A (en) | Cad data generation device and information manipulation method | |
| Garland et al. | Fast triangular approximation of terrains and height fields | |
| US9208593B1 (en) | Proximity-based detail reduction of geographic data | |
| Yu et al. | A hybrid system of expanding 2D GIS into 3D space | |
| KR20200120003A (en) | 3D visualization system of space based on geographic data and 3D visualization of space using it | |
| Shu et al. | Rich and seamless texture mapping to 3D mesh models | |
| US20020171643A1 (en) | Surface generator unit for and method of approximating an implicit surface and image display apparatus comprising the surface generator unit |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 12718423 Country of ref document: EP Kind code of ref document: A2 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 12718423 Country of ref document: EP Kind code of ref document: A2 |

