SurfaceGraph1

From WeBWorK_wiki
Jump to navigation Jump to search
This article has been retained as a historical document. It is not up-to-date and the formatting may be lacking. Use the information herein with caution.

This problem has been replaced with a newer version of this problem

Deprecated: Graphing a Parametric Surface in 3D

Click to enlarge

This PG code shows how to make an interactive graph of a parametric surface that is displayed using the LiveGraphics3D Java applet. It is deprecated because Java is no longer universally supported on all web browsers and platforms.


Templates by Subject Area

PG problem file Explanation

Problem tagging data

Problem tagging:

DOCUMENT();

loadMacros(
"PGstandard.pl",
"MathObjects.pl",
"LiveGraphicsParametricSurface3D.pl",
);

TEXT(beginproblem());

Initialization: We need to include the macros file LiveGraphicsParametricSurface3D.pl.

Context("Numeric");

Context()->variables->are(x=>"Real",y=>"Real",z=>"Real",u=>"Real",v=>"Real");

$plot = ParametricSurface3D(
Fx => Formula("3*cos(u)*sin(v)"),
Fy => Formula("3*sin(u)*sin(v)"),
Fz => Formula("3*cos(v)"),
uvar => 'u', # theta
vvar => 'v', # phi
umin => 0,
umax =>  2*pi,
vmin =>  0,
vmax =>  pi,
usamples => 15,
vsamples => 15,
axesframed => 1,
xaxislabel => "X",
yaxislabel => "Y",
zaxislabel => "Z",
mesh => 0,
outputtype => 4,
);

Setup:

Context()->texStrings;
BEGIN_TEXT
\{ 
Live3Ddata(
$plot,
image => "sphere.png", 
size => [400,400],
tex_size => 600,
tex_center => 1,
scale => 1.1,
);
\}
END_TEXT
Context()->normalStrings;

Main Text: We generate a string of plot data using ParametricSurface3D().

Setting outputtype to something other than 4 will require you to read the source code of LiveGraphicsParametricSurface3D.pl and familiarize yourself with the details of the LiveGraphics3D java applet. For more information on how to work with the string of plot data, see Martin Kraus's LiveGraphics3D homepage, and the excellent article by Jonathan Rogness and Martin Kraus Constructing Mathlets Quickly Using LiveGraphics3D.

$showPartialCorrectAnswers = 1;

Answer Evaluation:

Context()->texStrings;
BEGIN_SOLUTION
Solution explanation goes here.
END_SOLUTION
Context()->normalStrings;

COMMENT('MathObject version.');

ENDDOCUMENT();

Solution:

Templates by Subject Area