|
|
Re: Interactively placing points onto 3D surfaces
Posted:
Dec 8, 2012 1:28 AM
|
|
A clicking on a point on a 3D graphic would represent an infinite number of points on the line extending straight back into the 3D space.
One approach would be use intersecting orthogonal lines to designate a point. You could rotate the 3D graphic as you adjusted the line locations to help identify the specific point of interest.
Manipulate[ Column[{Show[ ParametricPlot3D[ {Cos[u], Sin[u] + Cos[v], Sin[v]}, {u, 0, 2 \[Pi]}, {v, -\[Pi], \[Pi]}, PlotStyle -> Opacity[.5]], Graphics3D[{Thick, Red, Line[{{-1, y, z}, {1, y, z}}], Blue, Line[{{x, -2, z}, {x, 2, z}}], Green, Line[{{x, y, -1}, {x, y, 1}}]}]], StringForm["Point coordinates: ``", Dynamic[pt = {x, y, z}]]}], {{x, 0, "x (red fixed)"}, -1, 1, Appearance -> "Labeled"}, {{y, 0, "y (blue fixed)"}, -2, 2, Appearance -> "Labeled"}, {{z, 0, "z (green fixed)"}, -1, 1, Appearance -> "Labeled"}]
Dynamic[pt]
Bob Hanlon
On Fri, Dec 7, 2012 at 1:37 AM, <wearer35429@mypacks.net> wrote: > Howdy folks. > > Could someone please help smash thru my current brick wall? > > I generate 3D surfaces from medical anatomy files (".off" files). I would like to be able to scroll the mouse over the surface & click to set an interactive point on the surface, & have the program be able to read the {x,y, z} coordinates of the new point. > > Can anyone point me in the right direction. > > Thanks very much. > > Tom >
|
|