Jump to content

Orienting joints using polygon normal not working (kinefx)


Recommended Posts

Hello, i have been trying to set the upvector to the normal of the plane formed by the joints the problem is that whatever i try it doesnt work in 1 of the joints.

In essence it should just work if i take 3 joints of leg, make a polygon and then figure out a way toset the axis to the  parent, one axis(up?) to the normal of that polygon and 1 axis to their cros product.

(there is also one step where i try to set the pivot of a transform to the eulers of the lookat from axis to the normal so that i can scale it to pake sure the leg is on 1 plane if it hase more then 3 points)

but whatever i try, everything is just off, Could anyone help me out ?


In essence it should just work if i take 3 joints of leg, make a polygon and then figure out a way toset the axis to the  parent, one axis(up?) to the normal of that polygon and 1 axis to their cros product.

(there is also one step where i try to set the pivot of a transform to the eulers of the lookat from axis to the normal so that i can scale it to pake sure the leg is on 1 plane if it hase more then 3 points)

 


but whatever i try, everything is just off, Could anyone help me out ?

to do the scaling part i use this code. it works in some cases but ometimes the agle is 45 degree of in one axis.

vector v1 = normalize({0, 1, 0}); // Define the first vector
vector v2 = @up; // Define the second vector

matrix3 m = lookat(v1, v2); // Create a matrix that rotates v1 to face v2
vector4 q = quaternion(m); // Convert the matrix to a quaternion


vector v1 = normalize({0, 1, 0}); // Define the first vector
printf("Rotation angles: (%g, %g, %g)\n", degrees(e.x), degrees(e.y), degrees(e.z));
vector v2 = @up; // Define the second vector

matrix3 m = lookat(v1, v2); // Create a matrix that rotates v1 to face v2

 

Edited by Drunkenpanda
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...