mirror of
https://github.com/Open-Cascade-SAS/OCCT.git
synced 2026-09-15 13:47:46 +08:00
Documentation - Fix whitespaces (#809)
- Corrected spelling errors in comments (e.g., "od" to "of", "thr" to "the") - Removed unnecessary `<br>` HTML tags from comment formatting - Normalized whitespace in comments for consistency - Fixed terminology (e.g., "3-d" to "3D")
This commit is contained in:
@@ -30,7 +30,7 @@ DEFINE_STANDARD_HANDLE(IGESGraph_LineFontDefTemplate, IGESData_LineFontEntity)
|
||||
//! defines IGESLineFontDefTemplate, Type <304> Form <1>
|
||||
//! in package IGESGraph
|
||||
//!
|
||||
//! Line Font can be defined as a repetition od Template figure
|
||||
//! Line Font can be defined as a repetition of Template figure
|
||||
//! that is displayed at regularly spaced locations along a
|
||||
//! planer anchoring curve. The anchoring curve itself has
|
||||
//! no visual purpose.
|
||||
|
||||
@@ -29,7 +29,7 @@ class IGESSelect_SelectDrawingFrom;
|
||||
DEFINE_STANDARD_HANDLE(IGESSelect_SelectDrawingFrom, IFSelect_SelectDeduct)
|
||||
|
||||
//! This selection gets the Drawings attached to its input IGES
|
||||
//! entities. They are read through thr Single Views, referenced
|
||||
//! entities. They are read through the Single Views, referenced
|
||||
//! in Directory Parts of the entities
|
||||
class IGESSelect_SelectDrawingFrom : public IFSelect_SelectDeduct
|
||||
{
|
||||
@@ -43,7 +43,7 @@ public:
|
||||
Standard_EXPORT Interface_EntityIterator
|
||||
RootResult(const Interface_Graph& G) const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the label, with is "Drawings attached"
|
||||
//! Returns the label, with its "Drawings attached"
|
||||
Standard_EXPORT TCollection_AsciiString Label() const Standard_OVERRIDE;
|
||||
|
||||
DEFINE_STANDARD_RTTIEXT(IGESSelect_SelectDrawingFrom, IFSelect_SelectDeduct)
|
||||
|
||||
@@ -30,8 +30,8 @@
|
||||
#include <GeomAbs_Shape.hxx>
|
||||
class math_Matrix;
|
||||
|
||||
//! PLib means Polynomial functions library. This pk
|
||||
//! provides basic computation functions for
|
||||
//! PLib means Polynomial functions library. This pk
|
||||
//! provides basic computation functions for
|
||||
//! polynomial functions.
|
||||
//! Note: weight arrays can be passed by pointer for
|
||||
//! some functions so that NULL pointer is valid.
|
||||
@@ -85,26 +85,26 @@ public:
|
||||
//! Computes the derivatives of a ratio at order
|
||||
//! <N> in dimension <Dimension>.
|
||||
//!
|
||||
//! <Ders> is an array containing the values of the
|
||||
//! input derivatives from 0 to Min(<N>,<Degree>).
|
||||
//! For orders higher than <Degree> the inputcd /s2d1/BMDL/
|
||||
//! derivatives are assumed to be 0.
|
||||
//! <Ders> is an array containing the values of the
|
||||
//! input derivatives from 0 to Min(<N>,<Degree>).
|
||||
//! For orders higher than <Degree> the inputcd /s2d1/BMDL/
|
||||
//! derivatives are assumed to be 0.
|
||||
//!
|
||||
//! Content of <Ders> :
|
||||
//! Content of <Ders>:
|
||||
//!
|
||||
//! x(1),x(2),...,x(Dimension),w
|
||||
//! x'(1),x'(2),...,x'(Dimension),w'
|
||||
//! x''(1),x''(2),...,x''(Dimension),w''
|
||||
//!
|
||||
//! If <All> is false, only the derivative at order
|
||||
//! <N> is computed. <RDers> is an array of length
|
||||
//! Dimension which will contain the result :
|
||||
//! If <All> is false, only the derivative at order
|
||||
//! <N> is computed. <RDers> is an array of length
|
||||
//! Dimension which will contain the result:
|
||||
//!
|
||||
//! x(1)/w , x(2)/w , ... derivated <N> times
|
||||
//!
|
||||
//! If <All> is true all the derivatives up to order
|
||||
//! <N> are computed. <RDers> is an array of length
|
||||
//! Dimension * (N+1) which will contains :
|
||||
//! If <All> is true all the derivatives up to order
|
||||
//! <N> are computed. <RDers> is an array of length
|
||||
//! Dimension * (N+1) which will contains:
|
||||
//!
|
||||
//! x(1)/w , x(2)/w , ...
|
||||
//! x(1)/w , x(2)/w , ... derivated <1> times
|
||||
@@ -124,10 +124,10 @@ public:
|
||||
//! of a BSpline function of degree <Degree>
|
||||
//! dimension <Dimension>.
|
||||
//!
|
||||
//! <PolesDerivatives> is an array containing the values
|
||||
//! of the input derivatives from 0 to <DerivativeRequest>
|
||||
//! For orders higher than <Degree> the input
|
||||
//! derivatives are assumed to be 0.
|
||||
//! <PolesDerivatives> is an array containing the values
|
||||
//! of the input derivatives from 0 to <DerivativeRequest>
|
||||
//! For orders higher than <Degree> the input
|
||||
//! derivatives are assumed to be 0.
|
||||
//!
|
||||
//! Content of <PoleasDerivatives> :
|
||||
//!
|
||||
@@ -136,12 +136,12 @@ public:
|
||||
//! x''(1),x''(2),...,x''(Dimension)
|
||||
//!
|
||||
//! WeightsDerivatives is an array that contains derivatives
|
||||
//! from 0 to <DerivativeRequest>
|
||||
//! from 0 to <DerivativeRequest>
|
||||
//! After returning from the routine the array
|
||||
//! RationalDerivatives contains the following
|
||||
//! x(1)/w , x(2)/w , ...
|
||||
//! x(1)/w , x(2)/w , ... derivated once
|
||||
//! x(1)/w , x(2)/w , ... twice
|
||||
//! x(1)/w , x(2)/w , ... derivated once
|
||||
//! x(1)/w , x(2)/w , ... twice
|
||||
//! x(1)/w , x(2)/w , ... derivated <DerivativeRequest> times
|
||||
//!
|
||||
//! The array RationalDerivatives and PolesDerivatives
|
||||
|
||||
@@ -24,11 +24,11 @@
|
||||
#include <GeomAbs_Shape.hxx>
|
||||
#include <PLib_JacobiPolynomial.hxx>
|
||||
|
||||
//! This class provides method to work with Jacobi Polynomials
|
||||
//! This class provides method to work with Jacobi Polynomials
|
||||
//! relatively to an order of constraint
|
||||
//! q = myWorkDegree-2*(myNivConstr+1)
|
||||
//! Jk(t) for k=0,q compose the Jacobi Polynomial base relatively to the weight W(t)
|
||||
//! iorder is the integer value for the constraints:
|
||||
//! iorder is the integer value for the constraints:
|
||||
//! iorder = 0 <=> ConstraintOrder = GeomAbs_C0
|
||||
//! iorder = 1 <=> ConstraintOrder = GeomAbs_C1
|
||||
//! iorder = 2 <=> ConstraintOrder = GeomAbs_C2
|
||||
@@ -45,7 +45,7 @@
|
||||
//! c0(1) c0(2) .... c0(Dimension)
|
||||
//! c2*ordre+1(1) ... c2*ordre+1(dimension)
|
||||
//! @endcode
|
||||
//! represents the part of the polynomial in the
|
||||
//! represents the part of the polynomial in the
|
||||
//! Hermit's base: H(t)
|
||||
//! @code
|
||||
//! H(t) = c0H00(t) + c1H01(t) + ...c(iordre)H(0 ;iorder)+ c(iordre+1)H10(t)+...
|
||||
@@ -67,7 +67,7 @@ public:
|
||||
Standard_EXPORT PLib_HermitJacobi(const Standard_Integer WorkDegree,
|
||||
const GeomAbs_Shape ConstraintOrder);
|
||||
|
||||
//! This method computes the maximum error on the polynomial
|
||||
//! This method computes the maximum error on the polynomial
|
||||
//! W(t) Q(t) obtained by missing the coefficients of JacCoeff from
|
||||
//! NewDegree +1 to Degree
|
||||
Standard_EXPORT Standard_Real MaxError(const Standard_Integer Dimension,
|
||||
|
||||
@@ -24,11 +24,11 @@
|
||||
#include <TColStd_Array1OfReal.hxx>
|
||||
#include <TColStd_Array2OfReal.hxx>
|
||||
|
||||
//! This class provides method to work with Jacobi Polynomials
|
||||
//! relatively to an order of constraint
|
||||
//! This class provides method to work with Jacobi Polynomials
|
||||
//! relatively to an order of constraint
|
||||
//! q = myWorkDegree-2*(myNivConstr+1)
|
||||
//! Jk(t) for k=0,q compose the Jacobi Polynomial base relatively to the weight W(t)
|
||||
//! iorder is the integer value for the constraints:
|
||||
//! Jk(t) for k=0,q compose the Jacobi Polynomial base relatively to the weight W(t)
|
||||
//! iorder is the integer value for the constraints:
|
||||
//! iorder = 0 <=> ConstraintOrder = GeomAbs_C0
|
||||
//! iorder = 1 <=> ConstraintOrder = GeomAbs_C1
|
||||
//! iorder = 2 <=> ConstraintOrder = GeomAbs_C2
|
||||
@@ -44,7 +44,7 @@
|
||||
//! c0(1) c0(2) .... c0(Dimension)
|
||||
//! c2*ordre+1(1) ... c2*ordre+1(dimension)
|
||||
//!
|
||||
//! represents the part of the polynomial in the
|
||||
//! represents the part of the polynomial in the
|
||||
//! canonical base: R(t)
|
||||
//! R(t) = c0 + c1 t + ...+ c2*iordre+1 t**2*iordre+1
|
||||
//! The following coefficients represents the part of the
|
||||
@@ -62,9 +62,9 @@ public:
|
||||
Standard_EXPORT PLib_JacobiPolynomial(const Standard_Integer theWorkDegree,
|
||||
const GeomAbs_Shape theConstraintOrder);
|
||||
|
||||
//! returns the Jacobi Points for Gauss integration ie
|
||||
//! returns the Jacobi Points for Gauss integration ie
|
||||
//! the positive values of the Legendre roots by increasing values
|
||||
//! NbGaussPoints is the number of points chosen for the integral
|
||||
//! NbGaussPoints is the number of points chosen for the integral
|
||||
//! computation.
|
||||
//! TabPoints (0,NbGaussPoints/2)
|
||||
//! TabPoints (0) is loaded only for the odd values of NbGaussPoints
|
||||
@@ -75,33 +75,33 @@ public:
|
||||
TColStd_Array1OfReal& theTabPoints) const;
|
||||
|
||||
//! returns the Jacobi weights for Gauss integration only for
|
||||
//! the positive values of the Legendre roots in the order they
|
||||
//! the positive values of the Legendre roots in the order they
|
||||
//! are given by the method Points
|
||||
//! NbGaussPoints is the number of points chosen for the integral
|
||||
//! NbGaussPoints is the number of points chosen for the integral
|
||||
//! computation.
|
||||
//! TabWeights (0,NbGaussPoints/2,0,Degree)
|
||||
//! TabWeights (0,NbGaussPoints/2,0,Degree)
|
||||
//! TabWeights (0,.) are only loaded for the odd values of NbGaussPoints
|
||||
//! The possible values for NbGaussPoints are : 8 , 10 , 15 ,20 ,25 , 30,
|
||||
//! 35 , 40 , 50 , 61 NbGaussPoints must be greater than Degree
|
||||
//! The possible values for NbGaussPoints are: 8, 10, 15, 20, 25, 30,
|
||||
//! 35, 40, 50, 61 NbGaussPoints must be greater than Degree
|
||||
Standard_EXPORT void Weights(const Standard_Integer theNbGaussPoints,
|
||||
TColStd_Array2OfReal& theTabWeights) const;
|
||||
|
||||
//! this method loads for k=0,q the maximum value of
|
||||
//! abs ( W(t)*Jk(t) )for t bellonging to [-1,1]
|
||||
//! abs ( W(t)*Jk(t) ) for t bellonging to [-1,1]
|
||||
//! This values are loaded is the array TabMax(0,myWorkDegree-2*(myNivConst+1))
|
||||
//! MaxValue ( me ; TabMaxPointer : in out Real );
|
||||
Standard_EXPORT void MaxValue(TColStd_Array1OfReal& theTabMax) const;
|
||||
|
||||
//! This method computes the maximum error on the polynomial
|
||||
//! W(t) Q(t) obtained by missing the coefficients of JacCoeff from
|
||||
//! This method computes the maximum error on the polynomial
|
||||
//! W(t) Q(t) obtained by missing the coefficients of JacCoeff from
|
||||
//! NewDegree +1 to Degree
|
||||
Standard_EXPORT Standard_Real MaxError(const Standard_Integer theDimension,
|
||||
Standard_Real& theJacCoeff,
|
||||
const Standard_Integer theNewDegree) const;
|
||||
|
||||
//! Compute NewDegree <= MaxDegree so that MaxError is lower
|
||||
//! Compute NewDegree <= MaxDegree so that MaxError is lower
|
||||
//! than Tol.
|
||||
//! MaxError can be greater than Tol if it is not possible
|
||||
//! MaxError can be greater than Tol if it is not possible
|
||||
//! to find a NewDegree <= MaxDegree.
|
||||
//! In this case NewDegree = MaxDegree
|
||||
Standard_EXPORT void ReduceDegree(const Standard_Integer theDimension,
|
||||
|
||||
@@ -32,23 +32,19 @@ class Poly_Polygon3D;
|
||||
class Poly_Polygon2D;
|
||||
class Poly_Triangle;
|
||||
|
||||
//! This package provides classes and services to
|
||||
//! handle :
|
||||
//!
|
||||
//! This package provides classes and services to
|
||||
//! handle:
|
||||
//! * 3D triangular polyhedrons.
|
||||
//!
|
||||
//! * 3D polygons.
|
||||
//!
|
||||
//! * 2D polygon.
|
||||
//!
|
||||
//! * Tools to dump, save and restore those objects.
|
||||
class Poly
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Computes and stores the link from nodes to
|
||||
//! triangles and from triangles to neighbouring
|
||||
//! Computes and stores the link from nodes to
|
||||
//! triangles and from triangles to neighbouring
|
||||
//! triangles.
|
||||
//! This tool is obsolete, replaced by Poly_CoherentTriangulation
|
||||
//! Algorithm to make minimal loops in a graph
|
||||
@@ -61,40 +57,40 @@ public:
|
||||
|
||||
//! Writes the content of the triangulation <T> on the
|
||||
//! stream <OS>. If <Compact> is true this is a "save"
|
||||
//! format intended to be read back with the Read
|
||||
//! method. If compact is False it is a "Dump" format
|
||||
//! format intended to be read back with the Read
|
||||
//! method. If compact is False it is a "Dump" format
|
||||
//! intended to be informative.
|
||||
Standard_EXPORT static void Write(const Handle(Poly_Triangulation)& T,
|
||||
Standard_OStream& OS,
|
||||
const Standard_Boolean Compact = Standard_True);
|
||||
|
||||
//! Writes the content of the 3D polygon <P> on the
|
||||
//! Writes the content of the 3D polygon <P> on the
|
||||
//! stream <OS>. If <Compact> is true this is a "save"
|
||||
//! format intended to be read back with the Read
|
||||
//! method. If compact is False it is a "Dump" format
|
||||
//! format intended to be read back with the Read
|
||||
//! method. If compact is False it is a "Dump" format
|
||||
//! intended to be informative.
|
||||
Standard_EXPORT static void Write(const Handle(Poly_Polygon3D)& P,
|
||||
Standard_OStream& OS,
|
||||
const Standard_Boolean Compact = Standard_True);
|
||||
|
||||
//! Writes the content of the 2D polygon <P> on the
|
||||
//! Writes the content of the 2D polygon <P> on the
|
||||
//! stream <OS>. If <Compact> is true this is a "save"
|
||||
//! format intended to be read back with the Read
|
||||
//! method. If compact is False it is a "Dump" format
|
||||
//! format intended to be read back with the Read
|
||||
//! method. If compact is False it is a "Dump" format
|
||||
//! intended to be informative.
|
||||
Standard_EXPORT static void Write(const Handle(Poly_Polygon2D)& P,
|
||||
Standard_OStream& OS,
|
||||
const Standard_Boolean Compact = Standard_True);
|
||||
|
||||
//! Dumps the triangulation. This is a call to the
|
||||
//! Dumps the triangulation. This is a call to the
|
||||
//! previous method with Comapct set to False.
|
||||
Standard_EXPORT static void Dump(const Handle(Poly_Triangulation)& T, Standard_OStream& OS);
|
||||
|
||||
//! Dumps the 3D polygon. This is a call to the
|
||||
//! Dumps the 3D polygon. This is a call to the
|
||||
//! previous method with Comapct set to False.
|
||||
Standard_EXPORT static void Dump(const Handle(Poly_Polygon3D)& P, Standard_OStream& OS);
|
||||
|
||||
//! Dumps the 2D polygon. This is a call to the
|
||||
//! Dumps the 2D polygon. This is a call to the
|
||||
//! previous method with Comapct set to False.
|
||||
Standard_EXPORT static void Dump(const Handle(Poly_Polygon2D)& P, Standard_OStream& OS);
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@ public:
|
||||
//! considers that it is working with a true polygon and not with
|
||||
//! an approximate representation of a curve. The Deflection
|
||||
//! function is used to modify the deflection value of this polygon.
|
||||
//! The deflection value can be used by any algorithm working with 2D polygons.
|
||||
//! The deflection value can be used by any algorithm working with 2D polygons.
|
||||
//! For example:
|
||||
//! - An algorithm may use a unique deflection value for all
|
||||
//! its polygons. In this case it is not necessary to use the
|
||||
|
||||
@@ -71,7 +71,7 @@ public:
|
||||
TColgp_Array1OfPnt& ChangeNodes() { return myNodes; }
|
||||
|
||||
//! Returns the table of the parameters associated with each node in this polygon.
|
||||
//! HasParameters function checks if parameters are associated with the nodes of this polygon.
|
||||
//! HasParameters function checks if parameters are associated with the nodes of this polygon.
|
||||
Standard_Boolean HasParameters() const { return !myParameters.IsNull(); }
|
||||
|
||||
//! Returns true if parameters are associated with the nodes
|
||||
|
||||
@@ -29,12 +29,9 @@ class TopLoc_Datum3D;
|
||||
//! An ItemLocation is an elementary coordinate system
|
||||
//! in a Location.
|
||||
//!
|
||||
//! The ItemLocation contains :
|
||||
//!
|
||||
//! The ItemLocation contains:
|
||||
//! * The elementary Datum.
|
||||
//!
|
||||
//! * The exponent of the elementary Datum.
|
||||
//!
|
||||
//! * The transformation associated to the composition.
|
||||
class TopLoc_ItemLocation
|
||||
{
|
||||
|
||||
@@ -57,28 +57,28 @@ public:
|
||||
//! Resets this location to the Identity transformation.
|
||||
void Identity();
|
||||
|
||||
//! Returns the first elementary datum of the
|
||||
//! Location. Use the NextLocation function recursively to access
|
||||
//! Returns the first elementary datum of the
|
||||
//! Location. Use the NextLocation function recursively to access
|
||||
//! the other data comprising this location.
|
||||
//! Exceptions
|
||||
//! Standard_NoSuchObject if this location is empty.
|
||||
const Handle(TopLoc_Datum3D)& FirstDatum() const;
|
||||
|
||||
//! Returns the power elevation of the first
|
||||
//! Returns the power elevation of the first
|
||||
//! elementary datum.
|
||||
//! Exceptions
|
||||
//! Standard_NoSuchObject if this location is empty.
|
||||
Standard_Integer FirstPower() const;
|
||||
|
||||
//! Returns a Location representing <me> without the
|
||||
//! first datum. We have the relation :
|
||||
//! Returns a Location representing <me> without the
|
||||
//! first datum. We have the relation:
|
||||
//!
|
||||
//! <me> = NextLocation() * FirstDatum() ^ FirstPower()
|
||||
//! Exceptions
|
||||
//! Standard_NoSuchObject if this location is empty.
|
||||
const TopLoc_Location& NextLocation() const;
|
||||
|
||||
//! Returns the transformation associated to the
|
||||
//! Returns the transformation associated to the
|
||||
//! coordinate system.
|
||||
Standard_EXPORT const gp_Trsf& Transformation() const;
|
||||
Standard_EXPORT operator gp_Trsf() const;
|
||||
@@ -88,7 +88,7 @@ public:
|
||||
//! <me> * Inverted() is an Identity.
|
||||
Standard_NODISCARD Standard_EXPORT TopLoc_Location Inverted() const;
|
||||
|
||||
//! Returns <me> * <Other>, the elementary datums are
|
||||
//! Returns <me> * <Other>, the elementary datums are
|
||||
//! concatenated.
|
||||
Standard_NODISCARD Standard_EXPORT TopLoc_Location Multiplied(const TopLoc_Location& Other) const;
|
||||
|
||||
@@ -97,7 +97,7 @@ public:
|
||||
return Multiplied(Other);
|
||||
}
|
||||
|
||||
//! Returns <me> / <Other>.
|
||||
//! Returns <me> / <Other>.
|
||||
Standard_NODISCARD Standard_EXPORT TopLoc_Location Divided(const TopLoc_Location& Other) const;
|
||||
|
||||
Standard_NODISCARD TopLoc_Location operator/(const TopLoc_Location& Other) const
|
||||
@@ -108,8 +108,8 @@ public:
|
||||
//! Returns <Other>.Inverted() * <me>.
|
||||
Standard_NODISCARD Standard_EXPORT TopLoc_Location Predivided(const TopLoc_Location& Other) const;
|
||||
|
||||
//! Returns me at the power <pwr>. If <pwr> is zero
|
||||
//! returns Identity. <pwr> can be lower than zero
|
||||
//! Returns me at the power <pwr>. If <pwr> is zero
|
||||
//! returns Identity. <pwr> can be lower than zero
|
||||
//! (usual meaning for powers).
|
||||
Standard_NODISCARD Standard_EXPORT TopLoc_Location Powered(const Standard_Integer pwr) const;
|
||||
|
||||
|
||||
@@ -26,14 +26,14 @@ class TopLoc_SListNodeOfItemLocation;
|
||||
class TopLoc_ItemLocation;
|
||||
|
||||
//! An SListOfItemLocation is a LISP like list of Items.
|
||||
//! An SListOfItemLocation is :
|
||||
//! An SListOfItemLocation is:
|
||||
//! . Empty.
|
||||
//! . Or it has a Value and a Tail which is an other SListOfItemLocation.
|
||||
//! . Or it has a Value and a Tail which is an other SListOfItemLocation.
|
||||
//!
|
||||
//! The Tail of an empty list is an empty list.
|
||||
//! SListOfItemLocation are shared. It means that they can be
|
||||
//! SListOfItemLocation are shared. It means that they can be
|
||||
//! modified through other lists.
|
||||
//! SListOfItemLocation may be used as Iterators. They have Next,
|
||||
//! SListOfItemLocation may be used as Iterators. They have Next,
|
||||
//! More, and value methods. To iterate on the content
|
||||
//! of the list S just do.
|
||||
//!
|
||||
@@ -48,17 +48,17 @@ public:
|
||||
//! Creates an empty List.
|
||||
TopLoc_SListOfItemLocation() {}
|
||||
|
||||
//! Creates a List with <anItem> as value and <aTail> as tail.
|
||||
//! Creates a List with <anItem> as value and <aTail> as tail.
|
||||
Standard_EXPORT TopLoc_SListOfItemLocation(const TopLoc_ItemLocation& anItem,
|
||||
const TopLoc_SListOfItemLocation& aTail);
|
||||
|
||||
//! Creates a list from an other one. The lists are shared.
|
||||
//! Creates a list from an other one. The lists are shared.
|
||||
TopLoc_SListOfItemLocation(const TopLoc_SListOfItemLocation& Other)
|
||||
: myNode(Other.myNode)
|
||||
{
|
||||
}
|
||||
|
||||
//! Sets a list from an other one. The lists are
|
||||
//! Sets a list from an other one. The lists are
|
||||
//! shared. The list itself is returned.
|
||||
Standard_EXPORT TopLoc_SListOfItemLocation& Assign(const TopLoc_SListOfItemLocation& Other);
|
||||
|
||||
@@ -91,15 +91,15 @@ public:
|
||||
~TopLoc_SListOfItemLocation() { Clear(); }
|
||||
|
||||
//! Returns the current value of the list. An error is
|
||||
//! raised if the list is empty.
|
||||
//! raised if the list is empty.
|
||||
Standard_EXPORT const TopLoc_ItemLocation& Value() const;
|
||||
|
||||
//! Returns the current tail of the list. On an empty
|
||||
//! Returns the current tail of the list. On an empty
|
||||
//! list the tail is the list itself.
|
||||
Standard_EXPORT const TopLoc_SListOfItemLocation& Tail() const;
|
||||
|
||||
//! Replaces the list by a list with <anItem> as Value
|
||||
//! and the list <me> as tail.
|
||||
//! and the list <me> as tail.
|
||||
void Construct(const TopLoc_ItemLocation& anItem)
|
||||
{
|
||||
Assign(TopLoc_SListOfItemLocation(anItem, *this));
|
||||
@@ -108,7 +108,7 @@ public:
|
||||
//! Replaces the list <me> by its tail.
|
||||
void ToTail() { Assign(Tail()); }
|
||||
|
||||
//! Returns True if the iterator has a current value.
|
||||
//! Returns True if the iterator has a current value.
|
||||
//! This is !IsEmpty()
|
||||
Standard_Boolean More() const { return !IsEmpty(); }
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ class gp_Dir2d;
|
||||
class gp_Ax2d;
|
||||
|
||||
//! The geometric processor package, called gp, provides an
|
||||
//! implementation of entities used :
|
||||
//! implementation of entities used:
|
||||
//! . for algebraic calculation such as "XYZ" coordinates, "Mat"
|
||||
//! matrix
|
||||
//! . for basis analytic geometry such as Transformations, point,
|
||||
@@ -72,15 +72,15 @@ public:
|
||||
Standard_EXPORT static const gp_Dir& DZ() noexcept;
|
||||
|
||||
//! Identifies an axis where its origin is Origin
|
||||
//! and its unit vector coordinates X = 1.0, Y = Z = 0.0
|
||||
//! and its unit vector coordinates X = 1.0, Y = Z = 0.0
|
||||
Standard_EXPORT static const gp_Ax1& OX() noexcept;
|
||||
|
||||
//! Identifies an axis where its origin is Origin
|
||||
//! and its unit vector coordinates Y = 1.0, X = Z = 0.0
|
||||
//! and its unit vector coordinates Y = 1.0, X = Z = 0.0
|
||||
Standard_EXPORT static const gp_Ax1& OY() noexcept;
|
||||
|
||||
//! Identifies an axis where its origin is Origin
|
||||
//! and its unit vector coordinates Z = 1.0, Y = X = 0.0
|
||||
//! and its unit vector coordinates Z = 1.0, Y = X = 0.0
|
||||
Standard_EXPORT static const gp_Ax1& OZ() noexcept;
|
||||
|
||||
//! Identifies a coordinate system where its origin is Origin,
|
||||
@@ -109,11 +109,11 @@ public:
|
||||
Standard_EXPORT static const gp_Dir2d& DY2d() noexcept;
|
||||
|
||||
//! Identifies an axis where its origin is Origin2d
|
||||
//! and its unit vector coordinates are: X = 1.0, Y = 0.0
|
||||
//! and its unit vector coordinates are: X = 1.0, Y = 0.0
|
||||
Standard_EXPORT static const gp_Ax2d& OX2d() noexcept;
|
||||
|
||||
//! Identifies an axis where its origin is Origin2d
|
||||
//! and its unit vector coordinates are Y = 1.0, X = 0.0
|
||||
//! and its unit vector coordinates are Y = 1.0, X = 0.0
|
||||
Standard_EXPORT static const gp_Ax2d& OY2d() noexcept;
|
||||
};
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ class gp_Mat2d
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Creates a matrix with null coefficients.
|
||||
//! Creates a matrix with null coefficients.
|
||||
constexpr gp_Mat2d() noexcept
|
||||
: myMat{{0.0, 0.0}, {0.0, 0.0}}
|
||||
{
|
||||
@@ -42,7 +42,7 @@ public:
|
||||
//! Raises OutOfRange if theCol < 1 or theCol > 2.
|
||||
Standard_EXPORT void SetCol(const Standard_Integer theCol, const gp_XY& theValue);
|
||||
|
||||
//! Assigns the number pairs theCol1, theCol2 to the two columns of this matrix
|
||||
//! Assigns the number pairs theCol1, theCol2 to the two columns of this matrix
|
||||
Standard_EXPORT void SetCols(const gp_XY& theCol1, const gp_XY& theCol2);
|
||||
|
||||
//! Modifies the main diagonal of the matrix.
|
||||
@@ -76,7 +76,7 @@ public:
|
||||
Standard_EXPORT void SetRows(const gp_XY& theRow1, const gp_XY& theRow2);
|
||||
|
||||
//! Modifies the matrix such that it
|
||||
//! represents a scaling transformation, where theS is the scale factor :
|
||||
//! represents a scaling transformation, where theS is the scale factor:
|
||||
//! @code
|
||||
//! | theS 0.0 |
|
||||
//! <me> = | 0.0 theS |
|
||||
|
||||
@@ -143,7 +143,7 @@ public:
|
||||
//! - a line parallel to the "Y Direction" of the local
|
||||
//! coordinate system of this parabola, and
|
||||
//! - located on the negative side of the axis of symmetry,
|
||||
//! at a distance from the apex which is equal to the focal length of this parabola.
|
||||
//! at a distance from the apex which is equal to the focal length of this parabola.
|
||||
//! The directrix is returned as an axis (a gp_Ax2d object),
|
||||
//! the origin of which is situated on the "X Axis" of this parabola.
|
||||
gp_Ax2d Directrix() const noexcept;
|
||||
|
||||
@@ -63,7 +63,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
//! Creates a plane with the "Location" point <theP>
|
||||
//! Creates a plane with the "Location" point <theP>
|
||||
//! and the normal direction <theV>.
|
||||
Standard_EXPORT gp_Pln(const gp_Pnt& theP, const gp_Dir& theV);
|
||||
|
||||
@@ -77,7 +77,7 @@ public:
|
||||
const Standard_Real theC,
|
||||
const Standard_Real theD);
|
||||
|
||||
//! Returns the coefficients of the plane's cartesian equation :
|
||||
//! Returns the coefficients of the plane's cartesian equation:
|
||||
//! @code
|
||||
//! theA * X + theB * Y + theC * Z + theD = 0.
|
||||
//! @endcode
|
||||
|
||||
@@ -45,7 +45,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
//! Creates a point with its 3 cartesian's coordinates : theXp, theYp, theZp.
|
||||
//! Creates a point with its 3 cartesian's coordinates: theXp, theYp, theZp.
|
||||
constexpr gp_Pnt(const Standard_Real theXp,
|
||||
const Standard_Real theYp,
|
||||
const Standard_Real theZp) noexcept
|
||||
@@ -53,7 +53,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
//! Changes the coordinate of range theIndex :
|
||||
//! Changes the coordinate of range theIndex:
|
||||
//! theIndex = 1 => X is modified
|
||||
//! theIndex = 2 => Y is modified
|
||||
//! theIndex = 3 => Z is modified
|
||||
@@ -63,7 +63,7 @@ public:
|
||||
coord.SetCoord(theIndex, theXi);
|
||||
}
|
||||
|
||||
//! For this point, assigns the values theXp, theYp and theZp to its three coordinates.
|
||||
//! For this point, assigns the values theXp, theYp and theZp to its three coordinates.
|
||||
constexpr void SetCoord(const Standard_Real theXp,
|
||||
const Standard_Real theYp,
|
||||
const Standard_Real theZp) noexcept
|
||||
@@ -144,7 +144,7 @@ public:
|
||||
|
||||
//! Performs the symmetrical transformation of a point
|
||||
//! with respect to the point theP which is the center of
|
||||
//! the symmetry.
|
||||
//! the symmetry.
|
||||
Standard_EXPORT void Mirror(const gp_Pnt& theP) noexcept;
|
||||
|
||||
//! Performs the symmetrical transformation of a point
|
||||
|
||||
@@ -27,7 +27,7 @@ class gp_Ax2d;
|
||||
class gp_Trsf2d;
|
||||
class gp_Vec2d;
|
||||
|
||||
//! Defines a non-persistent 2D cartesian point.
|
||||
//! Defines a non-persistent 2D cartesian point.
|
||||
class gp_Pnt2d
|
||||
{
|
||||
public:
|
||||
@@ -45,7 +45,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
//! Creates a point with its 2 cartesian's coordinates : theXp, theYp.
|
||||
//! Creates a point with its 2 cartesian's coordinates: theXp, theYp.
|
||||
constexpr gp_Pnt2d(const Standard_Real theXp, const Standard_Real theYp) noexcept
|
||||
: coord(theXp, theYp)
|
||||
{
|
||||
@@ -66,10 +66,10 @@ public:
|
||||
coord.SetCoord(theXp, theYp);
|
||||
}
|
||||
|
||||
//! Assigns the given value to the X coordinate of this point.
|
||||
//! Assigns the given value to the X coordinate of this point.
|
||||
constexpr void SetX(const Standard_Real theX) noexcept { coord.SetX(theX); }
|
||||
|
||||
//! Assigns the given value to the Y coordinate of this point.
|
||||
//! Assigns the given value to the Y coordinate of this point.
|
||||
constexpr void SetY(const Standard_Real theY) noexcept { coord.SetY(theY); }
|
||||
|
||||
//! Assigns the two coordinates of Coord to this point.
|
||||
@@ -87,7 +87,7 @@ public:
|
||||
coord.Coord(theXp, theYp);
|
||||
}
|
||||
|
||||
//! For this point, returns its X coordinate.
|
||||
//! For this point, returns its X coordinate.
|
||||
constexpr Standard_Real X() const noexcept { return coord.X(); }
|
||||
|
||||
//! For this point, returns its Y coordinate.
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
#include <gp_Quaternion.hxx>
|
||||
|
||||
//! Class perform linear interpolation (approximate rotation interpolation),
|
||||
//! result quaternion nonunit, its length lay between. sqrt(2)/2 and 1.0
|
||||
//! result quaternion nonunit, its length lay between. sqrt(2)/2 and 1.0
|
||||
class gp_QuaternionNLerp
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -51,8 +51,8 @@ public:
|
||||
}
|
||||
|
||||
//! Constructs a sphere with radius theRadius, centered on the origin
|
||||
//! of theA3. theA3 is the local coordinate system of the sphere.
|
||||
//! Warnings :
|
||||
//! of theA3. theA3 is the local coordinate system of the sphere.
|
||||
//! Warnings:
|
||||
//! It is not forbidden to create a sphere with null radius.
|
||||
//! Raises ConstructionError if theRadius < 0.0
|
||||
gp_Sphere(const gp_Ax3& theA3, const Standard_Real theRadius)
|
||||
@@ -99,11 +99,11 @@ public:
|
||||
Standard_Real& theC3,
|
||||
Standard_Real& theD) const;
|
||||
|
||||
//! Reverses the U parametrization of the sphere
|
||||
//! Reverses the U parametrization of the sphere
|
||||
//! reversing the YAxis.
|
||||
constexpr void UReverse() noexcept { pos.YReverse(); }
|
||||
|
||||
//! Reverses the V parametrization of the sphere
|
||||
//! Reverses the V parametrization of the sphere
|
||||
//! reversing the ZAxis.
|
||||
constexpr void VReverse() noexcept { pos.ZReverse(); }
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
//! Direction" and the "main Direction" of the coordinate
|
||||
//! system. It is centered on the "X Axis" of this coordinate
|
||||
//! system, and located at a distance, from the origin of
|
||||
//! this coordinate system, equal to the major radius of the torus;
|
||||
//! this coordinate system, equal to the major radius of the torus;
|
||||
//! - The "X Direction" and "Y Direction" define the
|
||||
//! reference plane of the torus.
|
||||
//! The coordinate system described above is the "local
|
||||
@@ -94,7 +94,7 @@ public:
|
||||
//! Changes the location of the torus.
|
||||
constexpr void SetLocation(const gp_Pnt& theLoc) noexcept { pos.SetLocation(theLoc); }
|
||||
|
||||
//! Assigns value to the major radius of this torus.
|
||||
//! Assigns value to the major radius of this torus.
|
||||
//! Raises ConstructionError if theMajorRadius - MinorRadius <= Resolution()
|
||||
void SetMajorRadius(const Standard_Real theMajorRadius)
|
||||
{
|
||||
@@ -103,7 +103,7 @@ public:
|
||||
majorRadius = theMajorRadius;
|
||||
}
|
||||
|
||||
//! Assigns value to the minor radius of this torus.
|
||||
//! Assigns value to the minor radius of this torus.
|
||||
//! Raises ConstructionError if theMinorRadius < 0.0 or if
|
||||
//! MajorRadius - theMinorRadius <= Resolution from gp.
|
||||
void SetMinorRadius(const Standard_Real theMinorRadius)
|
||||
@@ -123,11 +123,11 @@ public:
|
||||
return 4.0 * M_PI * M_PI * minorRadius * majorRadius;
|
||||
}
|
||||
|
||||
//! Reverses the U parametrization of the torus
|
||||
//! Reverses the U parametrization of the torus
|
||||
//! reversing the YAxis.
|
||||
constexpr void UReverse() noexcept { pos.YReverse(); }
|
||||
|
||||
//! Reverses the V parametrization of the torus
|
||||
//! Reverses the V parametrization of the torus
|
||||
//! reversing the ZAxis.
|
||||
constexpr void VReverse() noexcept { pos.ZReverse(); }
|
||||
|
||||
@@ -152,7 +152,7 @@ public:
|
||||
//! Coef(25) * X * Y * Z +
|
||||
//! Coef(26) * X^2 + Coef(27) * Y^2 + Coef(28) * Z^2 +
|
||||
//! Coef(29) * X * Y + Coef(30) * X * Z + Coef(31) * Y * Z +
|
||||
//! Coef(32) * X + Coef(33) * Y + Coef(34) * Z +
|
||||
//! Coef(32) * X + Coef(33) * Y + Coef(34) * Z +
|
||||
//! Coef(35) = 0.0
|
||||
//! @endcode
|
||||
//! Raises DimensionError if the length of theCoef is lower than 35.
|
||||
|
||||
@@ -63,7 +63,7 @@ public:
|
||||
//! Returns the identity transformation.
|
||||
constexpr gp_Trsf() noexcept;
|
||||
|
||||
//! Creates a 3D transformation from the 2D transformation theT.
|
||||
//! Creates a 3D transformation from the 2D transformation theT.
|
||||
//! The resulting transformation has a homogeneous
|
||||
//! vectorial part, V3, and a translation part, T3, built from theT:
|
||||
//! a11 a12
|
||||
@@ -110,7 +110,7 @@ public:
|
||||
|
||||
//! Changes the transformation into a scale.
|
||||
//! theP is the center of the scale and theS is the scaling value.
|
||||
//! Raises ConstructionError If <theS> is null.
|
||||
//! Raises ConstructionError If <theS> is null.
|
||||
Standard_EXPORT void SetScale(const gp_Pnt& theP, const Standard_Real theS);
|
||||
|
||||
//! Modifies this transformation so that it transforms the
|
||||
@@ -165,7 +165,7 @@ public:
|
||||
//! {P(0.,0.,0.), VX (1.,0.,0.), VY (0.,1.,0.), VZ (0., 0. ,1.) }
|
||||
//! @endcode
|
||||
//! to the local coordinate system defined with the Ax3 theToSystem.
|
||||
//! Use in the same way as the previous method. FromSystem1 is
|
||||
//! Use in the same way as the previous method. FromSystem1 is
|
||||
//! defaulted to the absolute coordinate system.
|
||||
Standard_EXPORT void SetTransformation(const gp_Ax3& theToSystem);
|
||||
|
||||
@@ -184,13 +184,13 @@ public:
|
||||
Standard_EXPORT void SetTranslationPart(const gp_Vec& theV) noexcept;
|
||||
|
||||
//! Modifies the scale factor.
|
||||
//! Raises ConstructionError If theS is null.
|
||||
//! Raises ConstructionError If theS is null.
|
||||
Standard_EXPORT void SetScaleFactor(const Standard_Real theS);
|
||||
|
||||
constexpr void SetForm(const gp_TrsfForm theP) noexcept { shape = theP; }
|
||||
|
||||
//! Sets the coefficients of the transformation. The
|
||||
//! transformation of the point x,y,z is the point
|
||||
//! Sets the coefficients of the transformation. The
|
||||
//! transformation of the point x,y,z is the point
|
||||
//! x',y',z' with :
|
||||
//! @code
|
||||
//! x' = a11 x + a12 y + a13 z + a14
|
||||
@@ -198,7 +198,7 @@ public:
|
||||
//! z' = a31 x + a32 y + a33 z + a34
|
||||
//! @endcode
|
||||
//! The method Value(i,j) will return aij.
|
||||
//! Raises ConstructionError if the determinant of the aij is null.
|
||||
//! Raises ConstructionError if the determinant of the aij is null.
|
||||
//! The matrix is orthogonalized before future using.
|
||||
Standard_EXPORT void SetValues(const Standard_Real a11,
|
||||
const Standard_Real a12,
|
||||
@@ -265,7 +265,7 @@ public:
|
||||
//! Raises an exception if the matrix of the transformation
|
||||
//! is not inversible, it means that the scale factor is lower
|
||||
//! or equal to Resolution from package gp.
|
||||
//! Computes the transformation composed with T and <me>.
|
||||
//! Computes the transformation composed with T and <me>.
|
||||
//! In a C++ implementation you can also write Tcomposed = <me> * T.
|
||||
//! Example :
|
||||
//! @code
|
||||
|
||||
@@ -99,7 +99,7 @@ public:
|
||||
//! this transformation is negative..
|
||||
constexpr Standard_Boolean IsNegative() const noexcept { return (matrix.Determinant() < 0.0); }
|
||||
|
||||
//! Returns the nature of the transformation. It can be an
|
||||
//! Returns the nature of the transformation. It can be an
|
||||
//! identity transformation, a rotation, a translation, a mirror
|
||||
//! (relative to a point or an axis), a scaling transformation,
|
||||
//! or a compound transformation.
|
||||
@@ -165,7 +165,7 @@ public:
|
||||
Standard_EXPORT void Power(const Standard_Integer theN);
|
||||
|
||||
//! Computes the following composition of transformations
|
||||
//! <me> * <me> * .......* <me>, theN time.
|
||||
//! <me> * <me> * .......* <me>, theN time.
|
||||
//! if theN = 0 <me> = Identity
|
||||
//! if theN < 0 <me> = <me>.Inverse() *...........* <me>.Inverse().
|
||||
//!
|
||||
@@ -180,11 +180,11 @@ public:
|
||||
|
||||
void Transforms(Standard_Real& theX, Standard_Real& theY) const noexcept;
|
||||
|
||||
//! Transforms a doublet XY with a Trsf2d
|
||||
//! Transforms a doublet XY with a Trsf2d
|
||||
void Transforms(gp_XY& theCoord) const noexcept;
|
||||
|
||||
//! Sets the coefficients of the transformation. The
|
||||
//! transformation of the point x,y is the point
|
||||
//! Sets the coefficients of the transformation. The
|
||||
//! transformation of the point x,y is the point
|
||||
//! x',y' with :
|
||||
//! @code
|
||||
//! x' = a11 x + a12 y + a13
|
||||
|
||||
@@ -111,7 +111,7 @@ public:
|
||||
//! For this vector, returns its Y coordinate.
|
||||
constexpr Standard_Real Y() const noexcept { return coord.Y(); }
|
||||
|
||||
//! For this vector, returns its Z coordinate.
|
||||
//! For this vector, returns its Z coordinate.
|
||||
constexpr Standard_Real Z() const noexcept { return coord.Z(); }
|
||||
|
||||
//! For this vector, returns
|
||||
@@ -410,7 +410,7 @@ public:
|
||||
|
||||
//! Performs the symmetrical transformation of a vector
|
||||
//! with respect to the vector theV which is the center of
|
||||
//! the symmetry.
|
||||
//! the symmetry.
|
||||
Standard_NODISCARD Standard_EXPORT gp_Vec Mirrored(const gp_Vec& theV) const noexcept;
|
||||
|
||||
Standard_EXPORT void Mirror(const gp_Ax1& theA1) noexcept;
|
||||
|
||||
@@ -82,13 +82,13 @@ public:
|
||||
//! Raised if theIndex != {1, 2}.
|
||||
Standard_Real Coord(const Standard_Integer theIndex) const { return coord.Coord(theIndex); }
|
||||
|
||||
//! For this vector, returns its two coordinates theXv and theYv
|
||||
//! For this vector, returns its two coordinates theXv and theYv
|
||||
void Coord(Standard_Real& theXv, Standard_Real& theYv) const { coord.Coord(theXv, theYv); }
|
||||
|
||||
//! For this vector, returns its X coordinate.
|
||||
//! For this vector, returns its X coordinate.
|
||||
constexpr Standard_Real X() const noexcept { return coord.X(); }
|
||||
|
||||
//! For this vector, returns its Y coordinate.
|
||||
//! For this vector, returns its Y coordinate.
|
||||
constexpr Standard_Real Y() const noexcept { return coord.Y(); }
|
||||
|
||||
//! For this vector, returns its two coordinates as a number pair
|
||||
@@ -300,12 +300,12 @@ public:
|
||||
|
||||
//! Performs the symmetrical transformation of a vector
|
||||
//! with respect to the vector theV which is the center of
|
||||
//! the symmetry.
|
||||
//! the symmetry.
|
||||
Standard_EXPORT void Mirror(const gp_Vec2d& theV);
|
||||
|
||||
//! Performs the symmetrical transformation of a vector
|
||||
//! with respect to the vector theV which is the center of
|
||||
//! the symmetry.
|
||||
//! the symmetry.
|
||||
Standard_NODISCARD Standard_EXPORT gp_Vec2d Mirrored(const gp_Vec2d& theV) const;
|
||||
|
||||
//! Performs the symmetrical transformation of a vector
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
//! This class describes a cartesian coordinate entity in 2D
|
||||
//! space {X,Y}. This class is non persistent. This entity used
|
||||
//! for algebraic calculation. An XY can be transformed with a
|
||||
//! Trsf2d or a GTrsf2d from package gp.
|
||||
//! Trsf2d or a GTrsf2d from package gp.
|
||||
//! It is used in vectorial computations or for holding this type
|
||||
//! of information in data structures.
|
||||
class gp_XY
|
||||
@@ -66,7 +66,7 @@ public:
|
||||
//! Assigns the given value to the X coordinate of this number pair.
|
||||
constexpr void SetX(const Standard_Real theX) noexcept { x = theX; }
|
||||
|
||||
//! Assigns the given value to the Y coordinate of this number pair.
|
||||
//! Assigns the given value to the Y coordinate of this number pair.
|
||||
constexpr void SetY(const Standard_Real theY) noexcept { y = theY; }
|
||||
|
||||
//! returns the coordinate of range theIndex :
|
||||
@@ -297,7 +297,7 @@ public:
|
||||
|
||||
Standard_NODISCARD constexpr gp_XY operator-() const noexcept { return Reversed(); }
|
||||
|
||||
//! Computes the following linear combination and
|
||||
//! Computes the following linear combination and
|
||||
//! assigns the result to this number pair:
|
||||
//! @code
|
||||
//! theA1 * theXY1 + theA2 * theXY2
|
||||
@@ -311,7 +311,7 @@ public:
|
||||
y = theA1 * theXY1.y + theA2 * theXY2.y;
|
||||
}
|
||||
|
||||
//! -- Computes the following linear combination and
|
||||
//! Computes the following linear combination and
|
||||
//! assigns the result to this number pair:
|
||||
//! @code
|
||||
//! theA1 * theXY1 + theA2 * theXY2 + theXY3
|
||||
@@ -326,7 +326,7 @@ public:
|
||||
y = theA1 * theXY1.y + theA2 * theXY2.y + theXY3.y;
|
||||
}
|
||||
|
||||
//! Computes the following linear combination and
|
||||
//! Computes the following linear combination and
|
||||
//! assigns the result to this number pair:
|
||||
//! @code
|
||||
//! theA1 * theXY1 + theXY2
|
||||
@@ -339,7 +339,7 @@ public:
|
||||
y = theA1 * theXY1.y + theXY2.y;
|
||||
}
|
||||
|
||||
//! Computes the following linear combination and
|
||||
//! Computes the following linear combination and
|
||||
//! assigns the result to this number pair:
|
||||
//! @code
|
||||
//! theXY1 + theXY2
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//! This class describes a cartesian coordinate entity in
|
||||
//! 3D space {X,Y,Z}. This entity is used for algebraic
|
||||
//! calculation. This entity can be transformed
|
||||
//! with a "Trsf" or a "GTrsf" from package "gp".
|
||||
//! with a "Trsf" or a "GTrsf" from package "gp".
|
||||
//! It is used in vectorial computations or for holding this type
|
||||
//! of information in data structures.
|
||||
class gp_XYZ
|
||||
|
||||
@@ -67,7 +67,7 @@ public:
|
||||
//! StdFail_NotDone if the algorithm fails (and IsDone returns false).
|
||||
Standard_Real Value(const Standard_Integer Nieme) const;
|
||||
|
||||
//! returns the StateNumber of the Nieme root.
|
||||
//! returns the StateNumber of the Nieme root.
|
||||
//! Exception RangeError is raised if Nieme is < 1
|
||||
//! or Nieme > NbSolutions.
|
||||
Standard_Integer StateNumber(const Standard_Integer Nieme) const;
|
||||
|
||||
@@ -25,10 +25,10 @@
|
||||
#include <Standard_OStream.hxx>
|
||||
class math_FunctionSet;
|
||||
|
||||
//! -- This class implements the integration of a set of N
|
||||
//! functions of M variables variables between the
|
||||
//! This class implements the integration of a set of N
|
||||
//! functions of M variables variables between the
|
||||
//! parameter bounds Lower[a..b] and Upper[a..b].
|
||||
//! Warning: - The case M>1 is not implemented.
|
||||
//! Warning: The case M>1 is not implemented.
|
||||
class math_GaussSetIntegration
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -41,7 +41,7 @@ public:
|
||||
const Standard_Real Upper,
|
||||
const Standard_Integer Order);
|
||||
|
||||
//! The Gauss-Legendre integration with N = Order points of integration and
|
||||
//! The Gauss-Legendre integration with N = Order points of integration and
|
||||
//! given tolerance = Tol is done on the function F between the bounds
|
||||
//! Lower and Upper.
|
||||
Standard_EXPORT math_GaussSingleIntegration(math_Function& F,
|
||||
@@ -61,7 +61,7 @@ public:
|
||||
|
||||
protected:
|
||||
private:
|
||||
//! performs actual computation
|
||||
//! performs actual computation
|
||||
Standard_EXPORT void Perform(math_Function& F,
|
||||
const Standard_Real Lower,
|
||||
const Standard_Real Upper,
|
||||
|
||||
@@ -78,7 +78,7 @@ public:
|
||||
|
||||
friend class math_VectorBase<>;
|
||||
|
||||
//! Constructs a non-initialized matrix of range [LowerRow..UpperRow,
|
||||
//! Constructs a non-initialized matrix of range [LowerRow..UpperRow,
|
||||
//! LowerCol..UpperCol]
|
||||
//! For the constructed matrix:
|
||||
//! - LowerRow and UpperRow are the indexes of the
|
||||
@@ -115,7 +115,7 @@ public:
|
||||
//! Initialize all the elements of a matrix to InitialValue.
|
||||
Standard_EXPORT void Init(const Standard_Real InitialValue);
|
||||
|
||||
//! Returns the number of rows of this matrix.
|
||||
//! Returns the number of rows of this matrix.
|
||||
//! Note that for a matrix A you always have the following relations:
|
||||
//! - A.RowNumber() = A.UpperRow() - A.LowerRow() + 1
|
||||
//! - A.ColNumber() = A.UpperCol() - A.LowerCol() + 1
|
||||
@@ -124,7 +124,7 @@ public:
|
||||
//! rows of A.returns the row range of a matrix.
|
||||
Standard_Integer RowNumber() const;
|
||||
|
||||
//! Returns the number of rows of this matrix.
|
||||
//! Returns the number of rows of this matrix.
|
||||
//! Note that for a matrix A you always have the following relations:
|
||||
//! - A.RowNumber() = A.UpperRow() - A.LowerRow() + 1
|
||||
//! - A.ColNumber() = A.UpperCol() - A.LowerCol() + 1
|
||||
@@ -244,7 +244,7 @@ public:
|
||||
|
||||
Standard_NODISCARD math_Matrix operator+(const math_Matrix& Right) const { return Added(Right); }
|
||||
|
||||
//! sets a matrix to the addition of <Left> and <Right>.
|
||||
//! sets a matrix to the addition of <Left> and <Right>.
|
||||
//! An exception is raised if the dimensions are different.
|
||||
Standard_EXPORT void Add(const math_Matrix& Left, const math_Matrix& Right);
|
||||
|
||||
|
||||
@@ -34,12 +34,12 @@ public:
|
||||
//! Returns the number of variables of the function.
|
||||
Standard_EXPORT virtual Standard_Integer NbVariables() const = 0;
|
||||
|
||||
//! Computes the values of the Functions <F> for the variable <X>.
|
||||
//! Computes the values of the Functions <F> for the variable <X>.
|
||||
//! Returns True if the computation was done successfully,
|
||||
//! False otherwise.
|
||||
Standard_EXPORT virtual Standard_Boolean Value(const math_Vector& X, Standard_Real& F) = 0;
|
||||
|
||||
//! Computes the gradient <G> of the functions for the variable <X>.
|
||||
//! Computes the gradient <G> of the functions for the variable <X>.
|
||||
//! Returns True if the computation was done successfully,
|
||||
//! False otherwise.
|
||||
Standard_EXPORT virtual Standard_Boolean Gradient(const math_Vector& X, math_Vector& G) = 0;
|
||||
|
||||
@@ -53,9 +53,9 @@ public:
|
||||
Standard_Real& F,
|
||||
math_Vector& G) = 0;
|
||||
|
||||
//! computes the value <F>, the gradient <G> and the
|
||||
//! hessian <H> of the functions for the variable <X>.
|
||||
//! Returns True if the computation was done
|
||||
//! computes the value <F>, the gradient <G> and the
|
||||
//! hessian <H> of the functions for the variable <X>.
|
||||
//! Returns True if the computation was done
|
||||
//! successfully, False otherwise.
|
||||
Standard_EXPORT virtual Standard_Boolean Values(const math_Vector& X,
|
||||
Standard_Real& F,
|
||||
|
||||
@@ -34,7 +34,7 @@ public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! The tolerance required on the solution is given by Tolerance.
|
||||
//! Iteration are stopped if (!WithSingularity) and H(F(Xi)) is not definite
|
||||
//! Iteration are stopped if (!WithSingularity) and H(F(Xi)) is not definite
|
||||
//! positive (if the smaller eigenvalue of H < Convexity)
|
||||
//! or IsConverged() returns True for 2 successives Iterations.
|
||||
//! Warning: This constructor does not perform computation.
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
//! This class implements a system resolution C*X = B with
|
||||
//! an approach solution X0. There are no conditions on the
|
||||
//! number of equations. The algorithm used is the Uzawa
|
||||
//! algorithm. It is possible to have equal or inequal (<)
|
||||
//! algorithm. It is possible to have equal or inequal (<)
|
||||
//! equations to solve. The resolution is done with a
|
||||
//! minimization of Norm(X-X0).
|
||||
//! If there are only equal equations, the resolution is directly
|
||||
|
||||
@@ -106,7 +106,7 @@ public:
|
||||
//! Returns the upper index of the vector
|
||||
inline Standard_Integer Upper() const { return Array.Upper(); }
|
||||
|
||||
//! Returns the value or the square of the norm of this vector.
|
||||
//! Returns the value or the square of the norm of this vector.
|
||||
inline Standard_Real Norm() const;
|
||||
|
||||
//! Returns the value of the square of the norm of a vector.
|
||||
@@ -115,7 +115,7 @@ public:
|
||||
//! Returns the index of the maximum element of a vector. (first found)
|
||||
inline Standard_Integer Max() const;
|
||||
|
||||
//! Returns the index of the minimum element of a vector. (first found)
|
||||
//! Returns the index of the minimum element of a vector. (first found)
|
||||
inline Standard_Integer Min() const;
|
||||
|
||||
//! Normalizes this vector (the norm of the result
|
||||
|
||||
@@ -106,12 +106,12 @@ public:
|
||||
|
||||
//! Query
|
||||
//! Returns true if the common block contains
|
||||
//! a pave block that is equal to <thePB>
|
||||
//! a pave block that is equal to <thePB>
|
||||
Standard_EXPORT Standard_Boolean Contains(const Handle(BOPDS_PaveBlock)& thePB) const;
|
||||
|
||||
//! Query
|
||||
//! Returns true if the common block contains
|
||||
//! the face with index equal to <theF>
|
||||
//! the face with index equal to <theF>
|
||||
Standard_EXPORT Standard_Boolean Contains(const Standard_Integer theF) const;
|
||||
|
||||
//! Modifier
|
||||
@@ -121,7 +121,7 @@ public:
|
||||
|
||||
//! Selector
|
||||
//! Returns the index of the edge
|
||||
//! of all pave blocks of the common block
|
||||
//! of all pave blocks of the common block
|
||||
Standard_EXPORT Standard_Integer Edge() const;
|
||||
|
||||
Standard_EXPORT void Dump() const;
|
||||
|
||||
@@ -76,12 +76,12 @@ public:
|
||||
//! of the curve
|
||||
BOPDS_ListOfPaveBlock& ChangePaveBlocks();
|
||||
|
||||
//! Creates initial pave block
|
||||
//! Creates initial pave block
|
||||
//! of the curve
|
||||
void InitPaveBlock1();
|
||||
|
||||
//! Selector/Modifier
|
||||
//! Returns initial pave block
|
||||
//! Returns initial pave block
|
||||
//! of the curve
|
||||
Handle(BOPDS_PaveBlock)& ChangePaveBlock1();
|
||||
|
||||
|
||||
@@ -59,20 +59,19 @@ class Bnd_Box;
|
||||
//! The class BOPDS_DS provides the control
|
||||
//! of data structure for the algorithms in the
|
||||
//! Boolean Component such as General Fuse, Boolean operations,
|
||||
//! Section, Maker Volume, Splitter and Cells Builder.<br>
|
||||
//! Section, Maker Volume, Splitter and Cells Builder.
|
||||
//!
|
||||
//! The data structure has the following contents:<br>
|
||||
//! 1. the arguments of an operation [myArguments];<br>
|
||||
//! 2 the information about arguments/new shapes
|
||||
//! The data structure has the following contents:
|
||||
//! 1. the arguments of an operation [myArguments];
|
||||
//! 2. the information about arguments/new shapes
|
||||
//! and their sub-shapes (type of the shape,
|
||||
//! bounding box, etc) [myLines];<br>
|
||||
//! bounding box, etc) [myLines];
|
||||
//! 3. each argument shape(and its subshapes)
|
||||
//! has/have own range of indices (rank);<br>
|
||||
//! 4. pave blocks on source edges [myPaveBlocksPool];<br>
|
||||
//! 5. the state of source faces [myFaceInfoPool];<br>
|
||||
//! 6 the collection of same domain shapes [myShapesSD];<br>
|
||||
//! 7 the collection of interferences [myInterfTB,
|
||||
//! myInterfVV,..myInterfFF]
|
||||
//! has/have own range of indices (rank);
|
||||
//! 4. pave blocks on source edges [myPaveBlocksPool];
|
||||
//! 5. the state of source faces [myFaceInfoPool];
|
||||
//! 6. the collection of same domain shapes [myShapesSD];
|
||||
//! 7. the collection of interferences [myInterfTB, myInterfVV,..myInterfFF]
|
||||
class BOPDS_DS
|
||||
{
|
||||
public:
|
||||
@@ -157,7 +156,7 @@ public:
|
||||
Standard_EXPORT const TopoDS_Shape& Shape(const Standard_Integer theIndex) const;
|
||||
|
||||
//! Selector
|
||||
//! Returns the index of the shape theS
|
||||
//! Returns the index of the shape theS
|
||||
Standard_EXPORT Standard_Integer Index(const TopoDS_Shape& theS) const;
|
||||
|
||||
//! Selector
|
||||
@@ -282,7 +281,7 @@ public:
|
||||
BOPDS_IndexedMapOfPaveBlock& thePBOnIn,
|
||||
BOPDS_MapOfPaveBlock& theCommonPB) const;
|
||||
|
||||
//! Returns the indices of edges that are shared
|
||||
//! Returns the indices of edges that are shared
|
||||
//! for the faces with indices theF1, theF2
|
||||
//!
|
||||
//! same domain shapes
|
||||
|
||||
@@ -58,13 +58,13 @@ public:
|
||||
|
||||
//! Selector
|
||||
//! Returns the pave blocks of the face
|
||||
//! that have state In
|
||||
//! that have state In
|
||||
const BOPDS_IndexedMapOfPaveBlock& PaveBlocksIn() const;
|
||||
|
||||
//! Selector/Modifier
|
||||
//! Returns the pave blocks
|
||||
//! of the face
|
||||
//! that have state In
|
||||
//! that have state In
|
||||
BOPDS_IndexedMapOfPaveBlock& ChangePaveBlocksIn();
|
||||
|
||||
//! Selector
|
||||
@@ -83,13 +83,13 @@ public:
|
||||
|
||||
//! Selector
|
||||
//! Returns the pave blocks of the face
|
||||
//! that have state On
|
||||
//! that have state On
|
||||
const BOPDS_IndexedMapOfPaveBlock& PaveBlocksOn() const;
|
||||
|
||||
//! Selector/Modifier
|
||||
//! Returns the pave blocks
|
||||
//! of the face
|
||||
//! that have state On
|
||||
//! that have state On
|
||||
BOPDS_IndexedMapOfPaveBlock& ChangePaveBlocksOn();
|
||||
|
||||
//! Selector
|
||||
@@ -108,18 +108,18 @@ public:
|
||||
|
||||
//! Selector
|
||||
//! Returns the pave blocks of the face
|
||||
//! that are pave blocks of section edges
|
||||
//! that are pave blocks of section edges
|
||||
const BOPDS_IndexedMapOfPaveBlock& PaveBlocksSc() const;
|
||||
|
||||
BOPDS_IndexedMapOfPaveBlock& ChangePaveBlocksSc();
|
||||
|
||||
//! Selector
|
||||
//! Returns the list of indices for section vertices
|
||||
//! Returns the list of indices for section vertices
|
||||
//! of the face
|
||||
const TColStd_MapOfInteger& VerticesSc() const;
|
||||
|
||||
//! Selector/Modifier
|
||||
//! Returns the list of indices for section vertices
|
||||
//! Returns the list of indices for section vertices
|
||||
//! of the face
|
||||
//!
|
||||
//! Others
|
||||
|
||||
@@ -32,11 +32,11 @@ public:
|
||||
BOPDS_IndexRange();
|
||||
|
||||
//! Modifier
|
||||
//! Sets the first index <theI1> of the range
|
||||
//! Sets the first index <theI1> of the range
|
||||
void SetFirst(const Standard_Integer theI1);
|
||||
|
||||
//! Modifier
|
||||
//! Sets the second index <theI2> of the range
|
||||
//! Sets the second index <theI2> of the range
|
||||
void SetLast(const Standard_Integer theI2);
|
||||
|
||||
//! Selector
|
||||
|
||||
@@ -58,12 +58,12 @@ public:
|
||||
//! Returns the data structure
|
||||
Standard_EXPORT const BOPDS_DS& DS() const;
|
||||
|
||||
//! Initializes the iterator
|
||||
//! Initializes the iterator
|
||||
//! theType1 - the first type of shape
|
||||
//! theType2 - the second type of shape
|
||||
Standard_EXPORT void Initialize(const TopAbs_ShapeEnum theType1, const TopAbs_ShapeEnum theType2);
|
||||
|
||||
//! Returns true if still there are pairs
|
||||
//! Returns true if still there are pairs
|
||||
//! of intersected shapes
|
||||
Standard_EXPORT Standard_Boolean More() const;
|
||||
|
||||
|
||||
@@ -54,15 +54,15 @@ public:
|
||||
void Contents(Standard_Integer& theIndex, Standard_Real& theParameter) const;
|
||||
|
||||
//! Query
|
||||
//! Returns true if thr parameter od this is less
|
||||
//! than the parameter of <theOther>
|
||||
//! Returns true if the parameter of this is less
|
||||
//! than the parameter of <theOther>
|
||||
Standard_Boolean IsLess(const BOPDS_Pave& theOther) const;
|
||||
|
||||
Standard_Boolean operator<(const BOPDS_Pave& theOther) const { return IsLess(theOther); }
|
||||
|
||||
//! Query
|
||||
//! Returns true if thr parameter od this is equal
|
||||
//! to the parameter of <theOther>
|
||||
//! Returns true if the parameter of this is equal
|
||||
//! to the parameter of <theOther>
|
||||
Standard_Boolean IsEqual(const BOPDS_Pave& theOther) const;
|
||||
|
||||
Standard_Boolean operator==(const BOPDS_Pave& theOther) const { return IsEqual(theOther); }
|
||||
|
||||
@@ -97,12 +97,12 @@ public:
|
||||
|
||||
//! Query
|
||||
//! Returns true if the pave block has pave indices
|
||||
//! that equal to the pave indices of the pave block
|
||||
//! that equal to the pave indices of the pave block
|
||||
//! <theOther>
|
||||
Standard_EXPORT Standard_Boolean HasSameBounds(const Handle(BOPDS_PaveBlock)& theOther) const;
|
||||
|
||||
//! Selector
|
||||
//! Returns the pave indices <theIndex1,theIndex2>
|
||||
//! Returns the pave indices <theIndex1,theIndex2>
|
||||
//! of the pave block
|
||||
Standard_EXPORT void Indices(Standard_Integer& theIndex1, Standard_Integer& theIndex2) const;
|
||||
|
||||
@@ -123,7 +123,7 @@ public:
|
||||
Standard_EXPORT void RemoveExtPave(const Standard_Integer theVertNum);
|
||||
|
||||
//! Selector
|
||||
//! Returns the extra paves
|
||||
//! Returns the extra paves
|
||||
Standard_EXPORT const BOPDS_ListOfPave& ExtPaves() const;
|
||||
|
||||
//! Selector / Modifier
|
||||
@@ -133,7 +133,7 @@ public:
|
||||
//! Modifier
|
||||
//! Updates the pave block. The extra paves are used
|
||||
//! to create new pave blocks <theLPB>.
|
||||
//! <theFlag> - if true, the first pave and the second
|
||||
//! <theFlag> - if true, the first and second
|
||||
//! pave are used to produce new pave blocks.
|
||||
Standard_EXPORT void Update(BOPDS_ListOfPaveBlock& theLPB,
|
||||
const Standard_Boolean theFlag = Standard_True);
|
||||
@@ -149,7 +149,7 @@ public:
|
||||
|
||||
//! Modifier
|
||||
//! Sets the shrunk data for the pave block
|
||||
//! <theTS1>, <theTS2> - shrunk range
|
||||
//! <theTS1>, <theTS2> - shrunk range
|
||||
//! <theBox> - the bounding box
|
||||
//! <theIsSplittable> - defines whether the edge can be split
|
||||
Standard_EXPORT void SetShrunkData(const Standard_Real theTS1,
|
||||
@@ -158,8 +158,8 @@ public:
|
||||
const Standard_Boolean theIsSplittable);
|
||||
|
||||
//! Selector
|
||||
//! Returns the shrunk data for the pave block
|
||||
//! <theTS1>, <theTS2> - shrunk range
|
||||
//! Returns the shrunk data for the pave block
|
||||
//! <theTS1>, <theTS2> - shrunk range
|
||||
//! <theBox> - the bounding box
|
||||
//! <theIsSplittable> - defines whether the edge can be split
|
||||
Standard_EXPORT void ShrunkData(Standard_Real& theTS1,
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
//! to integer value, that is returned
|
||||
static Standard_Integer TypeToInteger(const TopAbs_ShapeEnum theT);
|
||||
|
||||
//! Returns true if the type <theT> correspond
|
||||
//! Returns true if the type <theT> correspond
|
||||
//! to a shape having boundary representation
|
||||
static Standard_Boolean HasBRep(const TopAbs_ShapeEnum theT);
|
||||
|
||||
|
||||
@@ -96,7 +96,7 @@ public: //! @name Vertices construction
|
||||
const Standard_Real aTol,
|
||||
TopoDS_Vertex& aNewVertex);
|
||||
|
||||
//! Make a vertex using couple of vertices <aV1, aV2>
|
||||
//! Make a vertex using couple of vertices <aV1, aV2>
|
||||
Standard_EXPORT static void MakeNewVertex(const TopoDS_Vertex& aV1,
|
||||
const TopoDS_Vertex& aV2,
|
||||
TopoDS_Vertex& aNewVertex);
|
||||
@@ -117,21 +117,21 @@ public: //! @name Vertices construction
|
||||
TopoDS_Vertex& aNewVertex);
|
||||
|
||||
public: //! @name Updating the vertex
|
||||
//! Update the tolerance value for vertex <aV>
|
||||
//! Update the tolerance value for vertex <aV>
|
||||
//! taking into account the fact that <aV> lays on
|
||||
//! the curve <aIC>
|
||||
Standard_EXPORT static void UpdateVertex(const IntTools_Curve& aIC,
|
||||
const Standard_Real aT,
|
||||
const TopoDS_Vertex& aV);
|
||||
|
||||
//! Update the tolerance value for vertex <aV>
|
||||
//! Update the tolerance value for vertex <aV>
|
||||
//! taking into account the fact that <aV> lays on
|
||||
//! the edge <aE>
|
||||
Standard_EXPORT static void UpdateVertex(const TopoDS_Edge& aE,
|
||||
const Standard_Real aT,
|
||||
const TopoDS_Vertex& aV);
|
||||
|
||||
//! Update the tolerance value for vertex <aVN>
|
||||
//! Update the tolerance value for vertex <aVN>
|
||||
//! taking into account the fact that <aVN> should
|
||||
//! cover tolerance zone of <aVF>
|
||||
Standard_EXPORT static void UpdateVertex(const TopoDS_Vertex& aVF, const TopoDS_Vertex& aVN);
|
||||
@@ -158,7 +158,7 @@ public: //! @name Edge construction
|
||||
const Standard_Real aP2,
|
||||
TopoDS_Edge& aNewEdge);
|
||||
|
||||
//! Make the edge from 3D-Curve <aIC> and two vertices <aV1,aV2>
|
||||
//! Make the edge from 3D-Curve <aIC> and two vertices <aV1,aV2>
|
||||
//! at parameters <aP1,aP2>
|
||||
Standard_EXPORT static void MakeSectEdge(const IntTools_Curve& aIC,
|
||||
const TopoDS_Vertex& aV1,
|
||||
@@ -234,7 +234,7 @@ public: //! @name Face classification relatively solid
|
||||
|
||||
//! Returns True if the face theFace is inside of the
|
||||
//! couple of faces theFace1, theFace2.
|
||||
//! The faces theFace, theFace1, theFace2 must
|
||||
//! The faces theFace, theFace1, theFace2 must
|
||||
//! share the edge theEdge
|
||||
//! Return values:
|
||||
//! * 0 state is not IN
|
||||
@@ -248,9 +248,9 @@ public: //! @name Face classification relatively solid
|
||||
const Handle(IntTools_Context)& theContext);
|
||||
|
||||
//! Returns True if the face theFace is inside of the
|
||||
//! appropriate couple of faces (from the set theLF) .
|
||||
//! The faces of the set theLF and theFace must
|
||||
//! share the edge theEdge
|
||||
//! appropriate couple of faces (from the set theLF).
|
||||
//! The faces of the set theLF and theFace must share
|
||||
//! the edge theEdge
|
||||
//! * 0 state is not IN
|
||||
//! * 1 state is IN
|
||||
//! * 2 state can not be found by the method of angles
|
||||
@@ -438,8 +438,8 @@ public: //! @name Orienting elements in container
|
||||
public: //! @name Methods for shape validation (correction)
|
||||
//! Provides valid values of tolerances for the shape <theS>
|
||||
//! <theTolMax> is max value of the tolerance that can be
|
||||
//! accepted for correction. If real value of the tolerance
|
||||
//! will be greater than <aTolMax>, the correction does not
|
||||
//! accepted for correction. If real value of the tolerance
|
||||
//! will be greater than <aTolMax>, the correction does not
|
||||
//! perform.
|
||||
Standard_EXPORT static void CorrectTolerances(
|
||||
const TopoDS_Shape& theS,
|
||||
@@ -448,7 +448,7 @@ public: //! @name Methods for shape validation (correction)
|
||||
const Standard_Boolean theRunParallel = Standard_False);
|
||||
|
||||
//! Provides valid values of tolerances for the shape <theS>
|
||||
//! in terms of BRepCheck_InvalidCurveOnSurface.
|
||||
//! in terms of BRepCheck_InvalidCurveOnSurface.
|
||||
Standard_EXPORT static void CorrectCurveOnSurface(
|
||||
const TopoDS_Shape& theS,
|
||||
const TopTools_IndexedMapOfShape& theMapToAvoid,
|
||||
@@ -456,7 +456,7 @@ public: //! @name Methods for shape validation (correction)
|
||||
const Standard_Boolean theRunParallel = Standard_False);
|
||||
|
||||
//! Provides valid values of tolerances for the shape <theS>
|
||||
//! in terms of BRepCheck_InvalidPointOnCurve.
|
||||
//! in terms of BRepCheck_InvalidPointOnCurve.
|
||||
Standard_EXPORT static void CorrectPointOnCurve(
|
||||
const TopoDS_Shape& theS,
|
||||
const TopTools_IndexedMapOfShape& theMapToAvoid,
|
||||
@@ -480,7 +480,7 @@ public: //! Checking if the faces are coinciding
|
||||
public: //! @name Looking for the edge in the face
|
||||
//! Returns True if the face theFace contains
|
||||
//! the edge theEdge but with opposite orientation.
|
||||
//! If the method returns True theEdgeOff is the
|
||||
//! If the method returns True theEdgeOff is the
|
||||
//! edge founded
|
||||
Standard_EXPORT static Standard_Boolean GetEdgeOff(const TopoDS_Edge& theEdge,
|
||||
const TopoDS_Face& theFace,
|
||||
@@ -561,7 +561,7 @@ public: //! @name Other methods
|
||||
TopTools_ListOfShape& theList,
|
||||
TopTools_MapOfShape* theMap = NULL);
|
||||
|
||||
//! Returns true if the shell <theShell> is open
|
||||
//! Returns true if the shell <theShell> is open
|
||||
Standard_EXPORT static Standard_Boolean IsOpenShell(const TopoDS_Shell& theShell);
|
||||
};
|
||||
|
||||
|
||||
@@ -38,24 +38,24 @@ class BOPTools_AlgoTools2D
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Compute P-Curve for the edge <aE> on the face <aF>.<br>
|
||||
//! Raises exception Standard_ConstructionError if projection algorithm fails.<br>
|
||||
//! Compute P-Curve for the edge <aE> on the face <aF>.
|
||||
//! Raises exception Standard_ConstructionError if projection algorithm fails.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void BuildPCurveForEdgeOnFace(
|
||||
const TopoDS_Edge& aE,
|
||||
const TopoDS_Face& aF,
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Compute tangent for the edge <aE> [in 3D] at parameter <aT>
|
||||
//! Compute tangent for the edge <aE> [in 3D] at parameter <aT>
|
||||
Standard_EXPORT static Standard_Boolean EdgeTangent(const TopoDS_Edge& anE,
|
||||
const Standard_Real aT,
|
||||
gp_Vec& Tau);
|
||||
|
||||
//! Compute surface parameters <U,V> of the face <aF>
|
||||
//! for the point from the edge <aE> at parameter <aT>.<br>
|
||||
//! for the point from the edge <aE> at parameter <aT>.
|
||||
//! If <aE> has't pcurve on surface, algorithm tries to get it by
|
||||
//! projection and can
|
||||
//! raise exception Standard_ConstructionError if projection algorithm fails.<br>
|
||||
//! projection and can raise exception
|
||||
//! Standard_ConstructionError if projection algorithm fails.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void PointOnSurface(
|
||||
const TopoDS_Edge& aE,
|
||||
@@ -65,10 +65,10 @@ public:
|
||||
Standard_Real& V,
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Get P-Curve <aC> for the edge <aE> on surface <aF> .<br>
|
||||
//! If the P-Curve does not exist, build it using Make2D().<br>
|
||||
//! Get P-Curve <aC> for the edge <aE> on surface <aF>.
|
||||
//! If the P-Curve does not exist, build it using Make2D().
|
||||
//! [aToler] - reached tolerance
|
||||
//! Raises exception Standard_ConstructionError if algorithm Make2D() fails.<br>
|
||||
//! Raises exception Standard_ConstructionError if algorithm Make2D() fails.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void CurveOnSurface(
|
||||
const TopoDS_Edge& aE,
|
||||
@@ -77,11 +77,11 @@ public:
|
||||
Standard_Real& aToler,
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Get P-Curve <aC> for the edge <aE> on surface <aF> .<br>
|
||||
//! If the P-Curve does not exist, build it using Make2D().<br>
|
||||
//! Get P-Curve <aC> for the edge <aE> on surface <aF>.
|
||||
//! If the P-Curve does not exist, build it using Make2D().
|
||||
//! [aFirst, aLast] - range of the P-Curve<br>
|
||||
//! [aToler] - reached tolerance<br>
|
||||
//! Raises exception Standard_ConstructionError if algorithm Make2D() fails.<br>
|
||||
//! [aToler] - reached tolerance
|
||||
//! Raises exception Standard_ConstructionError if algorithm Make2D() fails.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void CurveOnSurface(
|
||||
const TopoDS_Edge& aE,
|
||||
@@ -92,8 +92,8 @@ public:
|
||||
Standard_Real& aToler,
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Returns TRUE if the edge <aE> has P-Curve <aC>
|
||||
//! on surface <aF> .
|
||||
//! Returns TRUE if the edge <aE> has P-Curve <aC>
|
||||
//! on surface <aF>.
|
||||
//! [aFirst, aLast] - range of the P-Curve
|
||||
//! [aToler] - reached tolerance
|
||||
//! If the P-Curve does not exist, aC.IsNull()=TRUE.
|
||||
@@ -104,13 +104,13 @@ public:
|
||||
Standard_Real& aLast,
|
||||
Standard_Real& aToler);
|
||||
|
||||
//! Returns TRUE if the edge <aE> has P-Curve <aC>
|
||||
//! on surface <aF> .
|
||||
//! Returns TRUE if the edge <aE> has P-Curve <aC>
|
||||
//! on surface <aF>.
|
||||
//! If the P-Curve does not exist, aC.IsNull()=TRUE.
|
||||
Standard_EXPORT static Standard_Boolean HasCurveOnSurface(const TopoDS_Edge& aE,
|
||||
const TopoDS_Face& aF);
|
||||
|
||||
//! Adjust P-Curve <theC2D> (3D-curve <theC3D>) on surface of the face <theF>.<br>
|
||||
//! Adjust P-Curve <theC2D> (3D-curve <theC3D>) on surface of the face <theF>.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void AdjustPCurveOnFace(
|
||||
const TopoDS_Face& theF,
|
||||
@@ -119,8 +119,8 @@ public:
|
||||
Handle(Geom2d_Curve)& theC2DA,
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Adjust P-Curve <aC2D> (3D-curve <C3D>) on surface <aF> .<br>
|
||||
//! [aT1, aT2] - range to adjust<br>
|
||||
//! Adjust P-Curve <aC2D> (3D-curve <C3D>) on surface <aF>.
|
||||
//! [aT1, aT2] - range to adjust
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void AdjustPCurveOnFace(
|
||||
const TopoDS_Face& theF,
|
||||
@@ -130,7 +130,7 @@ public:
|
||||
Handle(Geom2d_Curve)& theC2DA,
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Adjust P-Curve <aC2D> (3D-curve <C3D>) on surface <aF> .
|
||||
//! Adjust P-Curve <aC2D> (3D-curve <C3D>) on surface <aF>.
|
||||
//! [aT1, aT2] - range to adjust
|
||||
Standard_EXPORT static void AdjustPCurveOnSurf(const BRepAdaptor_Surface& aF,
|
||||
const Standard_Real aT1,
|
||||
@@ -138,17 +138,17 @@ public:
|
||||
const Handle(Geom2d_Curve)& aC2D,
|
||||
Handle(Geom2d_Curve)& aC2DA);
|
||||
|
||||
//! Compute intermediate value in between [aFirst, aLast] .
|
||||
//! Compute intermediate value in between [aFirst, aLast].
|
||||
Standard_EXPORT static Standard_Real IntermediatePoint(const Standard_Real aFirst,
|
||||
const Standard_Real aLast);
|
||||
|
||||
//! Compute intermediate value of parameter for the edge <anE>.
|
||||
Standard_EXPORT static Standard_Real IntermediatePoint(const TopoDS_Edge& anE);
|
||||
|
||||
//! Make P-Curve <aC> for the edge <aE> on surface <aF> .<br>
|
||||
//! [aFirst, aLast] - range of the P-Curve<br>
|
||||
//! [aToler] - reached tolerance<br>
|
||||
//! Raises exception Standard_ConstructionError if algorithm fails.<br>
|
||||
//! Make P-Curve <aC> for the edge <aE> on surface <aF>.
|
||||
//! [aFirst, aLast] - range of the P-Curve
|
||||
//! [aToler] - reached tolerance
|
||||
//! Raises exception Standard_ConstructionError if algorithm fails.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void Make2D(
|
||||
const TopoDS_Edge& aE,
|
||||
@@ -159,9 +159,9 @@ public:
|
||||
Standard_Real& aToler,
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Make P-Curve <aC> for the 3D-curve <C3D> on surface <aF> .<br>
|
||||
//! [aToler] - reached tolerance<br>
|
||||
//! Raises exception Standard_ConstructionError if projection algorithm fails.<br>
|
||||
//! Make P-Curve <aC> for the 3D-curve <C3D> on surface <aF>.
|
||||
//! [aToler] - reached tolerance
|
||||
//! Raises exception Standard_ConstructionError if projection algorithm fails.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void MakePCurveOnFace(
|
||||
const TopoDS_Face& aF,
|
||||
@@ -170,10 +170,10 @@ public:
|
||||
Standard_Real& aToler,
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Make P-Curve <aC> for the 3D-curve <C3D> on surface <aF> .<br>
|
||||
//! [aT1, aT2] - range to build<br>
|
||||
//! [aToler] - reached tolerance<br>
|
||||
//! Raises exception Standard_ConstructionError if projection algorithm fails.<br>
|
||||
//! Make P-Curve <aC> for the 3D-curve <C3D> on surface <aF>.
|
||||
//! [aT1, aT2] - range to build
|
||||
//! [aToler] - reached tolerance
|
||||
//! Raises exception Standard_ConstructionError if projection algorithm fails.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void MakePCurveOnFace(
|
||||
const TopoDS_Face& aF,
|
||||
|
||||
@@ -50,7 +50,7 @@ public:
|
||||
const TopoDS_Face& theFace);
|
||||
|
||||
//! Computes normal to the face <aF> for the point on the edge <aE>
|
||||
//! at parameter <aT>.<br>
|
||||
//! at parameter <aT>.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void GetNormalToFaceOnEdge(
|
||||
const TopoDS_Edge& aE,
|
||||
@@ -60,7 +60,7 @@ public:
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Computes normal to the face <aF> for the point on the edge <aE>
|
||||
//! at arbitrary intermediate parameter.<br>
|
||||
//! at arbitrary intermediate parameter.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void GetNormalToFaceOnEdge(
|
||||
const TopoDS_Edge& aE,
|
||||
@@ -68,8 +68,8 @@ public:
|
||||
gp_Dir& aD,
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Returns 1 if scalar product aNF1* aNF2>0.<br>
|
||||
//! Returns 0 if directions aNF1 aNF2 coincide<br>
|
||||
//! Returns 1 if scalar product aNF1* aNF2>0.
|
||||
//! Returns 0 if directions aNF1 aNF2 coincide
|
||||
//! Returns -1 if scalar product aNF1* aNF2<0.
|
||||
Standard_EXPORT static Standard_Integer SenseFlag(const gp_Dir& aNF1, const gp_Dir& aNF2);
|
||||
|
||||
@@ -81,18 +81,18 @@ public:
|
||||
gp_Dir& aD);
|
||||
|
||||
//! Computes normal to the face <aF> for the 3D-point that
|
||||
//! belongs to the edge <aE> at parameter <aT>.<br>
|
||||
//! Output:<br>
|
||||
//! aPx - the 3D-point where the normal computed<br>
|
||||
//! aD - the normal;<br>
|
||||
//! Warning:<br>
|
||||
//! belongs to the edge <aE> at parameter <aT>.
|
||||
//! Output:
|
||||
//! aPx - the 3D-point where the normal computed
|
||||
//! aD - the normal;
|
||||
//! Warning:
|
||||
//! The normal is computed not exactly in the point on the
|
||||
//! edge, but in point that is near to the edge towards to
|
||||
//! the face material (so, we'll have approx. normal);<br>
|
||||
//! the face material (so, we'll have approx. normal);
|
||||
//! The point is computed using PointNearEdge function,
|
||||
//! with the shifting value BOPTools_AlgoTools3D::MinStepIn2d(),
|
||||
//! from the edge, but if this value is too big,
|
||||
//! the point will be computed using Hatcher (PointInFace function).<br>
|
||||
//! the point will be computed using Hatcher (PointInFace function).
|
||||
//! Returns TRUE in case of success.
|
||||
Standard_EXPORT static Standard_Boolean GetApproxNormalToFaceOnEdge(
|
||||
const TopoDS_Edge& aE,
|
||||
@@ -103,17 +103,17 @@ public:
|
||||
const Handle(IntTools_Context)& theContext);
|
||||
|
||||
//! Computes normal to the face <aF> for the 3D-point that
|
||||
//! belongs to the edge <aE> at parameter <aT>.<br>
|
||||
//! Output:<br>
|
||||
//! aPx - the 3D-point where the normal computed<br>
|
||||
//! aD - the normal;<br>
|
||||
//! Warning:<br>
|
||||
//! belongs to the edge <aE> at parameter <aT>.
|
||||
//! Output:
|
||||
//! aPx - the 3D-point where the normal computed
|
||||
//! aD - the normal;
|
||||
//! Warning:
|
||||
//! The normal is computed not exactly in the point on the
|
||||
//! edge, but in point that is near to the edge towards to
|
||||
//! the face material (so, we'll have approx. normal);<br>
|
||||
//! the face material (so, we'll have approx. normal);
|
||||
//! The point is computed using PointNearEdge function
|
||||
//! with the shifting value <aDt2D> from the edge;<br>
|
||||
//! No checks on this value will be done.<br>
|
||||
//! with the shifting value <aDt2D> from the edge;
|
||||
//! No checks on this value will be done.
|
||||
//! Returns TRUE in case of success.
|
||||
Standard_EXPORT static Standard_Boolean GetApproxNormalToFaceOnEdge(const TopoDS_Edge& theE,
|
||||
const TopoDS_Face& theF,
|
||||
@@ -123,18 +123,18 @@ public:
|
||||
const Standard_Real aDt2D);
|
||||
|
||||
//! Computes normal to the face <aF> for the 3D-point that
|
||||
//! belongs to the edge <aE> at parameter <aT>.<br>
|
||||
//! Output:<br>
|
||||
//! aPx - the 3D-point where the normal computed<br>
|
||||
//! aD - the normal;<br>
|
||||
//! Warning:<br>
|
||||
//! belongs to the edge <aE> at parameter <aT>.
|
||||
//! Output:
|
||||
//! aPx - the 3D-point where the normal computed
|
||||
//! aD - the normal;
|
||||
//! Warning:
|
||||
//! The normal is computed not exactly in the point on the
|
||||
//! edge, but in point that is near to the edge towards to
|
||||
//! the face material (so, we'll have approx. normal);<br>
|
||||
//! the face material (so, we'll have approx. normal);
|
||||
//! The point is computed using PointNearEdge function
|
||||
//! with the shifting value <aDt2D> from the edge,
|
||||
//! but if this value is too big the point will be
|
||||
//! computed using Hatcher (PointInFace function).<br>
|
||||
//! computed using Hatcher (PointInFace function).
|
||||
//! Returns TRUE in case of success.
|
||||
Standard_EXPORT static Standard_Boolean GetApproxNormalToFaceOnEdge(
|
||||
const TopoDS_Edge& theE,
|
||||
@@ -145,15 +145,15 @@ public:
|
||||
gp_Dir& aDNF,
|
||||
const Handle(IntTools_Context)& theContext);
|
||||
|
||||
//! Compute the point <aPx>, (<aP2D>) that is near to
|
||||
//! the edge <aE> at parameter <aT> towards to the
|
||||
//! Compute the point <aPx>, (<aP2D>) that is near to
|
||||
//! the edge <aE> at parameter <aT> towards to the
|
||||
//! material of the face <aF>. The value of shifting in
|
||||
//! 2D is <aDt2D><br>
|
||||
//! 2D is <aDt2D>
|
||||
//! If the value of shifting is too big the point
|
||||
//! will be computed using Hatcher (PointInFace function).<br>
|
||||
//! Returns error status:<br>
|
||||
//! 0 - in case of success;<br>
|
||||
//! 1 - <aE> does not have 2d curve on the face <aF>;<br>
|
||||
//! will be computed using Hatcher (PointInFace function).
|
||||
//! Returns error status:
|
||||
//! 0 - in case of success;
|
||||
//! 1 - <aE> does not have 2d curve on the face <aF>;
|
||||
//! 2 - the computed point is out of the face.
|
||||
Standard_EXPORT static Standard_Integer PointNearEdge(const TopoDS_Edge& aE,
|
||||
const TopoDS_Face& aF,
|
||||
@@ -163,12 +163,12 @@ public:
|
||||
gp_Pnt& aPx,
|
||||
const Handle(IntTools_Context)& theContext);
|
||||
|
||||
//! Compute the point <aPx>, (<aP2D>) that is near to
|
||||
//! the edge <aE> at parameter <aT> towards to the
|
||||
//! Compute the point <aPx>, (<aP2D>) that is near to
|
||||
//! the edge <aE> at parameter <aT> towards to the
|
||||
//! material of the face <aF>. The value of shifting in
|
||||
//! 2D is <aDt2D>. No checks on this value will be done.<br>
|
||||
//! Returns error status:<br>
|
||||
//! 0 - in case of success;<br>
|
||||
//! 2D is <aDt2D>. No checks on this value will be done.
|
||||
//! Returns error status:
|
||||
//! 0 - in case of success;
|
||||
//! 1 - <aE> does not have 2d curve on the face <aF>.
|
||||
Standard_EXPORT static Standard_Integer PointNearEdge(const TopoDS_Edge& aE,
|
||||
const TopoDS_Face& aF,
|
||||
@@ -177,15 +177,15 @@ public:
|
||||
gp_Pnt2d& aP2D,
|
||||
gp_Pnt& aPx);
|
||||
|
||||
//! Computes the point <aPx>, (<aP2D>) that is near to
|
||||
//! the edge <aE> at parameter <aT> towards to the
|
||||
//! Computes the point <aPx>, (<aP2D>) that is near to
|
||||
//! the edge <aE> at parameter <aT> towards to the
|
||||
//! material of the face <aF>. The value of shifting in
|
||||
//! 2D is dt2D=BOPTools_AlgoTools3D::MinStepIn2d()<br>
|
||||
//! 2D is dt2D=BOPTools_AlgoTools3D::MinStepIn2d()
|
||||
//! If the value of shifting is too big the point will be computed
|
||||
//! using Hatcher (PointInFace function).<br>
|
||||
//! Returns error status:<br>
|
||||
//! 0 - in case of success;<br>
|
||||
//! 1 - <aE> does not have 2d curve on the face <aF>;<br>
|
||||
//! using Hatcher (PointInFace function).
|
||||
//! Returns error status:
|
||||
//! 0 - in case of success;
|
||||
//! 1 - <aE> does not have 2d curve on the face <aF>;
|
||||
//! 2 - the computed point is out of the face.
|
||||
Standard_EXPORT static Standard_Integer PointNearEdge(const TopoDS_Edge& aE,
|
||||
const TopoDS_Face& aF,
|
||||
@@ -194,15 +194,15 @@ public:
|
||||
gp_Pnt& aPx,
|
||||
const Handle(IntTools_Context)& theContext);
|
||||
|
||||
//! Compute the point <aPx>, (<aP2D>) that is near to
|
||||
//! the edge <aE> at arbitrary parameter towards to the
|
||||
//! Compute the point <aPx>, (<aP2D>) that is near to
|
||||
//! the edge <aE> at arbitrary parameter towards to the
|
||||
//! material of the face <aF>. The value of shifting in
|
||||
//! 2D is dt2D=BOPTools_AlgoTools3D::MinStepIn2d().<br>
|
||||
//! 2D is dt2D=BOPTools_AlgoTools3D::MinStepIn2d().
|
||||
//! If the value of shifting is too big the point will be computed
|
||||
//! using Hatcher (PointInFace function).<br>
|
||||
//! Returns error status:<br>
|
||||
//! 0 - in case of success;<br>
|
||||
//! 1 - <aE> does not have 2d curve on the face <aF>;<br>
|
||||
//! using Hatcher (PointInFace function).
|
||||
//! Returns error status:
|
||||
//! 0 - in case of success;
|
||||
//! 1 - <aE> does not have 2d curve on the face <aF>;
|
||||
//! 2 - the computed point is out of the face.
|
||||
Standard_EXPORT static Standard_Integer PointNearEdge(const TopoDS_Edge& aE,
|
||||
const TopoDS_Face& aF,
|
||||
@@ -215,7 +215,7 @@ public:
|
||||
Standard_EXPORT static Standard_Real MinStepIn2d();
|
||||
|
||||
//! Returns TRUE if the shape <aS> does not contain
|
||||
//! geometry information (e.g. empty compound)
|
||||
//! geometry information (e.g. empty compound)
|
||||
Standard_EXPORT static Standard_Boolean IsEmptyShape(const TopoDS_Shape& aS);
|
||||
|
||||
//! Get the edge <aER> from the face <aF> that is the same as
|
||||
@@ -224,9 +224,9 @@ public:
|
||||
const TopoDS_Face& aF,
|
||||
TopoDS_Edge& aER);
|
||||
|
||||
//! Computes arbitrary point <theP> inside the face <theF>.<br>
|
||||
//! <theP2D> - 2D representation of <theP>
|
||||
//! on the surface of <theF><br>
|
||||
//! Computes arbitrary point <theP> inside the face <theF>.
|
||||
//! <theP2D> - 2D representation of <theP>
|
||||
//! on the surface of <theF>
|
||||
//! Returns 0 in case of success.
|
||||
Standard_EXPORT static Standard_Integer PointInFace(const TopoDS_Face& theF,
|
||||
gp_Pnt& theP,
|
||||
@@ -237,10 +237,10 @@ public:
|
||||
//! using starting point taken by the parameter <theT>
|
||||
//! from the 2d curve of the edge <theE> on the face <theF>
|
||||
//! in the direction perpendicular to the tangent vector
|
||||
//! of the 2d curve of the edge.<br>
|
||||
//! of the 2d curve of the edge.
|
||||
//! The point will be distanced on <theDt2D> from the 2d curve.
|
||||
//! <theP2D> - 2D representation of <theP>
|
||||
//! on the surface of <theF><br>
|
||||
//! <theP2D> - 2D representation of <theP>
|
||||
//! on the surface of <theF>
|
||||
//! Returns 0 in case of success.
|
||||
Standard_EXPORT static Standard_Integer PointInFace(const TopoDS_Face& theF,
|
||||
const TopoDS_Edge& theE,
|
||||
@@ -253,7 +253,7 @@ public:
|
||||
//! Computes a point <theP> inside the face <theF>
|
||||
//! using the line <theL> so that 2D point
|
||||
//! <theP2D>, 2D representation of <theP>
|
||||
//! on the surface of <theF>, lies on that line.<br>
|
||||
//! on the surface of <theF>, lies on that line.
|
||||
//! Returns 0 in case of success.
|
||||
Standard_EXPORT static Standard_Integer PointInFace(const TopoDS_Face& theF,
|
||||
const Handle(Geom2d_Curve)& theL,
|
||||
|
||||
@@ -143,7 +143,7 @@ public: //! @name History support
|
||||
Standard_EXPORT virtual const TopTools_ListOfShape& Modified(const TopoDS_Shape& theS)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
//! Returns the list of shapes generated from the shape <theS>.
|
||||
//! Returns the list of shapes generated from the shape <theS>.
|
||||
//! In frames of Boolean Operations algorithms only Edges and Faces
|
||||
//! could have Generated elements, as only they produce new elements
|
||||
//! during intersection:
|
||||
|
||||
@@ -25,7 +25,7 @@ class BOPAlgo_PaveFiller;
|
||||
class TopoDS_Shape;
|
||||
|
||||
//! The class provides Boolean fusion operation
|
||||
//! between arguments and tools (Boolean Union).
|
||||
//! between arguments and tools (Boolean Union).
|
||||
class BRepAlgoAPI_Fuse : public BRepAlgoAPI_BooleanOperation
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -33,15 +33,15 @@ public:
|
||||
//! returns the length of the edge;
|
||||
Standard_EXPORT static Standard_Real Length(const TopoDS_Edge& E);
|
||||
|
||||
//! Remove from the sequence aSeq the Roots that have
|
||||
//! values ti and tj such as |ti-tj] < anEpsT.
|
||||
//! Remove from the sequence aSeq the Roots that have
|
||||
//! values ti and tj such as |ti-tj] < anEpsT.
|
||||
Standard_EXPORT static void RemoveIdenticalRoots(IntTools_SequenceOfRoots& aSeq,
|
||||
const Standard_Real anEpsT);
|
||||
|
||||
//! Sort the sequence aSeq of the Roots to arrange the Roots in increasing order.
|
||||
Standard_EXPORT static void SortRoots(IntTools_SequenceOfRoots& aSeq, const Standard_Real anEpsT);
|
||||
|
||||
//! Find the states (before and after) for each Root from the sequence aSeq
|
||||
//! Find the states (before and after) for each Root from the sequence aSeq
|
||||
Standard_EXPORT static void FindRootStates(IntTools_SequenceOfRoots& aSeq,
|
||||
const Standard_Real anEpsNull);
|
||||
|
||||
|
||||
@@ -26,8 +26,8 @@
|
||||
#include <Standard_Boolean.hxx>
|
||||
#include <gp_Pnt.hxx>
|
||||
|
||||
//! The class is to describe a common part
|
||||
//! between two edges in 3-d space.
|
||||
//! The class is to describe a common part
|
||||
//! between two edges in 3D space.
|
||||
class IntTools_CommonPrt
|
||||
{
|
||||
public:
|
||||
@@ -36,7 +36,7 @@ public:
|
||||
//! Empty constructor
|
||||
Standard_EXPORT IntTools_CommonPrt();
|
||||
|
||||
//! Copy constructor
|
||||
//! Copy constructor
|
||||
Standard_EXPORT IntTools_CommonPrt(const IntTools_CommonPrt& aCPrt);
|
||||
|
||||
Standard_EXPORT IntTools_CommonPrt& Assign(const IntTools_CommonPrt& Other);
|
||||
@@ -49,8 +49,8 @@ public:
|
||||
//! Sets the second edge.
|
||||
Standard_EXPORT void SetEdge2(const TopoDS_Edge& anE);
|
||||
|
||||
//! Sets the type of the common part
|
||||
//! Vertex or Edge
|
||||
//! Sets the type of the common part
|
||||
//! Vertex or Edge
|
||||
Standard_EXPORT void SetType(const TopAbs_ShapeEnum aType);
|
||||
|
||||
//! Sets the range of first edge.
|
||||
@@ -77,7 +77,7 @@ public:
|
||||
//! Returns the second edge
|
||||
Standard_EXPORT const TopoDS_Edge& Edge2() const;
|
||||
|
||||
//! Returns the type of the common part
|
||||
//! Returns the type of the common part
|
||||
Standard_EXPORT TopAbs_ShapeEnum Type() const;
|
||||
|
||||
//! Returns the range of first edge
|
||||
@@ -86,10 +86,10 @@ public:
|
||||
//! Returns the range of first edge.
|
||||
Standard_EXPORT void Range1(Standard_Real& tf, Standard_Real& tl) const;
|
||||
|
||||
//! Returns the ranges of second edge.
|
||||
//! Returns the ranges of second edge.
|
||||
Standard_EXPORT const IntTools_SequenceOfRanges& Ranges2() const;
|
||||
|
||||
//! Returns the ranges of second edge.
|
||||
//! Returns the ranges of second edge.
|
||||
Standard_EXPORT IntTools_SequenceOfRanges& ChangeRanges2();
|
||||
|
||||
//! Returns parameter of first vertex
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
#include <Standard_Real.hxx>
|
||||
|
||||
//! The class describes the 1-d range
|
||||
//! The class describes the 1-d range
|
||||
//! [myFirst, myLast].
|
||||
class IntTools_Range
|
||||
{
|
||||
|
||||
@@ -25,8 +25,8 @@
|
||||
#include <Standard_Boolean.hxx>
|
||||
|
||||
//! The class is to describe the root of
|
||||
//! function of one variable for Edge/Edge
|
||||
//! and Edge/Surface algorithms.
|
||||
//! function of one variable for Edge/Edge
|
||||
//! and Edge/Surface algorithms.
|
||||
class IntTools_Root
|
||||
{
|
||||
public:
|
||||
@@ -45,33 +45,33 @@ public:
|
||||
//! Sets the Root's Type
|
||||
Standard_EXPORT void SetType(const Standard_Integer aType);
|
||||
|
||||
//! Set the value of the state before the root
|
||||
//! (at t=Root-dt)
|
||||
//! Set the value of the state before the root
|
||||
//! (at t=Root-dt)
|
||||
Standard_EXPORT void SetStateBefore(const TopAbs_State aState);
|
||||
|
||||
//! Set the value of the state after the root
|
||||
//! (at t=Root-dt)
|
||||
//! Set the value of the state after the root
|
||||
//! (at t=Root-dt)
|
||||
Standard_EXPORT void SetStateAfter(const TopAbs_State aState);
|
||||
|
||||
//! Not used in Edge/Edge algorithm
|
||||
//! Not used in Edge/Edge algorithm
|
||||
Standard_EXPORT void SetLayerHeight(const Standard_Real aHeight);
|
||||
|
||||
//! Sets the interval from which the Root was
|
||||
//! found [t1,t2] and the corresponding values
|
||||
//! of the function on the bounds f(t1), f(t2).
|
||||
//! Sets the interval from which the Root was
|
||||
//! found [t1,t2] and the corresponding values
|
||||
//! of the function on the bounds f(t1), f(t2).
|
||||
Standard_EXPORT void SetInterval(const Standard_Real t1,
|
||||
const Standard_Real t2,
|
||||
const Standard_Real f1,
|
||||
const Standard_Real f2);
|
||||
|
||||
//! Returns the Root value
|
||||
//! Returns the Root value
|
||||
Standard_EXPORT Standard_Real Root() const;
|
||||
|
||||
//! Returns the type of the root
|
||||
//! =0 - Simple (was found by bisection method);
|
||||
//! =2 - Smart when f1=0, f2!=0 or vice versa
|
||||
//! (was found by Fibbonacci method);
|
||||
//! =1 - Pure (pure zero for all t [t1,t2] );
|
||||
//! Returns the type of the root
|
||||
//! =0 - Simple (was found by bisection method);
|
||||
//! =2 - Smart when f1=0, f2!=0 or vice versa
|
||||
//! (was found by Fibbonacci method);
|
||||
//! =1 - Pure (pure zero for all t [t1,t2]);
|
||||
Standard_EXPORT Standard_Integer Type() const;
|
||||
|
||||
//! Returns the state before the root
|
||||
@@ -80,7 +80,7 @@ public:
|
||||
//! Returns the state after the root
|
||||
Standard_EXPORT TopAbs_State StateAfter() const;
|
||||
|
||||
//! Not used in Edge/Edge algorithm
|
||||
//! Not used in Edge/Edge algorithm
|
||||
Standard_EXPORT Standard_Real LayerHeight() const;
|
||||
|
||||
//! Returns the validity flag for the root,
|
||||
@@ -88,13 +88,13 @@ public:
|
||||
//! myStateBefore==TopAbs_OUT && myStateAfter==TopAbs_IN or
|
||||
//! myStateBefore==TopAbs_OUT && myStateAfter==TopAbs_ON or
|
||||
//! myStateBefore==TopAbs_ON && myStateAfter==TopAbs_OUT or
|
||||
//! myStateBefore==TopAbs_IN && myStateAfter==TopAbs_OUT .
|
||||
//! For other cases it returns False.
|
||||
//! myStateBefore==TopAbs_IN && myStateAfter==TopAbs_OUT
|
||||
//! For other cases it returns False.
|
||||
Standard_EXPORT Standard_Boolean IsValid() const;
|
||||
|
||||
//! Returns the values of interval from which the Root was
|
||||
//! found [t1,t2] and the corresponding values
|
||||
//! of the function on the bounds f(t1), f(t2).
|
||||
//! Returns the values of interval from which the Root was
|
||||
//! found [t1,t2] and the corresponding values
|
||||
//! of the function on the bounds f(t1), f(t2).
|
||||
Standard_EXPORT void Interval(Standard_Real& t1,
|
||||
Standard_Real& t2,
|
||||
Standard_Real& f1,
|
||||
|
||||
@@ -63,17 +63,17 @@ public:
|
||||
static Standard_EXPORT TopoDS_Face ConvertFace(const TopoDS_Face& theFace,
|
||||
const Standard_Real theAngleTolerance);
|
||||
|
||||
//! Checks if the shape is "correct". If not, returns
|
||||
//! Checks if the shape is "correct". If not, returns
|
||||
//! <Standard_False>, else returns <Standard_True>.
|
||||
Standard_EXPORT static Standard_Boolean IsValid(const TopoDS_Shape& S);
|
||||
|
||||
//! Checks if the Generated and Modified Faces from
|
||||
//! the shapes <arguments> in the shape <result> are
|
||||
//! "correct". The args may be empty, then all faces
|
||||
//! Checks if the Generated and Modified Faces from
|
||||
//! the shapes <arguments> in the shape <result> are
|
||||
//! "correct". The args may be empty, then all faces
|
||||
//! will be checked.
|
||||
//! If <Closed> is True, only closed shape are valid.
|
||||
//! If <GeomCtrl> is False the geometry of new
|
||||
//! vertices and edges are not verified and the
|
||||
//! If <Closed> is True, only closed shape are valid.
|
||||
//! If <GeomCtrl> is False the geometry of new
|
||||
//! vertices and edges are not verified and the
|
||||
//! auto-intersection of new wires are not searched.
|
||||
Standard_EXPORT static Standard_Boolean IsValid(
|
||||
const TopTools_ListOfShape& theArgs,
|
||||
|
||||
@@ -63,8 +63,8 @@ public:
|
||||
//! Remove theS from me.
|
||||
Standard_EXPORT void Remove(const TopoDS_Shape& theS);
|
||||
|
||||
//! Returns True if (S1> and <S2> has common
|
||||
//! Descendants. Stores in <LC> the Commons Descendants.
|
||||
//! Returns True if (S1> and <S2> has common
|
||||
//! Descendants. Stores in <LC> the Commons Descendants.
|
||||
Standard_EXPORT Standard_Boolean HasCommonDescendant(const TopoDS_Shape& S1,
|
||||
const TopoDS_Shape& S2,
|
||||
TopTools_ListOfShape& LC) const;
|
||||
|
||||
@@ -24,10 +24,10 @@
|
||||
#include <TopTools_DataMapOfShapeListOfShape.hxx>
|
||||
class TopoDS_Wire;
|
||||
|
||||
//! Builds all the faces limited with a set of non
|
||||
//! jointing and planars wires. if
|
||||
//! <ControlOrientation> is false The Wires must have
|
||||
//! correct orientations. Sinon orientation des wires
|
||||
//! Builds all the faces limited with a set of non
|
||||
//! jointing and planars wires.
|
||||
//! if <ControlOrientation> is false The Wires must have
|
||||
//! correct orientations. Sinon orientation des wires
|
||||
//! de telle sorte que les faces ne soient pas infinies
|
||||
//! et qu'elles soient disjointes.
|
||||
class BRepAlgo_FaceRestrictor
|
||||
|
||||
@@ -81,7 +81,7 @@ public:
|
||||
Standard_EXPORT const TopTools_ListOfShape& Image(const TopoDS_Shape& S) const;
|
||||
|
||||
//! Stores in <L> the images of images of...images of <S>.
|
||||
//! <L> contains only <S> if HasImage(S) is false.
|
||||
//! <L> contains only <S> if HasImage(S) is false.
|
||||
Standard_EXPORT void LastImage(const TopoDS_Shape& S, TopTools_ListOfShape& L) const;
|
||||
|
||||
//! Keeps only the link between roots and lastimage.
|
||||
@@ -89,7 +89,7 @@ public:
|
||||
|
||||
//! Deletes in the images the shape of type <ShapeType>
|
||||
//! which are not in <S>.
|
||||
//! Warning: Compact() must be call before.
|
||||
//! Warning: Compact() must be call before.
|
||||
Standard_EXPORT void Filter(const TopoDS_Shape& S, const TopAbs_ShapeEnum ShapeType);
|
||||
|
||||
protected:
|
||||
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
//! Update VE map according to Image Vertex - Vertex
|
||||
Standard_EXPORT void UpdateVEmap(TopTools_IndexedDataMapOfShapeListOfShape& theVEmap);
|
||||
|
||||
//! Cut the edge <E> in several edges <NE> on the
|
||||
//! Cut the edge <E> in several edges <NE> on the
|
||||
//! vertices<VonE>.
|
||||
Standard_EXPORT void CutEdge(const TopoDS_Edge& E,
|
||||
const TopTools_ListOfShape& VonE,
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
class TopoDS_Edge;
|
||||
class Adaptor3d_Curve;
|
||||
|
||||
//! This class makes the projection of a wire on a
|
||||
//! This class makes the projection of a wire on a
|
||||
//! shape.
|
||||
class BRepAlgo_NormalProjection
|
||||
{
|
||||
@@ -45,11 +45,11 @@ public:
|
||||
//! Add an edge or a wire to the list of shape to project
|
||||
Standard_EXPORT void Add(const TopoDS_Shape& ToProj);
|
||||
|
||||
//! Set the parameters used for computation
|
||||
//! Tol3d is the required tolerance between the 3d projected
|
||||
//! curve and its 2d representation
|
||||
//! InternalContinuity is the order of constraints
|
||||
//! used for approximation.
|
||||
//! Set the parameters used for computation
|
||||
//! Tol3d is the required tolerance between the 3d projected
|
||||
//! curve and its 2d representation
|
||||
//! InternalContinuity is the order of constraints
|
||||
//! used for approximation.
|
||||
//! MaxDeg and MaxSeg are the maximum degree and the maximum
|
||||
//! number of segment for BSpline resulting of an approximation.
|
||||
Standard_EXPORT void SetParams(const Standard_Real Tol3D,
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
const Standard_Integer MaxDegree,
|
||||
const Standard_Integer MaxSeg);
|
||||
|
||||
//! Set the parameters used for computation
|
||||
//! Set the parameters used for computation
|
||||
//! in their default values
|
||||
Standard_EXPORT void SetDefaultParams();
|
||||
|
||||
@@ -68,14 +68,14 @@ public:
|
||||
//! if MaxDist < 0 then this method does not affect the algorithm
|
||||
Standard_EXPORT void SetMaxDistance(const Standard_Real MaxDist);
|
||||
|
||||
//! if With3d = Standard_False the 3dcurve is not computed
|
||||
//! the initial 3dcurve is kept to build the resulting edges.
|
||||
//! if With3d = Standard_False the 3dcurve is not computed
|
||||
//! the initial 3dcurve is kept to build the resulting edges.
|
||||
Standard_EXPORT void Compute3d(const Standard_Boolean With3d = Standard_True);
|
||||
|
||||
//! Manage limitation of projected edges.
|
||||
//! Manage limitation of projected edges.
|
||||
Standard_EXPORT void SetLimit(const Standard_Boolean FaceBoundaries = Standard_True);
|
||||
|
||||
//! Builds the result as a compound.
|
||||
//! Builds the result as a compound.
|
||||
Standard_EXPORT void Build();
|
||||
|
||||
Standard_EXPORT Standard_Boolean IsDone() const;
|
||||
@@ -89,7 +89,7 @@ public:
|
||||
//! For a projected edge, returns the corresponding initial face.
|
||||
Standard_EXPORT const TopoDS_Shape& Couple(const TopoDS_Edge& E) const;
|
||||
|
||||
//! Returns the list of shapes generated from the
|
||||
//! Returns the list of shapes generated from the
|
||||
//! shape <S>.
|
||||
Standard_EXPORT const TopTools_ListOfShape& Generated(const TopoDS_Shape& S);
|
||||
|
||||
|
||||
@@ -44,8 +44,8 @@ public:
|
||||
//! The wires must have the same number of edges.
|
||||
Standard_EXPORT static TopoDS_Shell Shell(const TopoDS_Wire& Wire1, const TopoDS_Wire& Wire2);
|
||||
|
||||
//! Computes <AxeProf> as Follow. <Location> is
|
||||
//! the Position of the nearest vertex V of <Profile>
|
||||
//! Computes <AxeProf> as Follow. <Location> is
|
||||
//! the Position of the nearest vertex V of <Profile>
|
||||
//! to <Spine>.<XDirection> is confused with the tangent
|
||||
//! to <Spine> at the projected point of V on the Spine.
|
||||
//! <Direction> is normal to <Spine>.
|
||||
@@ -56,10 +56,10 @@ public:
|
||||
Standard_Boolean& ProfOnSpine,
|
||||
const Standard_Real Tol);
|
||||
|
||||
//! Compute ACR on a wire
|
||||
//! Compute ACR on a wire
|
||||
Standard_EXPORT static void ComputeACR(const TopoDS_Wire& wire, TColStd_Array1OfReal& ACR);
|
||||
|
||||
//! Insert ACR on a wire
|
||||
//! Insert ACR on a wire
|
||||
Standard_EXPORT static TopoDS_Wire InsertACR(const TopoDS_Wire& wire,
|
||||
const TColStd_Array1OfReal& ACRcuts,
|
||||
const Standard_Real prec);
|
||||
|
||||
@@ -28,7 +28,7 @@ class GeomFill_LocationGuide;
|
||||
class BRepFill_ACRLaw;
|
||||
DEFINE_STANDARD_HANDLE(BRepFill_ACRLaw, BRepFill_LocationLaw)
|
||||
|
||||
//! Build Location Law, with a Wire. In the case
|
||||
//! Build Location Law, with a Wire. In the case
|
||||
//! of guided contour and trihedron by reduced
|
||||
//! curvilinear abscissa
|
||||
class BRepFill_ACRLaw : public BRepFill_LocationLaw
|
||||
|
||||
@@ -29,7 +29,7 @@ class BOPAlgo_MakerVolume;
|
||||
class TopoDS_Face;
|
||||
|
||||
//! Constructs an evolved volume from a spine (wire or face)
|
||||
//! and a profile ( wire).
|
||||
//! and a profile (wire).
|
||||
class BRepFill_AdvancedEvolved
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -44,11 +44,11 @@ public:
|
||||
//! returns the approximation of the 3d Curve
|
||||
Standard_EXPORT const Handle(Geom_Curve)& Curve() const;
|
||||
|
||||
//! returns the approximation of the PCurve on the
|
||||
//! returns the approximation of the PCurve on the
|
||||
//! first face of the MultiLine
|
||||
Standard_EXPORT const Handle(Geom2d_Curve)& CurveOnF1() const;
|
||||
|
||||
//! returns the approximation of the PCurve on the
|
||||
//! returns the approximation of the PCurve on the
|
||||
//! first face of the MultiLine
|
||||
Standard_EXPORT const Handle(Geom2d_Curve)& CurveOnF2() const;
|
||||
|
||||
|
||||
@@ -42,8 +42,8 @@ public:
|
||||
|
||||
Standard_EXPORT void SetPercent(const Standard_Real percent = 0.01);
|
||||
|
||||
//! Performs CompatibleWires According to the orientation
|
||||
//! and the origin of each other
|
||||
//! Performs CompatibleWires According to the orientation
|
||||
//! and the origin of each other
|
||||
Standard_EXPORT void Perform(const Standard_Boolean WithRotation = Standard_True);
|
||||
|
||||
Standard_EXPORT Standard_Boolean IsDone() const;
|
||||
@@ -53,7 +53,7 @@ public:
|
||||
//! returns the generated sequence.
|
||||
Standard_EXPORT const TopTools_SequenceOfShape& Shape() const;
|
||||
|
||||
//! Returns the shapes created from a subshape
|
||||
//! Returns the shapes created from a subshape
|
||||
//! <SubSection> of a section.
|
||||
Standard_EXPORT const TopTools_ListOfShape& GeneratedShapes(const TopoDS_Edge& SubSection) const;
|
||||
|
||||
@@ -65,23 +65,23 @@ public:
|
||||
|
||||
protected:
|
||||
private:
|
||||
//! Insert cutting points on closed wires to have same
|
||||
//! Insert cutting points on closed wires to have same
|
||||
//! number of edges. The sequence of shapes must
|
||||
//! be a sequence of wires.
|
||||
Standard_EXPORT void SameNumberByPolarMethod(const Standard_Boolean WithRotation = Standard_True);
|
||||
|
||||
//! Insert cutting points on open wires to have same
|
||||
//! Insert cutting points on open wires to have same
|
||||
//! number of edges. The sequence of shapes must
|
||||
//! be a sequence of wires.
|
||||
Standard_EXPORT void SameNumberByACR(const Standard_Boolean report);
|
||||
|
||||
//! Computes origins and orientation on closed wires to
|
||||
//! Computes origins and orientation on closed wires to
|
||||
//! avoid twisted results. The sequence of shapes must
|
||||
//! be a sequence of wires. <polar> must be true
|
||||
//! if SameNumberByPolarMethod was used before.
|
||||
Standard_EXPORT void ComputeOrigin(const Standard_Boolean polar);
|
||||
|
||||
//! Computes origins and orientation on open wires to
|
||||
//! Computes origins and orientation on open wires to
|
||||
//! avoid twisted results. The sequence of shapes must
|
||||
//! be a sequence of wires.
|
||||
Standard_EXPORT void SearchOrigin();
|
||||
|
||||
@@ -63,7 +63,7 @@ public:
|
||||
//! you have to use the Shape() methode.
|
||||
Standard_EXPORT TopoDS_Shell Shell() const;
|
||||
|
||||
//! Returns the list of shapes generated from the
|
||||
//! Returns the list of shapes generated from the
|
||||
//! shape <S>.
|
||||
Standard_EXPORT const TopTools_ListOfShape& Generated(const TopoDS_Shape& S);
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ class GeomFill_LocationDraft;
|
||||
class BRepFill_DraftLaw;
|
||||
DEFINE_STANDARD_HANDLE(BRepFill_DraftLaw, BRepFill_Edge3DLaw)
|
||||
|
||||
//! Build Location Law, with a Wire.
|
||||
//! Build Location Law, with a Wire.
|
||||
class BRepFill_DraftLaw : public BRepFill_Edge3DLaw
|
||||
{
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ class GeomFill_LocationLaw;
|
||||
class BRepFill_Edge3DLaw;
|
||||
DEFINE_STANDARD_HANDLE(BRepFill_Edge3DLaw, BRepFill_LocationLaw)
|
||||
|
||||
//! Build Location Law, with a Wire.
|
||||
//! Build Location Law, with a Wire.
|
||||
class BRepFill_Edge3DLaw : public BRepFill_LocationLaw
|
||||
{
|
||||
|
||||
|
||||
@@ -26,15 +26,15 @@ class TopoDS_Shape;
|
||||
class BRepFill_EdgeOnSurfLaw;
|
||||
DEFINE_STANDARD_HANDLE(BRepFill_EdgeOnSurfLaw, BRepFill_LocationLaw)
|
||||
|
||||
//! Build Location Law, with a Wire and a Surface.
|
||||
//! Build Location Law, with a Wire and a Surface.
|
||||
class BRepFill_EdgeOnSurfLaw : public BRepFill_LocationLaw
|
||||
{
|
||||
|
||||
public:
|
||||
Standard_EXPORT BRepFill_EdgeOnSurfLaw(const TopoDS_Wire& Path, const TopoDS_Shape& Surf);
|
||||
|
||||
//! returns <False> if one Edge of <Path> do not have
|
||||
//! representation on <Surf>. In this case it is
|
||||
//! returns <False> if one Edge of <Path> do not have
|
||||
//! representation on <Surf>. In this case it is
|
||||
//! impossible to use this object.
|
||||
Standard_EXPORT Standard_Boolean HasResult() const;
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ class TopoDS_Edge;
|
||||
class TopoDS_Vertex;
|
||||
|
||||
//! Constructs an evolved volume from a spine (wire or face)
|
||||
//! and a profile ( wire).
|
||||
//! and a profile ( wire).
|
||||
class BRepFill_Evolved
|
||||
{
|
||||
public:
|
||||
@@ -45,8 +45,8 @@ public:
|
||||
Standard_EXPORT BRepFill_Evolved();
|
||||
|
||||
//! Creates an evolved shape by sweeping the <Profile>
|
||||
//! along the <Spine>. <AxeProf> is used to set the
|
||||
//! position of <Profile> along <Spine> as follows:
|
||||
//! along the <Spine>. <AxeProf> is used to set the
|
||||
//! position of <Profile> along <Spine> as follows:
|
||||
//! <AxeProf> slides on the profile with direction
|
||||
//! colinear to the normal to <Spine>, and its
|
||||
//! <XDirection> mixed with the tangent to <Spine>.
|
||||
@@ -56,7 +56,7 @@ public:
|
||||
const GeomAbs_JoinType Join = GeomAbs_Arc,
|
||||
const Standard_Boolean Solid = Standard_False);
|
||||
|
||||
//! Creates an evolved shape by sweeping the <Profile>
|
||||
//! Creates an evolved shape by sweeping the <Profile>
|
||||
//! along the <Spine>
|
||||
Standard_EXPORT BRepFill_Evolved(const TopoDS_Face& Spine,
|
||||
const TopoDS_Wire& Profile,
|
||||
@@ -64,7 +64,7 @@ public:
|
||||
const GeomAbs_JoinType Join = GeomAbs_Arc,
|
||||
const Standard_Boolean Solid = Standard_False);
|
||||
|
||||
//! Performs an evolved shape by sweeping the <Profile>
|
||||
//! Performs an evolved shape by sweeping the <Profile>
|
||||
//! along the <Spine>
|
||||
Standard_EXPORT void Perform(const TopoDS_Wire& Spine,
|
||||
const TopoDS_Wire& Profile,
|
||||
@@ -72,7 +72,7 @@ public:
|
||||
const GeomAbs_JoinType Join = GeomAbs_Arc,
|
||||
const Standard_Boolean Solid = Standard_False);
|
||||
|
||||
//! Performs an evolved shape by sweeping the <Profile>
|
||||
//! Performs an evolved shape by sweeping the <Profile>
|
||||
//! along the <Spine>
|
||||
Standard_EXPORT void Perform(const TopoDS_Face& Spine,
|
||||
const TopoDS_Wire& Profile,
|
||||
@@ -85,8 +85,8 @@ public:
|
||||
//! returns the generated shape.
|
||||
Standard_EXPORT const TopoDS_Shape& Shape() const;
|
||||
|
||||
//! Returns the shapes created from a subshape
|
||||
//! <SpineShape> of the spine and a subshape
|
||||
//! Returns the shapes created from a subshape
|
||||
//! <SpineShape> of the spine and a subshape
|
||||
//! <ProfShape> on the profile.
|
||||
Standard_EXPORT const TopTools_ListOfShape& GeneratedShapes(const TopoDS_Shape& SpineShape,
|
||||
const TopoDS_Shape& ProfShape) const;
|
||||
@@ -96,7 +96,7 @@ public:
|
||||
//! Return the face Top if <Solid> is True in the constructor.
|
||||
Standard_EXPORT const TopoDS_Shape& Top() const;
|
||||
|
||||
//! Return the face Bottom if <Solid> is True in the constructor.
|
||||
//! Return the face Bottom if <Solid> is True in the constructor.
|
||||
Standard_EXPORT const TopoDS_Shape& Bottom() const;
|
||||
|
||||
protected:
|
||||
@@ -165,7 +165,7 @@ private:
|
||||
//! if the Shape is not planar.
|
||||
Standard_EXPORT TopLoc_Location FindLocation(const TopoDS_Face& Face) const;
|
||||
|
||||
//! Apply the Location <LS> to <mySpine> and <LP> to
|
||||
//! Apply the Location <LS> to <mySpine> and <LP> to
|
||||
//! <myProfil>
|
||||
//! in order to set the Shapes in the work space.
|
||||
Standard_EXPORT void TransformInitWork(const TopLoc_Location& LS, const TopLoc_Location& LP);
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
class TopoDS_Wire;
|
||||
class TopoDS_Shape;
|
||||
|
||||
//! Compute a topological surface ( a shell) using
|
||||
//! Compute a topological surface (a shell) using
|
||||
//! generating wires. The face of the shell will be
|
||||
//! ruled surfaces passing by the wires.
|
||||
//! The wires must have the same number of edges.
|
||||
@@ -43,16 +43,16 @@ public:
|
||||
|
||||
Standard_EXPORT void AddWire(const TopoDS_Wire& Wire);
|
||||
|
||||
//! Compute the shell.
|
||||
//! Compute the shell.
|
||||
Standard_EXPORT void Perform();
|
||||
|
||||
const TopoDS_Shell& Shell() const;
|
||||
|
||||
//! Returns all the shapes created
|
||||
//! Returns all the shapes created
|
||||
Standard_EXPORT const TopTools_DataMapOfShapeListOfShape& Generated() const;
|
||||
|
||||
//! Returns the shapes created from a subshape
|
||||
//! <SSection> of a section.
|
||||
//! Returns the shapes created from a subshape
|
||||
//! <SSection> of a section.
|
||||
Standard_EXPORT const TopTools_ListOfShape& GeneratedShapes(const TopoDS_Shape& SSection) const;
|
||||
|
||||
//! Returns a modified shape in the constructed shell,
|
||||
|
||||
@@ -37,21 +37,21 @@ class TopoDS_Shape;
|
||||
class BRepFill_LocationLaw;
|
||||
DEFINE_STANDARD_HANDLE(BRepFill_LocationLaw, Standard_Transient)
|
||||
|
||||
//! Location Law on a Wire.
|
||||
//! Location Law on a Wire.
|
||||
class BRepFill_LocationLaw : public Standard_Transient
|
||||
{
|
||||
|
||||
public:
|
||||
//! Return a error status, if the status is not PipeOk then
|
||||
//! Return a error status, if the status is not PipeOk then
|
||||
//! it exist a parameter tlike the law is not valuable for t.
|
||||
Standard_EXPORT GeomFill_PipeError GetStatus() const;
|
||||
|
||||
//! Apply a linear transformation on each law, to have
|
||||
//! Apply a linear transformation on each law, to have
|
||||
//! continuity of the global law between the edges.
|
||||
Standard_EXPORT virtual void TransformInG0Law();
|
||||
|
||||
//! Apply a linear transformation on each law, to reduce
|
||||
//! the dicontinuities of law at one rotation.
|
||||
//! the dicontinuities of law at one rotation.
|
||||
Standard_EXPORT virtual void TransformInCompatibleLaw(const Standard_Real AngularTolerance);
|
||||
|
||||
Standard_EXPORT void DeleteTransform();
|
||||
@@ -79,10 +79,10 @@ public:
|
||||
Standard_EXPORT TopoDS_Vertex Vertex(const Standard_Integer Index) const;
|
||||
|
||||
//! Compute <OutputVertex> like a transformation of
|
||||
//! <InputVertex> the transformation is given by
|
||||
//! evaluation of the location law in the vertex of
|
||||
//! rank <Index>.
|
||||
//! <Location> is used to manage discontinuities :
|
||||
//! <InputVertex> the transformation is given by
|
||||
//! evaluation of the location law in the vertex of
|
||||
//! rank <Index>.
|
||||
//! <Location> is used to manage discontinuities:
|
||||
//! - -1 : The law before the vertex is used.
|
||||
//! - 1 : The law after the vertex is used.
|
||||
//! - 0 : Average of the both laws is used.
|
||||
@@ -116,9 +116,9 @@ public:
|
||||
Standard_Integer& Index,
|
||||
Standard_Real& Param);
|
||||
|
||||
//! Return the curvilinear abscissa corresponding to a point
|
||||
//! of the path, defined by <Index> of Edge and a
|
||||
//! parameter on the edge.
|
||||
//! Return the curvilinear abscissa corresponding to a point
|
||||
//! of the path, defined by <Index> of Edge and a parameter
|
||||
//! on the edge.
|
||||
Standard_EXPORT Standard_Real Abscissa(const Standard_Integer Index, const Standard_Real Param);
|
||||
|
||||
DEFINE_STANDARD_RTTIEXT(BRepFill_LocationLaw, Standard_Transient)
|
||||
|
||||
@@ -40,9 +40,9 @@ class gp_Pnt2d;
|
||||
//! two 2d curves resulting from the intersection of a
|
||||
//! surface of linear extrusion( Bissec, Dz) and the 2
|
||||
//! faces.
|
||||
//! This 3 curves will have the same parametrization
|
||||
//! These 3 curves will have the same parametrization
|
||||
//! as the Bissectrice.
|
||||
//! This class is to be send to an approximation
|
||||
//! This class is to be sent to an approximation
|
||||
//! routine.
|
||||
class BRepFill_MultiLine : public AppCont_Function
|
||||
{
|
||||
@@ -64,8 +64,8 @@ public:
|
||||
//! Returns true if the approximation is not needed.
|
||||
Standard_EXPORT Standard_Boolean IsParticularCase() const;
|
||||
|
||||
//! Returns the continuity between the two faces
|
||||
//! seShape from GeomAbsparated by myBis.
|
||||
//! Returns the continuity between the two faces
|
||||
//! seShape from GeomAbsparated by myBis.
|
||||
Standard_EXPORT GeomAbs_Shape Continuity() const;
|
||||
|
||||
//! raises if IsParticularCase is <False>.
|
||||
|
||||
@@ -52,10 +52,10 @@ public:
|
||||
const Standard_Real VL,
|
||||
const Standard_Boolean Build = Standard_True);
|
||||
|
||||
//! Say if the input shape is a vertex.
|
||||
//! Say if the input shape is a vertex.
|
||||
Standard_EXPORT virtual Standard_Boolean IsVertex() const Standard_OVERRIDE;
|
||||
|
||||
//! Say if the Law is Constant.
|
||||
//! Say if the Law is Constant.
|
||||
Standard_EXPORT virtual Standard_Boolean IsConstant() const Standard_OVERRIDE;
|
||||
|
||||
//! Give the law build on a concatenated section
|
||||
|
||||
@@ -61,12 +61,12 @@ public:
|
||||
const GeomAbs_JoinType Join = GeomAbs_Arc,
|
||||
const Standard_Boolean IsOpenResult = Standard_False);
|
||||
|
||||
//! Performs an OffsetWire at an altitude <Alt> from
|
||||
//! the face ( According to the orientation of the
|
||||
//! Performs an OffsetWire at an altitude <Alt> from
|
||||
//! the face (According to the orientation of the
|
||||
//! face)
|
||||
Standard_EXPORT void Perform(const Standard_Real Offset, const Standard_Real Alt = 0.0);
|
||||
|
||||
//! Performs an OffsetWire
|
||||
//! Performs an OffsetWire
|
||||
Standard_EXPORT void PerformWithBiLo(const TopoDS_Face& WSP,
|
||||
const Standard_Real Offset,
|
||||
const BRepMAT2d_BisectingLocus& Locus,
|
||||
@@ -81,7 +81,7 @@ public:
|
||||
//! returns the generated shape.
|
||||
Standard_EXPORT const TopoDS_Shape& Shape() const;
|
||||
|
||||
//! Returns the shapes created from a subshape
|
||||
//! Returns the shapes created from a subshape
|
||||
//! <SpineShape> of the spine.
|
||||
//! Returns the last computed Offset.
|
||||
Standard_EXPORT const TopTools_ListOfShape& GeneratedShapes(const TopoDS_Shape& SpineShape);
|
||||
|
||||
@@ -37,10 +37,10 @@ class TopoDS_Vertex;
|
||||
class gp_Pnt;
|
||||
class BRepFill_Sweep;
|
||||
|
||||
//! Create a shape by sweeping a shape (the profile)
|
||||
//! Create a shape by sweeping a shape (the profile)
|
||||
//! along a wire (the spine).
|
||||
//!
|
||||
//! For each edge or vertex from the spine the user
|
||||
//! For each edge or vertex from the spine the user
|
||||
//! may ask for the shape generated from each subshape
|
||||
//! of the profile.
|
||||
class BRepFill_Pipe
|
||||
@@ -72,7 +72,7 @@ public:
|
||||
|
||||
Standard_EXPORT const TopoDS_Shape& LastShape() const;
|
||||
|
||||
//! Returns the list of shapes generated from the
|
||||
//! Returns the list of shapes generated from the
|
||||
//! shape <S>.
|
||||
Standard_EXPORT void Generated(const TopoDS_Shape& S, TopTools_ListOfShape& L);
|
||||
|
||||
@@ -83,11 +83,11 @@ public:
|
||||
|
||||
//! Returns the edge created from an edge of the spine
|
||||
//! and a vertex of the profile.
|
||||
//! if the edge or the vertex are not in the spine or
|
||||
//! if the edge or the vertex are not in the spine or
|
||||
//! the profile.
|
||||
Standard_EXPORT TopoDS_Edge Edge(const TopoDS_Edge& ESpine, const TopoDS_Vertex& VProfile);
|
||||
|
||||
//! Returns the shape created from the profile at the
|
||||
//! Returns the shape created from the profile at the
|
||||
//! position of the vertex VSpine.
|
||||
//! if the vertex is not in the Spine
|
||||
Standard_EXPORT TopoDS_Shape Section(const TopoDS_Vertex& VSpine) const;
|
||||
@@ -98,8 +98,7 @@ public:
|
||||
|
||||
protected:
|
||||
private:
|
||||
//! Auxiliary recursive method used to build the
|
||||
//! result.
|
||||
//! Auxiliary recursive method used to build the result.
|
||||
Standard_EXPORT TopoDS_Shape MakeShape(const TopoDS_Shape& S,
|
||||
const TopoDS_Shape& theOriginalS,
|
||||
const TopoDS_Shape& FirstShape,
|
||||
|
||||
@@ -58,34 +58,33 @@ public:
|
||||
Standard_EXPORT BRepFill_PipeShell(const TopoDS_Wire& Spine);
|
||||
|
||||
//! Set an Frenet or an CorrectedFrenet trihedron
|
||||
//! to perform the sweeping
|
||||
//! to perform the sweeping
|
||||
Standard_EXPORT void Set(const Standard_Boolean Frenet = Standard_False);
|
||||
|
||||
//! Set a Discrete trihedron
|
||||
//! to perform the sweeping
|
||||
//! Set a Discrete trihedron to perform the sweeping
|
||||
Standard_EXPORT void SetDiscrete();
|
||||
|
||||
//! Set an fixed trihedron to perform the sweeping
|
||||
//! Set an fixed trihedron to perform the sweeping
|
||||
//! all sections will be parallel.
|
||||
Standard_EXPORT void Set(const gp_Ax2& Axe);
|
||||
|
||||
//! Set an fixed BiNormal direction to perform
|
||||
//! Set an fixed BiNormal direction to perform
|
||||
//! the sweeping
|
||||
Standard_EXPORT void Set(const gp_Dir& BiNormal);
|
||||
|
||||
//! Set support to the spine to define the BiNormal
|
||||
//! at the spine, like the normal the surfaces.
|
||||
//! Warning: To be effective, Each edge of the <spine> must
|
||||
//! have an representation on one face of<SpineSupport>
|
||||
//! at the spine, like the normal the surfaces.
|
||||
//! Warning: To be effective, Each edge of the <spine> must
|
||||
//! have an representation on one face of<SpineSupport>
|
||||
Standard_EXPORT Standard_Boolean Set(const TopoDS_Shape& SpineSupport);
|
||||
|
||||
//! Set an auxiliary spine to define the Normal
|
||||
//! For each Point of the Spine P, an Point Q is evalued
|
||||
//! on <AuxiliarySpine>
|
||||
//! Set an auxiliary spine to define the Normal
|
||||
//! For each Point of the Spine P, an Point Q is evaluated
|
||||
//! on <AuxiliarySpine>
|
||||
//! If <CurvilinearEquivalence>
|
||||
//! Q split <AuxiliarySpine> with the same length ratio
|
||||
//! than P split <Spline>.
|
||||
//! Else the plan define by P and the tangent to the <Spine>
|
||||
//! Q split <AuxiliarySpine> with the same length ratio
|
||||
//! than P split <Spline>.
|
||||
//! Else the plan define by P and the tangent to the <Spine>
|
||||
//! intersect <AuxiliarySpine> in Q.
|
||||
//! If <KeepContact> equals BRepFill_NoContact: The Normal is defined
|
||||
//! by the vector PQ.
|
||||
@@ -114,7 +113,7 @@ public:
|
||||
//! a C1-continuous surface if a swept surface proved
|
||||
//! to be C0.
|
||||
//! Give section to sweep.
|
||||
//! Possibilities are :
|
||||
//! Possibilities are:
|
||||
//! - Give one or several profile
|
||||
//! - Give one profile and an homotetic law.
|
||||
//! - Automatic compute of correspondence between profile, and section on the sweeped shape
|
||||
@@ -145,15 +144,15 @@ public:
|
||||
const Standard_Boolean WithContact = Standard_False,
|
||||
const Standard_Boolean WithCorrection = Standard_False);
|
||||
|
||||
//! Set an section and an homotetic law.
|
||||
//! The homotetie's centers is given by point on the <Spine>.
|
||||
//! Set an section and an homotetic law.
|
||||
//! The homotetie's centers is given by point on the <Spine>.
|
||||
Standard_EXPORT void SetLaw(const TopoDS_Shape& Profile,
|
||||
const Handle(Law_Function)& L,
|
||||
const Standard_Boolean WithContact = Standard_False,
|
||||
const Standard_Boolean WithCorrection = Standard_False);
|
||||
|
||||
//! Set an section and an homotetic law.
|
||||
//! The homotetie center is given by point on the <Spine>
|
||||
//! Set an section and an homotetic law.
|
||||
//! The homotetie center is given by point on the <Spine>
|
||||
Standard_EXPORT void SetLaw(const TopoDS_Shape& Profile,
|
||||
const Handle(Law_Function)& L,
|
||||
const TopoDS_Vertex& Location,
|
||||
@@ -174,13 +173,13 @@ public:
|
||||
const Standard_Real BoundTol = 1.0e-4,
|
||||
const Standard_Real TolAngular = 1.0e-2);
|
||||
|
||||
//! Set the Transition Mode to manage discontinuities
|
||||
//! Set the Transition Mode to manage discontinuities
|
||||
//! on the sweep.
|
||||
Standard_EXPORT void SetTransition(const BRepFill_TransitionStyle Mode = BRepFill_Modified,
|
||||
const Standard_Real Angmin = 1.0e-2,
|
||||
const Standard_Real Angmax = 6.0);
|
||||
|
||||
//! Perform simulation of the sweep :
|
||||
//! Perform simulation of the sweep:
|
||||
//! Some Section are returned.
|
||||
Standard_EXPORT void Simulate(const Standard_Integer NumberOfSection,
|
||||
TopTools_ListOfShape& Sections);
|
||||
@@ -197,7 +196,7 @@ public:
|
||||
|
||||
Standard_EXPORT Standard_Real ErrorOnSurface() const;
|
||||
|
||||
//! Returns the TopoDS Shape of the bottom of the sweep.
|
||||
//! Returns the TopoDS Shape of the bottom of the sweep.
|
||||
Standard_EXPORT const TopoDS_Shape& FirstShape() const;
|
||||
|
||||
//! Returns the TopoDS Shape of the top of the sweep.
|
||||
@@ -213,7 +212,7 @@ public:
|
||||
//! Returns the spine
|
||||
const TopoDS_Wire& Spine() { return mySpine; }
|
||||
|
||||
//! Returns the list of shapes generated from the
|
||||
//! Returns the list of shapes generated from the
|
||||
//! shape <S>.
|
||||
Standard_EXPORT void Generated(const TopoDS_Shape& S, TopTools_ListOfShape& L);
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ public:
|
||||
|
||||
Standard_EXPORT Standard_Boolean IsDone() const;
|
||||
|
||||
//! Say if the input shape is a vertex.
|
||||
//! Say if the input shape is a vertex.
|
||||
Standard_EXPORT virtual Standard_Boolean IsVertex() const = 0;
|
||||
|
||||
Standard_EXPORT virtual Handle(GeomFill_SectionLaw) ConcatenedLaw() const = 0;
|
||||
|
||||
@@ -52,10 +52,10 @@ public:
|
||||
const Handle(Law_Function)& L,
|
||||
const Standard_Boolean Build = Standard_True);
|
||||
|
||||
//! Say if the input shape is a vertex.
|
||||
//! Say if the input shape is a vertex.
|
||||
Standard_EXPORT virtual Standard_Boolean IsVertex() const Standard_OVERRIDE;
|
||||
|
||||
//! Say if the Law is Constant.
|
||||
//! Say if the Law is Constant.
|
||||
Standard_EXPORT virtual Standard_Boolean IsConstant() const Standard_OVERRIDE;
|
||||
|
||||
//! Give the law build on a concatenated section
|
||||
|
||||
@@ -36,7 +36,7 @@ class BRepFill_SectionLaw;
|
||||
class TopoDS_Edge;
|
||||
|
||||
//! Topological Sweep Algorithm
|
||||
//! Computes an Sweep shell using a generating
|
||||
//! Computes an Sweep shell using a generating
|
||||
//! wire, an SectionLaw and an LocationLaw.
|
||||
class BRepFill_Sweep
|
||||
{
|
||||
@@ -101,10 +101,10 @@ public:
|
||||
//! Say if the Shape is Build.
|
||||
Standard_EXPORT Standard_Boolean IsDone() const;
|
||||
|
||||
//! returns the Sweeping Shape
|
||||
//! Returns the Sweeping Shape
|
||||
Standard_EXPORT TopoDS_Shape Shape() const;
|
||||
|
||||
//! Get the Approximation error.
|
||||
//! Get the Approximation error.
|
||||
Standard_EXPORT Standard_Real ErrorOnSurface() const;
|
||||
|
||||
Standard_EXPORT Handle(TopTools_HArray2OfShape) SubShape() const;
|
||||
@@ -113,7 +113,7 @@ public:
|
||||
|
||||
Standard_EXPORT Handle(TopTools_HArray2OfShape) Sections() const;
|
||||
|
||||
//! returns the Tape corresponding to Index-th edge of section
|
||||
//! Returns the Tape corresponding to Index-th edge of section
|
||||
Standard_EXPORT TopoDS_Shape Tape(const Standard_Integer Index) const;
|
||||
|
||||
protected:
|
||||
|
||||
@@ -29,7 +29,7 @@ class Geom2d_Curve;
|
||||
class gp_Pnt2d;
|
||||
class Geom_Curve;
|
||||
|
||||
//! Compute the Pcurves and the 3d curves resulting
|
||||
//! Compute the Pcurves and the 3d curves resulting
|
||||
//! of the trimming of a face by an extruded surface.
|
||||
class BRepFill_TrimSurfaceTool
|
||||
{
|
||||
@@ -44,7 +44,7 @@ public:
|
||||
const Standard_Boolean Inv1,
|
||||
const Standard_Boolean Inv2);
|
||||
|
||||
//! Intersect <Bis> with the projection of the edges
|
||||
//! Intersect <Bis> with the projection of the edges
|
||||
//! <EdgeOnFi> and returns the intersecting parameters
|
||||
//! on Bis and on the edges
|
||||
//! P.X() : Parameter on Bis
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
//! returns True if the Line (P, DZ) intersect the Faces
|
||||
Standard_EXPORT Standard_Boolean IsOnFace(const gp_Pnt2d& Point) const;
|
||||
|
||||
//! returns the parameter of the point <Point> on the
|
||||
//! returns the parameter of the point <Point> on the
|
||||
//! Edge <Edge>, assuming that the point is on the edge.
|
||||
Standard_EXPORT Standard_Real ProjOn(const gp_Pnt2d& Point, const TopoDS_Edge& Edge) const;
|
||||
|
||||
|
||||
@@ -29,10 +29,10 @@
|
||||
class gp_Dir;
|
||||
class gp_Pnt;
|
||||
|
||||
//! The Projection class provides conical and
|
||||
//! cylindrical projections of Edge or Wire on
|
||||
//! The Projection class provides conical and
|
||||
//! cylindrical projections of Edge or Wire on
|
||||
//! a Shape from TopoDS. The result will be a Edge
|
||||
//! or Wire from TopoDS.
|
||||
//! or Wire from TopoDS.
|
||||
class BRepProj_Projection
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -24,14 +24,14 @@
|
||||
#include <Standard_OStream.hxx>
|
||||
#include <TopOpeBRep_TypeLineCurve.hxx>
|
||||
|
||||
//! This package provides the topological operations
|
||||
//! This package provides the topological operations
|
||||
//! on the BRep data structure.
|
||||
class TopOpeBRep
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Prints the name of <TLC> as a String on the
|
||||
//! Prints the name of <TLC> as a String on the
|
||||
//! Stream <S> and returns <S>.
|
||||
Standard_EXPORT static Standard_OStream& Print(const TopOpeBRep_TypeLineCurve TLC,
|
||||
Standard_OStream& OS);
|
||||
|
||||
@@ -31,17 +31,17 @@ class TopoDS_Shape;
|
||||
class TopOpeBRepDS_HDataStructure;
|
||||
class TopoDS_Face;
|
||||
|
||||
//! Provides class methods to fill a datastructure
|
||||
//! with results of intersections.
|
||||
//! Provides class methods to fill a datastructure
|
||||
//! with results of intersections.
|
||||
//!
|
||||
//! 1. Use an Intersector to find pairs of
|
||||
//! 1. Use an Intersector to find pairs of
|
||||
//! intersecting GeomShapes
|
||||
//!
|
||||
//! 2. For each pair fill the DataStructure using the
|
||||
//! 2. For each pair fill the DataStructure using the
|
||||
//! appropriate Filler.
|
||||
//!
|
||||
//! 3. Complete the DataStructure to record shapes to
|
||||
//! rebuild (shells, wires )
|
||||
//! 3. Complete the DataStructure to record shapes to
|
||||
//! rebuild (shells, wires)
|
||||
class TopOpeBRep_DSFiller
|
||||
{
|
||||
public:
|
||||
@@ -57,7 +57,7 @@ public:
|
||||
|
||||
//! Stores in <DS> the intersections of <S1> and <S2>.
|
||||
//! if orientFORWARD = True
|
||||
//! S FORWARD,REVERSED --> FORWARD
|
||||
//! S FORWARD,REVERSED --> FORWARD
|
||||
//! S EXTERNAL,INTERNAL --> EXTERNAL,INTERNAL
|
||||
Standard_EXPORT void Insert(const TopoDS_Shape& S1,
|
||||
const TopoDS_Shape& S2,
|
||||
@@ -76,14 +76,14 @@ public:
|
||||
Standard_EXPORT void Complete(const Handle(TopOpeBRepDS_HDataStructure)& HDS);
|
||||
|
||||
//! Stores in <DS> the intersections of <S1> and <S2>.
|
||||
//! S1 et S2 contain only SameDomain Face
|
||||
//! S1 and S2 contain only SameDomain Face
|
||||
Standard_EXPORT void Insert2d(const TopoDS_Shape& S1,
|
||||
const TopoDS_Shape& S2,
|
||||
const Handle(TopOpeBRepDS_HDataStructure)& HDS);
|
||||
|
||||
//! S1, S2 set of tangent face
|
||||
//! lance les intersections 2d pour coder correctement
|
||||
//! les faces SameDomain.
|
||||
//! Launches 2D intersection calculations to correctly
|
||||
//! code the SameDomain faces.
|
||||
Standard_EXPORT void InsertIntersection2d(const TopoDS_Shape& S1,
|
||||
const TopoDS_Shape& S2,
|
||||
const Handle(TopOpeBRepDS_HDataStructure)& HDS);
|
||||
@@ -120,7 +120,7 @@ public:
|
||||
|
||||
Standard_EXPORT void GapFiller(const Handle(TopOpeBRepDS_HDataStructure)& HDS) const;
|
||||
|
||||
//! Update the data structure with relevant
|
||||
//! Update the data structure with relevant
|
||||
//! information deduced from the intersections.
|
||||
//!
|
||||
//! Shells containing an intersected face.
|
||||
@@ -135,7 +135,7 @@ public:
|
||||
|
||||
Standard_EXPORT void Checker(const Handle(TopOpeBRepDS_HDataStructure)& HDS) const;
|
||||
|
||||
//! Update the data structure with relevant
|
||||
//! Update the data structure with relevant
|
||||
//! information deduced from the intersections 2d.
|
||||
//!
|
||||
//! Shells containing an intersected face.
|
||||
|
||||
@@ -44,7 +44,7 @@ class gp_Pnt;
|
||||
//! Fills a DataStructure from TopOpeBRepDS with the result
|
||||
//! of Face/Face intersection described by FacesIntersector from TopOpeBRep.
|
||||
//! if the faces have same Domain, record it in the DS.
|
||||
//! else record lines and points and attach list of interferences
|
||||
//! else record lines and points and attach list of interferences
|
||||
//! to the faces, the lines and the edges.
|
||||
class TopOpeBRep_FacesFiller
|
||||
{
|
||||
@@ -99,13 +99,13 @@ public:
|
||||
//! and computing face/edge interference.
|
||||
Standard_EXPORT void ProcessRLine();
|
||||
|
||||
//! VP processing for restriction line and line sharing
|
||||
//! same domain with section edges :
|
||||
//! - if restriction :
|
||||
//! Adds restriction edges as section edges and compute
|
||||
//! face/edge interference.
|
||||
//! - if same domain :
|
||||
//! If line share same domain with section edges, compute
|
||||
//! VP processing for restriction line and line sharing
|
||||
//! same domain with section edges:
|
||||
//! - if restriction:
|
||||
//! Adds restriction edges as section edges and compute
|
||||
//! face/edge interference.
|
||||
//! - if same domain:
|
||||
//! If line share same domain with section edges, compute
|
||||
//! parts of line IN/IN the two faces, and compute curve/point
|
||||
//! interference for VP boundaries.
|
||||
Standard_EXPORT void FillLineVPonR();
|
||||
@@ -129,7 +129,7 @@ public:
|
||||
const TopoDS_Shape& F1,
|
||||
const Standard_Integer ShapeIndex);
|
||||
|
||||
//! adds <VP>'s geometric point (if not stored) and
|
||||
//! adds <VP>'s geometric point (if not stored) and
|
||||
//! computes (curve or edge)/(point or vertex) interference.
|
||||
Standard_EXPORT void ProcessVPonR(const TopOpeBRep_VPointInter& VP,
|
||||
const TopOpeBRepDS_Transition& trans1,
|
||||
@@ -159,7 +159,7 @@ public:
|
||||
//! processing ProcessVPnotonR for VPI.
|
||||
Standard_EXPORT void ProcessVPInotonR(TopOpeBRep_VPointInterIterator& VPI);
|
||||
|
||||
//! adds <VP>'s geometrical point to the DS (if not stored)
|
||||
//! adds <VP>'s geometrical point to the DS (if not stored)
|
||||
//! and computes curve point interference.
|
||||
Standard_EXPORT void ProcessVPnotonR(const TopOpeBRep_VPointInter& VP);
|
||||
|
||||
@@ -184,14 +184,14 @@ public:
|
||||
|
||||
//! search for G = geometry of Point which is identical to <DSP>
|
||||
//! among the DS Points created in the CURRENT face/face
|
||||
//! intersection ( current Insert() call).
|
||||
//! intersection (current Insert() call).
|
||||
Standard_EXPORT Standard_Boolean GetFFGeometry(const TopOpeBRepDS_Point& DSP,
|
||||
TopOpeBRepDS_Kind& K,
|
||||
Standard_Integer& G) const;
|
||||
|
||||
//! search for G = geometry of Point which is identical to <VP>
|
||||
//! among the DS Points created in the CURRENT face/face
|
||||
//! intersection ( current Insert() call).
|
||||
//! intersection (current Insert() call).
|
||||
Standard_EXPORT Standard_Boolean GetFFGeometry(const TopOpeBRep_VPointInter& VP,
|
||||
TopOpeBRepDS_Kind& K,
|
||||
Standard_Integer& G) const;
|
||||
@@ -237,8 +237,8 @@ public:
|
||||
const Standard_Integer SI12,
|
||||
TopOpeBRepDS_Transition& T);
|
||||
|
||||
//! Computes transition on line for VP<iVP> on edge
|
||||
//! restriction of <SI>. If <isINOUT> : returns <true> if
|
||||
//! Computes transition on line for VP<iVP> on edge
|
||||
//! restriction of <SI>. If <isINOUT> : returns <true> if
|
||||
//! transition computed is IN/OUT else : returns <true> if
|
||||
//! transition computed is OUT/IN.
|
||||
Standard_EXPORT static Standard_Boolean TransvpOK(const TopOpeBRep_LineInter& L,
|
||||
@@ -270,8 +270,8 @@ private:
|
||||
Standard_EXPORT TopAbs_State StateVPonFace(const TopOpeBRep_VPointInter& VP) const;
|
||||
|
||||
//! <VP> is of geometry <P>.
|
||||
//! Looks after a VPoint on RESTRICTION <Lrest> with
|
||||
//! geometric value <P>. If true, updates states ON for <VP>.
|
||||
//! Looks after a VPoint on RESTRICTION <Lrest> with
|
||||
//! geometric value <P>. If true, updates states ON for <VP>.
|
||||
Standard_EXPORT Standard_Boolean PequalVPonR(const gp_Pnt& P3D,
|
||||
const Standard_Integer VPshapeindex,
|
||||
TopOpeBRep_VPointInter& VP,
|
||||
|
||||
@@ -34,7 +34,7 @@ class TopOpeBRep_GeomTool
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Make the DS curve <C> and the pcurves <PC1,PC2> from
|
||||
//! Make the DS curve <C> and the pcurves <PC1,PC2> from
|
||||
//! intersection line <L> lying on shapes <S1,S2>. <min,max> = <L> bounds
|
||||
Standard_EXPORT static void MakeCurves(const Standard_Real min,
|
||||
const Standard_Real max,
|
||||
|
||||
@@ -33,21 +33,21 @@ class TopOpeBRepTool_HBoxTool;
|
||||
|
||||
//! Intersect two shapes.
|
||||
//!
|
||||
//! A GeomShape is a shape with a geometric domain, i.e.
|
||||
//! A GeomShape is a shape with a geometric domain, i.e.
|
||||
//! a Face or an Edge.
|
||||
//!
|
||||
//! The purpose of the ShapeIntersector is to find
|
||||
//! couples of intersecting GeomShape in two Shapes
|
||||
//! (which can be any kind of topologies : Compound,
|
||||
//! The purpose of the ShapeIntersector is to find
|
||||
//! couples of intersecting GeomShape in two Shapes
|
||||
//! (which can be any kind of topologies : Compound,
|
||||
//! Solid, Shell, etc... )
|
||||
//!
|
||||
//! It is in charge of exploration of the shapes and
|
||||
//! rejection. For this it is provided with two tools :
|
||||
//! It is in charge of exploration of the shapes and
|
||||
//! rejection. For this it is provided with two tools:
|
||||
//!
|
||||
//! - ShapeExplorer from TopOpeBRepTool.
|
||||
//! - ShapeScanner from TopOpeBRep which implements bounding boxes.
|
||||
//!
|
||||
//! Let S1,S2 the shapes sent to InitIntersection(S1,S2) method :
|
||||
//! Let S1,S2 the shapes sent to InitIntersection(S1,S2) method:
|
||||
//! - S1 is always SCANNED by a ShapeScanner from TopOpeBRep.
|
||||
//! - S2 is always EXPLORED by a ShapeExplorer from TopOpeBRepTool.
|
||||
class TopOpeBRep_ShapeIntersector
|
||||
@@ -66,7 +66,7 @@ public:
|
||||
const TopoDS_Face& F1,
|
||||
const TopoDS_Face& F2);
|
||||
|
||||
//! return the shape <Index> ( = 1 or 2) given to
|
||||
//! return the shape <Index> ( = 1 or 2) given to
|
||||
//! InitIntersection().
|
||||
//! Index = 1 will return S1, Index = 2 will return S2.
|
||||
Standard_EXPORT const TopoDS_Shape& Shape(const Standard_Integer Index) const;
|
||||
@@ -87,11 +87,11 @@ public:
|
||||
//! return the current intersection of a Face and an Edge.
|
||||
Standard_EXPORT TopOpeBRep_FaceEdgeIntersector& ChangeFaceEdgeIntersector();
|
||||
|
||||
//! return geometric shape <Index> ( = 1 or 2 ) of
|
||||
//! return geometric shape <Index> ( = 1 or 2 ) of
|
||||
//! current intersection.
|
||||
Standard_EXPORT const TopoDS_Shape& CurrentGeomShape(const Standard_Integer Index) const;
|
||||
|
||||
//! return MAX of intersection tolerances with
|
||||
//! return MAX of intersection tolerances with
|
||||
//! which FacesIntersector from TopOpeBRep was working.
|
||||
Standard_EXPORT void GetTolerances(Standard_Real& tol1, Standard_Real& tol2) const;
|
||||
|
||||
|
||||
@@ -31,21 +31,21 @@ class TopOpeBRepTool_HBoxTool;
|
||||
|
||||
//! Intersect two shapes.
|
||||
//!
|
||||
//! A GeomShape is a shape with a geometric domain, i.e.
|
||||
//! A GeomShape is a shape with a geometric domain, i.e.
|
||||
//! a Face or an Edge.
|
||||
//!
|
||||
//! The purpose of the ShapeIntersector2d is to find
|
||||
//! couples of intersecting GeomShape in two Shapes
|
||||
//! (which can be any kind of topologies : Compound,
|
||||
//! The purpose of the ShapeIntersector2d is to find
|
||||
//! couples of intersecting GeomShape in two Shapes
|
||||
//! (which can be any kind of topologies: Compound,
|
||||
//! Solid, Shell, etc... )
|
||||
//!
|
||||
//! It is in charge of exploration of the shapes and
|
||||
//! rejection. For this it is provided with two tools :
|
||||
//! It is in charge of exploration of the shapes and
|
||||
//! rejection. For this it is provided with two tools:
|
||||
//!
|
||||
//! - ShapeExplorer from TopOpeBRepTool.
|
||||
//! - ShapeScanner from TopOpeBRep which implements bounding boxes.
|
||||
//!
|
||||
//! Let S1,S2 the shapes sent to InitIntersection(S1,S2) method :
|
||||
//! Let S1,S2 the shapes sent to InitIntersection(S1,S2) method:
|
||||
//! - S1 is always SCANNED by a ShapeScanner from TopOpeBRep.
|
||||
//! - S2 is always EXPLORED by a ShapeExplorer from TopOpeBRepTool.
|
||||
class TopOpeBRep_ShapeIntersector2d
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
//! Initialize the intersection of shapes S1,S2.
|
||||
Standard_EXPORT void InitIntersection(const TopoDS_Shape& S1, const TopoDS_Shape& S2);
|
||||
|
||||
//! return the shape <Index> ( = 1 or 2) given to
|
||||
//! return the shape <Index> ( = 1 or 2) given to
|
||||
//! InitIntersection().
|
||||
//! Index = 1 will return S1, Index = 2 will return S2.
|
||||
Standard_EXPORT const TopoDS_Shape& Shape(const Standard_Integer Index) const;
|
||||
@@ -73,7 +73,7 @@ public:
|
||||
//! return the current intersection of two Edges.
|
||||
Standard_EXPORT TopOpeBRep_EdgesIntersector& ChangeEdgesIntersector();
|
||||
|
||||
//! return geometric shape <Index> ( = 1 or 2 ) of
|
||||
//! return geometric shape <Index> ( = 1 or 2 ) of
|
||||
//! current intersection.
|
||||
Standard_EXPORT const TopoDS_Shape& CurrentGeomShape(const Standard_Integer Index) const;
|
||||
|
||||
|
||||
@@ -104,7 +104,7 @@ public:
|
||||
//! domain <I> (= 1 or 2).
|
||||
Standard_EXPORT TopAbs_State State(const Standard_Integer I) const;
|
||||
|
||||
//! Set the state of VPoint within the domain of
|
||||
//! Set the state of VPoint within the domain of
|
||||
//! the geometric shape <I> (= 1 or 2).
|
||||
Standard_EXPORT void State(const TopAbs_State S, const Standard_Integer I);
|
||||
|
||||
|
||||
@@ -30,8 +30,8 @@ class TopOpeBRepBuild_LoopClassifier;
|
||||
//! where the Loop is the composite topological object of the boundary,
|
||||
//! here wire or block of edges.
|
||||
//! The LoopSet gives an iteration on Loops.
|
||||
//! For each Loop it indicates if it is on the boundary (wire) or if it
|
||||
//! results from an interference (block of edges).
|
||||
//! For each Loop it indicates if it is on the boundary (wire) or if it
|
||||
//! results from an interference (block of edges).
|
||||
//! The result of the Area2dBuilder is an iteration on areas.
|
||||
//! An area is described by a set of Loops.
|
||||
class TopOpeBRepBuild_Area2dBuilder : public TopOpeBRepBuild_AreaBuilder
|
||||
|
||||
@@ -30,8 +30,8 @@ class TopOpeBRepBuild_LoopClassifier;
|
||||
//! where the Loop is the composite topological object of the boundary,
|
||||
//! here wire or block of edges.
|
||||
//! The LoopSet gives an iteration on Loops.
|
||||
//! For each Loop it indicates if it is on the boundary (wire) or if it
|
||||
//! results from an interference (block of edges).
|
||||
//! For each Loop it indicates if it is on the boundary (wire) or if it
|
||||
//! results from an interference (block of edges).
|
||||
//! The result of the Area3dBuilder is an iteration on areas.
|
||||
//! An area is described by a set of Loops.
|
||||
class TopOpeBRepBuild_Area3dBuilder : public TopOpeBRepBuild_AreaBuilder
|
||||
|
||||
@@ -32,21 +32,21 @@ class TopOpeBRepBuild_LoopSet;
|
||||
class TopOpeBRepBuild_LoopClassifier;
|
||||
class TopOpeBRepBuild_Loop;
|
||||
|
||||
//! The AreaBuilder algorithm is used to
|
||||
//! reconstruct complex topological objects as Faces
|
||||
//! The AreaBuilder algorithm is used to
|
||||
//! reconstruct complex topological objects as Faces
|
||||
//! or Solids.
|
||||
//! * Loop is the composite topological object of
|
||||
//! * Loop is the composite topological object of
|
||||
//! the boundary. Wire for a Face. Shell for a Solid.
|
||||
//! * LoopSet is a tool describing the object to
|
||||
//! build. It gives an iteration on Loops. For each
|
||||
//! * LoopSet is a tool describing the object to
|
||||
//! build. It gives an iteration on Loops. For each
|
||||
//! Loop it tells if it is on the boundary or if it is
|
||||
//! an interference.
|
||||
//! * LoopClassifier is an algorithm used to test
|
||||
//! if a Loop is inside another Loop.
|
||||
//! The result of the reconstruction is an iteration
|
||||
//! on the reconstructed areas. An area is described
|
||||
//! * LoopClassifier is an algorithm used to test
|
||||
//! if a Loop is inside another Loop.
|
||||
//! The result of the reconstruction is an iteration
|
||||
//! on the reconstructed areas. An area is described
|
||||
//! by a set of Loops.
|
||||
//! A AreaBuilder is built with :
|
||||
//! A AreaBuilder is built with:
|
||||
//! - a LoopSet describing the object to reconstruct.
|
||||
//! - a LoopClassifier providing the classification algorithm.
|
||||
class TopOpeBRepBuild_AreaBuilder
|
||||
|
||||
@@ -67,12 +67,12 @@ class gp_Pnt;
|
||||
#undef FillSolid
|
||||
#endif
|
||||
|
||||
//! The Builder algorithm constructs topological
|
||||
//! objects from an existing topology and new
|
||||
//! The Builder algorithm constructs topological
|
||||
//! objects from an existing topology and new
|
||||
//! geometries attached to the topology. It is used to
|
||||
//! construct the result of a topological operation;
|
||||
//! the existing topologies are the parts involved in
|
||||
//! the topological operation and the new geometries
|
||||
//! the existing topologies are the parts involved in
|
||||
//! the topological operation and the new geometries
|
||||
//! are the intersection lines and points.
|
||||
class TopOpeBRepBuild_Builder
|
||||
{
|
||||
@@ -106,7 +106,7 @@ public:
|
||||
//! Does NOT clear the handled DS.
|
||||
Standard_EXPORT virtual void Clear();
|
||||
|
||||
//! Merges the two edges <S1> and <S2> keeping the
|
||||
//! Merges the two edges <S1> and <S2> keeping the
|
||||
//! parts in each edge of states <TB1> and <TB2>.
|
||||
//! Booleans onA, onB, onAB indicate whether parts of edges
|
||||
//! found as state ON respectively on first, second, and both
|
||||
@@ -119,7 +119,7 @@ public:
|
||||
const Standard_Boolean onB = Standard_False,
|
||||
const Standard_Boolean onAB = Standard_False);
|
||||
|
||||
//! Merges the two faces <S1> and <S2> keeping the
|
||||
//! Merges the two faces <S1> and <S2> keeping the
|
||||
//! parts in each face of states <TB1> and <TB2>.
|
||||
Standard_EXPORT void MergeFaces(const TopTools_ListOfShape& S1,
|
||||
const TopAbs_State TB1,
|
||||
@@ -129,7 +129,7 @@ public:
|
||||
const Standard_Boolean onB = Standard_False,
|
||||
const Standard_Boolean onAB = Standard_False);
|
||||
|
||||
//! Merges the two solids <S1> and <S2> keeping the
|
||||
//! Merges the two solids <S1> and <S2> keeping the
|
||||
//! parts in each solid of states <TB1> and <TB2>.
|
||||
Standard_EXPORT void MergeSolids(const TopoDS_Shape& S1,
|
||||
const TopAbs_State TB1,
|
||||
@@ -149,7 +149,7 @@ public:
|
||||
|
||||
Standard_EXPORT void ChangeClassify(const Standard_Boolean B);
|
||||
|
||||
//! Merges the solid <S> keeping the
|
||||
//! Merges the solid <S> keeping the
|
||||
//! parts of state <TB>.
|
||||
Standard_EXPORT void MergeSolid(const TopoDS_Shape& S, const TopAbs_State TB);
|
||||
|
||||
@@ -750,8 +750,8 @@ protected:
|
||||
const TopAbs_State TB1,
|
||||
const TopAbs_State TB2);
|
||||
|
||||
//! Split <F1> keeping the parts of state <TB1>.
|
||||
//! Merge faces with same domain, keeping parts of
|
||||
//! Split <F1> keeping the parts of state <TB1>.
|
||||
//! Merge faces with same domain, keeping parts of
|
||||
//! state <TB2>.
|
||||
Standard_EXPORT void SplitFace(const TopoDS_Shape& F1,
|
||||
const TopAbs_State TB1,
|
||||
@@ -770,8 +770,8 @@ protected:
|
||||
const TopAbs_State TB1,
|
||||
const TopAbs_State TB2);
|
||||
|
||||
//! Explore shapes of given by explorer <Ex> to split them.
|
||||
//! Store new shapes in the set <SS>.
|
||||
//! Explore shapes of given by explorer <Ex> to split them.
|
||||
//! Store new shapes in the set <SS>.
|
||||
//! According to RevOri, reverse or not their orientation.
|
||||
Standard_EXPORT void SplitShapes(TopOpeBRepTool_ShapeExplorer& Ex,
|
||||
const TopAbs_State TB1,
|
||||
@@ -779,7 +779,7 @@ protected:
|
||||
TopOpeBRepBuild_ShapeSet& SS,
|
||||
const Standard_Boolean RevOri);
|
||||
|
||||
//! Split edges of <F1> and store wires and edges in
|
||||
//! Split edges of <F1> and store wires and edges in
|
||||
//! the set <WES>. According to RevOri, reverse (or not) orientation.
|
||||
Standard_EXPORT void FillFace(const TopoDS_Shape& F1,
|
||||
const TopAbs_State TB1,
|
||||
@@ -788,7 +788,7 @@ protected:
|
||||
TopOpeBRepBuild_WireEdgeSet& WES,
|
||||
const Standard_Boolean RevOri);
|
||||
|
||||
//! Split faces of <S1> and store shells and faces in
|
||||
//! Split faces of <S1> and store shells and faces in
|
||||
//! the set <SS>. According to RevOri, reverse (or not) orientation.
|
||||
Standard_EXPORT void FillSolid(const TopoDS_Shape& S1,
|
||||
const TopAbs_State TB1,
|
||||
@@ -816,7 +816,7 @@ protected:
|
||||
|
||||
//! fills vertex set PVS with the current value of IT.
|
||||
//! I geometry is a point or a vertex.
|
||||
//! TB indicates the orientation to give to geometries found I
|
||||
//! TB indicates the orientation to give to geometries found I
|
||||
Standard_EXPORT void FillVertexSetOnValue(const TopOpeBRepDS_PointIterator& IT,
|
||||
const TopAbs_State TB,
|
||||
TopOpeBRepBuild_PaveSet& PVS) const;
|
||||
|
||||
@@ -40,9 +40,9 @@ class TopOpeBRepBuild_PaveSet;
|
||||
class TopoDS_Edge;
|
||||
class TopoDS_Face;
|
||||
|
||||
//! extension of the class TopOpeBRepBuild_Builder dedicated
|
||||
//! to avoid bugs in "Rebuilding Result" algorithm for the case of SOLID/SOLID Boolean
|
||||
//! Operations
|
||||
//! extension of the class TopOpeBRepBuild_Builder dedicated
|
||||
//! to avoid bugs in "Rebuilding Result" algorithm for the
|
||||
//! case of SOLID/SOLID Boolean Operations
|
||||
class TopOpeBRepBuild_Builder1 : public TopOpeBRepBuild_Builder
|
||||
{
|
||||
public:
|
||||
@@ -53,7 +53,7 @@ public:
|
||||
Standard_EXPORT virtual ~TopOpeBRepBuild_Builder1();
|
||||
|
||||
//! Removes all splits and merges already performed.
|
||||
//! Does NOT clear the handled DS (except ShapeWithStatesMaps).
|
||||
//! Does NOT clear the handled DS (except ShapeWithStatesMaps).
|
||||
Standard_EXPORT virtual void Clear() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void Perform(const Handle(TopOpeBRepDS_HDataStructure)& HDS)
|
||||
|
||||
@@ -30,8 +30,8 @@ class TopOpeBRepBuild_LoopClassifier;
|
||||
//! where the Loop is the composite topological object of the boundary,
|
||||
//! here wire or block of edges.
|
||||
//! The LoopSet gives an iteration on Loops.
|
||||
//! For each Loop it indicates if it is on the boundary (wire) or if it
|
||||
//! results from an interference (block of edges).
|
||||
//! For each Loop it indicates if it is on the boundary (wire) or if it
|
||||
//! results from an interference (block of edges).
|
||||
//! The result of the FaceAreaBuilder is an iteration on areas.
|
||||
//! An area is described by a set of Loops.
|
||||
class TopOpeBRepBuild_FaceAreaBuilder : public TopOpeBRepBuild_Area2dBuilder
|
||||
|
||||
@@ -50,8 +50,8 @@ public:
|
||||
const TopoDS_Shape& F,
|
||||
const Standard_Boolean ForceClass);
|
||||
|
||||
//! Removes are non 3d-closed wires.
|
||||
//! Fills up maps <mapVVsameG> and <mapVon1Edge>, in order to
|
||||
//! Removes are non 3d-closed wires.
|
||||
//! Fills up maps <mapVVsameG> and <mapVon1Edge>, in order to
|
||||
//! correct 3d-closed but unclosed (topologic connexity) wires.
|
||||
//! modifies myBlockBuilder
|
||||
Standard_EXPORT void DetectUnclosedWire(TopTools_IndexedDataMapOfShapeShape& mapVVsameG,
|
||||
|
||||
@@ -36,12 +36,12 @@ class TopOpeBRepBuild_Builder;
|
||||
class TopOpeBRepBuild_HBuilder;
|
||||
DEFINE_STANDARD_HANDLE(TopOpeBRepBuild_HBuilder, Standard_Transient)
|
||||
|
||||
//! The HBuilder algorithm constructs topological
|
||||
//! objects from an existing topology and new
|
||||
//! The HBuilder algorithm constructs topological
|
||||
//! objects from an existing topology and new
|
||||
//! geometries attached to the topology. It is used to
|
||||
//! construct the result of a topological operation;
|
||||
//! the existing topologies are the parts involved in
|
||||
//! the topological operation and the new geometries
|
||||
//! the existing topologies are the parts involved in
|
||||
//! the topological operation and the new geometries
|
||||
//! are the intersection lines and points.
|
||||
class TopOpeBRepBuild_HBuilder : public Standard_Transient
|
||||
{
|
||||
@@ -77,14 +77,14 @@ public:
|
||||
const TopoDS_Shape& S2,
|
||||
const TopAbs_State TB2);
|
||||
|
||||
//! Merges the two solids <S1> and <S2> keeping the
|
||||
//! Merges the two solids <S1> and <S2> keeping the
|
||||
//! parts in each solid of states <TB1> and <TB2>.
|
||||
Standard_EXPORT void MergeSolids(const TopoDS_Shape& S1,
|
||||
const TopAbs_State TB1,
|
||||
const TopoDS_Shape& S2,
|
||||
const TopAbs_State TB2);
|
||||
|
||||
//! Merges the solid <S> keeping the
|
||||
//! Merges the solid <S> keeping the
|
||||
//! parts of state <TB>.
|
||||
Standard_EXPORT void MergeSolid(const TopoDS_Shape& S, const TopAbs_State TB);
|
||||
|
||||
@@ -153,7 +153,7 @@ public:
|
||||
|
||||
//! search for the couple of face F1,F2
|
||||
//! (from arguments of supra Perform(S1,S2,HDS)) method which
|
||||
//! intersection gives section edge E built on at least one edge .
|
||||
//! intersection gives section edge E built on at least one edge.
|
||||
//! returns True if F1,F2 have been valued.
|
||||
//! returns False if E is not a section edge built
|
||||
//! on at least one edge of S1 and/or S2.
|
||||
|
||||
@@ -36,13 +36,13 @@
|
||||
//! To build solids : shapes are shells, elements are faces.
|
||||
//! The ShapeSet stores a list of shapes, a list of elements
|
||||
//! to start reconstructions, and a map to search neighbours.
|
||||
//! The map stores the connection between elements through
|
||||
//! The map stores the connection between elements through
|
||||
//! subshapes of type <SubShapeType> given in constructor.
|
||||
//! <SubShapeType> is :
|
||||
//! <SubShapeType> is:
|
||||
//! - TopAbs_VERTEX to connect edges
|
||||
//! - TopAbs_EDGE to connect faces
|
||||
//!
|
||||
//! Signature needed by the BlockBuilder :
|
||||
//! Signature needed by the BlockBuilder:
|
||||
//! InitStartElements(me : in out)
|
||||
//! MoreStartElements(me) returns Boolean;
|
||||
//! NextStartElement(me : in out);
|
||||
@@ -56,8 +56,8 @@ class TopOpeBRepBuild_ShapeSet
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Creates a ShapeSet in order to build shapes connected
|
||||
//! by <SubShapeType> shapes.
|
||||
//! Creates a ShapeSet in order to build shapes connected
|
||||
//! by <SubShapeType> shapes.
|
||||
//! <checkshape>:check (or not) the shapes, startelements, elements added.
|
||||
Standard_EXPORT TopOpeBRepBuild_ShapeSet(const TopAbs_ShapeEnum SubShapeType,
|
||||
const Standard_Boolean checkshape = Standard_True);
|
||||
|
||||
@@ -28,8 +28,8 @@ class TopOpeBRepBuild_LoopClassifier;
|
||||
//! where the Loop is the composite topological object of the boundary,
|
||||
//! here wire or block of edges.
|
||||
//! The LoopSet gives an iteration on Loops.
|
||||
//! For each Loop it indicates if it is on the boundary (wire) or if it
|
||||
//! results from an interference (block of edges).
|
||||
//! For each Loop it indicates if it is on the boundary (wire) or if it
|
||||
//! results from an interference (block of edges).
|
||||
//! The result of the SolidAreaBuilder is an iteration on areas.
|
||||
//! An area is described by a set of Loops.
|
||||
class TopOpeBRepBuild_SolidAreaBuilder : public TopOpeBRepBuild_Area3dBuilder
|
||||
|
||||
@@ -37,7 +37,7 @@ class TopoDS_Edge;
|
||||
class gp_Vec;
|
||||
class TopoDS_Wire;
|
||||
|
||||
//! Auxiliary methods used in TopOpeBRepBuild_Builder1 class
|
||||
//! Auxiliary methods used in TopOpeBRepBuild_Builder1 class
|
||||
class TopOpeBRepBuild_Tools
|
||||
{
|
||||
public:
|
||||
@@ -99,9 +99,9 @@ public:
|
||||
const TopoDS_Edge& anEdgeObj,
|
||||
gp_Vec& aDirNormal);
|
||||
|
||||
//! This function used to compute normal in point which is located
|
||||
//! near the point with param UV (used for computation of normals where the normal
|
||||
//! in the point UV equal to zero).
|
||||
//! This function used to compute normal in point which is located
|
||||
//! near the point with param UV (used for computation of normals where the normal
|
||||
//! in the point UV equal to zero).
|
||||
Standard_EXPORT static void GetNormalInNearestPoint(const TopoDS_Face& aFace,
|
||||
const TopoDS_Edge& anEdge,
|
||||
gp_Vec& aNormal);
|
||||
@@ -114,17 +114,17 @@ public:
|
||||
Standard_EXPORT static Standard_Boolean GetTangentToEdge(const TopoDS_Edge& anEdgeObj,
|
||||
gp_Vec& aTangent);
|
||||
|
||||
//! Recompute PCurves of the all edges from the wire on the <toFace>
|
||||
//! Recompute PCurves of the all edges from the wire on the <toFace>
|
||||
Standard_EXPORT static void UpdatePCurves(const TopoDS_Wire& aWire,
|
||||
const TopoDS_Face& fromFace,
|
||||
const TopoDS_Face& toFace);
|
||||
|
||||
//! recompute PCurves of the closing (SIM , with 2 PCurves) edge on the NewFace
|
||||
//! Recompute PCurves of the closing (SIM, with 2 PCurves) edge on the NewFace
|
||||
Standard_EXPORT static void UpdateEdgeOnPeriodicalFace(const TopoDS_Edge& aEdgeToUpdate,
|
||||
const TopoDS_Face& OldFace,
|
||||
const TopoDS_Face& NewFace);
|
||||
|
||||
//! recompute PCurve of the edge on the NewFace
|
||||
//! Recompute PCurve of the edge on the NewFace
|
||||
Standard_EXPORT static void UpdateEdgeOnFace(const TopoDS_Edge& aEdgeToUpdate,
|
||||
const TopoDS_Face& OldFace,
|
||||
const TopoDS_Face& NewFace);
|
||||
@@ -132,16 +132,16 @@ public:
|
||||
Standard_EXPORT static Standard_Boolean IsDegEdgesTheSame(const TopoDS_Shape& anE1,
|
||||
const TopoDS_Shape& anE2);
|
||||
|
||||
//! test if <oldFace> does not contain INTERNAL or EXTERNAL edges
|
||||
//! and remove such edges in case of its presence. The result is stored in <corrFace>
|
||||
//! test if <oldFace> does not contain INTERNAL or EXTERNAL edges
|
||||
//! and remove such edges in case of its presence. The result is stored in <corrFace>
|
||||
Standard_EXPORT static void NormalizeFace(const TopoDS_Shape& oldFace, TopoDS_Shape& corrFace);
|
||||
|
||||
//! test if UV representation of <oldFace> is good (i.e. face is closed in 2d).
|
||||
//! if face is not closed , this method will try to close such face and will
|
||||
//! return corrected edges in the <aMapOfCorrect2dEdges>. Parameter <aSourceShapes>
|
||||
//! used to fix the edge (or wires) which should be correct (Corrector used it as a
|
||||
//! start shapes). NOTE : Parameter corrFace doesn't mean anything. If you want to use
|
||||
//! this method , rebuild resulting face after by yourself using corrected edges.
|
||||
//! test if UV representation of <oldFace> is good (i.e. face is closed in 2d).
|
||||
//! if face is not closed, this method will try to close such face and will
|
||||
//! return corrected edges in the <aMapOfCorrect2dEdges>. Parameter <aSourceShapes>
|
||||
//! used to fix the edge (or wires) which should be correct (Corrector used it as a
|
||||
//! start shapes). NOTE: Parameter corrFace doesn't mean anything. If you want to use
|
||||
//! this method, rebuild resulting face after by yourself using corrected edges.
|
||||
Standard_EXPORT static void CorrectFace2d(
|
||||
const TopoDS_Shape& oldFace,
|
||||
TopoDS_Shape& corrFace,
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
class TopoDS_Wire;
|
||||
class TopoDS_Face;
|
||||
|
||||
//! This class builds faces from a set of wires SW and a face F.
|
||||
//! This class builds faces from a set of wires SW and a face F.
|
||||
//! The face must have and underlying surface, say S.
|
||||
//! All of the edges of all of the wires must have a 2d representation
|
||||
//! on surface S (except if S is planar)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user