С несколькими областями интереса на изображении, как я могу отправить область интереса к спине
Когда у меня есть несколько областей интереса на изображении, они могут перекрываться, и иногда меньшая из них теряется за более крупной. Однако один из них находится "сверху", а другой - "снизу". У меня есть идентификатор ROI, но мне не хватает команды ROI_ID.ROISendToBack() или аналогичной.
Любой трюк доступен? Спасибо!
1 ответ
Порядок ROI на дисплее не может быть свойством отдельной ROI, но это свойство вещи, "содержащей" ROI. Вот почему вы ищете команду не в том месте. Это не команда объекта ROI, а объект ImageDisplay.
Каждый ImageDisplay содержит "список" своих ROI, и вы хотите изменить порядок в этом списке.
Команды для определения "порядка" ROI на ImageDisplay являются
Нет команды для "перемещения" 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 )