Skip to content

Commit 576cb19

Browse files
committed
minimize need for changes even more
Signed-off-by: Aleksandr Motsjonov <soswow@gmail.com>
1 parent 3574dd7 commit 576cb19

File tree

5 files changed

+237
-315
lines changed

5 files changed

+237
-315
lines changed

testsuite/common/pythonbinding_loaders.py

Lines changed: 0 additions & 62 deletions
This file was deleted.

testsuite/common/run_nanobind_python_test.py

Lines changed: 0 additions & 34 deletions
This file was deleted.

testsuite/python-roi/src/test_roi.py

Lines changed: 74 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -6,91 +6,85 @@
66

77
from __future__ import annotations
88

9-
def run(oiio):
10-
r = oiio.ROI()
11-
print ("undefined ROI() =", r)
12-
print ("r.defined =", r.defined)
13-
print ("r.nchannels =", r.nchannels)
14-
print ("")
15-
16-
r = oiio.ROI (0, 640, 100, 200)
17-
print ("ROI(0, 640, 100, 200) =", r)
18-
r = oiio.ROI (0, 640, 0, 480, 0, 1, 0, 4)
19-
print ("ROI(0, 640, 100, 480, 0, 1, 0, 4) =", r)
20-
print ("r.xbegin =", r.xbegin)
21-
print ("r.xend =", r.xend)
22-
print ("r.ybegin =", r.ybegin)
23-
print ("r.yend =", r.yend)
24-
print ("r.zbegin =", r.zbegin)
25-
print ("r.zend =", r.zend)
26-
print ("r.chbegin =", r.chbegin)
27-
print ("r.chend =", r.chend)
28-
print ("r.defined = ", r.defined)
29-
print ("r.width = ", r.width)
30-
print ("r.height = ", r.height)
31-
print ("r.depth = ", r.depth)
32-
print ("r.nchannels = ", r.nchannels)
33-
print ("r.npixels = ", r.npixels)
34-
print ("")
35-
print ("ROI.All =", oiio.ROI.All)
36-
print ("")
37-
38-
r2 = oiio.ROI(r)
39-
r3 = oiio.ROI(r)
40-
r3.xend = 320
41-
print ("r == r2 (expect yes): ", (r == r2))
42-
print ("r != r2 (expect no): ", (r != r2))
43-
print ("r == r3 (expect no): ", (r == r3))
44-
print ("r != r3 (expect yes): ", (r != r3))
45-
print ("")
46-
47-
print ("r contains (10,10) (expect yes): ", r.contains(10,10))
48-
print ("r contains (1000,10) (expect no): ", r.contains(1000,10))
49-
print ("r contains roi(10,20,10,20,0,1,0,1) (expect yes): ", r.contains(oiio.ROI(10,20,10,20,0,1,0,1)))
50-
print ("r contains roi(1010,1020,10,20,0,1,0,1) (expect no): ", r.contains(oiio.ROI(1010,1020,10,20,0,1,0,1)))
51-
# Cover the 6-argument ROI constructor and the contains(x, y, z, ch)
52-
# overload with explicit z/channel arguments.
53-
r4 = oiio.ROI (0, 10, 0, 10, 2, 4)
54-
print ("ROI(0, 10, 0, 10, 2, 4) =", r4)
55-
r5 = oiio.ROI (0, 10, 0, 10, 2, 4, 1, 3)
56-
print ("r5 contains (1,1,2,1) (expect yes): ", r5.contains(1,1,2,1))
57-
print ("r5 contains (1,1,1,1) (expect no): ", r5.contains(1,1,1,1))
58-
print ("r5 contains (1,1,2,3) (expect no): ", r5.contains(1,1,2,3))
59-
60-
A = oiio.ROI (0, 10, 0, 8, 0, 1, 0, 4)
61-
B = oiio.ROI (5, 15, -1, 10, 0, 1, 0, 4)
62-
print ("A =", A)
63-
print ("B =", B)
64-
print ("ROI.union(A,B) =", oiio.union(A,B))
65-
print ("ROI.intersection(A,B) =", oiio.intersection(A,B))
66-
print ("")
67-
68-
spec = oiio.ImageSpec(640, 480, 3, oiio.UINT8)
69-
print ("Spec's roi is", oiio.get_roi(spec))
70-
oiio.set_roi (spec, oiio.ROI(3, 5, 7, 9))
71-
oiio.set_roi_full (spec, oiio.ROI(13, 15, 17, 19))
72-
print ("After set, roi is", oiio.get_roi(spec))
73-
print ("After set, roi_full is", oiio.get_roi_full(spec))
74-
75-
r1 = oiio.ROI(0, 640, 0, 480, 0, 1, 0, 4)
76-
r2 = r1.copy()
77-
r2.xbegin = 42
78-
print ("r1 =", r1)
79-
print ("r2 =", r2)
80-
81-
print ("")
82-
83-
print ("Done.")
84-
859

8610
def main() -> int:
87-
# Keep the real import-and-execute path in main() so this file still runs
88-
# as the standalone pybind11 ROI test, while the nanobind ROI runner can
89-
# import and reuse run(oiio) without immediately executing the test.
9011
import OpenImageIO as oiio
9112

9213
try:
93-
run(oiio)
14+
r = oiio.ROI()
15+
print ("undefined ROI() =", r)
16+
print ("r.defined =", r.defined)
17+
print ("r.nchannels =", r.nchannels)
18+
print ("")
19+
20+
r = oiio.ROI (0, 640, 100, 200)
21+
print ("ROI(0, 640, 100, 200) =", r)
22+
r = oiio.ROI (0, 640, 0, 480, 0, 1, 0, 4)
23+
print ("ROI(0, 640, 100, 480, 0, 1, 0, 4) =", r)
24+
print ("r.xbegin =", r.xbegin)
25+
print ("r.xend =", r.xend)
26+
print ("r.ybegin =", r.ybegin)
27+
print ("r.yend =", r.yend)
28+
print ("r.zbegin =", r.zbegin)
29+
print ("r.zend =", r.zend)
30+
print ("r.chbegin =", r.chbegin)
31+
print ("r.chend =", r.chend)
32+
print ("r.defined = ", r.defined)
33+
print ("r.width = ", r.width)
34+
print ("r.height = ", r.height)
35+
print ("r.depth = ", r.depth)
36+
print ("r.nchannels = ", r.nchannels)
37+
print ("r.npixels = ", r.npixels)
38+
print ("")
39+
print ("ROI.All =", oiio.ROI.All)
40+
print ("")
41+
42+
r2 = oiio.ROI(r)
43+
r3 = oiio.ROI(r)
44+
r3.xend = 320
45+
print ("r == r2 (expect yes): ", (r == r2))
46+
print ("r != r2 (expect no): ", (r != r2))
47+
print ("r == r3 (expect no): ", (r == r3))
48+
print ("r != r3 (expect yes): ", (r != r3))
49+
print ("")
50+
51+
print ("r contains (10,10) (expect yes): ", r.contains(10,10))
52+
print ("r contains (1000,10) (expect no): ", r.contains(1000,10))
53+
print ("r contains roi(10,20,10,20,0,1,0,1) (expect yes): ", r.contains(oiio.ROI(10,20,10,20,0,1,0,1)))
54+
print ("r contains roi(1010,1020,10,20,0,1,0,1) (expect no): ", r.contains(oiio.ROI(1010,1020,10,20,0,1,0,1)))
55+
# Cover the 6-argument ROI constructor and the contains(x, y, z, ch)
56+
# overload with explicit z/channel arguments.
57+
r4 = oiio.ROI (0, 10, 0, 10, 2, 4)
58+
print ("ROI(0, 10, 0, 10, 2, 4) =", r4)
59+
r5 = oiio.ROI (0, 10, 0, 10, 2, 4, 1, 3)
60+
print ("r5 contains (1,1,2,1) (expect yes): ", r5.contains(1,1,2,1))
61+
print ("r5 contains (1,1,1,1) (expect no): ", r5.contains(1,1,1,1))
62+
print ("r5 contains (1,1,2,3) (expect no): ", r5.contains(1,1,2,3))
63+
64+
A = oiio.ROI (0, 10, 0, 8, 0, 1, 0, 4)
65+
B = oiio.ROI (5, 15, -1, 10, 0, 1, 0, 4)
66+
print ("A =", A)
67+
print ("B =", B)
68+
print ("ROI.union(A,B) =", oiio.union(A,B))
69+
print ("ROI.intersection(A,B) =", oiio.intersection(A,B))
70+
print ("")
71+
72+
spec = oiio.ImageSpec(640, 480, 3, oiio.UINT8)
73+
print ("Spec's roi is", oiio.get_roi(spec))
74+
oiio.set_roi (spec, oiio.ROI(3, 5, 7, 9))
75+
oiio.set_roi_full (spec, oiio.ROI(13, 15, 17, 19))
76+
print ("After set, roi is", oiio.get_roi(spec))
77+
print ("After set, roi_full is", oiio.get_roi_full(spec))
78+
79+
r1 = oiio.ROI(0, 640, 0, 480, 0, 1, 0, 4)
80+
r2 = r1.copy()
81+
r2.xbegin = 42
82+
print ("r1 =", r1)
83+
print ("r2 =", r2)
84+
85+
print ("")
86+
87+
print ("Done.")
9488
except Exception as detail:
9589
print ("Unknown exception:", detail)
9690
return 0

0 commit comments

Comments
 (0)