免费国产网站_秋霞午夜一区二区三区视频_99热在线看_日韩精品久久一区二区_午夜看一级毛片_天天鲁在视频在线观看

  • 您的位置:首頁 > 新聞動態 > Unity3D

    在虛擬裝配應用中,用數據手套實現擰螺絲動作

    2019/6/16??????點擊:

    遇到有客戶在使用Wiseglove數據手套開發機械裝配相關應用時,要實現數據手套擰螺絲的動作,客戶認為wiseglove7s+手套擰了一個角度,但是螺絲并沒有按照預想的方向旋轉。我們經過研究后,認為實現該功能需要具備以下條件:

    1. 手模型與螺絲有碰撞觸發

    2. 數據手套有抓取動作

    3.數據手套有釋放動作

    使用了Unity3d的觸發器檢測手與物體的碰撞狀態。

    private void OnTriggerEnter(Collider other)
    {
      print("Enter trigger");
      Oldpos = Leftobject.transform.position;
    }
    private void OnTriggerStay(Collider other)
    {
    //手套抓取
    if(wiseglove.grasp)
    {
      print("grasp");
      float yAixsval = Vector3.Angle(Vector3.ProjectOnPlane(Leftobject.transform.position, Vector3.up),Vector3.right) - Vector3.Angle(Vector3.ProjectOnPlane(Oldpos,Vector3.up),Vector3.right);
      Vector3 deltaAngles = new Vector3(0,uAxisval,0);
      transform.eulerAngles +=deltaAngle;
      Oldpos = Leftobject.transform.position;
    }
    else {
      print("open hand");
      Oldpos = Leftobject.transform.position;
    }
    }
    private void OnTriggerExit(Colloder other)
    {
      print("Exit");
      Oldpos = Leftobject.transform.position;
    }

    當然如果需要螺絲沿著平面的法向隨著旋轉有位移,似乎也不難~~

    這里主要的技巧就是: Vector3.ProjectOnPlane( Vector3 vectorVector3 planeNormal) 得到投影向量 為vector到以planeNormal為法向量的平面上。求的是一向量與一平面的夾角。這也是讓物體沿著指定軸旋轉的關鍵所在。

    怎么樣,小伙伴們會了嗎? 感謝關注Wiseglove, 我們將一如既往地把我們為客戶解決的技術問題發布到我們的官網,來分享關于數據手套的技術和心得。

    主站蜘蛛池模板: 高州市| 济源市| 金门县| 中西区| 冕宁县| 宜兰市| 浦江县| 琼中| 乌兰县| 内丘县| 靖宇县| 兴海县| 堆龙德庆县| 永登县| 青岛市| 海伦市| 乐都县| 麻城市| 平泉县| 望城县| 河池市| 双桥区| 沧州市| 泽州县| 本溪市| 无为县| 梅州市| 泌阳县| 容城县| 凤山县| 黑龙江省| 长乐市| 浦江县| 六枝特区| 酒泉市| 色达县| 和田市| 富蕴县| 崇信县| 广南县| 富平县|