POV-Ray : Newsgroups : povray.object-collection : SphereSweep 1.2, with Bezier splines : Re: SphereSweep 1.2, with Bezier splines Server Time
25 Apr 2024 19:08:06 EDT (-0400)
  Re: SphereSweep 1.2, with Bezier splines  
From: LanuHum
Date: 12 Sep 2015 11:25:01
Message: <web.55f44395b134517f7a3e03fe0@news.povray.org>
"Cousin Ricky" <rickysttATyahooDOTcom> wrote:
> "LanuHum" <Lan### [at] yandexru> wrote:
> > In the Blender it is possible to scale only control points.
> > At you
> > #declare Arm_def = array[4][3]
> > #declare Arm_rs = array[12]
> > Unclear, as to control it.
>
> Arm_def is not used as-is by Bezier algorithms.  It describes Bezier curves in a
> format that I find easier to control.  The format is described in the user
> manual.
>
> The macro SSwp_Bezier() converts Arm_def to Arm_pts.  Arm_pts is the
> one-dimensional array of control points that is in the form expected by Bezier
> algorithms.  If you look at the message window from a spheresweep_cockpit.pov
> render, you will see the Arm_pts array in its final form.
>
> Arm_rs is the array of the radii that correspond to the control points.

In vector graphics all curve bezier are provided as sequence of bezier-splines
(cairo, inkscape, blender).
One spline:
move_to (x, y) - control point 0
curve_to (x0, y0, x1, y1, x2, y2)
Where
x0, y0 - right handle control point 0
x1, y1 - left handle control point 1
x2, y2 - control point 1
That the user could transfer data from the editor to your macro, it is necessary
to follow the standard.
If the end of a spline 0 is the beginning of a spline 1
move_to (x, y)
curve_to (x0, y0, x1, y1, x2, y2)
curve_to (x3, y3, x4, y4, x5, y5)
curve_to (x6, y6, x7, y7, x8, y8)
curve_to (x9, y9, x10, y10, x11, y11)
If splines are broken off,
move_to (x, y)
curve_to (x0, y0, x1, y1, x2, y2)
move_to (x3, y3)
curve_to (x4, y4, x5, y5, x6, y6)


Post a reply to this message

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