POV-Ray : Newsgroups : povray.newusers : Help with spline & sphere_sweep : Re: Help with spline & sphere_sweep Server Time
3 May 2024 05:02:00 EDT (-0400)
  Re: Help with spline & sphere_sweep  
From: Bald Eagle
Date: 31 Jul 2014 23:20:01
Message: <web.53db06339e0d00ba5e7df57c0@news.povray.org>
OK, so after much doodling around with the SDL and arrays,
I determined that I could create another array with the loop, instead of trying
to generate a spline directly.  Then I could define the spline using:

     #declare PropSpline = spline { PropSplineArray [PropArraySize-1] [0],
      PropSplineArray [PropArraySize-1] [1] }

The problem NOW is (because there's _always another problem) that the
Spline_Transform macro is choking on what I'm passing it.  It looks like I've
got the proper number of arguments... ?

I'm thinking that should be an easy problem for the animators out there to help
me through...

New SDL:
==================================================

#declare PropSplineArray = array [PropArraySize] [2]

 #declare Loop = 0;
 #declare Tip = false;
 #while  (Loop < PropArraySize)
  //            Spline_Trans(Spline, Time, SkyVector, ForeSight, Banking):
  #local Vector = RadiusArray [Loop];
  #local XValue = Vector.x;
  #if (XValue = -5)
   #declare Tip = true;
  #end

  #if (Tip)
  #declare PropSplineArray [Loop] [0] = 5+(5-abs(XValue));
  #declare PropSplineArray [Loop] [1] = Vector;
  #else
  #declare PropSplineArray [Loop] [0] =abs(XValue);
  #declare PropSplineArray [Loop] [1] = Vector;
  #end

 #declare Loop = Loop + 1;
 #end

#declare PropSplineArraySize = dimension_size (PropSplineArray, 1);
#debug concat ("PropSplineArraySize: ", str(PropSplineArraySize, 3,1), "\n" )
#debug "==============================================\n"


#declare PropSpline = spline { PropSplineArray [PropArraySize-1] [0],
PropSplineArray [PropArraySize-1] [1] }

#declare CylLoop = 0;
#while (CylLoop < 1)
 object{ cylinder {<0, Mid, 0>, Spline_Trans(PropSpline, Loop, y, 0.1, 0.1),
Thin texture {Propeller_Tex} }
 #declare CylLoop = CylLoop+1;
#end


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.