Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: tubes program not working in version 9

  • To: mathgroup at smc.vnet.net
  • Subject: [mg129013] Re: tubes program not working in version 9
  • From: "Nasser M. Abbasi" <nma at 12000.org>
  • Date: Sat, 8 Dec 2012 01:31:36 -0500 (EST)
  • 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: <k9s2rq$mp9$1@smc.vnet.net>
  • Reply-to: nma at 12000.org

On 12/7/2012 12:37 AM, Roger Bagula wrote:
> The problem seems to be sometimes it works but mostly it doesn't.
> The tubes program was written for an earlier version
> ( works in version 5 I think) by Mark McClure
> and has worked fine for literally years.
> I haven't got a clue what has gone wrong.
> ( technically these are called channel surfaces or the like).
>
> TubePlotFrenet[curve_List, {var_, min_, max_}, radius_, opts___] :=
>   Module[{tangent, unitTangent, normal, unitNormal, biNormal},
>    tangent = D[curve, t];
>    unitTangent = tangent/Sqrt[tangent.tangent];
>    normal = D[unitTangent, t];
>    unitNormal = normal/Sqrt[normal.normal];
>    biNormal = Cross[unitTangent, unitNormal];
>    ParametricPlot3D[
>     curve + radius Cos[s] unitNormal + radius Sin[s] biNormal //
>      Evaluate, {var, min, max}, {s, 0, 2 \[Pi]}, opts]]
>
> r = Cos[q0*t] + 2;
> x = r* Cos[p0*t];
> y = r *Sin[p0*t];
> z = Sin[q0*t];
> w0 = 8*{x, y, z}
> h = TubePlotFrenet[w0, {t, 0, 2 \[Pi]}, 1, Axes -> None,
>    Boxed -> False, PlotPoints -> {64, 16},
>    ColorFunction -> "CandyColors", MeshFunctions -> {#3 &}]
>
> My other tubes program which came from an answer in this group
> still works.
>


Noticed few problems:

     tangent = D[curve, t];

when it should be

     tangent = D[curve, var];

after all, var is the independent variable symbol being passed
and is the one build in.

Also, there are no numerical values for the q0 and p0.
When I wrote

p0=1; q0=1; and fixed the above issue with var vs. t,
then it worked.


--Nasser





  • Prev by Date: cell merge bug not only when merging cells
  • Next by Date: Re: Locators and Appearance
  • Previous by thread: Re: tubes program not working in version 9
  • Next by thread: Re: tubes program not working in version 9