Files
secondo/Algebras/Rectangle/Rectangle.examples
2026-01-23 17:03:45 +08:00

294 lines
8.7 KiB
Plaintext

Database: berlintest
Restore : No
Operator : #
Number : 1
Signature: (rect<d> x rect<d>) -> bool
Example : query [const rect value (0.0 1.0 0.0 1.0)] # [const rect value (0.0 1.0 0.0 1.0)]
Result : FALSE
Operator : =
Number : 1
Signature: (rect<d> x rect<d>) -> bool
Example : query [const rect value (0.0 2.0 0.0 3.0)] = [const rect value (0.0 2.0 0.0 3.0)]
Result : TRUE
Operator : distance
Number : 1
Signature: (rect<d> x rect<d>) -> real
Example : query distance([const rect value (0.0 10.0 0.0 10.0)], [const rect value (12.0 20.0 12.0 20.0)])
Result : 2.828427124746190098
Operator : inside
Number : 1
Signature: (rect<d> x rect<d>) -> bool
Example : query [const rect value (1.0 2.0 1.0 2.0)] inside [const rect value (0.0 5.0 0.0 10.0)]
Result : TRUE
Operator : intersection
Number : 1
Signature: (rect<d> x rect<d>) -> rect<d>
Example : query intersection([const rect value (0.0 1.0 0.0 1.0)], [const rect value (0.5 2.0 0.5 2.0)])
Result : (rect (0.5 1.0 0.5 1.0))
Operator : intersects
Number : 1
Signature: (rect<d> x rect<d>) -> bool
Example : query [const rect value (0.0 1.0 0.0 1.0)] intersects [const rect value (0.5 2.0 0.5 2.0)]
Result : TRUE
Operator : isempty
Number : 1
Signature: rect<d> -> bool
Example : query isempty ([const rect value(0.0 1.0 0.0 1.0)])
Result : FALSE
Operator : minD
Number : 1
Signature: rect<d> x int -> real
Example : query minD([const rect3 value (1.0 2.0 3.0 4.0 5.0 6.0) ], 2)
Result : 3.0
Operator : minD
Number : 2
Signature: point -> real
Example : query minD([const point value (1.0 2.0) ], 2)
Result : 1.99999998
Operator : maxD
Number : 1
Signature: rect<d> x int -> real
Example : query maxD([const rect3 value (1.0 2.0 3.0 4.0 5.0 6.0) ], 3)
Result : 6.0
Operator : maxD
Number : 2
Signature: point x int -> real
Example : query maxD([const point value (1.0 2.0) ], 1)
Result : 1.00000001
Operator : rectangle1
Number : 1
Signature: (int x int -> rect) or (real x real -> rect)
Example : query rectangle1(17.0, 24.3)
Result : (rect1 (17.0 24.3))
Operator : rectangle2
Number : 1
Signature: (int x int x int x int -> rect) or (real x real x real x real -> rect)
Example : query rectangle2(17.0, 24.3, 12.0, 13.1)
Result : (rect (17.0 24.3 12.0 13.1))
Operator : rectangle3
Number : 1
Signature: (int x int x int x int x int x int -> rect3) or (real x real x real x real x real x real -> rect3)
Example : query rectangle3(17, 24, 12, 13, 4, 6)
Result : (rect3 (17.0 24.0 12.0 13.0 4.0 6.0))
Operator : rectangle4
Number : 1
Signature: (int x int x int x int x int x int x int x int -> rect4) or (real x real x real x real x real x real x real x real-> rect4)
Example : query rectangle4(17, 24, 12, 13, 4, 6, 2, 3)
Result : (rect4 (17.0 24.0 12.0 13.0 4.0 6.0 2.0 3.0))
Operator : rectangle8
Number : 1
Signature: (int x int x int x int x int x int x int x int x real -> rect8) or (real x real x real x real x real x real x real x real x real -> rect8)
Example : query rectangle8(1,2,3,4,5,6,7,8, 1.2)
Result : (rect8 (1.0 2.2 2.0 3.2 3.0 4.2 4.0 5.2 5.0 6.2 6.0 7.2 7.0 8.2 8.0 9.2))
Operator : rectproject
Number : 1
Signature: ( rect<D> x int x int ) -> rect
Example : query rectproject([const rect3 value (1.0 2.0 3.0 4.0 5.0 6.0) ], 1, 3)
Result : (rect (1.0 2.0 5.0 6.0))
Operator : translate
Number : 1
Signature: (rect (real real)) -> rect (rect3 (real real real)) -> rect3 (rect4 (real real real real)) -> rect4
Example : query [const rect value (0.0 1.0 0.0 1.0)] translate[10.0, 20.0]
Result : (rect (10.0 11.0 20.0 21.0))
Operator : toprightclass
Number : 1
Signature: (rect<d> x rect<d>) -> int
Example : query toprightclass([const rect value (3.0 5.0 3.0 5.0)], [const rect value (2.0 7.0 1.0 4.0)])
Result : 2
Operator : toprightreport
Number : 1
Signature: (int x int ) -> bool
Example : query toprightreport(2, 1)
Result : TRUE
Operator : union
Number : 1
Signature: (rect<d> x rect<d>) -> rect<d>
Example : query [const rect value (0.0 1.0 0.0 1.0)] union [const rect value (2.0 3.0 2.0 3.0)]
Result : (rect (0.0 3.0 0.0 3.0))
Operator : bbox
Number : 1
Signature: rect -> rect
Example : query bbox(rectangle2(17.0, 24.3, 12.0, 13.1))
Result : (rect (17.0 24.3 12.0 13.1))
Operator : bbox
Number : 2
Signature: rect3 -> rect3
Example : query bbox(rectangle3(17, 24, 12, 13, 4, 6))
Result : (rect3 (17.0 24.0 12.0 13.0 4.0 6.0))
Operator : bbox
Number : 3
Signature: rect4 -> rect4
Example : query bbox(rectangle4(17, 24, 12, 13, 4, 6, 2, 3))
Result : (rect4 (17.0 24.0 12.0 13.0 4.0 6.0 2.0 3.0))
Operator : bbox
Number : 4
Signature: rect8 -> rect8
Example : query bbox(rectangle8(1,2,3,4,5,6,7,8, 1.2))
Result : (rect8 (1.0 2.2 2.0 3.2 3.0 4.2 4.0 5.2 5.0 6.2 6.0 7.2 7.0 8.2 8.0 9.2))
Operator : enlargeRect
Number : 1
Signature: rect<dim> x real^<dim> -> rect<dim>
Example : query enlargeRect(rectangle3(17, 24, 12, 13, 4, 6), -1.0, 1.0, 2.0)
Result : (rect3 (18.0 23.0 11.0 14.0 2.0 8.0))
Operator : enlargeRect
Number : 2
Signature: rect<dim> x real^<dim> -> rect<dim>
Example : query enlargeRect(rectangle3(17, 24, 12, 13, 4, 6), -1.0, 1.0, -1.0)
Result : (rect3 undefined)
Operator : size
Number : 1
Signature: rect<dim> -> real
Example : query size(rectangle3(17, 24, 12, 13, 4, 6))
Result : 14.0
Operator : scalerect
Number : 1
Signature: rect<dim> x real^<dim> -> rect<dim>
Example : query scalerect(rectangle3(17, 24, 12, 13, 4, 6), 1.0, 1.0, 2.0)
Result : (rect3 (17.0 24.0 12.0 13.0 8.0 12.0))
Operator : bboxintersects
Number : 1
Signature: (rect<D1> x rect<D2>) -> bool
Example : query [const rect value (0.0 1.0 0.0 1.0)] bboxintersects [const rect3 value (0.5 2.0 0.5 2.0 1.0 1.0)]
Result : TRUE
Operator : cellnumber
Number : 1
Signature: (rect2 x real x real x real x real x int) -> stream(int), (rect3 x real x real x real x real x real x real x int x int) -> stream(int)
Example : query cellnumber(rectangle3(0.3, 2.5, 0.3, 2.5, -0.2, 0.3), 0.0, 0.0, -0.2, 0.5, 0.5, 0.4, 10, 6) transformstream count
Result : 50
Operator : cellnumber
Number : 2
Signature: rect x cellgrid2d -> stream(int)
Example : query cellnumber(rectangle2(3.0, 25.0, 3.0, 25.0), createCellGrid2D(10.0, 10.0, 2.0, 5.0, 10)) transformstream count;
Result : 24
Operator : cellnumber
Number : 3
Signature: rect3 x cellgrid3d -> stream(int)
Example : query cellnumber(rectangle3(0.3, 2.5, 0.3, 2.5, -0.2, 0.3), createCellGrid3D(0.0, 0.0, 0.0, 0.5, 0.5, 0.4, 10, 6)) transformstream count
Result : 25
Operator : gridintersects
Number : 1
Signature: (real x real x real x real x int x rect2 x rect2 x int) -> bool, (real x real x real x real x real x real x int x int x rect3 x rect3 x int) -> bool
Example : query gridintersects(0.0, 0.0, 0.0, 0.5, 0.5, 0.5, 10, 10, rectangle3(0.3, 1.5, 0.3, 1.5, 0.2, 0.8), rectangle3(0.6, 1.7, 0.6, 1.7, 0.6, 0.8), 112)
Result : TRUE
Operator : gridintersects
Number : 2
Signature: cellgrid2d x rect x rect x int -> bool
Example : query gridintersects( createCellGrid2D(1.0, 1.0, 0.5, 0.5, 10), rectangle2(0.3, 1.5, 0.3, 1.5), rectangle2(0.6, 1.7, 0.6, 1.7), 1)
Result : TRUE
Operator : gridintersects
Number : 3
Signature: cellgrid3d x rect3 x rect3 x int -> bool
Example : query gridintersects( createCellGrid3D(0.0, 0.0, 1.0, 0.5, 0.5, 0.5, 10, 10), rectangle3(0.3, 1.5, 0.3, 1.5, 0.2, 0.8), rectangle3(0.6, 1.7, 0.6, 1.7, 0.6, 0.8), 12)
Result : TRUE
Operator : gridcell2rect
Number : 1
Signature: (int x real x real x real x real x int) -> rect
Example : query gridcell2rect(11, 0.0, 0.0, 1000.0, 1000.0, 10)
Result : (rect (0.0 1000.0 1000.0 2000.0))
Operator : gridcell2rect
Number : 2
Signature: (int x real x real x real x real x real x real x int x int) -> rect3
Example : query gridcell2rect(11, 0.0, 0.0, 0.0, 1000.0, 1000.0, 1000.0, 10, 10)
Result : (rect3 (0.0 1000.0 1000.0 2000.0 0.0 1000.0))
Operator : gridcell2rect
Number : 3
Signature: int x llgrid2d -> rect
Example : query gridcell2rect(11, createCellGrid2D(0.0, 0.0, 1000.0, 1000.0, 10))
Result : (rect (0.0 1000.0 1000.0 2000.0))
Operator : partitionRect
Number : 1
Signature: rect x int x int -> stream(rect)
Example : query partitionRect(bbox(BGrenzenLine),2,2) count = 4
Result : TRUE
Operator : extendGeo
Number : 1
Signature: rect x {int, real} -> rect
Example : query bbox(BGrenzenLine) extendGeo[300]
Result : (rect undefined)
Remark : there is no object in geo coordinates in berlintest database
Operator : perimeter
Number : 1
Signature: rect -> real
Example : query perimeter(bbox(BGrenzenLine))
Result : 166066.0
Tolerance: 0.001
Operator : scale
Number : 1
Signature : rect? x {int,real} -> rect?
Example : query bbox(thecenter) scale[2.0]
Result : (rect (9502.516131467568 31236.4015984216 13074.63538364394 32964.13148758004) )
Tolerance : 0.001