| 103 | |
| 104 | ==== Temporal Operators ==== |
| 105 | The temporal algebra defines temporal operators that can be combined later with the spatial operators to perform spatio-temporal operations. |
| 106 | The temporal operators process the time instances and intervals of temporal related maps. |
| 107 | {{{ |
| 108 | AND & Intersection |
| 109 | OR | Union |
| 110 | DISJOINT OR + Disjoint union |
| 111 | LEFT REFERENCE = Use the time stamp of the left space time vector dataset |
| 112 | }}} |
| 113 | For example we can compute the intersection, union or disjoint union from time stamps of maps |
| 114 | that temporally overlap, or we can just keep the time stamp of the left STDS. |
| 115 | {{{ |
| 116 | Left Operator Right |
| 117 | A {equal,:} B |
| 118 | }}} |
| 119 | |
| 120 | == Temporal Vector Algebra == |
| 121 | |
| 122 | The temporal vector algebra includes all functions from the temporal algebra |
| 123 | and adds spatial boolean and buffer operations that can be performed on temporal related vector maps that are registered in |
| 124 | space time vector datasets. |
| 125 | |
| 126 | === Spatio-Temporal Operators === |
| 127 | |
| 128 | These are the spatial operators that are supported: |
| 129 | {{{ |
| 130 | AND & Intersection (v.overlay operator=and) |
| 131 | OR | Union (v.overlay operator=or) |
| 132 | DISJOINT OR + Disjoint union (v.patch) |
| 133 | XOR ^ Symmetric difference (v.overlay operator=xor) |
| 134 | NOT ~ Complement (v.overlay operator=not) |
| 135 | }}} |
| 136 | We combine the temporal topology relations, the temporal operators and the spatial operators to create spatio-temporal operators: |
| 137 | {{{ |
| 138 | {"list of temporal relations", "temporal operator" "spatial operator"} |
| 139 | }}} |
| 140 | The spatial operator can be used stand-alone. In this case the temporal topology relation "equal" and the temporal operator "left reference =" is assumed and used as default. This allows the convenient use of the spatial operators in case of space time vector datasets with equal time stamps. |
| 141 | |
| 142 | Example: |
| 143 | A spatio intersection between maps of STVDS A and B that are temporally equal, |
| 144 | resulting spatial intersection maps are stored in C with time stamps from A: |
| 145 | {{{ |
| 146 | C = A & B |
| 147 | }}} |
| 148 | A spatio-temporal intersection between maps of STVDS A and B that temporally overlap, |
| 149 | resulting spatial intersection maps are stored in C with new time stamps resulting from temporal intersection: |
| 150 | {{{ |
| 151 | C = A {overlap,&&} B |
| 152 | }}} |
| 153 | Perform a spatial union and a temporal disjoint union between all maps of STVDS A |
| 154 | and B that are temporally equal or overlap and are later than 1990, |
| 155 | resulting spatial union maps are stored in C with new time stamps resulting from temporal disjoint union: |
| 156 | {{{ |
| 157 | C = if(start_year() > 1990, A {equal,overlap,+|} B) |
| 158 | }}} |
| 159 | |
| 160 | |
| 161 | |
| 162 | |