+++ /dev/null
--- Created on: 1993-07-09
--- Created by: Isabelle GRIGNON
--- Copyright (c) 1993-1999 Matra Datavision
--- Copyright (c) 1999-2014 OPEN CASCADE SAS
---
--- This file is part of Open CASCADE Technology software library.
---
--- 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.
---
--- Alternatively, this file may be used under the terms of Open CASCADE
--- commercial license or contractual agreement.
-
-class Add2dCurve from BndLib
- ---Purpose: Computes the bounding box for a curve in 2d .
- -- Functions to add a 2D curve to a bounding box.
- -- The 2D curve is defined from a Geom2d curve.
-
-uses Box2d from Bnd,
- Curve2d from Adaptor2d,
- Curve from Geom2d
-
-
-is
-
- Add(myclass; C : Curve2d from Adaptor2d;
- Tol : Real from Standard;
- B : in out Box2d from Bnd);
- ---Purpose: Adds to the bounding box B the curve C
- -- B is then enlarged by the tolerance value Tol.
- -- Note: depending on the type of curve, one of the following
- -- representations of the curve C is used to include it in the bounding box B:
- -- - an exact representation if C is built from a line, a circle or a conic curve,
- -- - the poles of the curve if C is built from a Bezier curve or a BSpline curve,
- -- - if not, the points of an approximation of the curve C.
- -- Warning
- -- C is an adapted curve, that is, an object which is an interface between:
- -- - the services provided by a 2D curve from the package Geom2d
- -- - and those required of the curve by the computation algorithm.
- -- The adapted curve is created in the following way:
- -- Handle(Geom2d_Curve) mycurve = ...
- -- ;
- -- Geom2dAdaptor_Curve C(mycurve);
- -- The bounding box B is then enlarged by adding it:
- -- Bnd_Box2d B;
- -- // ...
- -- Standard_Real Tol = ... ;
- -- Add2dCurve::Add ( C, Tol, B );
- -- Exceptions
- -- Standard_Failure if the curve is built from:
- -- - a Geom_Line, or
- -- - a Geom_Parabola, or
- -- - a Geom_Hyperbola,
- -- and P1 and P2 are either two negative infinite real
- -- numbers, or two positive infinite real numbers.
-
- Add(myclass; C : Curve2d from Adaptor2d;
- U1,U2 : Real from Standard;
- Tol : Real from Standard;
- B : in out Box2d from Bnd);
- ---Purpose: Adds to the bounding box Bthe arc of the curve C limited by the two parameter
- -- values P1 and P2.
- -- B is then enlarged by the tolerance value Tol.
- -- Note: depending on the type of curve, one of the following
- -- representations of the curve C is used to include it in the bounding box B:
- -- - an exact representation if C is built from a line, a circle or a conic curve,
- -- - the poles of the curve if C is built from a Bezier curve or a BSpline curve,
- -- - if not, the points of an approximation of the curve C.
- -- Warning
- -- C is an adapted curve, that is, an object which is an interface between:
- -- - the services provided by a 2D curve from the package Geom2d
- -- - and those required of the curve by the computation algorithm.
- -- The adapted curve is created in the following way:
- -- Handle(Geom2d_Curve) mycurve = ...
- -- ;
- -- Geom2dAdaptor_Curve C(mycurve);
- -- The bounding box B is then enlarged by adding it:
- -- Bnd_Box2d B;
- -- // ...
- -- Standard_Real Tol = ... ;
- -- Add2dCurve::Add ( C, Tol, B );
- -- Exceptions
- -- Standard_Failure if the curve is built from:
- -- - a Geom_Line, or
- -- - a Geom_Parabola, or
- -- - a Geom_Hyperbola,
- -- and P1 and P2 are either two negative infinite real
- -- numbers, or two positive infinite real numbers.
-
- Add(myclass;
- C : Curve from Geom2d;
- Tol: Real from Standard;
- Box: out Box2d from Bnd);
-
- ---Purpose: Adds to the bounding box B the curve C
- -- B is then enlarged by the tolerance value Tol.
- -- Note: depending on the type of curve, one of the following
- -- representations of the curve C is used to include it in the bounding box B:
- -- - an exact representation if C is built from a line, a circle or a conic curve,
- -- - the poles of the curve if C is built from a Bezier curve or a BSpline curve,
- -- - if not, the points of an approximation of the curve C.
-
- Add(myclass;
- C : Curve from Geom2d;
- U1 : Real from Standard;
- U2 : Real from Standard;
- Tol: Real from Standard;
- B: out Box2d from Bnd);
-
- ---Purpose: Adds to the bounding box B the part of curve C
- -- B is then enlarged by the tolerance value Tol.
- -- U1, U2 - the parametric range to comute the bounding box;
- -- Note: depending on the type of curve, one of the following
- -- representations of the curve C is used to include it in the bounding box B:
- -- - an exact representation if C is built from a line, a circle or a conic curve,
- -- - the poles of the curve if C is built from a Bezier curve or a BSpline curve,
- -- - if not, the points of an approximation of the curve C.
-
-end Add2dCurve;