How to get circle points in 3d given a radius and a vector orthogonal to the circle area?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
1
down vote

favorite












I already know how to get a point on a circle (here), but I need a circle in 3d which should be the orthogonal to a given vector.



I got:



  • Angle in degree/radians

  • Circle radius

  • Orthogonal vector

I think, I need to rotate the 2d circle positions to be orthogonal to the given vector, but I do not how how to do that.










share|cite|improve this question





















  • What does the given angle specify? Where is the center of the circle? What kind of result do you expect/need?
    – coproc
    Aug 17 '15 at 6:55










  • The angle is the angle on the circle needing to calculate a point on the circle in 2d. The result should be a 3d point (x,y,z). The center of the circle should be at (0,0,0).
    – Janmm14
    Aug 21 '15 at 14:00















up vote
1
down vote

favorite












I already know how to get a point on a circle (here), but I need a circle in 3d which should be the orthogonal to a given vector.



I got:



  • Angle in degree/radians

  • Circle radius

  • Orthogonal vector

I think, I need to rotate the 2d circle positions to be orthogonal to the given vector, but I do not how how to do that.










share|cite|improve this question





















  • What does the given angle specify? Where is the center of the circle? What kind of result do you expect/need?
    – coproc
    Aug 17 '15 at 6:55










  • The angle is the angle on the circle needing to calculate a point on the circle in 2d. The result should be a 3d point (x,y,z). The center of the circle should be at (0,0,0).
    – Janmm14
    Aug 21 '15 at 14:00













up vote
1
down vote

favorite









up vote
1
down vote

favorite











I already know how to get a point on a circle (here), but I need a circle in 3d which should be the orthogonal to a given vector.



I got:



  • Angle in degree/radians

  • Circle radius

  • Orthogonal vector

I think, I need to rotate the 2d circle positions to be orthogonal to the given vector, but I do not how how to do that.










share|cite|improve this question













I already know how to get a point on a circle (here), but I need a circle in 3d which should be the orthogonal to a given vector.



I got:



  • Angle in degree/radians

  • Circle radius

  • Orthogonal vector

I think, I need to rotate the 2d circle positions to be orthogonal to the given vector, but I do not how how to do that.







vectors circle 3d






share|cite|improve this question













share|cite|improve this question











share|cite|improve this question




share|cite|improve this question










asked Aug 14 '15 at 8:40









Janmm14

61




61











  • What does the given angle specify? Where is the center of the circle? What kind of result do you expect/need?
    – coproc
    Aug 17 '15 at 6:55










  • The angle is the angle on the circle needing to calculate a point on the circle in 2d. The result should be a 3d point (x,y,z). The center of the circle should be at (0,0,0).
    – Janmm14
    Aug 21 '15 at 14:00

















  • What does the given angle specify? Where is the center of the circle? What kind of result do you expect/need?
    – coproc
    Aug 17 '15 at 6:55










  • The angle is the angle on the circle needing to calculate a point on the circle in 2d. The result should be a 3d point (x,y,z). The center of the circle should be at (0,0,0).
    – Janmm14
    Aug 21 '15 at 14:00
















What does the given angle specify? Where is the center of the circle? What kind of result do you expect/need?
– coproc
Aug 17 '15 at 6:55




What does the given angle specify? Where is the center of the circle? What kind of result do you expect/need?
– coproc
Aug 17 '15 at 6:55












The angle is the angle on the circle needing to calculate a point on the circle in 2d. The result should be a 3d point (x,y,z). The center of the circle should be at (0,0,0).
– Janmm14
Aug 21 '15 at 14:00





The angle is the angle on the circle needing to calculate a point on the circle in 2d. The result should be a 3d point (x,y,z). The center of the circle should be at (0,0,0).
– Janmm14
Aug 21 '15 at 14:00











1 Answer
1






active

oldest

votes

















up vote
0
down vote













Let us denote the angle by $theta$, the radius by $r$ and the orthogonal vector by $vec a$ ("axis"); furthermore let us assume the length of $vec a$ is 1.



First you must define which point is defined by $theta=0$. If $vec a$ is not parallel to the $xy$-plane then there is a unique vector $vec v_0 = (x_0, 0, z_0)$ orthogonal to $vec a$ with length $r$ and $x_0 > 0$. (Otherwise you need a different choice for $vec v_0$. In 3D there is no obvious way to define such a $vec v_0$ for any $vec a$.)



Then all you need to do is rotate the vector $vec v_0$ around $vec a$ by the angle $theta$. The formula is:
$$ cos theta vec v_0 + (1-cos theta)(vec a cdot vec v_0)vec a + sin theta vec a times vec v_0$$






share|cite|improve this answer




















    Your Answer




    StackExchange.ifUsing("editor", function ()
    return StackExchange.using("mathjaxEditing", function ()
    StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
    StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
    );
    );
    , "mathjax-editing");

    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "69"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: false,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    noCode: true, onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













     

    draft saved


    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f1396824%2fhow-to-get-circle-points-in-3d-given-a-radius-and-a-vector-orthogonal-to-the-cir%23new-answer', 'question_page');

    );

    Post as a guest






























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote













    Let us denote the angle by $theta$, the radius by $r$ and the orthogonal vector by $vec a$ ("axis"); furthermore let us assume the length of $vec a$ is 1.



    First you must define which point is defined by $theta=0$. If $vec a$ is not parallel to the $xy$-plane then there is a unique vector $vec v_0 = (x_0, 0, z_0)$ orthogonal to $vec a$ with length $r$ and $x_0 > 0$. (Otherwise you need a different choice for $vec v_0$. In 3D there is no obvious way to define such a $vec v_0$ for any $vec a$.)



    Then all you need to do is rotate the vector $vec v_0$ around $vec a$ by the angle $theta$. The formula is:
    $$ cos theta vec v_0 + (1-cos theta)(vec a cdot vec v_0)vec a + sin theta vec a times vec v_0$$






    share|cite|improve this answer
























      up vote
      0
      down vote













      Let us denote the angle by $theta$, the radius by $r$ and the orthogonal vector by $vec a$ ("axis"); furthermore let us assume the length of $vec a$ is 1.



      First you must define which point is defined by $theta=0$. If $vec a$ is not parallel to the $xy$-plane then there is a unique vector $vec v_0 = (x_0, 0, z_0)$ orthogonal to $vec a$ with length $r$ and $x_0 > 0$. (Otherwise you need a different choice for $vec v_0$. In 3D there is no obvious way to define such a $vec v_0$ for any $vec a$.)



      Then all you need to do is rotate the vector $vec v_0$ around $vec a$ by the angle $theta$. The formula is:
      $$ cos theta vec v_0 + (1-cos theta)(vec a cdot vec v_0)vec a + sin theta vec a times vec v_0$$






      share|cite|improve this answer






















        up vote
        0
        down vote










        up vote
        0
        down vote









        Let us denote the angle by $theta$, the radius by $r$ and the orthogonal vector by $vec a$ ("axis"); furthermore let us assume the length of $vec a$ is 1.



        First you must define which point is defined by $theta=0$. If $vec a$ is not parallel to the $xy$-plane then there is a unique vector $vec v_0 = (x_0, 0, z_0)$ orthogonal to $vec a$ with length $r$ and $x_0 > 0$. (Otherwise you need a different choice for $vec v_0$. In 3D there is no obvious way to define such a $vec v_0$ for any $vec a$.)



        Then all you need to do is rotate the vector $vec v_0$ around $vec a$ by the angle $theta$. The formula is:
        $$ cos theta vec v_0 + (1-cos theta)(vec a cdot vec v_0)vec a + sin theta vec a times vec v_0$$






        share|cite|improve this answer












        Let us denote the angle by $theta$, the radius by $r$ and the orthogonal vector by $vec a$ ("axis"); furthermore let us assume the length of $vec a$ is 1.



        First you must define which point is defined by $theta=0$. If $vec a$ is not parallel to the $xy$-plane then there is a unique vector $vec v_0 = (x_0, 0, z_0)$ orthogonal to $vec a$ with length $r$ and $x_0 > 0$. (Otherwise you need a different choice for $vec v_0$. In 3D there is no obvious way to define such a $vec v_0$ for any $vec a$.)



        Then all you need to do is rotate the vector $vec v_0$ around $vec a$ by the angle $theta$. The formula is:
        $$ cos theta vec v_0 + (1-cos theta)(vec a cdot vec v_0)vec a + sin theta vec a times vec v_0$$







        share|cite|improve this answer












        share|cite|improve this answer



        share|cite|improve this answer










        answered Aug 21 '15 at 18:20









        coproc

        977514




        977514



























             

            draft saved


            draft discarded















































             


            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f1396824%2fhow-to-get-circle-points-in-3d-given-a-radius-and-a-vector-orthogonal-to-the-cir%23new-answer', 'question_page');

            );

            Post as a guest













































































            這個網誌中的熱門文章

            How to combine Bézier curves to a surface?

            Carbon dioxide

            Why am i infinitely getting the same tweet with the Twitter Search API?