Digital Signal Processing Reference
In-Depth Information
D.2.5 File InnerContour.java
D Source Code
1 import ij.IJ;
2
3 class InnerContour extends Contour {
4
5
InnerContour (int label, int initialSize) {
super(label, initialSize);
6
}
7
8
9
void print() {
IJ.write("Inner Contour: " + nodes.size());
10
printNodes();
11
}
12
13 }
D.2.6 File ContourSet.java
1 import java.awt.Shape;
2 import java.util.ArrayList;
3 import java.util.Iterator;
4
5 class ContourSet {
6
ArrayList<Contour> outerContours;
ArrayList<Contour> innerContours;
7
8
9
ContourSet (int initialSize){
outerContours = new ArrayList<Contour>(initialSize);
10
innerContours = new ArrayList<Contour>(initialSize);
11
}
12
13
14
void addContour(OuterContour oc) {
outerContours.add(oc);
15
}
16
17
18
void addContour(InnerContour ic) {
innerContours.add(ic);
19
}
20
21
22
Shape[] getOuterPolygons () {
return makePolygons(outerContours);
23
}
24
25
26
Shape[] getInnerPolygons () {
return makePolygons(innerContours);
27
}
28
29
30
Shape[] makePolygons(ArrayList<Contour> nodes) {
if (nodes == null)
31
return null;
32
Search WWH ::




Custom Search