Login  Register

Re: Basic question about ROI positioning by Keyboard Arrows

Posted by Michael Schmid on Aug 18, 2016; 6:47pm
URL: http://imagej.273.s1.nabble.com/Basic-question-about-ROI-positioning-by-Keyboard-Arrows-tp5017053p5017075.html

Hi Mario,

when a macro is running, the paste operation does not allow moving the
pasted contents after the paste operation. I guess that this is meant to
avoid accidentally shifting the contents when a user presses an arrow
key. This also applies during the 'wait for user' dialog.

I see two ways out:
(1) stop your macro, and ask the user to continue with another macro
after pasting and adjusting the position (e.g. with one of the F1...F12
keys)
(2) Instead of 'Paste', use an overlay. The user can shift overlays
during the 'wait for user' dialog. Then determine the position of the
overlay, remove it, create a rectangle there and paste the image into
that place. Unfortunately, it seems there is no Overlay.getBounds(index,
x, y, width, height) macro command, you would have to decode the
getInfo("overlay") string, which is not very nice.

Here is a proof-of-concept macro:
   run("Blobs (25K)");
   w=getWidth();
   h=getHeight();
   newImage("PasteGoesHere", "8-bit white", 300, 300, 1);
   selectWindow("blobs.gif");
   selectWindow("PasteGoesHere");
   run("Add Image...", "image=blobs.gif x=10 y=10 opacity=100");
   Overlay.activateSelection(Overlay.size-1);
   waitForUser("Move the overlay, then press OK");
   getInfo("overlay");

Michael
________________________________________________________________

On 2016-08-18 18:57, Mario Faretta wrote:

> HI Michael,
> thanks for the useful info.
> The operations I described should occur during a macro execution: the
> macro pastes an image into a calculated position, then, by calling the
> waitForUser() function, the macro execution is suspended. The user can
> consequently correct the positioning if necessary before the macro goes
> on. I am not an expert so I was wondering if in these conditions the
> ROI.endPaste is automatically called.
> Thanks again for the help
> Mario
>
> I am not a programmer
> On 2016-08-18 18:05, Michael Schmid wrote:
>> Hi Mario,
>>
>> after pasting an image or image part, you should be able to move the
>> pasted contents it until
>> - you select a different image or a panel such as B&C
>> (Brightness&Contrast) [the Threshold panel seems to do no harm], or
>> - you do something that deletes the ROI, e.g. by clicking outside of
>> it, or
>> - there is something that modifies or could potentially modify your
>> image.
>>
>> Technically speaking, for the last point, e.g. everything that
>> implements the PlugInFilter interface causes a call to Roi.endPaste.
>> This includes not only image modification operations but also many
>> read-only operations, such as image analysis and saving.
>>
>> If you lose the capability to move the ROI contents after a paste
>> operation without any obvious reason, what ImageJ & Java version and
>> operating system do you have?
>> (I have not seen such a problem with my computer so far, using ImageJ
>> 1.51f; Java 1.6.0_65 [64-bit]; Mac OS X 10.6.8)
>>
>> Michael
>> ________________________________________________________________
>> On 2016-08-18 12:47, mfaretta wrote:
>>> Hi everyone,
>>> I have a very simple question about moving a rectangular ROI in an image
>>> using the keyboard.
>>> The idea is to set the correct position where a second image has to be
>>> pasted (in the first one).
>>> Sometimes by using arrow keys I can move the selection to x and y
>>> negative coordinate obtaining the correct positioning of the pasted
>>> image.
>>> However some other times after pasting the image and pressing the
>>> arrows, I can only move the selection (and not the pasted image) until
>>> the border without reaching negative values.
>>> Thanks for the help
>>> Mario
>>>
>>> Mario Faretta
>>> Department of Experimental Oncology
>>> European Institute of Oncology
>>> via Adamello 16
>>> 20139 Milan
>>> Italy
>>> Phone: +390294375027
>>> email: [hidden email]
>>>
>>>
>>> ---
>>> This email has been checked for viruses by Avast antivirus software.
>>> https://www.avast.com/antivirus
>>>
>>> --
>>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html