private static void buildAffineTransform(AffineTransform transform, OpManager dispOp, Rectangle2D modelArea, Point offset) { boolean flip = LangUtil.getNULLtoFalse((Boolean) dispOp.getParamValue(FlipOp.OP_NAME, FlipOp.P_FLIP)); Integer rotationAngle = (Integer) dispOp.getParamValue(RotationOp.OP_NAME, RotationOp.P_ROTATE); if (rotationAngle != null && rotationAngle > 0) { rotationAngle = (rotationAngle + 720) % 360; if (flip) { rotationAngle = 360 - rotationAngle; } transform.rotate(Math.toRadians(rotationAngle), modelArea.getWidth() / 2.0, modelArea.getHeight() / 2.0); } if (flip) { transform.scale(-1.0, 1.0); transform.translate(-modelArea.getWidth(), 0.0); } if (offset != null) { // TODO not consistent with image coordinates after crop transform.translate(-offset.getX(), -offset.getY()); } }
private void iniDicomView(OpManager disOp, String op, String param, int index) { TreeNode treeNode = imageNode.getChildAt(index); if (treeNode != null) { Boolean val = (Boolean) disOp.getParamValue(op, param); initPathSelection(getTreePath(treeNode), val == null ? false : val); } }
@Override public void changeZoomInterpolation(Integer interpolation) { Integer val = (Integer) getDisplayOpManager().getParamValue(AffineTransformOp.OP_NAME, AffineTransformOp.P_INTERPOLATION); boolean update = !Objects.equals(val, interpolation); if (update) { getDisplayOpManager().setParamValue(AffineTransformOp.OP_NAME, AffineTransformOp.P_INTERPOLATION, interpolation); if (lens != null) { lens.getDisplayOpManager().setParamValue(AffineTransformOp.OP_NAME, AffineTransformOp.P_INTERPOLATION, interpolation); lens.updateZoom(); } imageLayer.updateDisplayOperations(); } }
g2.draw(line); Double ww = (Double) disOp.getParamValue(WindowOp.OP_NAME, ActionW.WINDOW.cmd()); Double wl = (Double) disOp.getParamValue(WindowOp.OP_NAME, ActionW.LEVEL.cmd()); if (ww != null && wl != null) { int stepWindow = (int) (ww / separation);
@Override protected void fillPixelInfo(final PixelInfo pixelInfo, final DicomImageElement imageElement, final double[] c) { if (c != null && c.length >= 1) { boolean pixelPadding = LangUtil.getNULLtoTrue( (Boolean) getDisplayOpManager().getParamValue(WindowOp.OP_NAME, ActionW.IMAGE_PIX_PADDING.cmd())); PresentationStateReader prReader = (PresentationStateReader) getActionValue(PresentationStateReader.TAG_PR_READER); for (int i = 0; i < c.length; i++) { c[i] = imageElement.pixel2mLUT(c[i], prReader, pixelPadding); } pixelInfo.setValues(c); } }
Number window = (Number) disOp.getParamValue(WindowOp.OP_NAME, ActionW.WINDOW.cmd()); Number level = (Number) disOp.getParamValue(WindowOp.OP_NAME, ActionW.LEVEL.cmd()); if (window != null && level != null) { sb.append(ActionW.WINLEVEL.getTitle());
.setSelectedItemWithoutTriggerAction(dispOp.getParamValue(PseudoColorOp.OP_NAME, PseudoColorOp.P_LUT))); getAction(ActionW.INVERT_LUT, ToggleButtonListener.class).ifPresent(a -> a.setSelectedWithoutTriggerAction( (Boolean) dispOp.getParamValue(PseudoColorOp.OP_NAME, PseudoColorOp.P_LUT_INVERSE))); getAction(ActionW.FILTER, ComboItemListener.class).ifPresent( a -> a.setSelectedItemWithoutTriggerAction(dispOp.getParamValue(FilterOp.OP_NAME, FilterOp.P_KERNEL_DATA))); getAction(ActionW.ROTATION, SliderChangeListener.class) .ifPresent(a -> a.setSliderValue((Integer) view2d.getActionValue(ActionW.ROTATION.cmd()), false));
Number window = (Number) disOp.getParamValue(WindowOp.OP_NAME, ActionW.WINDOW.cmd()); Number level = (Number) disOp.getParamValue(WindowOp.OP_NAME, ActionW.LEVEL.cmd()); boolean outside = false; if (window != null && level != null) { (PresentationStateReader) view2DPane.getActionValue(PresentationStateReader.TAG_PR_READER); boolean pixelPadding = (Boolean) disOp.getParamValue(WindowOp.OP_NAME, ActionW.IMAGE_PIX_PADDING.cmd()); double minModLUT = image.getMinValue(prReader, pixelPadding); double maxModLUT = image.getMaxValue(prReader, pixelPadding);
.setSelectedItemWithoutTriggerAction(dispOp.getParamValue(PseudoColorOp.OP_NAME, PseudoColorOp.P_LUT))); getAction(ActionW.INVERT_LUT, ToggleButtonListener.class).ifPresent(a -> a.setSelectedWithoutTriggerAction( (Boolean) dispOp.getParamValue(PseudoColorOp.OP_NAME, PseudoColorOp.P_LUT_INVERSE))); getAction(ActionW.FILTER, ComboItemListener.class).ifPresent( a -> a.setSelectedItemWithoutTriggerAction(dispOp.getParamValue(FilterOp.OP_NAME, FilterOp.P_KERNEL_DATA))); getAction(ActionW.ROTATION, SliderChangeListener.class) .ifPresent(a -> a.setSliderValue((Integer) view2d.getActionValue(ActionW.ROTATION.cmd()), false));
Object filter = actionsInView.get(ActionW.FILTERED_SERIES.cmd()); OpManager disOp = getDisplayOpManager(); Object preset = disOp.getParamValue(WindowOp.OP_NAME, ActionW.PRESET.cmd()); initActionWState(); setActionsInView(ActionW.KO_SELECTION.cmd(), ko);
PresetWindowLevel newPreset = null; boolean pixelPadding = LangUtil.getNULLtoTrue((Boolean) view2d.getDisplayOpManager() .getParamValue(WindowOp.OP_NAME, ActionW.IMAGE_PIX_PADDING.cmd())); (Double) view2d.getDisplayOpManager().getParamValue(WindowOp.OP_NAME, ActionW.LEVEL_MIN.cmd()); Double levelMax = (Double) view2d.getDisplayOpManager().getParamValue(WindowOp.OP_NAME, ActionW.LEVEL_MAX.cmd());
if (img != null) { boolean pixelPadding = LangUtil.getNULLtoTrue((Boolean) defaultView2d.getDisplayOpManager() .getParamValue(WindowOp.OP_NAME, ActionW.IMAGE_PIX_PADDING.cmd())); getAction(ActionW.WINDOW, SliderChangeListener.class) .ifPresent(a -> a.setRealValue(img.getDefaultWindow(pixelPadding)));