游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3590|回复: 4

2D向量点乘自身代表什么意思?

[复制链接]

1

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2012-5-26 13:34:00 | 显示全部楼层 |阅读模式

  1. // two objects collided at time t. stop them at that time
  2. void CBody::ProcessCollision(CBody& xBody, const Vector& N, float t)
  3. {
  4.         Vector D = m_xDisplacement - xBody.m_xDisplacement;

  5.         float n  = D * N;
  6.        
  7.         Vector Dn = N * n;
  8.         Vector Dt = D - Dn;

  9. //上面这三句是在干什么?n求的是什么?Dn和Dt求的又是什么?
  10.        
  11.         if (n > 0.0f) Dn = Vector(0, 0);

  12.         float dt  = Dt * Dt;//这里什么意思?*是点乘重载,Vector是2D向量
  13.         float CoF = s_fFriction;
  14.        
  15.         if (dt < s_fGlue*s_fGlue) CoF = 1.01f;

  16.         D = -(1.0f + s_fRestitution) * Dn - (CoF) * Dt;

  17.         float m0 =       GetInvMass();
  18.         float m1 = xBody.GetInvMass();
  19.         float m  = m0 + m1;
  20.         float r0 = m0 / m;
  21.         float r1 = m1 / m;
  22.        
  23.         m_xDisplacement += D * r0;
  24.         xBody.m_xDisplacement -= D * r1;
  25. }
复制代码

1

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
 楼主| 发表于 2012-5-26 13:35:00 | 显示全部楼层

Re:2D向量点乘自身代表什么意思?

这排版真是太恐怖了.........还是直接贴吧

// two objects collided at time t. stop them at that time
void CBody:rocessCollision(CBody& xBody, const Vector& N, float t)
{
        Vector D = m_xDisplacement - xBody.m_xDisplacement;

        float n  = D * N;
       
        Vector Dn = N * n;
        Vector Dt = D - Dn;
       
        if (n > 0.0f) Dn = Vector(0, 0);

        float dt  = Dt * Dt;
        float CoF = s_fFriction;
       
        if (dt < s_fGlue*s_fGlue) CoF = 1.01f;

        D = -(1.0f + s_fRestitution) * Dn - (CoF) * Dt;

        float m0 =       GetInvMass();
        float m1 = xBody.GetInvMass();
        float m  = m0 + m1;
        float r0 = m0 / m;
        float r1 = m1 / m;
       
                  m_xDisplacement += D * r0;
        xBody.m_xDisplacement -= D * r1;
}

5

主题

92

帖子

685

积分

高级会员

Rank: 4

积分
685
发表于 2012-5-29 09:20:00 | 显示全部楼层

Re:2D向量点乘自身代表什么意思?

点乘可以求出第三维的向量!

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2012-5-29 12:28:00 | 显示全部楼层

Re:2D向量点乘自身代表什么意思?

楼上说的是叉乘

32

主题

1259

帖子

1351

积分

金牌会员

Rank: 6Rank: 6

积分
1351
发表于 2012-5-29 15:19:00 | 显示全部楼层

Re:2D向量点乘自身代表什么意思?

意义就是求出  X*X + Y*Y 等于多少
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-2-28 06:35

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表