Canvas is cool! - page 13

 
Реter Konow:

It looks great. Nikolai, don't you want to try doing 3D graphics in Kanvas?

I already am.

 
Nikolai Semko:

Already on it.

Interesting. Any results?

 
Реter Konow:

Interesting. Any results?

I don't want to get ahead of the train. I will talk about it only after 100% implementation of individual ideas. And there are a lot of ideas. But it will not be soon.

I do not want to repeat the mistakes of some comrades in whom we will not point fingers :))

 
Nikolai Semko:

I don't want to get ahead of the train. I will only talk about this when the individual ideas are 100% implemented. And there are a lot of ideas. But it will not be soon.

I do not want to repeat the mistakes of some comrades in whom we will not point fingers :))

I see.

I've been thinking about the 3D concept recently and came up with some interesting ideas. Realised that in 3d there is no shape of a circle or a square. You have to use an ellipse and a quadrilateral.

 
Реter Konow:

I see.

I've been thinking about the concept of 3D recently and have come up with some interesting thoughts. I realised that in 3d there is no circle or square shape. You have to use an ellipse and a quadrilateral.

If you're talking about that, it means you're just starting to take your first steps in understanding 3D.

The main thing you need to understand at the beginning of the path to mastering 3D in the current time is that you need to stop using int coordinates, but only double, otherwise it's a la 80's all over again.

And if you use double coordinates, then CCanvas class is absolutely useless thing for that purpose.

 
Nikolai Semko:

if you're talking about something like this, then you're just starting to take your first steps in understanding 3D.

The main thing you need to understand at the beginning of the path to mastering 3D in the current time is that you need to stop using int coordinates, but only double, otherwise it's a la 80's all over again.

And if you use double coordinates, then CCanvas class is absolutely useless thing for that purpose.

You know, I also started to understand it, when I was thinking about calculation of coordinates of points in space relative to the observer. There are angles, and those are always double values. So they have to be rounded off.

However, I am far away from concrete formulas and calculations.

 
Реter Konow:

However, I am far away from specific formulas and calculations.

The difference in two-dimensional geometry and three-dimensional geometry is not great.

For example: the distance between two points in the plane is:AB = sqrt((x2-x1)2+ (y2-y1)2)

and in space:AB = sqrt((x2-x1)2+ (y2-y1)2+ (z2 - z1)2)

 
Nikolai Semko:

The difference in two-dimensional geometry and three-dimensional geometry is not great.

For example: the distance between two points in the plane is:AB = sqrt((x2-x1)2+ (y2-y1)2)

and in space:AB = sqrt((x2-x1)2+ (y2-y1)2+ (z2 - z1)2)

I think you should have rejected the CCanvas class for 3d for nothing. You can use line and ellipse functions if you calculate coordinates for them in advance and round them up.

 
Реter Konow:

I think you should not have rejected CCanvas class for 3D. You can use the line and ellipse functions if you calculate the coordinates for them beforehand and round them up.

So you didn't hear my message.

 

3D is not just about three-dimensional space, but also about the observer. It can be static, or it can move around. Angles and distances are formed between the observer and the points of the three-dimensional shapes. Hence, we need proper formulas to calculate coordinates of points of shapes, relative to observer. And you can use ellipses and lines from CCanvas class to build all sorts of circles and quadrilaterals.

Here are my latest findings on the 3D issue.

Reason: