🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: alt.uu.math.misc
7 messages
7 total messages Started by Remco de Korte Sat, 22 Aug 1998 00:00
curve
#65
Author: Remco de Korte
Date: Sat, 22 Aug 1998 00:00
18 lines
1505 bytes
I never knew there were so many math-groups and I have no idea what
group(s) to post this question so I'm so sorry if I seem to be
excessively cross-posting or off-topic.

My problem is this: 

I have two points which can move more or less free on a plane. I want a
line (curve) connecting these points to have a constant length (that
should restrict the movement). How can I find this line? I'd like to
find some way to describe the curve, with some sine/cosine-functions so
that I can use it in a programme I'm writing.

Thanks in advance for any advice,

Regards,

Remco de Korte
http://www.xs4all.nl/~remcodek/
Re: curve
#66
Author: nospams
Date: Sat, 22 Aug 1998 00:00
22 lines
1633 bytes
On Sat, 22 Aug 1998 10:01:26 +0200, Remco de Korte
<remcodek@xs4all.nl> wrote:


>My problem is this: 
>
>I have two points which can move more or less free on a plane. I want a
>line (curve) connecting these points to have a constant length (that
>should restrict the movement). How can I find this line? I'd like to
>find some way to describe the curve, with some sine/cosine-functions so
>that I can use it in a programme I'm writing.

It would appear that you are looking for the following?:

Let one point be in any arbitrary position, (h,k) coordinates.  Then
the other point can be arbitrarily anywhere on the circle about (h,k)
which is described by (x-h)^2 + (y-k)^2 = r^2, where "r" is the length
of the rod.  The "line" you seem to refer to is the radius of this
circle? ...or am I missing something?

Since this is arbitrary, there is no real "curve" describing the
position.  Any motion would depend upon the initial conditions.
Re: curve
#67
Author: Remco de Korte
Date: Sat, 22 Aug 1998 00:00
42 lines
2793 bytes
nospams@sorry.com wrote:
> 
> On Sat, 22 Aug 1998 10:01:26 +0200, Remco de Korte
> <remcodek@xs4all.nl> wrote:
> 
> >My problem is this:
> >
> >I have two points which can move more or less free on a plane. I want
> a
> >line (curve) connecting these points to have a constant length (that
> >should restrict the movement). How can I find this line? I'd like to
> >find some way to describe the curve, with some sine/cosine-functions
> so
> >that I can use it in a programme I'm writing.
> 
> It would appear that you are looking for the following?:
> 
> Let one point be in any arbitrary position, (h,k) coordinates.  Then
> the other point can be arbitrarily anywhere on the circle about (h,k)
> which is described by (x-h)^2 + (y-k)^2 = r^2, where "r" is the length
> of the rod.  The "line" you seem to refer to is the radius of this
> circle? ...or am I missing something?
> 
> Since this is arbitrary, there is no real "curve" describing the
> position.  Any motion would depend upon the initial conditions.

No, that's not what I mean. It's a bit hard for me to explain as English
is not my native language and I am no mathematician so I don't know the
exact words. 
Here's a second try and my idea of a way to find a solution:
two points can move relative to eachother, as if they're connected with
a tube. This tube won't stretch, but it may bend, while it's length is
constant. I want to know a way to describe the curve of this tube.
The way I see it is that if you know the length of the 'tube' (which you
may assume) and the coordinates of the points (which are variable) you
must find a circle throught the two points where the part of the circle
between thos points is equal to the length of the tube. Problem is, I
even forgot how to calculate the length of a circle-segment....

Regards,

Remco de Korte
Re: curve
#68
Author: Matthias Weiss
Date: Sat, 22 Aug 1998 00:00
36 lines
2728 bytes
Remco de Korte wrote:

> Here's a second try and my idea of a way to find a solution:
> two points can move relative to eachother, as if they're connected with
> a tube. This tube won't stretch, but it may bend, while it's length is
> constant. I want to know a way to describe the curve of this tube.

It appears to me that this is more a physics problem than a geometric
one.In order to obtain a unique shape as the end points of an elastic rod
move
relative to each other, you must describe its mechanical properties, such
as stiffness, torsion, tension, potential energy etc. Mathematically
speaking,
I don't see how your conditions would lead to a unique solution. If it's
just a
one-dimensional problem, you may get away with solving a boundary
value problem in form of a second order ordinary differential equation,
so your best bet would be a book on Solid Mechanics, Elasticity, Mechanical

Engineering or the like. "Finite Difference Methods" come to mind...

> The way I see it is that if you know the length of the 'tube' (which you
> may assume) and the coordinates of the points (which are variable) you
> must find a circle throught the two points where the part of the circle
> between thos points is equal to the length of the tube. Problem is, I
> even forgot how to calculate the length of a circle-segment....

Once you've decided on the radius of the circular arc joining the two
points,
you cannot move them relative to each other and independently any more.
If you change the radius, you change the arclength, which is not permitted
according to you. I'm afraid circles won't do...

I hope this helps,
Matthias Weiss
mmshiro@math.lsa.umich.edu
Re: curve
#69
Author: Remco de Korte
Date: Sun, 23 Aug 1998 00:00
27 lines
1907 bytes
Matthias Weiss wrote:
> 
> Once you've decided on the radius of the circular arc joining the two
> points,
> you cannot move them relative to each other and independently any
> more.
> If you change the radius, you change the arclength, which is not
> permitted
> according to you. I'm afraid circles won't do...
> 

When the radius is variable as well as the angle between the two lines
connecting the center of the circle with both points the length of the
arc can be a constant.
I was just suggesting circles because I think it's the most
straigtforward solution. It could also be a parabole or something like
that but I'm afraid that'll get far to complicated for what I want and
besides you'd have more then one (actually two) solutions.
(With a circle you'd have only two - if any).

> I hope this helps,
> Matthias Weiss
> mmshiro@math.lsa.umich.edu

Thanks,

Remco de Korte
Re: curve
#71
Author: Matthias Weiss
Date: Sun, 23 Aug 1998 00:00
70 lines
3015 bytes
Remco de Korte wrote:

> When the radius is variable as well as the angle between the two lines
> connecting the center of the circle with both points the length of the
> arc can be a constant.

Ah...of course you are right. I was thinking of the SHORTER arc joining
the two points, but of course you can flip the whole thing over. Try
this for size:

Suppose you have your two points P and Q. Without loss of generality,
you can put the radius from the center C to P on the x-axis, and move
Q around freely. Hence you have P=(x1,  0), Q=(x2, y2). You are also
given the arc length L.

The center of your circle has coordinates C = (x0,0). You can assume
that x0 < x1, therefore the radius R=x1-x0.

In polar coordinates, with angular parameter t,

y2 = R sin(t2)

for a certain, as yet unknown angle t2.
Hence

sin(t2) =
y2/R
(*)

You don't know how big R is, but that's no biggie, as

R =
L/t2
(**)

which gives you with (*)

sin(t2) = y2*t2/L,

or

sin(t2)/t2 =
y2/L                                                            (#)

the right hand side of which contains only known quantities.

(Notice that when y2 = L, ie. Q is directly on top of P, we have
 sin(t2) = t2    =>   t2=0   =>   R=infinity, as one would assume!)

Now R can be computed from (**), and so, if desired, the center C.

The whole computation can be done with P not on the x-axis,
but the formulae get a bit more cumbersome.

You may compute t2 from eqn (#) using, for example, Newton
iteration. You can also try the following: Solve for t2

t2 = L/y2 sin(t2),

use an initial guess for t2 (in radians!!!), compute the right-hand side,
plug the thus obtained t2 back into the right-hand side, and see if
you get convergence.

Notice also that, since  x>sin(x)  for all x>0, you must have L>y2, again
as one would expect.


Cheerio,
Matthias Weiss
mmshiro@math.lsa.umich.edu
Re: curve
#60
Author: Remco de Korte
Date: Mon, 24 Aug 1998 00:00
79 lines
3030 bytes
Matthias Weiss wrote:
> 
> 
> Suppose you have your two points P and Q. Without loss of generality,
> you can put the radius from the center C to P on the x-axis, and move
> Q around freely. Hence you have P=(x1,  0), Q=(x2, y2). You are also
> given the arc length L.
> 

That's a nice trick and I think it'll even work for the program I'm
working on. 

> The center of your circle has coordinates C = (x0,0). You can assume
> that x0 < x1, therefore the radius R=x1-x0.
> 
> In polar coordinates, with angular parameter t,
> 
> y2 = R sin(t2)
> 
> for a certain, as yet unknown angle t2.
> Hence
> 
> sin(t2) =
> y2/R
> (*)
> 
> You don't know how big R is, but that's no biggie, as
> 
> R =
> L/t2
> (**)
> 
> which gives you with (*)
> 
> sin(t2) = y2*t2/L,
> 
> or
> 
> sin(t2)/t2 =
> y2/L                                                            (#)
> 
> the right hand side of which contains only known quantities.

It's unbelievable but I understand!
> 
> (Notice that when y2 = L, ie. Q is directly on top of P, we have
>  sin(t2) = t2    =>   t2=0   =>   R=infinity, as one would assume!)

Or rather R is undefined/can be anything.

> 
> Now R can be computed from (**), and so, if desired, the center C.
> 
> The whole computation can be done with P not on the x-axis,
> but the formulae get a bit more cumbersome.
> 
I think I'll skip that, if possible....

> You may compute t2 from eqn (#) using, for example, Newton
> iteration. You can also try the following: Solve for t2
> 
> t2 = L/y2 sin(t2),
> 
> use an initial guess for t2 (in radians!!!), compute the right-hand
> side,
> plug the thus obtained t2 back into the right-hand side, and see if
> you get convergence.
> 
> Notice also that, since  x>sin(x)  for all x>0, you must have L>y2,
> again
> as one would expect.
> 
> Cheerio,
> Matthias Weiss
> mmshiro@math.lsa.umich.edu

Thanks a lot.

Remco de Korte
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads