(Roi roi, int hdr2Offset)
| 419 | } |
| 420 | |
| 421 | void putHeader2(Roi roi, int hdr2Offset) { |
| 422 | //ij.IJ.log("putHeader2: "+hdr2Offset+" "+roiNameSize+" "+roiName); |
| 423 | putInt(RoiDecoder.HEADER2_OFFSET, hdr2Offset); |
| 424 | putInt(hdr2Offset+RoiDecoder.C_POSITION, roi.getCPosition()); |
| 425 | putInt(hdr2Offset+RoiDecoder.Z_POSITION, roi.hasHyperStackPosition()?roi.getZPosition():0); |
| 426 | putInt(hdr2Offset+RoiDecoder.T_POSITION, roi.getTPosition()); |
| 427 | Overlay proto = roi.getPrototypeOverlay(); |
| 428 | Color overlayLabelColor = proto.getLabelColor(); |
| 429 | if (overlayLabelColor!=null) |
| 430 | putInt(hdr2Offset+RoiDecoder.OVERLAY_LABEL_COLOR, overlayLabelColor.getRGB()); |
| 431 | Font font = proto.getLabelFont(); |
| 432 | if (font!=null) |
| 433 | putShort(hdr2Offset+RoiDecoder.OVERLAY_FONT_SIZE, font.getSize()); |
| 434 | if (roiNameSize>0) |
| 435 | putName(roi, hdr2Offset); |
| 436 | double strokeWidth = roi.getStrokeWidth(); |
| 437 | if (roi.getStroke()==null) |
| 438 | strokeWidth = 0.0; |
| 439 | putFloat(hdr2Offset+RoiDecoder.FLOAT_STROKE_WIDTH, (float)strokeWidth); |
| 440 | if (roiPropsSize>0) |
| 441 | putProps(roi, hdr2Offset); |
| 442 | if (countersSize>0) |
| 443 | putPointCounters(roi, hdr2Offset); |
| 444 | int group = roi.getGroup(); |
| 445 | if (group > 255) { |
| 446 | putByte(hdr2Offset+RoiDecoder.GROUP, 0); // marker for extended group |
| 447 | putShort(hdr2Offset+RoiDecoder.GROUP_EXTENDED, group); |
| 448 | } else |
| 449 | putByte(hdr2Offset+RoiDecoder.GROUP, group); |
| 450 | } |
| 451 | |
| 452 | void putName(Roi roi, int hdr2Offset) { |
| 453 | int offset = hdr2Offset+HEADER2_SIZE; |
no test coverage detected