POV-Ray : Newsgroups : povray.advanced-users : an analytic geometry question : Re: an analytic geometry question Server Time
8 Jul 2024 18:54:31 EDT (-0400)
  Re: an analytic geometry question  
From: honnza
Date: 7 Oct 2007 02:40:00
Message: <web.47087bb0e98c81e7a9ce4df50@news.povray.org>
"Matt Denham" <mde### [at] bemanirebirthnet> wrote:
> "honnza" <jan### [at] centrumcz> wrote:
> > Is there an easy way to join two points by two circular arcs given their
> > tangents?
> > Input:
> > A,B - endpoints
> > a,b - their tangents (oriented parallel to the arcs)
> > where A+at and B+bs are skew lines (it's easy to handle the planar case)
> > Output:
> > C,D - arc centers
> > arc normals and radii can be calculated easily from these
> > E - intersection point of both points
> > together with the arcs' common tangent vector it will be used to cut the
> > tori.
> >
> > I think (after some analysing) it has an infinite number of solutions,
> > parametrised by a real number.
>
> Let me make sure I'm understanding this correctly.
>
> Basically, what you want is, given the two lines and two points, to define
> what turns out to be a "twisted" plane (an infinite helical surface - if
> you take a line perpendicular to both tangents, and use that as the axis of
> a cylinder, you get a helical curve where the resultant surface produced by
> the lines intersects the cylinder), and then...
>
> ....yeah, that's not gonna be easy at all.  I'm not entirely sure even what
> the formula for the surface in question is, though I could probably figure
> it out given a couple of hours and access to a copy of, say, Mathematica.

No. I want to make a tube out of two torus segments when I know where it
starts (A) and in which direction (a) and where it ends (B) and in which
direction (b). If the lines that touch them (A+at and B+bt) are parallel or
intersect it's a planar case and will be solved with a torus and a cylinder
(might need to handle some unprobable cases seperately). It's easy to find
a circle given two tangents and a point on one of them, then find the other
intersection point and choosing the correct arc. A bit more complicated is
which point should be the one with a cylinder on its end (I already see a
case where I need two tori - maybe even half of the planar input space -
represented by two antiparallel tangents).
What I'm asking here is a general solution (or a hint) to the spatial case.
I've  already found out that just by choosing two arc normals (normals to
the planes that contain the arcs) I parametrise the set of arc-line
segment-arc solutions. The problem is it's hard to calculate the line
segment length which I would then equate to zero (I might retry working
this way, solving the planar case first). I'm expecting a 1-dimensional set
of solutions, which might be tough to select from, depending on the measure
of wellness (total length of the arcs? one of the curvatures?
almost-symmetry preservation (whatever it is) so that it doesn't behave
erraticaly around the planar case?) but I will try to do this part by
myself.


Post a reply to this message

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