mirror of
				https://github.com/Jermolene/TiddlyWiki5
				synced 2025-10-31 15:42:59 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			103 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			103 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| title: $:/plugins/tiddlywiki/geospatial/docs
 | |
| 
 | |
| ! Filter Operators
 | |
| 
 | |
| !! `geopoint` operator
 | |
| 
 | |
| The `geopoint` operator converts separate latitude, longitude and (optionally) altitude numbers into a [[GeoJSON Point Feature]] that can be used with other geospatial primitives.
 | |
| 
 | |
| The coordinates are specified as two or three operands:
 | |
| 
 | |
| ```
 | |
| [geopoint<latitude>,<longitude>,<attitude>]
 | |
| ```
 | |
| 
 | |
| Any operands that cannot be interpreted as a valid number will be interpreted as the value zero.
 | |
| 
 | |
| For example:
 | |
| 
 | |
| ```
 | |
| <$text text={{{ [geopoint[51.751944],[-1.257778]] }}}/>
 | |
| ```
 | |
| 
 | |
| Returns:
 | |
| 
 | |
| ```
 | |
| {"type":"Feature","properties":{},"geometry":{"type":"Point","coordinates":[51.751944,-1.257778,0]}}
 | |
| ```
 | |
| 
 | |
| !! `geodistance` operator
 | |
| 
 | |
| The `geodistance` operator calculates the distance between two points in [[GeoJSON Point Feature]] format. The points are specified as two operands. An optional third operand specifies the units as `miles`, `kilometers`, `degrees` or `radians` (defaults to `miles`).
 | |
| 
 | |
| ```
 | |
| <$let
 | |
| 	oxford={{{ [geopoint[51.751944],[-1.257778]] }}}
 | |
| 	new-york={{{ [geopoint[40.730610],[-73.935242]] }}}
 | |
| >
 | |
| <$text text={{{ [geodistance<oxford>,<new-york>] }}}/>,
 | |
| <$text text={{{ [geodistance<oxford>,<new-york>,[miles]] }}}/>,
 | |
| </$let>
 | |
| ```
 | |
| 
 | |
| !! `geounion` operator
 | |
| 
 | |
| The `geounion` operator calculates the union between two or more [[GeoJSON Polygon Features|GeoJSON Polygon Feature]].
 | |
| 
 | |
| Each input list item is interpreted as a [[GeoJSON Polygon Feature Collection]] containing polygons.
 | |
| 
 | |
| ```
 | |
| [geounion[]]
 | |
| ```
 | |
| 
 | |
| !! `geointersect` operator
 | |
| 
 | |
| The `geointersect` operator calculates the intersection between two or more [[GeoJSON Polygon Features|GeoJSON Polygon Feature]].
 | |
| 
 | |
| Each input list item is interpreted as a [[GeoJSON Polygon Feature Collection]] containing polygons.
 | |
| 
 | |
| ```
 | |
| [geointersect[]]
 | |
| ```
 | |
| 
 | |
| !! `geodifference` operator
 | |
| 
 | |
| The `geodifference` operator calculates the difference between two or more [[GeoJSON Polygon Features|GeoJSON Polygon Feature]].
 | |
| 
 | |
| Each input list item is interpreted as a [[GeoJSON Polygon Feature Collection]] containing polygons.
 | |
| 
 | |
| ```
 | |
| [geodifference[]]
 | |
| ```
 | |
| 
 | |
| !! `geolookup` operator
 | |
| 
 | |
| The `geolookup` operator identifies the polygon(s) within a [[GeoJSON Polygon Feature]] that correspond to a particular point, and returns the JSON properties of that polygon.
 | |
| 
 | |
| Each input list item is interpreted as a [[GeoJSON Point Feature]] and the operand is interpreted as a [[GeoJSON Polygon Feature Collection]].
 | |
| 
 | |
| For example, here we lookup the point 100.5,0.5 in the [[GeoJSON Polygon Feature Collection]] stored in the tiddler `TestData` and then extracts the indexes `0` and `animal` from the resulting JSON:
 | |
| 
 | |
| ```
 | |
| <$text text={{{ [geopoint[100.5],[0.5]geolookup{TestData}jsonget[0],[animal]] }}}/>
 | |
| ```
 | |
| 
 | |
| !! `olc-decode` operator
 | |
| 
 | |
| The `olc-decode` operator converts an [[OpenLocationCode|https://github.com/google/open-location-code]] shortcut into the [[GeoJSON Point Feature]] at its centre or the [[GeoJSON Polygon Feature]] representing the bounds of the area identified by the input code.
 | |
| 
 | |
| ```
 | |
| [olc-decode:bounds[9C3WQP2R+QV]]
 | |
| [olc-decode:point[9C3WQP2R+QVH]]
 | |
| ```
 | |
| 
 | |
| !! `olc-encode` operator
 | |
| 
 | |
| The `old-encode` operator converts separate latitude and longitude numbers into an [[OpenLocationCode|https://github.com/google/open-location-code]] shortcut code with a specified length (defaults to 11 characters).
 | |
| 
 | |
| ```
 | |
| [olc-encode[51.751944],[-1.257778]]
 | |
| [olc-encode[51.751944],[-1.257778],[11]]
 | |
| ```
 | |
| 
 | 
