Jump to content

Does the Pythagorean Theorem Govern Time?


CuriosOne

Recommended Posts

I'm seeing many calculus problems that use the ideas of right angle triangles, but seldom do I come across the use of our Pythagorean Theorem spot light to the rescue in them.

Infact I see much confusing or complex "hard to understand" functions and or equations, that never tell you, "You need the Pythagorean Theorem" to solve this problem. Maybe a technique to keep readers flipping pages whom knows..

In regards to rates again we have it here, a calculus problem...

Please note:

I'm seeing most of the time that there appears to be 2 things in motion at the same time in calculus problems, 2 changing lenths or distances but "one" time component "in the general sense."

ds/dt anyone??

Link to comment
Share on other sites

9 hours ago, CuriosOne said:

I'm seeing many calculus problems that use the ideas of right angle triangles, but seldom do I come across the use of our Pythagorean Theorem spot light to the rescue in them.

Infact I see much confusing or complex "hard to understand" functions and or equations, that never tell you, "You need the Pythagorean Theorem" to solve this problem. Maybe a technique to keep readers flipping pages whom knows..

That’s why you have to do the homework. It builds up your knowledge of what concepts to apply.

9 hours ago, CuriosOne said:

In regards to rates again we have it here, a calculus problem...

Please note:

I'm seeing most of the time that there appears to be 2 things in motion at the same time in calculus problems, 2 changing lenths or distances but "one" time component "in the general sense."

ds/dt anyone??

You can have x, y and z apply to multiple objects as well. Why is that an issue? Each object has a position in space and time. 

Perhaps posting a specific example would help.

Link to comment
Share on other sites

Quote

Does the Pythagorean Theorem Govern Time?

Nope.

It is just useful mathematical tool.

You use Pythagorean Theorem  when you're calculating distance between two points, in e.g. Euclidean space:

[math]a^2 + b^2=c^2[/math]

transform it to solve c :

[math]c=\sqrt{a^2 + b^2}[/math]

Then in physics we often see it as:

[math]ds=\sqrt{dx^2 + dy^2}[/math]

and in three dimensions:

[math]ds=\sqrt{dx^2 + dy^2 + dz^2}[/math]

Programmers can use it to e.g. calculate length of curve. Divide curve to sequence of (very short) straight lines and then sum their lengths together.

App which tells how how much you walked per day used by sportsmen or people on diet, taxi/Uber/TIR driver, airplanes etc. , to measure distance of travel, will use it too with coordinates (latitude,longitude) returned by GPS, then transformed to 3D coordinate on sphere.

Edited by Sensei
Link to comment
Share on other sites

3 hours ago, Sensei said:

Nope.

It is just useful mathematical tool.

You use Pythagorean Theorem  when you're calculating distance between two points, in e.g. Euclidean space:

a2+b2=c2

transform it to solve c :

c=a2+b2

Then in physics we often see it as:

ds=dx2+dy2

and in three dimensions:

ds=dx2+dy2+dz2

Programmers can use it to e.g. calculate length of curve. Divide curve to sequence of (very short) straight lines and then sum their lengths together.

App which tells how how much you walked per day used by sportsmen or people on diet, taxi/Uber/TIR driver, airplanes etc. , to measure distance of travel, will use it too with coordinates (latitude,longitude) returned by GPS, then transformed to 3D coordinate on sphere.

Never knew The Pythagorean Theorem had multi puposes use, especially the sequencing and summing up the very short straight lines part, or zooming into to them..

Can I see an example of this please?

Reason I ask is becuase It clarifies my knowledge on calculus since it uses it too..

 

Edited by CuriosOne
Link to comment
Share on other sites

1 hour ago, CuriosOne said:

Never knew The Pythagorean Theorem had multi puposes use, especially the sequencing and summing up the very short straight lines part, or zooming into to them..

No. It is used to calculate distance between two points. Length of line/segment. Pythagorean Theorem is used at the lowest-level. I mentioned example usages that you might know from your daily life.

Zooming-in might not work if programmer wanted/predicted it. Curve can be dynamically sub-divided to single pixel precision on the display..

In typical 3D games everything is made of triangles. If you would be able to zoom-in infinitely, you will reach triangle, with flat surface. Even though object looked like sphere at full scale, at the end it is made of triangles, in enough quantity to pretend sphere.

But if programmer knew users will be zooming in, could use adaptive sub-division techniques.

https://www.google.com/search?q=adaptive+subdivision

Quote

Can I see an example of this please?

Seriously? Do you know C/C++?

Calculate point on Catmull-Rom curve in C/C++ might look like:

CVector GetSplinePointAt(
 const CVector &position0,
 const CVector &position1,
 const CVector &position2,
 const CVector &position3,
 double time )
{
 ENTER( "GetSplinePointAt()" );

double time2 = time * time;
 double time3 = time2 * time;
 double h2 = 3.0f * time2 - time3 - time3;
 double h1 = 1.0f - h2;
 double h4 = time3 - time2;
 double h3 = h4 - time2 + time;
 CVector v1 = position1 - position0;
 CVector v2 = position2 - position1;
 CVector v3 = position3 - position2;
 double v1length = v1.Length();
 double v2length = v2.Length();
 double v3length = v3.Length();
 CVector r1 = ( v1 * v2length + v2 * v1length ) / ( v1length + v2length );
 CVector r2 = ( v2 * v3length + v3 * v2length ) / ( v2length + v3length );
 CVector position = h1 * position1 + h2 * position2 + h3 * r1 + h4 * r2;

 LEAVE( "GetSplinePointAt()" );
 return( position );
}

where CVector class method Length() implementation is:

double CVector::Length( void ) const
{
 double x = m_Vector[ 0 ];
 double y = m_Vector[ 1 ];
 double z = m_Vector[ 2 ];
 double temp = ( x * x ) + ( y * y ) + ( z * z );
 if( temp > 0.0 )
 {
  return( sqrt( temp ) );
 }
 return( 0.0 );
}

Which is equation from Pythagorean Theorem.

If you never heard of Catmull-Rom spline:

https://en.wikipedia.org/wiki/Catmull-Rom_spline

eventually

https://en.wikipedia.org/wiki/Centripetal_Catmull–Rom_spline

Quote

It depends my knowledge in calculus since it uses it too..

In programming it can/will be brute-force summation of the all small segments with required precision (i.e. if something is smaller than 1 pixel on user screen, it is enough, in typical usage).

 

 

BTW, at the first sight, the above code has error: division by zero. But when we will look at overloaded division operator code, it is handled:

CVector operator / ( const CVector &vector1, double value )
{
 CVector vector = vector1;
 if( value != 0.0 )
 {
  vector.m_Vector[ 0 ] /= value;
  vector.m_Vector[ 1 ] /= value;
  vector.m_Vector[ 2 ] /= value;
 }
 return( vector );
}
Edited by Sensei
Link to comment
Share on other sites

3 hours ago, Sensei said:

No. It is used to calculate distance between two points. Length of line/segment. Pythagorean Theorem is used at the lowest-level. I mentioned example usages that you might know from your daily life.

Zooming-in might not work if programmer wanted/predicted it. Curve can be dynamically sub-divided to single pixel precision on the display..

In typical 3D games everything is made of triangles. If you would be able to zoom-in infinitely, you will reach triangle, with flat surface. Even though object looked like sphere at full scale, at the end it is made of triangles, in enough quantity to pretend sphere.

But if programmer knew users will be zooming in, could use adaptive sub-division techniques.

https://www.google.com/search?q=adaptive+subdivision

Seriously? Do you know C/C++?

Calculate point on Catmull-Rom curve in C/C++ might look like:


CVector GetSplinePointAt(
 const CVector &position0,
 const CVector &position1,
 const CVector &position2,
 const CVector &position3,
 double time )
{
 ENTER( "GetSplinePointAt()" );

double time2 = time * time;
 double time3 = time2 * time;
 double h2 = 3.0f * time2 - time3 - time3;
 double h1 = 1.0f - h2;
 double h4 = time3 - time2;
 double h3 = h4 - time2 + time;
 CVector v1 = position1 - position0;
 CVector v2 = position2 - position1;
 CVector v3 = position3 - position2;
 double v1length = v1.Length();
 double v2length = v2.Length();
 double v3length = v3.Length();
 CVector r1 = ( v1 * v2length + v2 * v1length ) / ( v1length + v2length );
 CVector r2 = ( v2 * v3length + v3 * v2length ) / ( v2length + v3length );
 CVector position = h1 * position1 + h2 * position2 + h3 * r1 + h4 * r2;

 LEAVE( "GetSplinePointAt()" );
 return( position );
}

where CVector class method Length() implementation is:


double CVector::Length( void ) const
{
 double x = m_Vector[ 0 ];
 double y = m_Vector[ 1 ];
 double z = m_Vector[ 2 ];
 double temp = ( x * x ) + ( y * y ) + ( z * z );
 if( temp > 0.0 )
 {
  return( sqrt( temp ) );
 }
 return( 0.0 );
}

Which is equation from Pythagorean Theorem.

If you never heard of Catmull-Rom spline:

https://en.wikipedia.org/wiki/Catmull-Rom_spline

eventually

https://en.wikipedia.org/wiki/Centripetal_Catmull–Rom_spline

In programming it can/will be brute-force summation of the all small segments with required precision (i.e. if something is smaller than 1 pixel on user screen, it is enough, in typical usage).

 

 

BTW, at the first sight, the above code has error: division by zero. But when we will look at overloaded division operator code, it is handled:


CVector operator / ( const CVector &vector1, double value )
{
 CVector vector = vector1;
 if( value != 0.0 )
 {
  vector.m_Vector[ 0 ] /= value;
  vector.m_Vector[ 1 ] /= value;
  vector.m_Vector[ 2 ] /= value;
 }
 return( vector );
}

I created my 1st ever computer program 20 years ago in C++ for video games until i found an easier and faster method with Python, but C++ is very time consuming..It is however industry standard and professionally efficient I must say..

About our distances and 2 points, is zooming in a subdivision process of triangulation? 

I keep thinking about the rendering engine itself, the smoother a mesh the more render time...((IE more triangles = more processing power..))

Quads to Triangles final process. I've always wondered why that was...

Just want to add a point is dimensionless right?

I'm a CGI artist as well, very knowledgable in this field..

 

"One Very Important Question"

What units do theses points of the extremely small use??? 

The points that The Pythagorean Theorem predict between a triangle to its hypotenuse??

And are theses in 3 since a triangle has 3 points..

Edited by CuriosOne
Link to comment
Share on other sites

On 10/16/2020 at 2:19 AM, CuriosOne said:

Quads to Triangles final process. I've always wondered why that was...

Triangles (in 2D and 3D space) are exclusively convex and planar. Quads can be convex or concave. in 3D they are also often non-planar.

https://en.wikipedia.org/wiki/Convex_polygon

https://en.wikipedia.org/wiki/Concave_polygon

There is many ways quads (or n-gons, typical name for polygons with more than four vertexes) can be triangulated.

The most simple triangulation algorithms are triangle strip and triangle fan.

https://en.wikipedia.org/wiki/Triangle_strip

https://en.wikipedia.org/wiki/Triangle_fan

They work reliably only with quads and n-gons which are planar and convex. With non-planar and concave polygons they can result in many kinds of issues.

They are used just because they are extremely fast for CPU/GPU.

 

3D non real-time renderer is typically using ray-tracing. It is much faster to find intersection between ray and triangle (or ray and plane), than ray and quad/n-gon.

Example ray-triangle algorithm:

https://en.wikipedia.org/wiki/Möller–Trumbore_intersection_algorithm

 

Edited by Sensei
Link to comment
Share on other sites

On 10/18/2020 at 12:17 AM, Sensei said:

Triangles (in 2D and 3D space) are exclusively convex and planar. Quads can be convex or concave. in 3D they are also often non-planar.

https://en.wikipedia.org/wiki/Convex_polygon

https://en.wikipedia.org/wiki/Concave_polygon

There is many ways quads (or n-gons, typical name for polygons with more than four vertexes) can be triangulated.

The most simple triangulation algorithms are triangle strip and triangle fan.

https://en.wikipedia.org/wiki/Triangle_strip

https://en.wikipedia.org/wiki/Triangle_fan

They work reliably only with quads and n-gons which are planar and convex. With non-planar and concave polygons they can result in many kinds of issues.

They are used just because they are extremely fast for CPU/GPU.

 

3D non real-time renderer is typically using ray-tracing. It is much faster to find intersection between ray and triangle (or ray and plane), than ray and quad/n-gon.

Example ray-triangle algorithm:

https://en.wikipedia.org/wiki/Möller–Trumbore_intersection_algorithm

 

Do you think that " triangulation" has something to do with the "ELECTRON CONFIGURATION" and color charge??

Afterall, pixels are made of 3 colors RGB and the "outer regions" of "objects" either obsorb or emit electromagnetic radiation.

But then, how do triangles, pythagoreon therom and electron configuration relate??

After all, we use the same visual perception using the Pythagorean Theorem.

 

Seems like everything uses 2 points in space shared by an origin in Cartessian Space..

Edited by CuriosOne
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.