• No se han encontrado resultados

A framework for building spatiotemporal applications in Java

N/A
N/A
Protected

Academic year: 2023

Share "A framework for building spatiotemporal applications in Java"

Copied!
132
0
0

Texto completo

11 2.6 Translation of time intervals into two-dimensional coordinates 11 2.7 Spatial objects in 2D: point, line and area 12. 53 5.3 The undefined value in carrier sets of BASE types is represented. with zero references. .. reJ:)ref;ell1~ea of ​​a group.

Chapt 2

  • Structure Dimensionality of
  • in Relational Databases
  • Object-Oriented Databases

To allow equality, some events can be considered as occurring on the same. In others there may be an order where. In terms of query optimization, it is not ideal to be defined by the user.

Methods for Temporal

It was found that, although in the latter case the query language was unclearly complex (temporal queries differ from normal queries), it is not always feasible to incorporate supporting temporal constructs.

Spatial

  • STDM for Object

For some set of rectangles to be indexed by the R-Tree (typically the bounding . U~~'c~'"~ of more complex spatial objects), each of them. An attribute can only be valid for the lifetime of that object , it belongs. to.

Time in Information Systems

  • Cartographic Time Model
  • Conceptions of Time

It is still too taxing on existing hardware, and there are still too many questions and problems to be solved with this approach, making it impractical for GIS over the next few years. The underlying meaning of objects is hidden, therefore it is also not possible to enforce any type of rules for integrity.

Chapt 3

Persistent Object Systems

  • Persistent Systems
  • Orthogonally Java
    • Persistent Java Project at University of Glasgow
    • N-dimensional Indexing in Persistent Java
    • Comparison between Persistent Java and a Relational Database (VIBES Project)
  • Conclusion
  • Chapter 4

All the code was developed using the SUN JDK version 1.1.6 and it was only converted to Persistent Java during a final stage. Persistent Java was found to be much slower with bulk data loading routines, but query times were significantly faster.

Spatiotemporal Model

Abstract vs. Discrete Modeling

Before developing the model in [GBE+OO], some of the authors proposed an approach to create a model for moving objects in [EGV97]. There are two different levels of abstraction to make the above decisions: the model can be designed either as continuous or as discrete. This applies to one-dimensional types on which an aggregate order exists (int, real, etc.) The need for range types arises from the requirement that projections must be available on the domain and range of moving types.

The reason why there is both a point and a point type is that the model requires representation for both individual values ​​and for sets/ranges of values. Even though a single point can be represented with the point type, it was decided to include point since modeling the movements of a point was one of the fundamental objectives in developing the model.

Operations

For binary predicates two sets, and . according to set theory, There are some .. more equal, sufficient) , . in [GBE+OO]. pattern - the only unary . between two single values, the predicates .. greater _than, less_equal, equal less_than more were all UA,-,AU . lvU .. are designed for everyone, even some single minuses can also be applied to values). by their definition, they must be when the minus operation is along the limit where. minus hand, one-dimensional arrays are allowed in open-ended intervals '-'VLLVU,J'U. the case when a time-varying function a step-by-step evolution,. between two lines, is a point), the points of contact rttl1rUrtltln two regions and a region) and common_boundary (between two regions, a line). A line is obtained by projecting a moving path (line) and a region by projecting a (line) or moving (region) traversed. 01lJl11JJl<:; inti projections with types, inst. and COlnp'onen1GS value respectively. checks if there was a move returns a subset of the move Where atinstant. instant, value) moving type reSineCtl a certain instant or. It means that each of the operations defined in what can be any of its arguments.

The lift length operation returns a moving(real) bounded by the lift less_than and projected to the time domain. Derivation is not applicable to discrete types such as int as no division is available.

Illustrations and Examples Using the Model

  • Example 2
  • Conclusions

It is useful to note the rate at which they change for values ​​that change over time. From the definition of computing a derivative, the derivative operation is applicable to any time type that supports a difference operation and is divisible by a real. This chapter provides an overview of how the ST model described in the previous section was implemented as a class library for Persistent Java.

Since the ST model is an abstract model, some mapping between the continuous and discrete domains had to be done. This mapping will be described in this chapter, as well as the implementation of each of the main types.

Introduction

Using Wrapper Classes to Implement BASE types

Mapping TIME from Continuous to Discrete

5 RANGE

TEMPORAL Types

  • Moving Types

However, because InTime objects form an integral part of the animation object structure, the InTime classes had to be generalized when the shared functionality of the animation classes was generalized (as explained below). This type of anomaly must be handled by objects or methods that use InTime objects. InTime objects are not sorted by their Period components, but whenever a moving object is 'moved' and a new InTime is added, a check is made to ensure that the Period of the new InTime does not overlap with the Period of any existing InTime in the history of the moving object.

The approach taken was to provide only the basic structure within the moving classes and give the class to the users. Abstract move types were created, ations, and the move 0 operation that checks .. has been generalized, now contains all .. own operations for it, objects of its special case, move ... must only have InTime, which contains [Dot, pairs added to representative OUlUjJlv operations in were implemented, but some methods that would be very similar to HUjJl~"U''''UL'a. those that were were omitted to generalize similar present 0 was not. no according to the actual type since 0 periods there has not been as i:)J.l"'UH:;.

SPATIAL Data

It is clear that ECT was not only intended for displaying objects on the screen, but also for some of them.

Points

  • Line
  • Region

Of the spatial object, it contains the most code and contains the operations that were most '-'LH~"''''H5JLU5 to This is the first class in the spatial object. If any of the values ​​of t is greater than 1 or less than 0, it means so that the line segments do not intersect. The parametric equation of the line segment is normalized (as above) and solved for the value t where the line intersects the perpendicular imaginary line (see Figure 5.23).

Otherwise one of the endpoints is closer (which endpoint is closer depends on whether t is greater than 1 or less than 0). It is up to the user of the ST package to decide which approach is appropriate for the particular application.

Summary

An intermediate approach can also be taken where all changing attributes (i.e. including isLate) are stored in a subclass of Point, and all non-changing variables in a subclass of mPoint. In general, it would make sense to add changing variables that need to be synchronized in time, lower in the tree, i.e. Classes composed of many moving objects may be less efficient in terms of size, but are often easier to use (as was found in the experiment in section 7.2).

  • Background on Spatiotemporal Indexing
  • Method Applied
    • Overall Approach
    • Incorporating Indices
    • Using Indices in a Moving Object
    • Indexing Multiple Moving Objects

This array is a structure that contains references to all indexes in the history of this moving object. After adding a reference to indexes, the addIndex 0 method also adds the entire history of the moving object to the index. This is a time index that contains the history of this moving object and no other.

But since the history of the moving object will also be "added" to the index, it should be seen as an association and not a composition. If the InTimeWrapper did not inherit from InTime, it would be smaller, but then the Index interface would have to be changed so that the reference of the moving object could be passed to the insert 0 method, e.g.

  • Developed for Verifying Correctness
    • Conclusions
    • of the Experiment
    • Weighing Up Cost Benefit of Indices
    • Design of the
    • Conclusions
  • Summary

In the next . A number of experiments are outlined where, in testing the overall usability performance of .., Tn was important for some measure of the library's ease of use, Chapter 5. One of the key components of this thesis was a package that would be useful for developing spatiotemporal using a persistent .. and simple enough using the development. When this problem arose, candidates were advised to try more than one... and see if they got through each one. concluded within. t.PTWl'l.rl1!'l that for the attribute as .. total of the source produced each part of the code produced in phase I was 70%.

From the observations throughout the UUJ'UU5 experiment, the following conclusions followed. on the design of frameworks for spatio-temporal applications; in our experience tlVl"\tlr,_. As mentioned in Chapter 6, more moving objects. index performance in investigative indexing at least 50.

Conclusions

  • Summary
  • Future Work

How should balances in. language not relate to. to productivity and is there any lend itself to reduced development the programmer does such as memory management, so more time can be devoted to design. have strong control rules enforced through an exception mechanism that guides. more good against robust code. which turned out that when we could not inherit from .. exclude it holds further . traits of objects with the ability to of a . program. Java finally did it was found that .. the development spatiotemporalHbrary was with the environment, classes required no change. Although do . quite a learning curve. versions of require files are not always for a first time user. the way objects are the persistent store is not an object's . moving objects).

The need for this became clear during the VIBES project, which took a lot of time. It would be particularly interesting to measure how the use of the ST package affects the development process.

Appendix A

SFRI problem description

1 Research Vessels

SARP

Satellite Images

Queries

S Model xercise Sheet

  • Using the Model

Bibliography

Referencias

Documento similar

(The “Example of an Object-Oriented Microarchitectural Design Rule” sidebar gives the attributes for such a design rule.) This rule in- troduces an abstract class or an interface,