BioGTK  5.1.1
A .NET library & program for annotating, editing various microscopy imaging formats using Bioformats supported images.
Loading...
Searching...
No Matches
BioGTK.ImageJ.RoiDecoder Class Reference

Public Member Functions

 RoiDecoder (string path)
 
 RoiDecoder (byte[] bytes, string name)
 
BioGTK.ROI getRoi ()
 

Static Public Member Functions

static BioGTK.ROI open (string path)
 
static BioGTK.ROI openFromByteArray (byte[] bytes)
 

Static Public Attributes

static int VERSION_OFFSET = 4
 
static int TYPE = 6
 
static int TOP = 8
 
static int LEFT = 10
 
static int BOTTOM = 12
 
static int RIGHT = 14
 
static int N_COORDINATES = 16
 
static int X1 = 18
 
static int Y1 = 22
 
static int X2 = 26
 
static int Y2 = 30
 
static int XD = 18
 
static int YD = 22
 
static int WIDTHD = 26
 
static int HEIGHTD = 30
 
static int SIZE = 18
 
static int STROKE_WIDTH = 34
 
static int SHAPE_ROI_SIZE = 36
 
static int STROKE_COLOR = 40
 
static int FILL_COLOR = 44
 
static int SUBTYPE = 48
 
static int OPTIONS = 50
 
static int ARROW_STYLE = 52
 
static int FLOAT_PARAM = 52
 
static int POINT_TYPE = 52
 
static int ARROW_HEAD_SIZE = 53
 
static int ROUNDED_RECT_ARC_SIZE = 54
 
static int POSITION = 56
 
static int HEADER2_OFFSET = 60
 
static int COORDINATES = 64
 
static int C_POSITION = 4
 
static int Z_POSITION = 8
 
static int T_POSITION = 12
 
static int NAME_OFFSET = 16
 
static int NAME_LENGTH = 20
 
static int OVERLAY_LABEL_COLOR = 24
 
static int OVERLAY_FONT_SIZE = 28
 
static int GROUP = 30
 
static int IMAGE_OPACITY = 31
 
static int IMAGE_SIZE = 32
 
static int FLOAT_STROKE_WIDTH = 36
 
static int ROI_PROPS_OFFSET = 40
 
static int ROI_PROPS_LENGTH = 44
 
static int COUNTERS_OFFSET = 48
 
static int TEXT = 1
 
static int ARROW = 2
 
static int ELLIPSE = 3
 
static int IMAGE = 4
 
static int ROTATED_RECT = 5
 
static int SPLINE_FIT = 1
 
static int DOUBLE_HEADED = 2
 
static int OUTLINE = 4
 
static int OVERLAY_LABELS = 8
 
static int OVERLAY_NAMES = 16
 
static int OVERLAY_BACKGROUNDS = 32
 
static int OVERLAY_BOLD = 64
 
static int SUB_PIXEL_RESOLUTION = 128
 
static int DRAW_OFFSET = 256
 
static int ZERO_TRANSPARENT = 512
 
static int SHOW_LABELS = 1024
 
static int SCALE_LABELS = 2048
 
static int PROMPT_BEFORE_DELETING = 4096
 
static int SCALE_STROKE_WIDTH = 8192
 

Constructor & Destructor Documentation

◆ RoiDecoder() [1/2]

BioGTK.ImageJ.RoiDecoder.RoiDecoder ( string  path)
inline

Constructs an RoiDecoder using a file path.

427 {
428 this.path = path;
429 }

◆ RoiDecoder() [2/2]

BioGTK.ImageJ.RoiDecoder.RoiDecoder ( byte[]  bytes,
string  name 
)
inline

Constructs an RoiDecoder using a byte array.

433 {
434 ins = new MemoryStream(bytes);
435 this.name = name;
436 this.size = bytes.Length;
437 }

Member Function Documentation

◆ getRoi()

BioGTK.ROI BioGTK.ImageJ.RoiDecoder.getRoi ( )
inline

Returns the ROI.

450 {
451 BioGTK.ROI roi = new BioGTK.ROI();
452 data = File.ReadAllBytes(path);
453 size = data.Length;
454 if (getByte(0) != 73 || getByte(1) != 111) //"Iout"
455 throw new IOException("This is not an ImageJ ROI");
456 int version = getShort(VERSION_OFFSET);
457 int type = getByte(TYPE);
458 int subtype = getShort(SUBTYPE);
459 int top = getShort(TOP);
460 int left = getShort(LEFT);
461 int bottom = getShort(BOTTOM);
462 int right = getShort(RIGHT);
463 int width = right - left;
464 int height = bottom - top;
465 int n = getUnsignedShort(N_COORDINATES);
466 if (n == 0)
467 n = getInt(SIZE);
468 int options = getShort(OPTIONS);
469 int position = getInt(POSITION);
470 int hdr2Offset = getInt(HEADER2_OFFSET);
471 int channel = 0, slice = 0, frame = 0;
472 int overlayLabelColor = 0;
473 int overlayFontSize = 0;
474 int group = 0;
475 int imageOpacity = 0;
476 int imageSize = 0;
477 bool subPixelResolution = (options & SUB_PIXEL_RESOLUTION) != 0 && version >= 222;
478 bool drawOffset = subPixelResolution && (options & DRAW_OFFSET) != 0;
479 bool scaleStrokeWidth = true;
480 if (version >= 228)
481 scaleStrokeWidth = (options & SCALE_STROKE_WIDTH) != 0;
482
483 bool subPixelRect = version >= 223 && subPixelResolution && (type == rect || type == oval);
484 double xd = 0.0, yd = 0.0, widthd = 0.0, heightd = 0.0;
485 if (subPixelRect) {
486 xd = getFloat(XD);
487 yd = getFloat(YD);
488 widthd = getFloat(WIDTHD);
489 heightd = getFloat(HEIGHTD);
490 roi.subPixel = true;
491 }
492
493 if (hdr2Offset > 0 && hdr2Offset + IMAGE_SIZE + 4 <= size)
494 {
495 channel = getInt(hdr2Offset + C_POSITION);
496 slice = getInt(hdr2Offset + Z_POSITION);
497 frame = getInt(hdr2Offset + T_POSITION);
498 overlayLabelColor = getInt(hdr2Offset + OVERLAY_LABEL_COLOR);
499 overlayFontSize = getShort(hdr2Offset + OVERLAY_FONT_SIZE);
500 imageOpacity = getByte(hdr2Offset + IMAGE_OPACITY);
501 imageSize = getInt(hdr2Offset + IMAGE_SIZE);
502 group = getByte(hdr2Offset + GROUP);
503 }
504
505 if (name != null && name.EndsWith(".roi"))
506 name = name.Substring(0, name.Length - 4);
507 bool isComposite = getInt(SHAPE_ROI_SIZE) > 0;
508
509
510 /*
511 if (isComposite)
512 {
513 roi = getShapeRoi();
514 if (version >= 218)
515 getStrokeWidthAndColor(roi, hdr2Offset, scaleStrokeWidth);
516 roi.coord.Z = position;
517 if (channel > 0 || slice > 0 || frame > 0)
518 {
519 roi.coord.C = channel; roi.coord.Z = slice; roi.coord.T = frame;
520 }
521 decodeOverlayOptions(roi, version, options, overlayLabelColor, overlayFontSize);
522 if (version >= 224)
523 {
524 string props = getRoiProps();
525 if (props != null)
526 roi.properties = props;
527 }
528 if (version >= 228 && group > 0)
529 roi.serie = group;
530 return roi;
531 }
532 */
533 switch (type)
534 {
535 case 1: //Rect
536 if (subPixelRect)
537 roi = BioGTK.ROI.CreateRectangle(new AForge.ZCT(slice-1, channel - 1, frame - 1), xd, yd, widthd, heightd);
538 else
539 roi = BioGTK.ROI.CreateRectangle(new AForge.ZCT(slice - 1, channel - 1, frame - 1), left, top, width, height);
540 int arcSize = getShort(ROUNDED_RECT_ARC_SIZE);
541 if (arcSize > 0)
542 throw new NotSupportedException("Type rounded rectangle not supported.");
543 break;
544 case 2: //Ellipse
545 if (subPixelRect)
546 roi = BioGTK.ROI.CreateEllipse(new AForge.ZCT(slice - 1, channel - 1, frame - 1), xd, yd, widthd, heightd);
547 else
548 roi = BioGTK.ROI.CreateEllipse(new AForge.ZCT(slice - 1, channel - 1, frame - 1), left, top, width, height);
549 break;
550 case 3: //Line
551 float x1 = getFloat(X1);
552 float y1 = getFloat(Y1);
553 float x2 = getFloat(X2);
554 float y2 = getFloat(Y2);
555
556 if (subtype == ARROW)
557 {
558 throw new NotSupportedException("Type arrow not supported.");
559 /*
560 roi = new Arrow(x1, y1, x2, y2);
561 ((Arrow)roi).setDoubleHeaded((options & DOUBLE_HEADED) != 0);
562 ((Arrow)roi).setOutline((options & OUTLINE) != 0);
563 int style = getByte(ARROW_STYLE);
564 if (style >= Arrow.FILLED && style <= Arrow.BAR)
565 ((Arrow)roi).setStyle(style);
566 int headSize = getByte(ARROW_HEAD_SIZE);
567 if (headSize >= 0 && style <= 30)
568 ((Arrow)roi).setHeadSize(headSize);
569 */
570 }
571 else
572 {
573 roi = ROI.CreateLine(new AForge.ZCT(slice, channel, frame), new AForge.PointD(x1, y1), new AForge.PointD(x2, y2));
574 //roi.setDrawOffset(drawOffset);
575 }
576
577 break;
578 case 0:
579 case 5:
580 case 6:
581 case 7:
582 case 8:
583 case 9:
584 case 10:
585 //IJ.log("type: "+type);
586 //IJ.log("n: "+n);
587 //ij.IJ.log("rect: "+left+","+top+" "+width+" "+height);
588 if (n == 0 || n < 0) break;
589 int[] x = new int[n];
590 int[] y = new int[n];
591 float[] xf = null;
592 float[] yf = null;
593 int base1 = COORDINATES;
594 int base2 = base1 + 2 * n;
595 int xtmp, ytmp;
596 for (int i = 0; i < n; i++)
597 {
598 xtmp = getShort(base1 + i * 2);
599 if (xtmp < 0) xtmp = 0;
600 ytmp = getShort(base2 + i * 2);
601 if (ytmp < 0) ytmp = 0;
602 x[i] = left + xtmp;
603 y[i] = top + ytmp;
604 }
605 if (subPixelResolution)
606 {
607 xf = new float[n];
608 yf = new float[n];
609 base1 = COORDINATES + 4 * n;
610 base2 = base1 + 4 * n;
611 for (int i = 0; i < n; i++)
612 {
613 xf[i] = getFloat(base1 + i * 4);
614 yf[i] = getFloat(base2 + i * 4);
615 }
616 }
617 if (type == point)
618 {
619 //TODO implement non subpizel ROI
620 if (subPixelResolution)
621 {
622 roi.AddPoints(xf, yf);
623 }
624 else
625 roi.AddPoints(x, y);
626 if (version >= 226)
627 {
628 //((PointRoi)roi).setPointType(getByte(POINT_TYPE));
629 roi.strokeWidth = getShort(STROKE_WIDTH);
630 }
631 //if ((options & SHOW_LABELS) != 0 && !ij.Prefs.noPointLabels)
632 // ((PointRoi)roi).setShowLabels(true);
633 //if ((options & PROMPT_BEFORE_DELETING) != 0)
634 // ((PointRoi)roi).promptBeforeDeleting(true);
635 roi.type = ROI.Type.Point;
636 break;
637 }
638 if (type == polygon)
639 roi.type = ROI.Type.Polygon;
640 else if (type == freehand)
641 {
642 roi.type = ROI.Type.Freeform;
643 if (subtype == ELLIPSE || subtype == ROTATED_RECT)
644 {
645 throw new NotSupportedException("ROI type not supported.");
646 /*
647 double ex1 = getFloat(X1);
648 double ey1 = getFloat(Y1);
649 double ex2 = getFloat(X2);
650 double ey2 = getFloat(Y2);
651 double param = getFloat(FLOAT_PARAM);
652 if (subtype == ROTATED_RECT)
653 roi = new RotatedRectRoi(ex1, ey1, ex2, ey2, param);
654 else
655 roi = new EllipseRoi(ex1, ey1, ex2, ey2, param);
656 break;
657 */
658 }
659 }
660 else if (type == traced)
661 roi.type = ROI.Type.Polyline;
662 else if (type == polyline)
663 roi.type = ROI.Type.Polyline;
664 else if (type == freeline)
665 roi.type = ROI.Type.Polyline;
666 else if (type == angle)
667 roi.type = ROI.Type.Point;
668 else
669 roi.type = ROI.Type.Freeform;
670 if (subPixelResolution)
671 {
672 roi.AddPoints(xf, yf);
673 //roi = new PolygonRoi(xf, yf, n, roiType);
674 //roi.setDrawOffset(drawOffset);
675 }
676 else
677 roi.AddPoints(x, y);
678 break;
679 default:
680 throw new IOException("Unrecognized ROI type: " + type);
681 }
682 if (roi == null)
683 return null;
684 roi.roiName = getRoiName();
685
686 // read stroke width, stroke color and fill color (1.43i or later)
687 if (version >= 218)
688 {
689 getStrokeWidthAndColor(roi, hdr2Offset, scaleStrokeWidth);
690 /*
691 if (type == point)
692 roi.setStrokeWidth(0);
693 bool splineFit = (options & SPLINE_FIT) != 0;
694 if (splineFit && roi instanceof PolygonRoi)
695 ((PolygonRoi)roi).fitSpline();
696 */
697 }
698
699 if (version >= 218 && subtype == TEXT)
700 {
701 getTextRoi(roi, version);
702 roi.type = ROI.Type.Label;
703 }
704 /*
705 if (version >= 221 && subtype == IMAGE)
706 roi = getImageRoi(roi, imageOpacity, imageSize, options);
707
708 if (version >= 224)
709 {
710 string props = getRoiProps();
711 if (props != null)
712 roi.setProperties(props);
713 }
714
715 if (version >= 227)
716 {
717 int[] counters = getPointCounters(n);
718 if (counters != null && (roi instanceof PointRoi))
719 ((PointRoi)roi).setCounters(counters);
720 }
721 */
722 // set group (1.52t or later)
723 if (version >= 228 && group > 0)
724 roi.serie = group;
725
726 roi.coord.Z = position;
727 if (channel > 0 || slice > 0 || frame > 0)
728 roi.coord = new AForge.ZCT(slice - 1, channel - 1, frame - 1); //-1 because our ROI coordinates are 0 based
729 //decodeOverlayOptions(roi, version, options, overlayLabelColor, overlayFontSize);
730
731 //We convert pixel to subpixel
732 if (!roi.subPixel)
733 {
734 for (int i = 0; i < roi.PointsD.Count; i++)
735 {
736 AForge.PointD pd = ImageView.SelectedImage.ToStageSpace(roi.PointsD[i]);
737 roi.PointsD[i] = pd;
738 roi.UpdateBoundingBox();
739 }
740 }
741 if (roi.type == ROI.Type.Polygon || roi.type == ROI.Type.Freeform)
742 roi.closed = true;
743 return roi;
744 }
PointD ToStageSpace(PointD p)
Definition Bio.cs:3512
static int ROTATED_RECT
Definition ImageJ.cs:396
static int ROUNDED_RECT_ARC_SIZE
Definition ImageJ.cs:371
static int SCALE_STROKE_WIDTH
Definition ImageJ.cs:412
static int YD
Definition ImageJ.cs:357
static int POSITION
Definition ImageJ.cs:372
static int STROKE_WIDTH
Definition ImageJ.cs:361
static int TEXT
Definition ImageJ.cs:392
static int ELLIPSE
Definition ImageJ.cs:394
static int LEFT
Definition ImageJ.cs:348
static int Y1
Definition ImageJ.cs:353
static int TYPE
Definition ImageJ.cs:346
static int SIZE
Definition ImageJ.cs:360
static int RIGHT
Definition ImageJ.cs:350
static int SUBTYPE
Definition ImageJ.cs:365
static int X1
Definition ImageJ.cs:352
static int ARROW
Definition ImageJ.cs:393
static int N_COORDINATES
Definition ImageJ.cs:351
static int Y2
Definition ImageJ.cs:355
static int X2
Definition ImageJ.cs:354
static int WIDTHD
Definition ImageJ.cs:358
static int T_POSITION
Definition ImageJ.cs:378
static int VERSION_OFFSET
Definition ImageJ.cs:345
static int HEIGHTD
Definition ImageJ.cs:359
static int IMAGE_SIZE
Definition ImageJ.cs:385
static int BOTTOM
Definition ImageJ.cs:349
static int OVERLAY_LABEL_COLOR
Definition ImageJ.cs:381
static int Z_POSITION
Definition ImageJ.cs:377
static int SUB_PIXEL_RESOLUTION
Definition ImageJ.cs:406
static int IMAGE_OPACITY
Definition ImageJ.cs:384
static int DRAW_OFFSET
Definition ImageJ.cs:407
static int XD
Definition ImageJ.cs:356
static int C_POSITION
Definition ImageJ.cs:376
static int COORDINATES
Definition ImageJ.cs:374
static int GROUP
Definition ImageJ.cs:383
static int HEADER2_OFFSET
Definition ImageJ.cs:373
static int OPTIONS
Definition ImageJ.cs:366
static int OVERLAY_FONT_SIZE
Definition ImageJ.cs:382
static int TOP
Definition ImageJ.cs:347
static int SHAPE_ROI_SIZE
Definition ImageJ.cs:362
Definition ImageView.cs:23
static BioImage SelectedImage
Definition ImageView.cs:1559
Definition Bio.cs:391
void AddPoints(PointD[] p)
Definition Bio.cs:1025
bool subPixel
Definition Bio.cs:569
static ROI CreateEllipse(ZCT coord, double x, double y, double w, double h)
Definition Bio.cs:916
static ROI CreateLine(ZCT coord, PointD x1, PointD x2)
Definition Bio.cs:879
Type
Definition Bio.cs:394
void UpdateBoundingBox()
Definition Bio.cs:1125
List< PointD > PointsD
Definition Bio.cs:524
Type type
Definition Bio.cs:520
static ROI CreateRectangle(ZCT coord, double x, double y, double w, double h)
Definition Bio.cs:898
Definition About.cs:11

◆ open()

static BioGTK.ROI BioGTK.ImageJ.RoiDecoder.open ( string  path)
inlinestatic

Opens the BioGTK.ROI at the specified path. Returns null if there is an error.

441 {
442 BioGTK.ROI roi = null;
443 RoiDecoder rd = new RoiDecoder(path);
444 roi = rd.getRoi();
445 return roi;
446 }
RoiDecoder(string path)
Definition ImageJ.cs:426

◆ openFromByteArray()

static BioGTK.ROI BioGTK.ImageJ.RoiDecoder.openFromByteArray ( byte[]  bytes)
inlinestatic

Opens an ROI from a byte array.

953 {
954 BioGTK.ROI roi = null;
955 if (bytes == null || bytes.Length == 0)
956 return roi;
957 try
958 {
959 RoiDecoder decoder = new RoiDecoder(bytes, null);
960 roi = decoder.getRoi();
961 }
962 catch (IOException e)
963 {
964 return null;
965 }
966 return roi;
967 }

Member Data Documentation

◆ ARROW

int BioGTK.ImageJ.RoiDecoder.ARROW = 2
static

◆ ARROW_HEAD_SIZE

int BioGTK.ImageJ.RoiDecoder.ARROW_HEAD_SIZE = 53
static

◆ ARROW_STYLE

int BioGTK.ImageJ.RoiDecoder.ARROW_STYLE = 52
static

◆ BOTTOM

int BioGTK.ImageJ.RoiDecoder.BOTTOM = 12
static

◆ C_POSITION

int BioGTK.ImageJ.RoiDecoder.C_POSITION = 4
static

◆ COORDINATES

int BioGTK.ImageJ.RoiDecoder.COORDINATES = 64
static

◆ COUNTERS_OFFSET

int BioGTK.ImageJ.RoiDecoder.COUNTERS_OFFSET = 48
static

◆ DOUBLE_HEADED

int BioGTK.ImageJ.RoiDecoder.DOUBLE_HEADED = 2
static

◆ DRAW_OFFSET

int BioGTK.ImageJ.RoiDecoder.DRAW_OFFSET = 256
static

◆ ELLIPSE

int BioGTK.ImageJ.RoiDecoder.ELLIPSE = 3
static

◆ FILL_COLOR

int BioGTK.ImageJ.RoiDecoder.FILL_COLOR = 44
static

◆ FLOAT_PARAM

int BioGTK.ImageJ.RoiDecoder.FLOAT_PARAM = 52
static

◆ FLOAT_STROKE_WIDTH

int BioGTK.ImageJ.RoiDecoder.FLOAT_STROKE_WIDTH = 36
static

◆ GROUP

int BioGTK.ImageJ.RoiDecoder.GROUP = 30
static

◆ HEADER2_OFFSET

int BioGTK.ImageJ.RoiDecoder.HEADER2_OFFSET = 60
static

◆ HEIGHTD

int BioGTK.ImageJ.RoiDecoder.HEIGHTD = 30
static

◆ IMAGE

int BioGTK.ImageJ.RoiDecoder.IMAGE = 4
static

◆ IMAGE_OPACITY

int BioGTK.ImageJ.RoiDecoder.IMAGE_OPACITY = 31
static

◆ IMAGE_SIZE

int BioGTK.ImageJ.RoiDecoder.IMAGE_SIZE = 32
static

◆ LEFT

int BioGTK.ImageJ.RoiDecoder.LEFT = 10
static

◆ N_COORDINATES

int BioGTK.ImageJ.RoiDecoder.N_COORDINATES = 16
static

◆ NAME_LENGTH

int BioGTK.ImageJ.RoiDecoder.NAME_LENGTH = 20
static

◆ NAME_OFFSET

int BioGTK.ImageJ.RoiDecoder.NAME_OFFSET = 16
static

◆ OPTIONS

int BioGTK.ImageJ.RoiDecoder.OPTIONS = 50
static

◆ OUTLINE

int BioGTK.ImageJ.RoiDecoder.OUTLINE = 4
static

◆ OVERLAY_BACKGROUNDS

int BioGTK.ImageJ.RoiDecoder.OVERLAY_BACKGROUNDS = 32
static

◆ OVERLAY_BOLD

int BioGTK.ImageJ.RoiDecoder.OVERLAY_BOLD = 64
static

◆ OVERLAY_FONT_SIZE

int BioGTK.ImageJ.RoiDecoder.OVERLAY_FONT_SIZE = 28
static

◆ OVERLAY_LABEL_COLOR

int BioGTK.ImageJ.RoiDecoder.OVERLAY_LABEL_COLOR = 24
static

◆ OVERLAY_LABELS

int BioGTK.ImageJ.RoiDecoder.OVERLAY_LABELS = 8
static

◆ OVERLAY_NAMES

int BioGTK.ImageJ.RoiDecoder.OVERLAY_NAMES = 16
static

◆ POINT_TYPE

int BioGTK.ImageJ.RoiDecoder.POINT_TYPE = 52
static

◆ POSITION

int BioGTK.ImageJ.RoiDecoder.POSITION = 56
static

◆ PROMPT_BEFORE_DELETING

int BioGTK.ImageJ.RoiDecoder.PROMPT_BEFORE_DELETING = 4096
static

◆ RIGHT

int BioGTK.ImageJ.RoiDecoder.RIGHT = 14
static

◆ ROI_PROPS_LENGTH

int BioGTK.ImageJ.RoiDecoder.ROI_PROPS_LENGTH = 44
static

◆ ROI_PROPS_OFFSET

int BioGTK.ImageJ.RoiDecoder.ROI_PROPS_OFFSET = 40
static

◆ ROTATED_RECT

int BioGTK.ImageJ.RoiDecoder.ROTATED_RECT = 5
static

◆ ROUNDED_RECT_ARC_SIZE

int BioGTK.ImageJ.RoiDecoder.ROUNDED_RECT_ARC_SIZE = 54
static

◆ SCALE_LABELS

int BioGTK.ImageJ.RoiDecoder.SCALE_LABELS = 2048
static

◆ SCALE_STROKE_WIDTH

int BioGTK.ImageJ.RoiDecoder.SCALE_STROKE_WIDTH = 8192
static

◆ SHAPE_ROI_SIZE

int BioGTK.ImageJ.RoiDecoder.SHAPE_ROI_SIZE = 36
static

◆ SHOW_LABELS

int BioGTK.ImageJ.RoiDecoder.SHOW_LABELS = 1024
static

◆ SIZE

int BioGTK.ImageJ.RoiDecoder.SIZE = 18
static

◆ SPLINE_FIT

int BioGTK.ImageJ.RoiDecoder.SPLINE_FIT = 1
static

◆ STROKE_COLOR

int BioGTK.ImageJ.RoiDecoder.STROKE_COLOR = 40
static

◆ STROKE_WIDTH

int BioGTK.ImageJ.RoiDecoder.STROKE_WIDTH = 34
static

◆ SUB_PIXEL_RESOLUTION

int BioGTK.ImageJ.RoiDecoder.SUB_PIXEL_RESOLUTION = 128
static

◆ SUBTYPE

int BioGTK.ImageJ.RoiDecoder.SUBTYPE = 48
static

◆ T_POSITION

int BioGTK.ImageJ.RoiDecoder.T_POSITION = 12
static

◆ TEXT

int BioGTK.ImageJ.RoiDecoder.TEXT = 1
static

◆ TOP

int BioGTK.ImageJ.RoiDecoder.TOP = 8
static

◆ TYPE

int BioGTK.ImageJ.RoiDecoder.TYPE = 6
static

◆ VERSION_OFFSET

int BioGTK.ImageJ.RoiDecoder.VERSION_OFFSET = 4
static

◆ WIDTHD

int BioGTK.ImageJ.RoiDecoder.WIDTHD = 26
static

◆ X1

int BioGTK.ImageJ.RoiDecoder.X1 = 18
static

◆ X2

int BioGTK.ImageJ.RoiDecoder.X2 = 26
static

◆ XD

int BioGTK.ImageJ.RoiDecoder.XD = 18
static

◆ Y1

int BioGTK.ImageJ.RoiDecoder.Y1 = 22
static

◆ Y2

int BioGTK.ImageJ.RoiDecoder.Y2 = 30
static

◆ YD

int BioGTK.ImageJ.RoiDecoder.YD = 22
static

◆ Z_POSITION

int BioGTK.ImageJ.RoiDecoder.Z_POSITION = 8
static

◆ ZERO_TRANSPARENT

int BioGTK.ImageJ.RoiDecoder.ZERO_TRANSPARENT = 512
static

The documentation for this class was generated from the following file: