Calculate angle from vector.

Become a member of the CGSociety

Connect, Share, and Learn with our Large Growing CG Art Community. It's Free!

Thread Tools Search this Thread Display Modes
  05 May 2013
Calculate angle from vector.

Hi,I'm trying to calculate angle from vector. It seems simple.

my test code is here:

proc test(){
    vector $a = <<0, 1, 0>>;
    vector $b = <<0.5, 0.5, 0>>;
    float $c = $a * $b;
    float $mag_a = mag($a);
    float $mag_b = mag($b);
    float $theta = ($a*$b)/($mag_a * $mag_b);
    $theta = $theta * 180 / 3.14;
    print ("theta = " + $theta + "\n");

theta = 40.53478363

I think it`s 45.0 in mathematically,but The result ange is uncorrect.
It`s nearly 45.0 .
Is there are any items missing? or formula is uncorrect?

Please give me advice.

Sorry for my poor English.
  05 May 2013

It seems like your saying that θ = (a*b)/(|a|*|b|) but that equation is incorrect, the correct equation is cosθ = (a*b)/(|a|*|b|) --> θ = arccos((a*b)/(|a|*|b|)).

Hope this helps,

Last edited by hazmondo : 05 May 2013 at 07:00 PM.
  06 June 2013
Hi, if using Maya might want to checkout the built-in angleBetween Node or MEL/Python command. Hope this is helpful.

  06 June 2013
PyMEL could really clear this up in a quick way. here is what you were doing. it was indeed 45 degrees:

import pymel.core as pm
# make vectors
vec1= pm.dt.Vector(0,1,0)
vec2= pm.dt.Vector(0.5,0.5,0.0)
# get angle between in radians
radians = vec1.angle(vec2)
#get degrees
degrees = pm.dt.degrees(radians)
Check out my "Intro to PyMEL Training Video" at -- maya python the OOP way!
  06 June 2013
Thread automatically closed

This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.
CGTalk Policy/Legalities
Note that as CGTalk Members, you agree to the terms and conditions of using this website.
Thread Closed share thread

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Society of Digital Artists

Powered by vBulletin
Copyright 2000 - 2006,
Jelsoft Enterprises Ltd.
Minimize Ads
Forum Jump

All times are GMT. The time now is 08:12 AM.

Powered by vBulletin
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.