Skip to content

Commit ef96411

Browse files
committed
Review previously generated code
1 parent 3984e7e commit ef96411

File tree

1 file changed

+19
-66
lines changed

1 file changed

+19
-66
lines changed

render-ws-java-client/src/main/java/org/janelia/render/client/StackStraighteningClient.java

Lines changed: 19 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@
2323
*
2424
* The offset is linearly interpolated across layers:
2525
* layer z is moved by (z - zmin) / (zmax - zmin) * offset
26-
*
27-
* @author Michael Innerberger
2826
*/
2927
public class StackStraighteningClient {
3028

@@ -39,35 +37,11 @@ public static class Parameters extends CommandLineParameters {
3937
required = true)
4038
public String stack;
4139

42-
@Parameter(
43-
names = "--targetOwner",
44-
description = "Name of target stack owner (default is same as source stack owner)")
45-
public String targetOwner;
46-
47-
@Parameter(
48-
names = "--targetProject",
49-
description = "Name of target stack project (default is same as source stack project)")
50-
public String targetProject;
51-
5240
@Parameter(
5341
names = "--targetStack",
5442
description = "Name of target stack",
5543
required = true)
5644
public String targetStack;
57-
58-
@Parameter(
59-
names = "--completeTargetStack",
60-
description = "Complete the target stack after processing all layers",
61-
arity = 0)
62-
public boolean completeTargetStack = false;
63-
64-
public String getTargetOwner() {
65-
return targetOwner == null ? renderWeb.owner : targetOwner;
66-
}
67-
68-
public String getTargetProject() {
69-
return targetProject == null ? renderWeb.project : targetProject;
70-
}
7145
}
7246

7347
public static void main(final String[] args) {
@@ -81,51 +55,33 @@ public void runClient(final String[] args) throws Exception {
8155
LOG.info("runClient: entry, parameters={}", parameters);
8256

8357
final StackStraighteningClient client = new StackStraighteningClient(parameters);
84-
85-
client.setupDerivedStack();
8658
client.straightenStack();
87-
88-
if (parameters.completeTargetStack) {
89-
client.completeTargetStack();
90-
}
9159
}
9260
};
9361
clientRunner.run();
9462
}
9563

9664
private final Parameters parameters;
97-
private final RenderDataClient sourceDataClient;
98-
private final RenderDataClient targetDataClient;
65+
private final RenderDataClient renderDataClient;
9966
private final List<Double> zValues;
10067

10168
private StackStraighteningClient(final Parameters parameters)
10269
throws IOException {
10370

10471
this.parameters = parameters;
105-
106-
this.sourceDataClient = parameters.renderWeb.getDataClient();
107-
this.targetDataClient = new RenderDataClient(parameters.renderWeb.baseDataUrl,
108-
parameters.getTargetOwner(),
109-
parameters.getTargetProject());
110-
111-
this.zValues = sourceDataClient.getStackZValues(parameters.stack);
72+
this.renderDataClient = parameters.renderWeb.getDataClient();
73+
this.zValues = renderDataClient.getStackZValues(parameters.stack);
11274

11375
if (zValues.size() < 2) {
11476
throw new IllegalArgumentException("Stack must have at least 2 layers for straightening");
11577
}
11678
}
11779

118-
private void setupDerivedStack() throws IOException {
119-
final StackMetaData sourceStackMetaData = sourceDataClient.getStackMetaData(parameters.stack);
120-
targetDataClient.setupDerivedStack(sourceStackMetaData, parameters.targetStack);
121-
}
122-
123-
private void completeTargetStack() throws Exception {
124-
targetDataClient.setStackState(parameters.targetStack, StackMetaData.StackState.COMPLETE);
125-
}
126-
12780
private void straightenStack() throws Exception {
12881

82+
final StackMetaData sourceStackMetaData = renderDataClient.getStackMetaData(parameters.stack);
83+
renderDataClient.setupDerivedStack(sourceStackMetaData, parameters.targetStack);
84+
12985
final double zMin = zValues.get(0);
13086
final double zMax = zValues.get(zValues.size() - 1);
13187

@@ -151,11 +107,13 @@ private void straightenStack() throws Exception {
151107
straightenLayer(z, zMin, zRange, totalOffsetX, totalOffsetY);
152108
}
153109

110+
renderDataClient.setStackState(parameters.targetStack, StackMetaData.StackState.COMPLETE);
111+
154112
LOG.info("straightenStack: exit, processed {} layers", zValues.size());
155113
}
156114

157115
private double[] getLayerBoundingBoxMidpoint(final double z) throws Exception {
158-
final ResolvedTileSpecCollection tiles = sourceDataClient.getResolvedTiles(parameters.stack, z);
116+
final ResolvedTileSpecCollection tiles = renderDataClient.getResolvedTiles(parameters.stack, z);
159117
final Bounds layerBounds = tiles.toBounds();
160118

161119
if (layerBounds == null || layerBounds.getMinX() == null) {
@@ -180,7 +138,7 @@ private void straightenLayer(final Double z,
180138

181139
LOG.info("straightenLayer: entry, z={}", z);
182140

183-
final ResolvedTileSpecCollection tiles = sourceDataClient.getResolvedTiles(parameters.stack, z);
141+
final ResolvedTileSpecCollection tiles = renderDataClient.getResolvedTiles(parameters.stack, z);
184142

185143
if (tiles.getTileCount() == 0) {
186144
LOG.info("straightenLayer: no tiles for z={}, skipping", z);
@@ -193,27 +151,22 @@ private void straightenLayer(final Double z,
193151
final double factor = (z - zMin) / zRange;
194152

195153
// The translation needed to straighten this layer
196-
// We negate the offset because we want to move layers back toward the first layer's position
197154
final double translateX = -factor * totalOffsetX;
198155
final double translateY = -factor * totalOffsetY;
199156

200-
if (Math.abs(translateX) > 0.001 || Math.abs(translateY) > 0.001) {
201-
final AffineModel2D translationModel = new AffineModel2D();
202-
translationModel.set(1, 0, 0, 1, translateX, translateY);
157+
final AffineModel2D translationModel = new AffineModel2D();
158+
translationModel.set(1, 0, 0, 1, translateX, translateY);
203159

204-
final LeafTransformSpec translationTransform = new LeafTransformSpec(
205-
translationModel.getClass().getName(),
206-
translationModel.toDataString());
160+
final LeafTransformSpec translationTransform = new LeafTransformSpec(
161+
translationModel.getClass().getName(),
162+
translationModel.toDataString());
207163

208-
tiles.preConcatenateTransformToAllTiles(translationTransform);
164+
tiles.preConcatenateTransformToAllTiles(translationTransform);
209165

210-
LOG.info("straightenLayer: applied translation ({}, {}) to {} tiles for z={}",
211-
translateX, translateY, tiles.getTileCount(), z);
212-
} else {
213-
LOG.info("straightenLayer: no significant translation needed for z={}", z);
214-
}
166+
LOG.info("straightenLayer: applied translation ({}, {}) to {} tiles for z={}",
167+
translateX, translateY, tiles.getTileCount(), z);
215168

216-
targetDataClient.saveResolvedTiles(tiles, parameters.targetStack, z);
169+
renderDataClient.saveResolvedTiles(tiles, parameters.targetStack, z);
217170

218171
LOG.info("straightenLayer: exit, saved {} tiles for z={}", tiles.getTileCount(), z);
219172
}

0 commit comments

Comments
 (0)