Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: Cursor position on images
Replies: 3   Last Post: Dec 30, 2012 8:49 PM

 Messages: [ Previous | Next ]
 spamslayer19@gmail.com Posts: 6 Registered: 12/29/12
Re: Cursor position on images
Posted: Dec 30, 2012 8:49 PM

And of course define ptsList = {}; before anything else. I left out the most important part!

On Saturday, December 29, 2012 9:24:56 PM UTC-6, spamsl...@gmail.com wrote:
> On Saturday, December 29, 2012 2:08:29 PM UTC-6, King, Peter R wrote:
>

> > I am sure this is straightforward but I cannot quite see how to do this
>
> I have an image (jpg file, but could be any format if that matters). I want
>
> to be able to left click on the image and mark the point with a dot of some sort and collect the coordinates of the point (the coordinate system is

fairly arbitrary). I then want to be able to repeat this as many times as required and end up with a list of the coordinates of the points clicked on for further manipulation. Clickpane should do the trick but I can't work out how.
>
> >
>
> >
>
> >
>
> > Any suggestions, thanks.
>
> >
>
> >
>
> >
>
> > Peter
>
>
>
> Try this:
>
>
>
> image = ExampleData[{"TestImage", "Girl3"}];
>
> ptColor = Yellow;
>
> ptSize = Large;
>
> Panel@Grid[
>
> {
>
> {
>
> Dynamic@ClickPane[
>
> Show[
>
> {
>
> image, Graphics[{PointSize[ptSize], ptColor, Point[ptsList]}]
>
> }
>
> ],
>
> AppendTo[ptsList, #] &], SpanFromLeft
>
> },
>
> {
>
> PopupWindow[Button["View Points", ImageSize -> 100],
>
> Dynamic@ptsList], SpanFromLeft
>
> },
>
> {
>
> Button["Reset", ptsList = {}, ImageSize -> 100], SpanFromLeft
>
> }
>
> },
>
> Alignment -> {Right, Baseline}
>
> ]
>
>
>
> If you don't like the popup window, you can just evaluate Dynamic@ptsList in a separate cell. I'm sure someone has a more elegant solution, but this works. :)

Date Subject Author
12/29/12 King, Peter R
12/29/12 spamslayer19@gmail.com
12/30/12 spamslayer19@gmail.com
12/30/12 Roland Franzius