/***************************************************************************
 *   Copyright (C) 2005 by Raphael Langerhorst                             *
 *   raphael-langerhorst@gmx.at                                            *
 *                                                                         *
 *   Permission is hereby granted, free of charge, to any person obtaining *
 *   a copy of this software and associated documentation files (the       *
 *   "Software"), to deal in the Software without restriction, including   *
 *   without limitation the rights to use, copy, modify, merge, publish,   *
 *   distribute, sublicense, and/or sell copies of the Software, and to    *
 *   permit persons to whom the Software is furnished to do so, subject to *
 *   the following conditions:                                             *
 *                                                                         *
 *   The above copyright notice and this permission notice shall be        *
 *   included in all copies or substantial portions of the Software.       *
 *                                                                         *
 *   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,       *
 *   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF    *
 *   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*
 *   IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR     *
 *   OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, *
 *   ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR *
 *   OTHER DEALINGS IN THE SOFTWARE.                                       *
 ***************************************************************************/

#include "GForm.h"

namespace GCS
{

GForm::GForm(const GVector3& position,
      const GVector3& rotation,
      const GVector3& ellipsoid)
: Position(position),
  Rotation(rotation),
  Ellipsoid(ellipsoid)
{
}

GForm::GForm(const GForm& original)
: QMutex(),
  Position(original.Position),
  Rotation(original.Rotation),
  Ellipsoid(original.Ellipsoid)
{
}

GForm::~GForm()
{
}

double GForm::getRadiusMax() const
{
  double maximum = Ellipsoid.x;
  if (maximum < Ellipsoid.y)
    maximum = Ellipsoid.y;
  if (maximum < Ellipsoid.z)
    maximum = Ellipsoid.z;
    
  return maximum;
}

double GForm::getRadiusMin() const
{
  double minimum = Ellipsoid.x;
  if (minimum > Ellipsoid.y)
    minimum = Ellipsoid.y;
  if (minimum > Ellipsoid.z)
    minimum = Ellipsoid.z;
  
  return minimum;
}

}


syntax highlighted by Code2HTML, v. 0.9.1