intersection of circle and sector

来源:互联网 发布:卫生网络直报系统网址 编辑:程序博客网 时间:2024/05/22 03:29


                /* 圆和扇形区域求交:;
                 * 
                 * 1、 receiver.pos in  Area1[Cir(r1+r2) ∩ Sector(angle)];
                 * 或者;
                 * 2、;
                 * a, b, c 为原点, r = receiver.radius 的圆 Cir(a) Cir(b) Cir(c);
                 * d,e 为一边长度为 r1+r2的矩形 Rect(d) Rect(e);
                 * 其中Line(ac)的长度为 r1+r2;
                  
                  
           a        b
            \      /  
          \  \    /  /
           \ d\  /e / 
            \  \/  /
               c 
                 * 
                 *  receiver.pos in  Area2[ Cir(a) ∪ Cir(b) ∪ Cir(c) ∪ Rect(d) ∪ Rect(e) ];
                 *  
                 * 在实际计算的时候,可以将 receiver.pos 往中间旋转, 这样 Area2 会合并成一个;
                 * p0 = caster.pos , p1 = p0 + caster.dirH * r1+r2, radius = r2;
                 * 胶囊形状;
                 * 只需要计算recevier在胶囊内即可;

                 */



0 0
原创粉丝点击