0029915: Porting to VC 2017 : Regressions in Modeling Algorithms on VC 2017
[occt.git] / src / Bnd / Bnd_Box2d.cxx
old mode 100755 (executable)
new mode 100644 (file)
index d443d3c..02263e9
@@ -1,34 +1,33 @@
 // Created on: 1991-10-30
 // Created by: Modelisation
 // Copyright (c) 1991-1999 Matra Datavision
-// Copyright (c) 1999-2012 OPEN CASCADE SAS
+// Copyright (c) 1999-2014 OPEN CASCADE SAS
 //
-// The content of this file is subject to the Open CASCADE Technology Public
-// License Version 6.5 (the "License"). You may not use the content of this file
-// except in compliance with the License. Please obtain a copy of the License
-// at http://www.opencascade.org and read it completely before using this file.
+// This file is part of Open CASCADE Technology software library.
 //
-// The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
-// main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
 //
-// The Original Code and all software distributed under the License is
-// distributed on an "AS IS" basis, without warranty of any kind, and the
-// Initial Developer hereby disclaims all such warranties, including without
-// limitation, any warranties of merchantability, fitness for a particular
-// purpose or non-infringement. Please see the License for the specific terms
-// and conditions governing the rights and limitations under the License.
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
 
 
-#include <Bnd_Box2d.ixx>
-#include <Standard_Stream.hxx>
+#include <Bnd_Box2d.hxx>
 #include <gp.hxx>
-//-- #include <Precision.hxx> Precision::Infinite() -> 1e+100
+#include <gp_Dir2d.hxx>
+#include <gp_Pnt2d.hxx>
+#include <gp_Trsf2d.hxx>
+#include <Standard_ConstructionError.hxx>
+#include <Standard_Stream.hxx>
 
+//-- #include <Precision.hxx> Precision::Infinite() -> 1e+100
 //=======================================================================
 //function : Update
 //purpose  : 
 //=======================================================================
-
 void Bnd_Box2d::Update (const Standard_Real x, const Standard_Real y, 
                        const Standard_Real X, const Standard_Real Y)
 {
@@ -78,7 +77,7 @@ void Bnd_Box2d::Get (Standard_Real& x, Standard_Real& y,
                     Standard_Real& Xm, Standard_Real& Ym) const
 {
   if(Flags & VoidMask)
-    Standard_ConstructionError::Raise("Bnd_Box is void");
+    throw Standard_ConstructionError("Bnd_Box is void");
   Standard_Real pinf = 1e+100; //-- Precision::Infinite();
   if (Flags & XminMask) x = -pinf;
   else                  x =  Xmin-Gap;
@@ -264,9 +263,8 @@ Standard_Boolean Bnd_Box2d::IsOut (const Bnd_Box2d& Other) const
   else if   (Other.IsWhole())  return Standard_False;
   else if   (Other.IsVoid())   return Standard_True;
   else {
-    Bnd_Box2d OtherBox2d = Other; // DownEqual
     Standard_Real OXmin,OXmax,OYmin,OYmax;
-    OtherBox2d.Get(OXmin,OYmin,OXmax,OYmax);
+    Other.Get(OXmin,OYmin,OXmax,OYmax);
     if      (!(Flags & XminMask) && (OXmax < (Xmin-Gap))) return Standard_True;
     else if (!(Flags & XmaxMask) && (OXmin > (Xmax+Gap))) return Standard_True;
     else if (!(Flags & YminMask) && (OYmax < (Ymin-Gap))) return Standard_True;