steps=: 3 : 'a+(w)*(i.n+1)%n[w=.z-a[''a z n''=.y' Thanks,
-- Raul On Fri, Mar 6, 2015 at 10:08 PM, Skip Cave <s...@caveconsulting.com> wrote: > Here's what I got whaen I ran Jon's code: > > a=:3[b=:3[c=:3 > > X=:4 :0 > > a*(cos x)*cos y > > ) > > Y=:4 :0 > > b*(cos x)*sin y > > ) > > Z=:3 :0 > > c*(sin y) > > ) > > draw=:3 :0 > > angles=: steps _1p1 1p1 100 > > uangles =: steps _1.5708 1.5708 100 > > x=. uangles X"0 _ angles > > y=. uangles Y"0 _ angles > > z=. Z uangles > > 'surface' plot x;y;z > > ) > > draw'' > > |value error: steps > > | angles=: steps _3.14159 3.14159 100 > > > Skip Cave > Cave Consulting LLC > > On Fri, Mar 6, 2015 at 8:56 PM, Jon Hough <jgho...@outlook.com> wrote: > >> >> I butchered Raul's script slightly. But the resulting graph is still >> weird. Not sure if it's an improvement. >> >> >> a=:3[b=:3[c=:3 >> >> >> >> X=:4 :0 >> >> >> >> a*(cos x)*cos y >> >> >> >> ) >> >> >> >> >> >> >> Y=:4 :0 >> >> >> >> b*(cos x)*sin y >> >> >> >> ) >> >> >> >> >> >> >> Z=:3 :0 >> >> >> >> c*(sin y) >> >> >> >> ) >> >> >> >> >> >> >> draw=:3 :0 >> >> >> >> angles=: steps _1p1 1p1 100 >> >> >> >> uangles =: steps _1.5708 1.5708 100 >> >> >> >> x=. uangles X"0 _ angles >> >> >> >> y=. uangles Y"0 _ angles >> >> >> >> >> >> z=. Z uangles >> >> >> >> 'surface' plot x;y;z >> >> >> >> ) >> >> >> >> >> draw'' >> >> > From: jgho...@outlook.com >> > To: programm...@jsoftware.com >> > Date: Sat, 7 Mar 2015 02:46:35 +0000 >> > Subject: Re: [Jprogramming] Plotting a 3D Ellipse >> > >> > It seems you are using [-pi,pi] as the range of all your angles.I think >> you need to use [-pi/2,pi/2] as the range for the u argument (in the >> wikipedia page). >> > >> > > From: rauldmil...@gmail.com >> > > Date: Fri, 6 Mar 2015 21:35:37 -0500 >> > > To: programm...@jsoftware.com >> > > Subject: Re: [Jprogramming] Plotting a 3D Ellipse >> > > >> > > Hmm... >> > > >> > > I notice that load'graph' no longer provides the steps verb mentioned >> > > in http://www.jsoftware.com/books/pdf/expmath.pdf >> > > >> > > So here's a workalike: >> > > steps=: 3 : 'a+(w)*(i.n+1)%n[w=.z-a[''a z n''=.y' >> > > >> > > and that gives us an example of a surface plot. >> > > >> > > Next, we need a parametric representation of the ellipse, and >> > > http://en.wikipedia.org/wiki/Ellipsoid#Parameterization looks like a >> > > plausible approach there. >> > > >> > > Using that, and http://www.jsoftware.com/help/jforc/graphics.htm as a >> > > starting point, it seems to me that I ought to be able to draw an >> > > ellipse like this: >> > > >> > > a=:3[b=:4[c=:5 >> > > >> > > X=:4 :0~ >> > > a*(cos x)*/cos y >> > > ) >> > > >> > > Y=:4 :0~ >> > > b*(cos x)*/sin y >> > > ) >> > > >> > > Z=:4 :0~ >> > > c*(sin x)*/1: y >> > > ) >> > > >> > > draw=:3 :0 >> > > angles=: steps _1p1 1p1 100 >> > > x=. X angles >> > > y=. Y angles >> > > z=. Z angles >> > > 'surface' plot x;y;z >> > > ) >> > > >> > > draw'' >> > > >> > > Sadly, that's not an ellipse. >> > > >> > > But I do not have enough familiarity with plot to know whether I've >> > > screwed up my math or if there's a defect in plot -- I don't know how >> > > to isolate the problem. >> > > >> > > That said, a quick test with a 3d model of a cube: >> > > >> > > 'surface' plot ;/|:#:i.8 >> > > |NaN error: ncile >> > > >> > > ...suggests that plot isn't really designed to represent 3d solids. >> > > >> > > Still, that does not eliminate any potential errors on my part. >> > > >> > > On the other hand, maybe the right approach would be to use jhs and >> > > generate a distance field renderer along the lines of what you see at >> > > shadertoy.com. >> > > >> > > I'll have to think a bit to see if I can pull off something like that. >> > > (I think that that would only work for people who have adequate >> > > graphics hardware support. But I think you have a suitable graphics >> > > card?) >> > > >> > > Thanks, >> > > >> > > -- >> > > Raul >> > > >> > > >> > > On Fri, Mar 6, 2015 at 7:10 PM, Skip Cave <s...@caveconsulting.com> >> wrote: >> > > > I want to plot a 3D ellipse (ellipsoid) and then be able to change >> the >> > > > lengths of the three axes. The equation of an ellipse with axis >> lengths of >> > > > a, b, & c is: >> > > > >> > > > ((x^2)%(a^2)) + ((y^2)%(b^2)) + ((z^2)%(c^2)) = 1 >> > > > >> > > > How can I arrange this so it can be plotted in a 3-D plot in J, and >> then be >> > > > able to experiment with the lengths of the axes? >> > > > >> > > > Skip >> > > > >> > > > Skip Cave >> > > > Cave Consulting LLC >> > > > >> ---------------------------------------------------------------------- >> > > > For information about J forums see >> http://www.jsoftware.com/forums.htm >> > > ---------------------------------------------------------------------- >> > > For information about J forums see http://www.jsoftware.com/forums.htm >> > >> > ---------------------------------------------------------------------- >> > For information about J forums see http://www.jsoftware.com/forums.htm >> >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm >> > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm