plane class: adding normalisation of normal vector for vector only

constructor.
This commit is contained in:
graham
2010-01-28 13:56:13 +00:00
parent f026a5af0e
commit d5829988d8

View File

@ -128,7 +128,20 @@ Foam::plane::plane(const vector& normalVector)
: :
unitVector_(normalVector), unitVector_(normalVector),
basePoint_(vector::zero) basePoint_(vector::zero)
{} {
scalar magUnitVector(mag(unitVector_));
if (magUnitVector > VSMALL)
{
unitVector_ /= magUnitVector;
}
else
{
FatalErrorIn("plane::plane(const point&, const vector&)")
<< "plane normal has zero length"
<< abort(FatalError);
}
}
// Construct from point and normal vector // Construct from point and normal vector
@ -146,8 +159,8 @@ Foam::plane::plane(const point& basePoint, const vector& normalVector)
else else
{ {
FatalErrorIn("plane::plane(const point&, const vector&)") FatalErrorIn("plane::plane(const point&, const vector&)")
<< "plane normal has got zero length" << "plane normal has zero length"
<< abort(FatalError); << abort(FatalError);
} }
} }
@ -217,8 +230,8 @@ Foam::plane::plane(const dictionary& dict)
"plane::plane(const dictionary&)", "plane::plane(const dictionary&)",
dict dict
) )
<< "Invalid plane type: " << planeType << "Invalid plane type: " << planeType
<< abort(FatalIOError); << abort(FatalIOError);
} }
} }
@ -238,7 +251,7 @@ Foam::plane::plane(Istream& is)
else else
{ {
FatalErrorIn("plane::plane(Istream& is)") FatalErrorIn("plane::plane(Istream& is)")
<< "plane normal has got zero length" << "plane normal has zero length"
<< abort(FatalError); << abort(FatalError);
} }
} }