图像中有多个 ROI,如何将 ROI 发送到后面
With several ROIs in an image, how can I send the ROI to the back
当我在一张图像中有多个 ROI 时,它们可能会重叠,有时较小的会丢失在较大的后面。但是,其中一个在 "top" 上,另一个在 "below." 我有 ROI 的 ID,但我缺少命令 ROI_ID.ROISendToBack() 或类似命令。
有什么技巧吗?
谢谢!
显示器上ROI的顺序不能是单个ROI的属性,而是事物 'containing' 的 属性 ROI。这就是为什么你在错误的地方搜索命令。它不是 ROI 对象的命令,而是 ImageDisplay 对象的命令。
每个 ImageDisplay 包含其 ROI 的 "list",并且您想更改该列表中的顺序。
在 ImageDisplay 上指定 ROI 的 "order" 的命令是
没有 "move" ROI 的命令,但您可以简单地删除并重新添加它。
image img := RealImage( "Dummy",4, 350, 350)
img = iradius
img.ShowImage()
imageDisplay disp = img.ImageGetImageDisplay(0)
ROI roi1 = NewROI()
roi1.ROISetRectangle( 100, 100, 200, 200 )
roi1.ROISetVolatile(0)
roi1.ROISetColor(1,0,0)
roi1.ROISetDrawFilled(1)
roi1.ROISetFillProperties(0.2,0.1,0,0)
ROI roi2 = NewROI()
roi2.ROISetRectangle( 125, 125, 225, 225 )
roi2.ROISetVolatile(0)
roi2.ROISetColor(0,1,0)
roi2.ROISetDrawFilled(1)
roi2.ROISetFillProperties(0.2,0,0.1,0)
ROI roi3 = NewROI()
roi3.ROISetRectangle( 150, 150, 250, 250 )
roi3.ROISetVolatile(0)
roi3.ROISetColor(0,0,1)
roi3.ROISetDrawFilled(1)
roi3.ROISetFillProperties(0.2,0,0,0.1)
disp.ImageDisplayAddROI( roi1 )
disp.ImageDisplayAddROI( roi2 )
disp.ImageDisplayAddROI( roi3 )
OKDialog( "Now send blue to the bottom" )
disp.ImageDisplayDeleteROI( roi3 )
disp.ImageDisplayAddROIAtBeginning( roi3 )
OKDialog( "Now send red to front" )
disp.ImageDisplayDeleteROI( roi1 )
disp.ImageDisplayAddROIAtEnd( roi1 )
当我在一张图像中有多个 ROI 时,它们可能会重叠,有时较小的会丢失在较大的后面。但是,其中一个在 "top" 上,另一个在 "below." 我有 ROI 的 ID,但我缺少命令 ROI_ID.ROISendToBack() 或类似命令。
有什么技巧吗? 谢谢!
显示器上ROI的顺序不能是单个ROI的属性,而是事物 'containing' 的 属性 ROI。这就是为什么你在错误的地方搜索命令。它不是 ROI 对象的命令,而是 ImageDisplay 对象的命令。
每个 ImageDisplay 包含其 ROI 的 "list",并且您想更改该列表中的顺序。
在 ImageDisplay 上指定 ROI 的 "order" 的命令是
没有 "move" ROI 的命令,但您可以简单地删除并重新添加它。
image img := RealImage( "Dummy",4, 350, 350)
img = iradius
img.ShowImage()
imageDisplay disp = img.ImageGetImageDisplay(0)
ROI roi1 = NewROI()
roi1.ROISetRectangle( 100, 100, 200, 200 )
roi1.ROISetVolatile(0)
roi1.ROISetColor(1,0,0)
roi1.ROISetDrawFilled(1)
roi1.ROISetFillProperties(0.2,0.1,0,0)
ROI roi2 = NewROI()
roi2.ROISetRectangle( 125, 125, 225, 225 )
roi2.ROISetVolatile(0)
roi2.ROISetColor(0,1,0)
roi2.ROISetDrawFilled(1)
roi2.ROISetFillProperties(0.2,0,0.1,0)
ROI roi3 = NewROI()
roi3.ROISetRectangle( 150, 150, 250, 250 )
roi3.ROISetVolatile(0)
roi3.ROISetColor(0,0,1)
roi3.ROISetDrawFilled(1)
roi3.ROISetFillProperties(0.2,0,0,0.1)
disp.ImageDisplayAddROI( roi1 )
disp.ImageDisplayAddROI( roi2 )
disp.ImageDisplayAddROI( roi3 )
OKDialog( "Now send blue to the bottom" )
disp.ImageDisplayDeleteROI( roi3 )
disp.ImageDisplayAddROIAtBeginning( roi3 )
OKDialog( "Now send red to front" )
disp.ImageDisplayDeleteROI( roi1 )
disp.ImageDisplayAddROIAtEnd( roi1 )