Re: How do I create a circular lamina?
- To: mathgroup at smc.vnet.net
- Subject: [mg127526] Re: How do I create a circular lamina?
- From: "djmpark" <djmpark at comcast.net>
- Date: Wed, 1 Aug 2012 04:57:31 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
- References: <24471452.12823.1343701025853.JavaMail.root@m06>
The Presentations Application has the following routines that might be useful in this regard: Circle3D[position, normal, radius, anglerange:{0,2\[Pi]}, plotoptions] will draw a circle with the specified position and radius. The orientation of the circle is given by the normal vector. Disk3D[position, normal, radius, anglerange:{0,2\[Pi]}, plotoptions] will draw a disk with the specified position and radius. The orientation of the disk is given by the normal vector. DrawArrow3DAxes[location, size, headsize:0.35, colors:{Blue,Green,Orange}] will draw an orthogonal triad of 3D arrows at location, each arrow being of length size. The arrows will point in the x, y and z directions. DrawLabeled3DAxes[{location, axessize, outlinedirective, fillcolor}, xspecifications, yspecifications, zspecifications] will draw labeled 3D axes centered at location. The xyz-specifications take the form {label, labelsize, position, angle, alignment}. The labelsize is the vertical height of the label expression, position is in terms of the axessize, angle is the rotation of the reading direction from the x axis, and alignment is the rhs of an Alignment option. AngleDisk3D[center, {vector1, vector2}, radius, opts] will draw a disk segment of the given radius between vector1 and vector2. Options suitable for Disk3D may be passed. AngleSquare3D[center, {vector1, vector2}, size, sidedirective:EdgeForm[]] will draw an outlined square of the given size between vector1 and vector2, which are assumed to be at right angles. EulerAngles[matrix, seqstring, opts] will return the Euler angles corresponding to a sequence of axes rotations specified by seqstring. An axes sequence of "XYZ" means rotation around the X axis by \[Psi], followed by rotation about the Y axis by \[Theta], followed by rotation about the Z axis by \[Phi]. Two sets of rotation angles {\[Psi],\[Theta],\[Phi]} are returned. The first, canonical set, has -\[Pi]/2 <= \[Theta] <= \[Pi]/2 for ABC sequences and 0 <= \[Theta] <= \[Pi] for ABA sequences. The second solution corresponds to the other value of \[Theta] in the range -\[Pi] <= \[Theta] <= \[Pi]. The answers are in terms of the standard alibi matrices, unless alias is specified in the EAMode option. If the option EAMatrixTest is set to True, the routine will check if the matrix is a proper rotation matrix. If the matrix is degenerate for a given sequence, only \[Psi] \[PlusMinus] \[Phi] can be determined. In this case, the \[Phi] = 0 solution is returned, with the corresponding second solution. The option EADegeneracyCriterion gives the criterion for determining degeneracy. RotationAngleAndAxis[rotationmatrix] will generate the axis of rotation and the associated rotation angle in radians for a 3 x 3 rotation matrix. They are returned as {angle, axis}. An equally valid answer is obtained by reversing the signs of both the angle and the axis vector. David Park djmpark at comcast.net http://home.comcast.net/~djmpark/index.html From: drmoose94 at gmail.com [mailto:drmoose94 at gmail.com] Hi, I want to be able to visualize Euler's Rotation Theorem (I don't think there's an existing visualization/demonstration of that anywhere?), but in order to do so I need to draw two intersecting great circles of spheres. I can't see any primitive that allows a circular lamina or disk to be drawn in 3D. There's Disk[] and Circle[] in 2D, but Mathematica won't allow them to be converted to 3D. I can make one via revolution plotting a constant but that seems a really ugly hack. Is there a good way of getting a circular lamina in 3D/