how to get data position and pint out?

• On 27/03/2015 at 00:14, xxxxxxxx wrote:

i have tried use MatrixToHPB but it doesnt work. and then i tried VectorToHPB and it works. but the third coloumn always "0". How come? this is my code
import c4d
#Welcome to the world of Python

def main() :
pass  #put in your code here

a = op.GetObject().GetMg().off
b = c4d.utils.MatrixToHPB(a)
print a

and how to convert values to deg?

• On 27/03/2015 at 00:22, xxxxxxxx wrote:

def main() :
pass  #put in your code here

a = op.GetObject().GetMg().off
b = c4d.utils.VectorToHPB(a)
print b

• On 27/03/2015 at 00:28, xxxxxxxx wrote:

Vector(3.144, 0.239, 0)
Vector(3.144, 0.256, 0)
Vector(3.144, 0.273, 0)
Vector(3.145, 0.29, 0)
Vector(3.145, 0.306, 0)
Vector(3.145, 0.322, 0)
Vector(3.145, 0.336, 0)
Vector(3.146, 0.35, 0)
Vector(3.146, 0.361, 0)
Vector(3.147, 0.371, 0)
Vector(3.147, 0.379, 0)
Vector(3.147, 0.385, 0)
Vector(3.148, 0.39, 0)
Vector(3.148, 0.394, 0)
Vector(3.148, 0.396, 0)
Vector(3.148, 0.397, 0)
Vector(3.148, 0.397, 0)
Vector(3.148, 0.395, 0)
Vector(3.148, 0.393, 0)
Vector(3.148, 0.389, 0)
Vector(3.148, 0.385, 0)

• On 27/03/2015 at 01:52, xxxxxxxx wrote:

Hello,

as the name suggests MatrixToHPB() must be used with a Matrix, not with the translation vector as in your code. And as said before, turning the position into a rotation using VectorToHPB() does not seem to make sense. As you can read in the documentation, VectorToHPB() will always return a rotation with bank set to zero.

best wishes,
Sebastian

• On 27/03/2015 at 02:00, xxxxxxxx wrote:

Hello,

the first case:
you´ll need to feed the matrix not the offset vector from this matrix

a = op.GetObject().GetMg()
b = c4d.utils.MatrixToHPB(a)

the second case:
euler angle always gives you a zero banking back it calculates the direction with a fixed rotation around this direction

a = op.GetObject().GetMg().off
b = c4d.utils.VectorToHPB(a)

for a complex track you might think about flipping conditions or quaternions.

rad to degree:`c4d.utils.Deg`( r )
or
rad = HPB * math.pi / 180

Hope this helps?
Best wishes
Martin

• On 02/04/2015 at 07:17, xxxxxxxx wrote:

Hello Yefta

best wishes,
Sebastian

• On 05/04/2015 at 23:02, xxxxxxxx wrote:

hello Martin.

yes, it helps. but i still cant transform to degree. it shows "a float is required".

can u help me out?

• On 05/04/2015 at 23:14, xxxxxxxx wrote:

hello s_bach

i'm sorry, been off for a while. yes it's answered, but not all.

if i type  c4d.utils.Deg(b)
it shows in console "TypeError : a float is required"

• On 06/04/2015 at 04:21, xxxxxxxx wrote:

Hello Yefta,

sorry my answer was a little sloppy.

``````
print deg