Esempio n. 1
0
 public void Select(fRectangle selectionBox)
 {
     if (selectionBox.contains(m_AABB))
     {
         m_selectionBox.SetActive(true);
     }
     else
     {
         m_selectionBox.SetActive(false);
     }
 }
Esempio n. 2
0
    static public Vector3 getClosestPositionOutsideAABB(fRectangle AABB, Vector3 unitPosition, Vector3 centrePosition, float offSet)
    {
        Assert.IsNotNull(AABB);

        Vector3 direction = (unitPosition - centrePosition).normalized;
        Vector3 position  = centrePosition;
        int     distance  = 1;

        while (AABB.contains(position))
        {
            position += direction * distance;
        }
        position += direction * offSet;

        return(new Vector3(position.x, 1, position.z));
    }
Esempio n. 3
0
    static public Vector3 getRandomPositionOutsideAABB(fRectangle AABB, Vector3 centrePosition, float offSet)
    {
        Assert.IsNotNull(AABB);

        Vector3 direction = new Vector3(Random.Range(-1.0f, 1.0f), 1, Random.Range(-1.0f, 1.0f)).normalized;
        Vector3 position  = centrePosition;
        int     distance  = 1;

        while (AABB.contains(position))
        {
            position += direction * distance;
        }
        position += direction * offSet;

        return(new Vector3(position.x, 1, position.z));
    }
Esempio n. 4
0
 public bool contains(Vector3 position)
 {
     return(m_AABB.contains(Utilities.convertToGridPosition(position)));
 }