question for Lischke...

So, I have object tree at GLscene, some brunches are 6 childs deep (think a robot). 6thChild.position (position of end effector)gives its local coordinates, my question: Where can I read child ohjects global coordinates.
(I think it is there but I just coudn't find it where).
Who is Participating?
LischkeConnect With a Mentor Commented:
Hi atlan2,

each object has two matrices, the local and the global matrix. The latter contains all transformations made in the hierarchy up to the particular object. I think you know how to get the position from a 4x4 transformation matrix.

Ciao, Mike
atlan2Author Commented:
Hi Mike,

I think I'm closer to solve the problem.
What's the proper way to read object.FGlobalMatrix since it it protected property. Should I write the procedure or is there a ready solution for it? (just for trying I moved FGlobalMatrix to public.).

Second thing is, I assumed object.FGlobalMatrix[3,0] corresponds to global x position and so on... but when I rendered another (independed) object at that location there was a slight difference between objects locations, so is the way I tryed wrong?

Thanks for help.

Atlan, if you need to read the global matrix from another file/class then from GLScene.pas then you won't have another choice than to make the matrix public.

For the slight position differences: I guess its the limited math precision. Throughout the entire library I use Single as datatype (except where not possible). This can accumulate rounding errors...

Ciao, Mike
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.