1241 lines
36 KiB
Plaintext
1241 lines
36 KiB
Plaintext
Database : berlintest
|
|
Restore : NO
|
|
|
|
Operator : #
|
|
Number : 1
|
|
Signature: (point point) -> bool, (points points) -> bool, (line line) -> bool, (region region) -> bool
|
|
Example : query mehringdamm # alexanderplatz
|
|
Result : TRUE
|
|
|
|
|
|
Operator : +
|
|
Number : 1
|
|
Signature: point x point -> point
|
|
Example : query [const point value (0.0 -1.2)] + [const point value (-5.0 1.2)]
|
|
Result : (point (-5.0 0.0))
|
|
|
|
|
|
Operator : =
|
|
Number : 1
|
|
Signature: (point point) -> bool, (points points) -> bool, (line line) -> bool, (region region) -> bool
|
|
Example : query tiergarten = zoogarten
|
|
Result : FALSE
|
|
|
|
Operator : <
|
|
Number : 1
|
|
Signature: point x point -> bool
|
|
Example : query [const point value (0.0 2.5)] < [const point value (1.0 2.5)]
|
|
Result : TRUE
|
|
|
|
Operator : <
|
|
Number : 2
|
|
Signature: point x point -> bool
|
|
Example : query [const point value (1.0 2.5)] < [const point value (0.0 2.5)]
|
|
Result : FALSE
|
|
|
|
Operator : adjacent
|
|
Number : 1
|
|
Signature: (points||line||region x points||line||region) -> bool
|
|
Example : query WFlaechen feed filter[.GeoData adjacent grunewald] consume
|
|
Result : file
|
|
|
|
|
|
Operator : area
|
|
Number : 1
|
|
Signature: region -> real
|
|
Example : query area([const rect value (-1000.0 -900.0 100000.0 100010.0)] rect2region)
|
|
Result : 1000.0
|
|
|
|
|
|
Operator : atpoint
|
|
Number : 1
|
|
Signature: sline x point x bool -> real
|
|
Example : query atpoint(fromline(trajectory(train7)), mehringdamm, TRUE)
|
|
Result : 18380.673536405186
|
|
|
|
Operator : atpoint
|
|
Number : 2
|
|
Signature: sline x point -> real
|
|
Example : query atpoint(fromline(trajectory(train7)), mehringdamm)
|
|
Result : 18380.673536405186
|
|
|
|
|
|
Operator : atposition
|
|
Number : 1
|
|
Signature: sline x real x bool -> point
|
|
Example : query atposition(fromline(trajectory(train7)), 18380.673536405186, TRUE) = mehringdamm
|
|
Result : TRUE
|
|
|
|
Operator : atposition
|
|
Number : 2
|
|
Signature: sline x real x bool -> point
|
|
Example : query atposition(fromline(trajectory(train7)), 18380.673536405186, FALSE) = mehringdamm
|
|
Result : FALSE
|
|
|
|
Operator : atposition
|
|
Number : 3
|
|
Signature: sline x real x bool -> point
|
|
Example : query WFlaechen feed filter[.Name = "Spree"] UBahn feed {u} symmjoin[.GeoData intersects_new ..GeoData_u] extend[Schnitt: intersection1(.GeoData, .GeoData_u)] project[Schnitt] extend[Start: atposition(fromline(.Schnitt), 0.0, TRUE)] consume
|
|
Result : file
|
|
|
|
Operator : atposition
|
|
Number : 4
|
|
Signature: sline x real -> point
|
|
Example : query atposition(fromline(trajectory(train7)), 18380.673536405186) = mehringdamm
|
|
Result : TRUE
|
|
|
|
Operator : bbox
|
|
Number : 1
|
|
Signature: (point||points||line||region) [x geoid] -> rect
|
|
Example : query bbox(tiergarten)
|
|
Result : (rect (5659.99999999 8571.00000001 11434.99999999 12795.00000001))
|
|
|
|
Operator : bbox
|
|
Number : 2
|
|
Signature: (point||points||line||region) [x geoid] -> rect
|
|
Example : query bbox(makeline(makepoint(7.563333333333333,51.29166666666666),makepoint(-74.0,40.71666666666667)),create_geoid("WGS1984"))
|
|
Result : (rect (-74.00000001999999 7.5633334846 40.71666664666667 54.87868544808553))
|
|
|
|
Operator : bbox
|
|
Number : 3
|
|
Signature: (point||points||line||region) [x geoid] -> rect
|
|
Example : query bbox(makeline(makepoint(-43.2,-22.9),makepoint(151.2,-33.85)),create_geoid("WGS1984"))
|
|
Result : (rect (-43.20000002 151.20000002 -77.05451120443344 -22.89999998))
|
|
|
|
Operator : bbox
|
|
Number : 4
|
|
Signature: (point||points||line||region) [x geoid] -> rect
|
|
Example : query bbox(makeline(makepoint(7.563333333333333,51.29166666666666),makepoint(-43.2,-22.9)),create_geoid("WGS1984"))
|
|
Result : (rect (-43.20000002 7.5633334846 -22.90000002 51.29166668666666))
|
|
|
|
|
|
Operator : boundary
|
|
Number : 1
|
|
Signature: line -> points
|
|
Example : query boundary(train7sections)
|
|
Result : file
|
|
|
|
Operator : boundary
|
|
Number : 2
|
|
Signature: region -> line
|
|
Example : query no_components(boundary(koepenick))
|
|
Result : (int 7)
|
|
|
|
Operator : commonborder
|
|
Number : 1
|
|
Signature: (region x region) -> line
|
|
Example : query WFlaechen feed filter[.GeoData adjacent grunewald] extend[Common: commonborder(.GeoData, grunewald)] project[Common] consume
|
|
Result : file
|
|
|
|
Operator : commonborder
|
|
Number : 2
|
|
Signature: (region x region) -> line
|
|
Example : query commonborder(tiergarten, tiergarten)
|
|
Result : file
|
|
|
|
|
|
Operator : components
|
|
Number : 1
|
|
Signature: points -> stream(points), region -> stream(region)
|
|
Example : query components(koepenick) count
|
|
Result : 7
|
|
|
|
Operator : components
|
|
Number : 2
|
|
Signature: points -> stream(points), region -> stream(region)
|
|
Example : query components(tiergarten) count
|
|
Result : 1
|
|
|
|
Operator : components
|
|
Number : 3
|
|
Signature: line -> stream(line)
|
|
Example : query components(BGrenzenLine) count
|
|
Result : 1
|
|
|
|
Operator : crossings1
|
|
Number : 1
|
|
Signature: (line x line) -> points
|
|
Example : query strassen feed {s1} strassen feed {s2} spatialjoin[geoData_s1, geoData_s2] filter[.Name_s1 < .Name_s2] filter[.geoData_s1 intersects1 .geoData_s2] projectextendstream[Name_s1, Name_s2; Cross: components(crossings1(.geoData_s1, .geoData_s2))] project[Cross] consume
|
|
Result : bug
|
|
Remark : some points are in the result which are not crossings of streets
|
|
|
|
|
|
Operator : direction
|
|
Number : 1
|
|
Signature: (point x point [x geoid]) -> real
|
|
Example : query direction(mehringdamm, alexanderplatz)
|
|
Result : 61.061353020685345
|
|
|
|
|
|
Operator : direction
|
|
Number : 2
|
|
Signature: (point x point [x geoid]) -> real
|
|
Example : query direction(makepoint(7.56333,51.2917),makepoint(-74,40.7167),create_geoid("WGS1984"))
|
|
Result : 156.8391714352
|
|
|
|
|
|
Operator : distance
|
|
Number : 1
|
|
Signature: (point||points||line x point||points||line) -> real
|
|
Example : query distance(mehringdamm, alexanderplatz)
|
|
Result : 3455.4536605198455
|
|
|
|
Operator : distanceSmallerThan
|
|
Number : 2
|
|
Signature: line x line x real x bool -> bool
|
|
Example : query distanceSmallerThan(BGrenzenLine, BGrenzenLine, 3.0, FALSE)
|
|
Result : TRUE
|
|
|
|
Operator : get
|
|
Number : 1
|
|
Signature: points x int -> point
|
|
Example : query get([const points value ((0.0 -1.2)(1.0 2.0))],1)
|
|
Result : (point (1.0 2.0))
|
|
|
|
|
|
Operator : getx
|
|
Number : 1
|
|
Signature: point -> real
|
|
Example : query getx([const point value (0.0 -1.2)])
|
|
Result : (real 0.0)
|
|
|
|
|
|
Operator : gety
|
|
Number : 1
|
|
Signature: point -> real
|
|
Example : query gety([const point value (0.0 -1.2)])
|
|
Result : (real -1.2)
|
|
|
|
|
|
Operator : ininterior
|
|
Number : 1
|
|
Signature: (point x region) -> bool
|
|
Example : query mehringdamm ininterior thecenter
|
|
Result : TRUE
|
|
|
|
|
|
Operator : inside
|
|
Number : 1
|
|
Signature: (point||points||line||region x points||line||simpleline||region) -> bool
|
|
Example : query mehringdamm inside thecenter
|
|
Result : TRUE
|
|
|
|
Operator : intersection1
|
|
Number : 1
|
|
Signature: point x point
|
|
Example : query intersection1([const point value( 1 3)], [const point value (1 3)])
|
|
Result : (points ((1.0 3.0)))
|
|
|
|
Operator : intersection1
|
|
Number : 2
|
|
Signature: point x point
|
|
Example : query intersection1([const point value( 1 3)], [const point value (1 5)])
|
|
Result : (points ())
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 3
|
|
Signature: point x points
|
|
Example : query intersection1([const point value( 1 3)], [const points value ((1 5)(1 3))])
|
|
Result : (points ((1.0 3.0)))
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 4
|
|
Signature: point x line
|
|
Example : query intersection1(alexanderplatz, BGrenzenLine)
|
|
Result : (points ())
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 5
|
|
Signature: point x region
|
|
Example : query intersection1(alexanderplatz, thecenter)
|
|
Result : (points ((11068.0 12895.0)))
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 6
|
|
Signature: points x point
|
|
Example : query intersection1(train7stations, alexanderplatz)
|
|
Result : (points ())
|
|
|
|
Operator : intersection1
|
|
Number : 7
|
|
Signature: points x points
|
|
Example : query intersection1(train7stations,train7stations)=train7stations
|
|
Result : TRUE
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 8
|
|
Signature: points x line
|
|
Example : query intersection1(vertices(BGrenzenLine), BGrenzenLine)=vertices(BGrenzenLine)
|
|
Result : TRUE
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 9
|
|
Signature: points x region
|
|
Example : query intersection1(train7stations, thecenter)
|
|
Result : (points ( (5505.0 8963.0) (6126.0 9130.0) (6805.0 9248.0) (7451.0 9347.0) (8238.0 9660.0) (8988.0 10323.0) (9396.0 9871.0) (9883.0 9494.0) (10684.0 9295.0) (11837.0 8980.0) (12518.0 8482.0) (12871.0 7943.0) (13049.0 7140.0)))
|
|
|
|
Operator : intersection1
|
|
Number : 10
|
|
Signature: line x point
|
|
Example : query intersection1(train7sections, mehringdamm)
|
|
Result : (points ((9396.0 9871.0)))
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 11
|
|
Signature: line x points
|
|
Example : query intersection1(train7sections, train7stations)
|
|
Result : (points ( (-3560.0 14235.0) (-3019.0 14499.0) (-2320.0 14423.0) (-1288.0 14532.0) (3643.0 13248.0) (3683.0 11621.0) (3770.0 12208.0) (3809.0 11037.0) (3853.0 10396.0) (8238.0 9660.0) (8988.0 10323.0) (9396.0 9871.0) (9883.0 9494.0) (13582.0 3543.0) (13592.0 5253.0) (13643.0 4410.0) (13933.0 2673.0) (14600.0 2157.0) (16821.0 1252.0)))
|
|
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 12
|
|
Signature: line x line
|
|
Example : query intersection1(train7sections, train7sections) = train7sections
|
|
Result : TRUE
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 13
|
|
Signature: line x region
|
|
Example : query no_components(intersection1(train7sections, thecenter))
|
|
Result : 1
|
|
|
|
|
|
Operator : intersection1
|
|
Number : 14
|
|
Signature: region x point
|
|
Example : query intersection1(thecenter, mehringdamm)
|
|
Result : (points ((9396.0 9871.0)))
|
|
|
|
Operator : intersection1
|
|
Number : 15
|
|
Signature: region x points
|
|
Example : query intersection1(thecenter, train7stations) = intersection1(train7stations, thecenter)
|
|
Result : TRUE
|
|
|
|
Operator : intersection1
|
|
Number : 16
|
|
Signature: region x line
|
|
Example : query intersection1(thecenter, boundary(thecenter)) = boundary(thecenter)
|
|
Result : TRUE
|
|
|
|
Operator : intersection1
|
|
Number : 17
|
|
Signature: region x region
|
|
Example : query intersection1(thecenter, thecenter)= thecenter
|
|
Result : TRUE
|
|
|
|
Operator : intersects1
|
|
Number : 1
|
|
Signature: (points||line||region x points||line||region) -> bool
|
|
Example : query trajectory(train7) intersects1 thecenter
|
|
Result : TRUE
|
|
|
|
|
|
Operator : isempty
|
|
Number : 1
|
|
Signature: point -> bool, points -> bool, line -> bool,region -> bool
|
|
Example : query isempty(mehringdamm)
|
|
Result : FALSE
|
|
|
|
|
|
Operator : line2region
|
|
Number : 1
|
|
Signature: line -> region
|
|
Example : query commonborder(tiergarten, tiergarten) line2region = tiergarten
|
|
Result : TRUE
|
|
|
|
Operator : minus1
|
|
Number : 1
|
|
Signature : point x point -> points
|
|
Example : query [const point value( 1 3) ] minus1 [const point value ( 1 3)]
|
|
Result : (points ())
|
|
|
|
Operator : minus1
|
|
Number : 2
|
|
Signature : point x point -> points
|
|
Example : query [const point value( 2 4) ] minus1 [const point value ( 1 3)]
|
|
Result : (points ((2.0 4.0)))
|
|
|
|
Operator : minus1
|
|
Number : 3
|
|
Signature : point x points -> points
|
|
Example : query [const point value(2 4)] minus1 [const points value ((1 3) (2 4))]
|
|
Result : (points ())
|
|
|
|
Operator : minus1
|
|
Number : 4
|
|
Signature : point x line -> points
|
|
Example : query [const point value ( 3 3 )] minus1 [const line value ((0 0 10 10))]
|
|
Result : (points ())
|
|
|
|
Operator : minus1
|
|
Number : 5
|
|
Signature : points x region -> point
|
|
Example : query mehringdamm minus1 thecenter
|
|
Result : (points ())
|
|
|
|
Operator : minus1
|
|
Number : 6
|
|
Signature : points x point -> points
|
|
Example : query [const points value ((1 3)( 4 5 )( 6 7))] minus1 [const point value (4 5)]
|
|
Result : (points ((1.0 3.0)(6.0 7.0)))
|
|
|
|
Operator : minus1
|
|
Number : 7
|
|
Signature : points x points -> points
|
|
Example : query [const points value((1 3)(4 5)(6 7))] minus1 [const points value ((1 3)(6 7))]
|
|
Result : (points ((4.0 5.0)))
|
|
|
|
Operator : minus1
|
|
Number : 8
|
|
Signature : points x line -> points
|
|
Example : query train7stations minus1 trajectory(train7)
|
|
Result : (points ())
|
|
|
|
Operator : minus1
|
|
Number : 9
|
|
Signature : points x region -> points
|
|
Example : query train7stations minus1 thecenter
|
|
Result : (points ( (-3560.0 14235.0) (-3019.0 14499.0) (-2320.0 14423.0) (-1288.0 14532.0) (-267.0 14501.0) (863.0 14383.0) (1429.0 14388.0) (2354.0 14384.0) (2823.0 14355.0) (3353.0 13710.0) (3643.0 13248.0) (3683.0 11621.0) (3770.0 12208.0) (3809.0 11037.0) (3853.0 10396.0) (4072.0 9636.0) (4381.0 9276.0) (4911.0 8866.0) (13262.0 6390.0) (13582.0 3543.0) (13592.0 5253.0) (13643.0 4410.0) (13933.0 2673.0) (14600.0 2157.0) (15373.0 2039.0) (16013.0 2050.0) (16821.0 1252.0)))
|
|
|
|
|
|
Operator : minus1
|
|
Number : 10
|
|
Signature : line x point -> line
|
|
Example : query (train7sections minus1 mehringdamm) = train7sections
|
|
Result : TRUE
|
|
|
|
Operator : minus1
|
|
Number : 11
|
|
Signature : line x points -> line
|
|
Example : query (train7sections minus1 train7stations) = train7sections
|
|
Result : TRUE
|
|
|
|
Operator : minus1
|
|
Number : 12
|
|
Signature : line x line -> line
|
|
Example : query train7sections minus1 train7sections
|
|
Result : (line ())
|
|
|
|
Operator : minus1
|
|
Number : 13
|
|
Signature : line x region -> line
|
|
Example : query [const line value ((3000 5000 18000 18000))] minus1 thecenter
|
|
Result : (line ( (3000.0 5000.0 6141.316589425605 7722.474377502192) (13987.266280866977 14522.297443418047 18000.0 18000.0)))
|
|
|
|
Operator : minus1
|
|
Number : 14
|
|
Signature : region x point -> region
|
|
Example : query (thecenter minus1 mehringdamm) = thecenter
|
|
Result : TRUE
|
|
|
|
Operator : minus1
|
|
Number : 15
|
|
Signature : region x points -> region
|
|
Example : query (thecenter minus1 train7stations) = thecenter
|
|
Result : TRUE
|
|
|
|
Operator : minus1
|
|
Number : 16
|
|
Signature : region x line -> region
|
|
Example : query (thecenter minus1 train7sections) = thecenter
|
|
Result : TRUE
|
|
|
|
Operator : minus1
|
|
Number : 17
|
|
Signature : region x region -> region
|
|
Example : query thecenter minus1 thecenter
|
|
Result : (region ())
|
|
|
|
Operator : union1
|
|
Number : 1
|
|
Signature : point x point -> points
|
|
Example : query [const point value( 1 3)] union1 [const point value ( 6 7)]
|
|
Result : (points ((1.0 3.0)(6.0 7.0)))
|
|
|
|
Operator : union1
|
|
Number : 2
|
|
Signature : point x points -> points
|
|
Example : query [const point value( 1 3)] union1 [const points value (( 6 7))]
|
|
Result : (points ((1.0 3.0)(6.0 7.0)))
|
|
|
|
Operator : union1
|
|
Number : 3
|
|
Signature : point x line -> line
|
|
Example : query (mehringdamm union1 train7sections) = train7sections
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 4
|
|
Signature : point x region -> regions
|
|
Example : query (mehringdamm union1 thecenter) = thecenter
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 5
|
|
Signature : points x point -> points
|
|
Example : query [const points value(( 1 3))] union1 [const point value (6 7)]
|
|
Result : (points ((1.0 3.0)(6.0 7.0)))
|
|
|
|
Operator : union1
|
|
Number : 6
|
|
Signature : points x points -> points
|
|
Example : query [const points value(( 1 3))] union1 [const points value (( 6 7))]
|
|
Result : (points ((1.0 3.0)(6.0 7.0)))
|
|
|
|
Operator : union1
|
|
Number : 7
|
|
Signature : points x line -> line
|
|
Example : query (train7stations union1 train7sections) = train7sections
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 8
|
|
Signature : points x region -> region
|
|
Example : query (train7stations union1 thecenter) = thecenter
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 9
|
|
Signature : line x point -> line
|
|
Example : query (train7sections union1 mehringdamm) = train7sections
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 10
|
|
Signature : line x points -> line
|
|
Example : query (train7sections union1 train7stations) = train7sections
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 11
|
|
Signature : line x line -> line
|
|
Example : query (BGrenzenLine union1 train7sections) = (train7sections union1 BGrenzenLine)
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 12
|
|
Signature : line x region -> region
|
|
Example : query (train7sections union1 thecenter) = thecenter
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 13
|
|
Signature : region x point -> region
|
|
Example : query (thecenter union1 mehringdamm) = thecenter
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 14
|
|
Signature : regions x points -> region
|
|
Example : query (thecenter union1 train7stations) = thecenter
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 15
|
|
Signature : region x line -> region
|
|
Example : query (thecenter union1 train7sections) = thecenter
|
|
Result : TRUE
|
|
|
|
Operator : union1
|
|
Number : 16
|
|
Signature : region x region -> region
|
|
Example : query (thecenter union1 tiergarten) = thecenter
|
|
Result : TRUE
|
|
|
|
|
|
Operator : no_components
|
|
Number : 1
|
|
Signature: (points||line||region) -> int
|
|
Example : query no_components(vertices(trajectory(train7)))
|
|
Result : 147
|
|
|
|
|
|
Operator : no_segments
|
|
Number : 1
|
|
Signature: (region) -> int
|
|
Example : query no_segments(tiergarten)
|
|
Result : 70
|
|
|
|
|
|
Operator : onborder
|
|
Number : 1
|
|
Signature: (point x line||region) -> bool
|
|
Example : query WFlaechen feed UBahn feed {u} symmjoin[.GeoData intersects1 ..GeoData_u] extend[Stretch: intersection1(.GeoData, .GeoData_u)] project[GeoData, Stretch] extend[Start: atposition(fromline(.Stretch), 0.0, TRUE), Middle: atposition(fromline(.Stretch), size(.Stretch)/2, TRUE)] extend[Onborder: .Start onborder .GeoData, NotOnBorder: .Middle onborder .GeoData] consume
|
|
Result : file
|
|
|
|
|
|
Operator : overlaps
|
|
Number : 1
|
|
Signature: (region x region) -> bool
|
|
Example : query koepenick overlaps thecenter
|
|
Result : FALSE
|
|
|
|
|
|
Operator : rect2region
|
|
Number : 1
|
|
Signature: rect -> region
|
|
Example : query [const rect value (-100.0 200.0 -50.0 500.0)] rect2region
|
|
Result : (region ( ( ( (200.0 -50.0) (-100.0 -50.0) (-100.0 500.0) (200.0 500.0)))))
|
|
|
|
|
|
Operator : scale
|
|
Number : 1
|
|
Signature: for T in {point, points, line, region}: T x real -> T
|
|
Example : query tiergarten scale[10.0]
|
|
Result : file
|
|
|
|
|
|
Operator : scale
|
|
Number : 2
|
|
Signature: for T in {point, points, line, region}: T x real x real -> T
|
|
Example : query tiergarten scale[1.0, 3.0] = tiergarten scale[1.0]
|
|
Result : FALSE
|
|
|
|
|
|
Operator : single
|
|
Number : 1
|
|
Signature: (points) -> point
|
|
Example : query single(vertices(thecenter))
|
|
Result : (point undefined)
|
|
|
|
|
|
Operator : size
|
|
Number : 1
|
|
Signature: (line) -> real
|
|
Example : query size(trajectory(train7))
|
|
Result : 31662.126023561887
|
|
|
|
|
|
Operator : subline
|
|
Number : 1
|
|
Signature: sline x real x real x bool -> line
|
|
Example : query fromline(trajectory(train7)) within [fun(traj:ANY) subline(traj, 0.5 * size(traj), 0.6 * size(traj), TRUE)]
|
|
Result : file
|
|
|
|
|
|
Operator : touchpoints
|
|
Number : 1
|
|
Signature: (line||region x region) -> points
|
|
Example : query touchpoints(tiergarten, tiergarten)
|
|
Result : file
|
|
|
|
|
|
Operator : touchpoints
|
|
Number : 2
|
|
Signature: (line||region x region) -> points
|
|
Example : query WFlaechen feed {w} Flaechen feed {f} symmjoin[.GeoData_w adjacent ..GeoData_f] extend[Touch: touchpoints(.GeoData_w, .GeoData_f)] consume
|
|
Result : file_platform
|
|
Remark : On linux 64 bit and Mac 64 bit this query produces an object with a different list structure
|
|
|
|
|
|
Operator : translate
|
|
Number : 1
|
|
Signature: (point||points||line||region x real x real) -> point||points||line||region
|
|
Example : query trajectory(train7) translate[100.0, 0.0]
|
|
Result : file
|
|
|
|
Operator : rotate
|
|
Number : 1
|
|
Signature: (point||points||line||region x real x real x real) -> point||points||line||region
|
|
Example : query [const point value (0.0 10.0)] rotate [0.0, 0.0, 360.0]
|
|
Result : (point (0.0 10.0))
|
|
Tolerance: 0.1
|
|
|
|
Operator : vertices
|
|
Number : 1
|
|
Signature: (region -> points) or (line -> points)
|
|
Example : query vertices(thecenter)
|
|
Result : file
|
|
|
|
|
|
Operator : windowclippingin
|
|
Number : 1
|
|
Signature: (line x rect) -> line, (region x rect) --> region
|
|
Example : query Flaechen feed extend[InWindow: windowclippingin(.geoData, bbox(thecenter))] project[InWindow] filter[not(isempty(.InWindow))] consume
|
|
Result : crashes
|
|
|
|
|
|
Operator : windowclippingin
|
|
Number : 2
|
|
Signature: (line x rect) -> line, (region x rect) --> region
|
|
Example : query windowclippingin(trajectory(train7), bbox(thecenter))
|
|
Result : crashes
|
|
|
|
|
|
Operator : windowclippingout
|
|
Number : 1
|
|
Signature: (line x rect) -> line, (region x rect) --> region
|
|
Example : query windowclippingout(trajectory(train7), bbox(thecenter))
|
|
Result : file
|
|
|
|
Operator : longlines
|
|
Number : 1
|
|
Signature: line -> stream (sline)
|
|
Example : query trajectory(train7) longlines transformstream consume;
|
|
Result : file
|
|
|
|
Operator : polylines
|
|
Number : 1
|
|
Signature: line -> stream (line)
|
|
Example : query BGrenzenLine polylines [FALSE] count
|
|
Result : (int 2)
|
|
|
|
Operator : polylinesC
|
|
Number : 1
|
|
Signature: line -> stream (line)
|
|
Example : query BGrenzenLine polylinesC [FALSE] count
|
|
Result : (int 1)
|
|
|
|
Operator : simplify
|
|
Number : 1
|
|
Signature: line x real -> line
|
|
Example : query no_segments(simplify(BGrenzenLine,2000.0))
|
|
Result : (int 24)
|
|
|
|
Operator : simplify
|
|
Number : 2
|
|
Signature: line x real x points -> line
|
|
Example : query no_segments(simplify(BGrenzenLine,2000.0, vertices(BGrenzenLine) )) = no_segments(BGrenzenLine)
|
|
Result : (bool TRUE)
|
|
|
|
Operator : segments
|
|
Number : 1
|
|
Signature: line -> stream (line)
|
|
Example : query (segments(BGrenzenLine) count) = no_segments(BGrenzenLine)
|
|
Result : (bool TRUE)
|
|
|
|
Operator : makeline
|
|
Number : 1
|
|
Signature: point x point -> line
|
|
Example : query makeline([const point value ( 0 0 )] , [const point value ( 100 100)])
|
|
Result : (line ( (0.0 0.0 100.0 100.0)))
|
|
|
|
Operator : realminize
|
|
Number : 1
|
|
Signature: line -> line
|
|
Example : query trajectory(train1) = realminize(trajectory(train1))
|
|
Result : TRUE
|
|
Remark : just a correction of the internal line representation
|
|
|
|
|
|
Operator : center
|
|
Number : 1
|
|
Signature: points -> point
|
|
Example : query center( [const points value ((0 0)(10 10))])
|
|
Result : (point (5.0 5.0))
|
|
|
|
Operator : center
|
|
Number : 2
|
|
Signature: rect -> point
|
|
Example : query center([const rect value (0.0 1.0 2.0 3.0)])
|
|
Result : (point (0.5 2.5))
|
|
|
|
|
|
|
|
Operator : convexhull
|
|
Number : 1
|
|
Signature: points -> region
|
|
Example : query convexhull([const points value ((0 0) (10 0) (10 10) (5 3) )])
|
|
Result : (region ( ( ( (10.0 0.0) (0.0 0.0) (10.0 10.0)))))
|
|
|
|
|
|
|
|
Operator : commonborder2
|
|
Number : 1
|
|
Signature : region x region -> line
|
|
Example : query (thecenter commonborder2 thecenter) = boundary(thecenter)
|
|
Result : (bool TRUE)
|
|
|
|
Operator : fromline
|
|
Number : 1
|
|
Signature : line -> sline
|
|
Example : query abs(size(BGrenzenLine) - size(fromline(BGrenzenLine))) < 0.0001
|
|
Result : (bool TRUE)
|
|
|
|
Operator : fromline
|
|
Number : 2
|
|
Signature : line x bool -> sline
|
|
Example : query abs(size(BGrenzenLine) - size(fromline(BGrenzenLine, FALSE))) < 0.0001
|
|
Result : (bool TRUE)
|
|
|
|
Operator : fromline
|
|
Number : 3
|
|
Signature : line x bool -> sline
|
|
Example : query abs(size(BGrenzenLine) - size(fromline(BGrenzenLine, TRUE))) < 0.0001
|
|
Result : (bool TRUE)
|
|
|
|
Operator : toline
|
|
Number : 1
|
|
Signature : sline -> line
|
|
Example : query (BGrenzenLine) = toline(fromline(BGrenzenLine))
|
|
Result : (bool TRUE)
|
|
|
|
|
|
Operator : iscycle
|
|
Number : 1
|
|
Signature : sline -> bool
|
|
Example : query iscycle(fromline(BGrenzenLine))
|
|
Result : (bool TRUE)
|
|
|
|
|
|
Operator : iscycle
|
|
Number : 2
|
|
Signature : sline -> bool
|
|
Example : query iscycle(fromline(trajectory(train7)))
|
|
Result : (bool FALSE)
|
|
|
|
|
|
Operator : gk
|
|
Number : 1
|
|
Signature : point -> point | points -> points | line -> line | region -> region | sline -> sline
|
|
Example : query gk([const point value (1.0 1.0)])
|
|
Result : (point (1942837.210480324 110590.6736442424))
|
|
Tolerance : 150.0
|
|
|
|
Operator : reverseGk
|
|
Number : 1
|
|
Signature : point -> point | points -> points | line -> line | region -> region
|
|
Example : query reverseGk(gk([const point value (7.0 51.0)]))
|
|
Result : (point (7.0 51.0))
|
|
Tolerance : 0.00002
|
|
|
|
Operator : utm
|
|
Number : 1
|
|
Signature : point -> point | line -> line | region -> region
|
|
Example : query utm([const point value (1.0 1.0)])
|
|
Result : (point (166491.8309263389 -5907493.628309446))
|
|
Tolerance : 50.0
|
|
|
|
|
|
Operator : collect_line
|
|
Number : 1
|
|
Signature : (stream point) x bool -> line
|
|
Example : query no_segments(Kinos feed projecttransformstream[GeoData] collect_line[TRUE])
|
|
Result : (int 1119)
|
|
|
|
|
|
Operator : collect_line
|
|
Number : 2
|
|
Signature : (stream line) x bool -> line
|
|
Example : query size(strassen feed projecttransformstream[GeoData] collect_line[TRUE])
|
|
Result : (real 2686760.928958891)
|
|
Tolerance : 0.5
|
|
|
|
|
|
Operator : collect_line
|
|
Number : 3
|
|
Signature : (stream sline) x bool -> line
|
|
Example : query size(strassen feed projectextend[;G: fromline(.GeoData)] filter[isdefined(.G)] transformstream collect_line[TRUE])
|
|
Result : (real 2678603.846277799)
|
|
Tolerance : 0.5
|
|
|
|
|
|
Operator : makesline
|
|
Number : 3
|
|
Signature : point x point -> sline
|
|
Example : query makesline(makepoint(0,0),makepoint(100.0,-100.0))
|
|
Result : (sline (((0.0 0.0 100.0 -100.0)) TRUE))
|
|
Tolerance : %0.001
|
|
|
|
|
|
|
|
Operator : collect_sline
|
|
Number : 1
|
|
Signature : (stream point) x bool -> line
|
|
Example : query no_segments(Kinos feed sortby[GeoData] projecttransformstream[GeoData] collect_sline[TRUE])
|
|
Result : (int 81)
|
|
|
|
|
|
Operator : collect_sline
|
|
Number : 2
|
|
Signature : (stream line) x bool -> line
|
|
Example : query size(strassen feed sortby[GeoData] projecttransformstream[GeoData] collect_sline[TRUE])
|
|
Result : (real undefined)
|
|
|
|
Operator : collect_sline
|
|
Number : 3
|
|
Signature : (stream sline) x bool -> line
|
|
Example : query size(strassen feed sortby[GeoData] projectextend[;G: fromline(.GeoData)] filter[isdefined(.G)] transformstream collect_sline[TRUE])
|
|
Result : (real undefined)
|
|
|
|
Operator : makepoint
|
|
Number : 1
|
|
Signature: {int|real} x {int|real} -> point
|
|
Example : query makepoint (5,5)
|
|
Result : (point (5.0 5.0))
|
|
|
|
Operator : makepoint
|
|
Number : 2
|
|
Signature: {int|real} x {int|real} -> point
|
|
Example : query makepoint (5,5.0)
|
|
Result : (point (5.0 5.0))
|
|
|
|
Operator : makepoint
|
|
Number : 3
|
|
Signature: {int|real} x {int|real} -> point
|
|
Example : query makepoint (5.0,5)
|
|
Result : (point (5.0 5.0))
|
|
|
|
Operator : makepoint
|
|
Number : 4
|
|
Signature: {int|real} x {int|real} -> point
|
|
Example : query makepoint (5.0,5.0)
|
|
Result : (point (5.0 5.0))
|
|
|
|
Operator : collect_points
|
|
Number : 1
|
|
Signature: stream(point) x bool -> points
|
|
Example : query components(Kneipen feed projecttransformstream[GeoData] collect_points[TRUE]) count <= Kneipen count
|
|
Result : TRUE
|
|
|
|
Operator : halfSegments
|
|
Number : 1
|
|
Signature: region -> stream(tuple( ... ))
|
|
Example : query halfSegments(zoogarten) count
|
|
Result : 56
|
|
|
|
|
|
Operator : get_startsmaller
|
|
Number : 1
|
|
Signature: sline -> bool
|
|
Example : query get_startsmaller(set_startsmaller(fromline(BGrenzenLine),FALSE))
|
|
Result : FALSE
|
|
|
|
|
|
Operator : set_startsmaller
|
|
Number : 1
|
|
Signature: sline x bool -> sline
|
|
Example : query get_startsmaller(set_startsmaller(fromline(BGrenzenLine),FALSE))
|
|
Result : FALSE
|
|
|
|
Operator : getstartpoint
|
|
Number : 1
|
|
Signature: sline -> point
|
|
Example : query getstartpoint(fromline(BGrenzenLine));
|
|
Result : (point(-10849.0 1142.0))
|
|
Tolerance: 0.01%
|
|
|
|
Operator : getendpoint
|
|
Number : 1
|
|
Signature: sline -> point
|
|
Example : query getstartpoint(fromline(BGrenzenLine));
|
|
Result : (point(-10849.0 1142.0))
|
|
Tolerance: 0.01%
|
|
|
|
Operator : create_sline
|
|
Number : 1
|
|
Signature: point x point -> sline
|
|
Example : query atposition(create_sline(makepoint(10,10),makepoint(0,0)),0.0,TRUE) = makepoint(0,0)
|
|
Result : TRUE
|
|
|
|
Operator : create_sline
|
|
Number : 2
|
|
Signature: point x point -> sline
|
|
Example : query atposition(create_sline(makepoint(10,10),makepoint(0,0)),0.0,FALSE) = makepoint(10,10)
|
|
Result : TRUE
|
|
|
|
Operator : distanceOrthodrome
|
|
Number : 1
|
|
Signature: point x point [x string] -> real
|
|
Example : query distanceOrthodrome(makepoint(13.4,52.517),makepoint(139.767, 35.7 ),create_geoid("WGS1984"))/1000.0
|
|
Result : (real 8941.201228)
|
|
Tolerance: 0.2
|
|
|
|
|
|
Operator : heading
|
|
Number : 1
|
|
Signature : point x point -> real
|
|
Example : query heading(makepoint(0,0), makepoint(20,0));
|
|
Result : 90.0
|
|
|
|
Operator : heading
|
|
Number : 2
|
|
Signature : (point x point [x geoid]) -> real
|
|
Example : query heading(makepoint(7.56333,51.2917),makepoint(-74,40.7167),create_geoid("WGS1984"))
|
|
Result : 293.1608285648
|
|
|
|
|
|
Operator : point2string
|
|
Number : 1
|
|
Signature : point [x geoid] -> string
|
|
Example : query point2string(makepoint(7.494968217,51.376125146), create_geoid("WGS1984"))
|
|
Result : "(51°22'34.05052560\"N, 7°29'41.88558120\"E)"
|
|
|
|
Operator : midpointBetween
|
|
Number : 1
|
|
Signature : point x point [x geoid] [x real] -> point
|
|
Example : query midpointBetween(makepoint(7.494968217,51.376125146), makepoint(0.0,0.0), create_geoid("WGS1984"), 0.75)
|
|
Result : (point (1.382368149083 13.03345148903))
|
|
Tolerance : 0.0000001
|
|
|
|
Operator : direction2heading
|
|
Number : 1
|
|
Signature : real -> real
|
|
Example : query direction2heading(45.5)
|
|
Result : 44.5
|
|
|
|
Operator : heading2direction
|
|
Number : 1
|
|
Signature : real -> real
|
|
Example : query heading2direction(275.0)
|
|
Result : 175.0
|
|
|
|
Operator : create_triangle
|
|
Number : 1
|
|
Signature : point x point x point -> region
|
|
Example : query create_triangle(makepoint(0,0),makepoint(10,10),makepoint(10,-10))
|
|
Result : (region ((( (10.0 -10.0) (0.0 0.0) (10.0 10.0)))))
|
|
|
|
|
|
Operator : circle
|
|
Number : 1
|
|
Signature: (point real int) -> region
|
|
Example : query circle (mehringdamm,10.0,5)
|
|
Result : (region((((9399.090169943749 9861.489434837049)(9387.909830056251 9865.122147477075)(9387.909830056251 9876.877852522925)(9399.090169943749 9880.510565162951)(9406.0 9871.0)))))
|
|
Tolerance: 0.0001
|
|
|
|
Operator : splitslineatpoints
|
|
Number : 1
|
|
Signature: sline x points -> (stream sline)
|
|
Example : query splitslineatpoints(create_sline(makepoint(10.0,10.0), makepoint(0.0,0.0)), [const points value((5.5 5.5))]) count;
|
|
Result : 2
|
|
Tolerance: 0.01%
|
|
|
|
Operator : findCycles
|
|
Number : 1
|
|
Signature : line -> stream(line)
|
|
Example : query findCycles(BGrenzenLine) count
|
|
Result : 1
|
|
|
|
Operator : findCycles
|
|
Number : 2
|
|
Signature : line x bool-> stream(line)
|
|
Example : query findCycles([const line value ((0 0 100 0)(100 0 100 100)(100 100 0 100)(0 100 0 0)(20 20 80 20)(80 20 80 80)(80 80 20 80)(20 80 20 20)(20 20 80 80))]) namedtransformstream[L] tconsume
|
|
Result : ((trel (tuple ((L line)))) ((((0.0 0.0 100.0 0.0) (0.0 0.0 0.0 100.0) (0.0 100.0 100.0 100.0) (100.0 0.0 100.0 100.0))) (((20.0 20.0 80.0 80.0) (20.0 20.0 20.0 80.0) (20.0 80.0 80.0 80.0))) (((20.0 20.0 80.0 20.0) (20.0 20.0 80.0 80.0) (80.0 20.0 80.0 80.0)))))
|
|
Remark : The boolean argument enables hole detection
|
|
|
|
Operator : markUsage
|
|
Number : 1
|
|
Signature : line -> stream(tzuple((l line)(U int)))
|
|
Example : query markUsage(BGrenzenLine) krdup[Usage] count
|
|
Result : 1
|
|
|
|
Operator : criticalPoints
|
|
Number : 1
|
|
Signature : line -> points
|
|
Example : query criticalPoints(BGrenzenLine)
|
|
Result : (points ())
|
|
|
|
|
|
Operator : testRegionCreator
|
|
Number : 1
|
|
Signature : line -> region
|
|
Example : query boundary(testRegionCreator(BGrenzenLine)) = BGrenzenLine
|
|
Result : TRUE
|
|
|
|
|
|
Operator : collect_box
|
|
Number : 1
|
|
Signature : stream<SPATIALnD> x bool -> rectangle, where n in {1, 2, 3, 4, 8}
|
|
Example : query (strassen feed projecttransformstream[GeoData] collect_box[TRUE]) = strassen feed extend[B : bbox(.GeoData)] aggregateB[B; fun(r1 : rect,r2: rect) r1 union r2; [const rect value undef] ]
|
|
Result : TRUE
|
|
|
|
|
|
Operator : intersection_rob
|
|
Number : 1
|
|
Signature: region x line -> line
|
|
Example : query intersection1(thecenter, boundary(thecenter)) = intersection_rob(thecenter, boundary(thecenter))
|
|
Result : TRUE
|
|
|
|
Operator : intersection_rob
|
|
Number : 2
|
|
Signature : line x line -> line
|
|
Example : query intersection_rob(BGrenzenLine, BGrenzenLine) = BGrenzenLine
|
|
Result : TRUE
|
|
|
|
|
|
Operator : contains_rob
|
|
Number : 1
|
|
Signature: region x point [x bool] -> bool
|
|
Example : query contains_rob(thecenter,mehringdamm)
|
|
Result : TRUE
|
|
|
|
Operator : getHoles
|
|
Number : 1
|
|
Signature : region -> region
|
|
Example : query getHoles((BGrenzenLine line2region ) minus1 thecenter) = thecenter
|
|
Result : TRUE
|
|
|
|
|
|
Operator : collect_line2
|
|
Number : 1
|
|
Signature : stream(line) -> line
|
|
Example : query size((strassen feed projecttransformstream[GeoData] collect_line[TRUE]) minus1 (strassen feed projecttransformstream[GeoData] collect_line2) ) < 1.0
|
|
Result : TRUE
|
|
|
|
|
|
Operator: getInnerPoint
|
|
Number : 1
|
|
Signature : region -> point
|
|
Example : query (WFlaechen feed extend[IP : getInnerPoint(.GeoData)] filter[ .IP ininterior .GeoData] count) = (WFlaechen count)
|
|
Result : TRUE
|
|
|
|
|
|
Operator: checkRealm
|
|
Number : 1
|
|
Signature: {line,reagion} -> bool
|
|
Example : query (strassen feed filter[ checkRealm(.GeoData)] count) = strassen count
|
|
Result : TRUE
|
|
|
|
Operator: badRealm
|
|
Number : 1
|
|
Signature: {line,reagion} -> stream(tuple( (No1 int)(Partner1 int)(Segment1 line)(No2 int)(Partner2 int)(Segment2 line)))
|
|
Example : query badRealm(BGrenzenLine) count
|
|
Result : 0
|
|
|
|
Operator : crossings_rob
|
|
Number : 1
|
|
Signature: line x line -> points
|
|
Example : query crossings_rob(BGrenzenLine,BGrenzenLine);
|
|
Result : (points ())
|
|
|
|
Operator : splitline
|
|
Number : 1
|
|
Signature : line x real [x geoid] -> stream(line)
|
|
Example : query ( splitline(BGrenzenLine,25.0) count) = ((real2int(size(BGrenzenLine)) div 25) + 1)
|
|
Result : TRUE
|
|
|
|
|
|
Operator : computeDRM
|
|
Number : 1
|
|
Signature : SPATIAL2D x SPATIAL2D -> drm
|
|
Example : query computeDRM(mehringdamm,BGrenzenLine)
|
|
Result : (drm 16)
|
|
|
|
|
|
Operator : computeOIM
|
|
Number : 1
|
|
Signature : SPATIAL2D x SPATIAL2D -> drm
|
|
Example : query computeOIM(thecenter, mehringdamm)
|
|
Result : (oim (3 3 (1 1 1 1 3 1 1 1 1)))
|
|
|
|
|
|
Operator : collectDline
|
|
Number : 1
|
|
Signature : stream(X) x bool -> dline , X in {point,line,dline)
|
|
Example : query no_segments(BGrenzenLine) = no_segments( BGrenzenLine feed collectDline[TRUE])
|
|
Result : TRUE
|
|
|
|
|
|
Operator : computeLabel
|
|
Number : 1
|
|
Signature : line x string -> spatiallabel
|
|
Example : query computeLabel( [const line value ((0 0 3 3))], "aline")
|
|
Result : (spatiallabel ('aline' 1.0 1.0 -45.0))
|
|
Tolerance : 0.5
|
|
|
|
Operator : centroidDisc
|
|
Number : 1
|
|
Signature : points [x geoid] -> disc
|
|
Example : query centroidDisc(train7stations)
|
|
Result : (disc (7166.5 9433.525 12654.90899120278))
|
|
Tolerance : 0.5
|
|
|
|
Operator : calcDisc
|
|
Number : 1
|
|
Signature : points [x geoid] -> disc
|
|
Example : query calcDisc(train7stations)
|
|
Result : (disc (6630.5 7743.5 12082.46094551933))
|
|
Tolerance : 0.5
|
|
|
|
|
|
Operator : createDisc
|
|
Number : 1
|
|
Signature : point [x point[ x point]] -> disc
|
|
Example : query createDisc([const point value(8 9)])
|
|
Result : (disc (8.0 9.0 0.0))
|
|
Tolerance : 0.1
|
|
|
|
Operator : berlin2wgs
|
|
Number : 1
|
|
Signature : T -> T, where T in {point, points, line, region, rect}
|
|
Example : query berlin2wgs([const point value (13132 10876)])
|
|
Result : (point (13.443927 52.503153))
|
|
Tolerance : 0.01
|
|
|
|
|
|
Operator : elements
|
|
Number : 1
|
|
Signature : points -> stream(point)
|
|
Example : query (elements(train7stations) count) = ( components(train7stations) count)
|
|
Result : TRUE
|
|
|
|
Operator : twist
|
|
Number : 1
|
|
Signature : real x int x int -> dline
|
|
Example : query no_segments(twist(40.0,5,2))
|
|
Result : 5
|
|
|
|
|
|
Operator : contour2
|
|
Number : 1
|
|
Signature : dline x real -> region
|
|
Example : query area(boundary(thecenter) contour2[16, 2, TRUE]) > 0
|
|
Result : TRUE
|
|
|
|
|
|
Operator : twist2
|
|
Number : 1
|
|
Signature : dline x int x bool -> dline
|
|
Example : query no_segments(twist2([const dline value ((1 1 1 10)(1 1 10 1))], 2, FALSE))
|
|
Result : 2
|
|
|
|
|
|
Operator : twist3
|
|
Number : 1
|
|
Signature : dline x double -> dline
|
|
Example : query no_segments(twist3([const dline value ((1 1 1 10)(1 10 10 1)(10 1 1 1))],0.4))
|
|
Result : 56
|
|
|
|
|
|
Operator : toSVG
|
|
Number : 1
|
|
Signature : dline -> FText
|
|
Example : query toSVG([const dline value ((0 0 10 10))] ) contains "svg"
|
|
Result : TRUE
|
|
|
|
Operator : simpleProject
|
|
Number : 1
|
|
Signature : SPATIAL -> SPATIAL
|
|
Example : query simpleProject([const point value (0 0)])
|
|
Result : (point (0.0 0.0))
|
|
|
|
Operator : todline
|
|
Number : 1
|
|
Signature : {line, region} -> dline
|
|
Example : query [const line value ((0 0 1 1)(1 2 2 2))] todline
|
|
Result : (dline ( (0.0 0.0 1.0 1.0) (1.0 2.0 2.0 2.0)))
|
|
|
|
|
|
Operator : distanceWithin
|
|
Number : 1
|
|
Signature : SPATIAL x SPATIAL x {int, real} [x geoid] -> bool
|
|
Example : query distanceWithin(alexanderplatz, mehringdamm, 2000)
|
|
Result : FALSE
|
|
|
|
Operator : orderLine
|
|
Number : 1
|
|
Signature : sline -> stream(Start: point, End: point)
|
|
Example : query no_segments(fromline(boundary(westhafen))) = orderLine(fromline(boundary(westhafen))) count
|
|
Result : TRUE
|