mirror of
https://github.com/Open-Cascade-SAS/OCCT.git
synced 2026-08-10 08:19:37 +08:00
Documentation - Fix whitespaces and typos (#821)
- Removed excessive whitespace between words in comments
- Removed <br> syntax
- Fixed spelling errors ("hilight" → "highlights", "texte" → "text")
- Improved comment formatting and structure
This commit is contained in:
@@ -28,7 +28,7 @@
|
||||
|
||||
class BOPAlgo_PISteps;
|
||||
|
||||
//! The class provides the root interface for the algorithms in Boolean Component.<br>
|
||||
//! The class provides the root interface for the algorithms in Boolean Component.
|
||||
class BOPAlgo_Algo : public BOPAlgo_Options
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -28,25 +28,25 @@ class BOPAlgo_PaveFiller;
|
||||
|
||||
//!
|
||||
//! The class represents the Building part of the Boolean Operations
|
||||
//! algorithm.<br>
|
||||
//! algorithm.
|
||||
//! The arguments of the algorithms are divided in two groups - *Objects*
|
||||
//! and *Tools*.<br>
|
||||
//! and *Tools*.
|
||||
//! The algorithm builds the splits of the given arguments using the intersection
|
||||
//! results and combines the result of Boolean Operation of given type:<br>
|
||||
//! - *FUSE* - union of two groups of objects;<br>
|
||||
//! - *COMMON* - intersection of two groups of objects;<br>
|
||||
//! - *CUT* - subtraction of one group from the other.<br>
|
||||
//! results and combines the result of Boolean Operation of given type:
|
||||
//! - *FUSE* - union of two groups of objects;
|
||||
//! - *COMMON* - intersection of two groups of objects;
|
||||
//! - *CUT* - subtraction of one group from the other.
|
||||
//!
|
||||
//! The rules for the arguments and type of the operation are the following:<br>
|
||||
//! - For Boolean operation *FUSE* all arguments should have equal dimensions;<br>
|
||||
//! The rules for the arguments and type of the operation are the following:
|
||||
//! - For Boolean operation *FUSE* all arguments should have equal dimensions;
|
||||
//! - For Boolean operation *CUT* the minimal dimension of *Tools* should not be
|
||||
//! less than the maximal dimension of *Objects*;<br>
|
||||
//! - For Boolean operation *COMMON* the arguments can have any dimension.<br>
|
||||
//! less than the maximal dimension of *Objects*;
|
||||
//! - For Boolean operation *COMMON* the arguments can have any dimension.
|
||||
//!
|
||||
//! The class is a General Fuse based algorithm. Thus, all options
|
||||
//! of the General Fuse algorithm such as Fuzzy mode, safe processing mode,
|
||||
//! parallel processing mode, gluing mode and history support are also
|
||||
//! available in this algorithm.<br>
|
||||
//! available in this algorithm.
|
||||
//!
|
||||
//! Additionally to the Warnings of the parent class the algorithm returns
|
||||
//! the following warnings:
|
||||
@@ -98,7 +98,7 @@ protected:
|
||||
|
||||
Standard_EXPORT void BuildSolid(const Message_ProgressRange& theRange);
|
||||
|
||||
//! Treatment of the cases with empty shapes.<br>
|
||||
//! Treatment of the cases with empty shapes.
|
||||
//! It returns TRUE if there is nothing to do, i.e.
|
||||
//! all shapes in one of the groups are empty shapes.
|
||||
Standard_EXPORT Standard_Boolean TreatEmptyShape();
|
||||
|
||||
@@ -42,16 +42,16 @@ class TopoDS_Shape;
|
||||
//! The class is a General Fuse algorithm - base algorithm for the
|
||||
//! algorithms in the Boolean Component. Its main purpose is to build
|
||||
//! the split parts of the argument shapes from which the result of
|
||||
//! the operations is combined.<br>
|
||||
//! the operations is combined.
|
||||
//! The result of the General Fuse algorithm itself is a compound
|
||||
//! containing all split parts of the arguments. <br>
|
||||
//! containing all split parts of the arguments.
|
||||
//!
|
||||
//! Additionally to the options of the base classes, the algorithm has
|
||||
//! the following options:<br>
|
||||
//! the following options:
|
||||
//! - *Safe processing mode* - allows to avoid modification of the input
|
||||
//! shapes during the operation (by default it is off);<br>
|
||||
//! shapes during the operation (by default it is off);
|
||||
//! - *Gluing options* - allows to speed up the calculation of the intersections
|
||||
//! on the special cases, in which some sub-shapes are coinciding.<br>
|
||||
//! on the special cases, in which some sub-shapes are coinciding.
|
||||
//! - *Disabling the check for inverted solids* - Disables/Enables the check of the input solids
|
||||
//! for inverted status (holes in the space). The default value is TRUE,
|
||||
//! i.e. the check is performed. Setting this flag to FALSE for inverted
|
||||
|
||||
@@ -178,33 +178,33 @@ public:
|
||||
//! Redefined method Clear - clears the contents.
|
||||
Standard_EXPORT virtual void Clear() Standard_OVERRIDE;
|
||||
|
||||
//! Adding the parts to result.<br>
|
||||
//! The parts are defined by two lists of shapes:<br>
|
||||
//! <theLSToTake> defines the arguments which parts should be taken into result;<br>
|
||||
//! <theLSToAvoid> defines the arguments which parts should not be taken into result;<br>
|
||||
//! Adding the parts to result.
|
||||
//! The parts are defined by two lists of shapes:
|
||||
//! <theLSToTake> defines the arguments which parts should be taken into result;
|
||||
//! <theLSToAvoid> defines the arguments which parts should not be taken into result;
|
||||
//! To be taken into result the part must be IN for all shapes from the list
|
||||
//! <theLSToTake> and must be OUT of all shapes from the list <theLSToAvoid>.<br>
|
||||
//! <theLSToTake> and must be OUT of all shapes from the list <theLSToAvoid>.
|
||||
//!
|
||||
//! To remove internal boundaries between any cells in the result
|
||||
//! <theMaterial> variable should be used. The boundaries between
|
||||
//! cells with the same material will be removed. Default value is 0.<br>
|
||||
//! Thus, to remove any boundary the value of this variable should not be equal to 0.<br>
|
||||
//! cells with the same material will be removed. Default value is 0.
|
||||
//! Thus, to remove any boundary the value of this variable should not be equal to 0.
|
||||
//! <theUpdate> parameter defines whether to remove boundaries now or not.
|
||||
Standard_EXPORT void AddToResult(const TopTools_ListOfShape& theLSToTake,
|
||||
const TopTools_ListOfShape& theLSToAvoid,
|
||||
const Standard_Integer theMaterial = 0,
|
||||
const Standard_Boolean theUpdate = Standard_False);
|
||||
|
||||
//! Add all split parts to result.<br>
|
||||
//! <theMaterial> defines the removal of internal boundaries;<br>
|
||||
//! Add all split parts to result.
|
||||
//! <theMaterial> defines the removal of internal boundaries;
|
||||
//! <theUpdate> parameter defines whether to remove boundaries now or not.
|
||||
Standard_EXPORT void AddAllToResult(const Standard_Integer theMaterial = 0,
|
||||
const Standard_Boolean theUpdate = Standard_False);
|
||||
|
||||
//! Removing the parts from result.<br>
|
||||
//! The parts are defined by two lists of shapes:<br>
|
||||
//! <theLSToTake> defines the arguments which parts should be removed from result;<br>
|
||||
//! <theLSToAvoid> defines the arguments which parts should not be removed from result.<br>
|
||||
//! Removing the parts from result.
|
||||
//! The parts are defined by two lists of shapes:
|
||||
//! <theLSToTake> defines the arguments which parts should be removed from result;
|
||||
//! <theLSToAvoid> defines the arguments which parts should not be removed from result.
|
||||
//! To be removed from the result the part must be IN for all shapes from the list
|
||||
//! <theLSToTake> and must be OUT of all shapes from the list <theLSToAvoid>.
|
||||
Standard_EXPORT void RemoveFromResult(const TopTools_ListOfShape& theLSToTake,
|
||||
@@ -213,9 +213,9 @@ public:
|
||||
//! Remove all parts from result.
|
||||
Standard_EXPORT void RemoveAllFromResult();
|
||||
|
||||
//! Removes internal boundaries between cells with the same material.<br>
|
||||
//! Removes internal boundaries between cells with the same material.
|
||||
//! If the result contains the cells with same material but of different dimension
|
||||
//! the removal of internal boundaries between these cells will not be performed.<br>
|
||||
//! the removal of internal boundaries between these cells will not be performed.
|
||||
//! In case of some errors during the removal the method will set the appropriate warning
|
||||
//! status - use GetReport() to access them.
|
||||
Standard_EXPORT void RemoveInternalBoundaries();
|
||||
@@ -246,7 +246,7 @@ protected:
|
||||
const TopTools_ListOfShape& theLSToAvoid,
|
||||
TopTools_ListOfShape& theParts);
|
||||
|
||||
//! Removes internal boundaries between cells with the same material.<br>
|
||||
//! Removes internal boundaries between cells with the same material.
|
||||
//! Returns TRUE if any internal boundaries have been removed.
|
||||
Standard_EXPORT Standard_Boolean
|
||||
RemoveInternals(const TopTools_ListOfShape& theLS,
|
||||
|
||||
@@ -44,17 +44,17 @@ public:
|
||||
Standard_EXPORT virtual void Perform(
|
||||
const Message_ProgressRange& theRange = Message_ProgressRange()) Standard_OVERRIDE;
|
||||
|
||||
//! Sets the level of checking shape on self-interference.<br>
|
||||
//! It defines which interferences will be checked:<br>
|
||||
//! 0 - only V/V;<br>
|
||||
//! 1 - V/V and V/E;<br>
|
||||
//! 2 - V/V, V/E and E/E;<br>
|
||||
//! 3 - V/V, V/E, E/E and V/F;<br>
|
||||
//! 4 - V/V, V/E, E/E, V/F and E/F;<br>
|
||||
//! 5 - V/V, V/E, E/E, V/F, E/F and F/F;<br>
|
||||
//! 6 - V/V, V/E, E/E, V/F, E/F, F/F and V/S;<br>
|
||||
//! 7 - V/V, V/E, E/E, V/F, E/F, F/F, V/S and E/S;<br>
|
||||
//! 8 - V/V, V/E, E/E, V/F, E/F, F/F, V/S, E/S and F/S;<br>
|
||||
//! Sets the level of checking shape on self-interference.
|
||||
//! It defines which interferences will be checked:
|
||||
//! 0 - only V/V;
|
||||
//! 1 - V/V and V/E;
|
||||
//! 2 - V/V, V/E and E/E;
|
||||
//! 3 - V/V, V/E, E/E and V/F;
|
||||
//! 4 - V/V, V/E, E/E, V/F and E/F;
|
||||
//! 5 - V/V, V/E, E/E, V/F, E/F and F/F;
|
||||
//! 6 - V/V, V/E, E/E, V/F, E/F, F/F and V/S;
|
||||
//! 7 - V/V, V/E, E/E, V/F, E/F, F/F, V/S and E/S;
|
||||
//! 8 - V/V, V/E, E/E, V/F, E/F, F/F, V/S, E/S and F/S;
|
||||
//! 9 - V/V, V/E, E/E, V/F, E/F, F/F, V/S, E/S, F/S and S/S - all interferences (Default value)
|
||||
Standard_EXPORT void SetLevelOfCheck(const Standard_Integer theLevel);
|
||||
|
||||
|
||||
@@ -17,41 +17,41 @@
|
||||
|
||||
//! The Enumeration describes an additional option for the algorithms
|
||||
//! in the Boolean Component such as General Fuse, Boolean operations,
|
||||
//! Section, Maker Volume, Splitter and Cells Builder algorithms.<br>
|
||||
//! Section, Maker Volume, Splitter and Cells Builder algorithms.
|
||||
//!
|
||||
//! The Gluing options have been designed to speed up the computation
|
||||
//! of the interference among arguments of the operations on special cases,
|
||||
//! in which the arguments may be overlapping but do not have real intersections
|
||||
//! between their sub-shapes.<br>
|
||||
//! between their sub-shapes.
|
||||
//!
|
||||
//! This option cannot be used on the shapes having real intersections,
|
||||
//! like intersection vertex between edges, or intersection vertex between
|
||||
//! edge and a face or intersection line between faces.<br>
|
||||
//! edge and a face or intersection line between faces.
|
||||
//!
|
||||
//! There are two possibilities of overlapping shapes:<br>
|
||||
//! There are two possibilities of overlapping shapes:
|
||||
//! 1. The shapes can be partially coinciding - the faces do not have
|
||||
//! intersection curves, but overlapping. The faces of such arguments will
|
||||
//! be split during the operation;<br>
|
||||
//! be split during the operation;
|
||||
//! 2. The shapes can be fully coinciding - there should be no partial
|
||||
//! overlapping of the faces, thus no intersection of type EDGE/FACE at all.
|
||||
//! In such cases the faces will not be split during the operation.<br>
|
||||
//! In such cases the faces will not be split during the operation.
|
||||
//!
|
||||
//! Even though there are no real intersections on such cases without Gluing options the algorithm
|
||||
//! will still intersect the sub-shapes of the arguments with interfering bounding boxes.<br>
|
||||
//! will still intersect the sub-shapes of the arguments with interfering bounding boxes.
|
||||
//!
|
||||
//! The performance improvement in gluing mode is achieved by excluding
|
||||
//! the most time consuming computations according to the given Gluing parameter:<br>
|
||||
//! 1. Computation of FACE/FACE intersections for partial coincidence;<br>
|
||||
//! the most time consuming computations according to the given Gluing parameter:
|
||||
//! 1. Computation of FACE/FACE intersections for partial coincidence;
|
||||
//! 2. And computation of VERTEX/FACE, EDGE/FACE and FACE/FACE intersections for full
|
||||
//! coincidence.<br>
|
||||
//! coincidence.
|
||||
//!
|
||||
//! By setting the Gluing option for the operation user should guarantee
|
||||
//! that the arguments are really coinciding. The algorithms do not check this itself.
|
||||
//! Setting inappropriate option for the operation is likely to lead to incorrect result.<br>
|
||||
//! Setting inappropriate option for the operation is likely to lead to incorrect result.
|
||||
//!
|
||||
//! There are following items in the enumeration:<br>
|
||||
//! **BOPAlgo_GlueOff** - default value for the algorithms, Gluing is switched off;<br>
|
||||
//! **BOPAlgo_GlueShift** - Glue option for shapes with partial coincidence;<br>
|
||||
//! There are following items in the enumeration:
|
||||
//! **BOPAlgo_GlueOff** - default value for the algorithms, Gluing is switched off;
|
||||
//! **BOPAlgo_GlueShift** - Glue option for shapes with partial coincidence;
|
||||
//! **BOPAlgo_GlueFull** - Glue option for shapes with full coincidence.
|
||||
//!
|
||||
enum BOPAlgo_GlueEnum
|
||||
|
||||
@@ -61,27 +61,27 @@ class TopoDS_Face;
|
||||
|
||||
//!
|
||||
//! The class represents the Intersection phase of the
|
||||
//! Boolean Operations algorithm.<br>
|
||||
//! Boolean Operations algorithm.
|
||||
//! It performs the pairwise intersection of the sub-shapes of
|
||||
//! the arguments in the following order:<br>
|
||||
//! 1. Vertex/Vertex;<br>
|
||||
//! 2. Vertex/Edge;<br>
|
||||
//! 3. Edge/Edge;<br>
|
||||
//! 4. Vertex/Face;<br>
|
||||
//! 5. Edge/Face;<br>
|
||||
//! 6. Face/Face.<br>
|
||||
//! the arguments in the following order:
|
||||
//! 1. Vertex/Vertex;
|
||||
//! 2. Vertex/Edge;
|
||||
//! 3. Edge/Edge;
|
||||
//! 4. Vertex/Face;
|
||||
//! 5. Edge/Face;
|
||||
//! 6. Face/Face.
|
||||
//!
|
||||
//! The results of intersection are stored into the Data Structure
|
||||
//! of the algorithm.<br>
|
||||
//! of the algorithm.
|
||||
//!
|
||||
//! Additionally to the options provided by the parent class,
|
||||
//! the algorithm has the following options:<br>
|
||||
//! the algorithm has the following options:
|
||||
//! - *Section attributes* - allows to customize the intersection of the faces
|
||||
//! (avoid approximation or building 2d curves);<br>
|
||||
//! (avoid approximation or building 2d curves);
|
||||
//! - *Safe processing mode* - allows to avoid modification of the input
|
||||
//! shapes during the operation (by default it is off);<br>
|
||||
//! shapes during the operation (by default it is off);
|
||||
//! - *Gluing options* - allows to speed up the calculation on the special
|
||||
//! cases, in which some sub-shapes are coincide.<br>
|
||||
//! cases, in which some sub-shapes are coincide.
|
||||
//!
|
||||
//! The algorithm returns the following Warning statuses:
|
||||
//! - *BOPAlgo_AlertSelfInterferingShape* - in case some of the argument shapes are self-interfering
|
||||
@@ -101,9 +101,9 @@ class TopoDS_Face;
|
||||
//!
|
||||
//! The algorithm returns the following Error alerts:
|
||||
//! - *BOPAlgo_AlertTooFewArguments* - in case there are no enough arguments to
|
||||
//! perform the operation;<br>
|
||||
//! - *BOPAlgo_AlertIntersectionFailed* - in case some unexpected error occurred;<br>
|
||||
//! - *BOPAlgo_AlertNullInputShapes* - in case some of the arguments are null shapes.<br>
|
||||
//! perform the operation;
|
||||
//! - *BOPAlgo_AlertIntersectionFailed* - in case some unexpected error occurred;
|
||||
//! - *BOPAlgo_AlertNullInputShapes* - in case some of the arguments are null shapes.
|
||||
//!
|
||||
class BOPAlgo_PaveFiller : public BOPAlgo_Algo
|
||||
{
|
||||
@@ -194,12 +194,12 @@ protected:
|
||||
const Message_ProgressRange& theRange,
|
||||
const Standard_Boolean bAddInterfs = Standard_True);
|
||||
|
||||
//! Splits the Pave Blocks of the given edges with the extra paves.<br>
|
||||
//! Splits the Pave Blocks of the given edges with the extra paves.
|
||||
//! The method also builds the shrunk data for the new pave blocks and
|
||||
//! in case there is no valid range on the pave block, the vertices of
|
||||
//! this pave block will be united making SD vertex.<br>
|
||||
//! this pave block will be united making SD vertex.
|
||||
//! Parameter <theAddInterfs> defines whether this interference will be added
|
||||
//! into common table of interferences or not.<br>
|
||||
//! into common table of interferences or not.
|
||||
//! If some of the Pave Blocks are forming the Common Blocks, the splits
|
||||
//! of the Pave Blocks will also form a Common Block.
|
||||
Standard_EXPORT void SplitPaveBlocks(const TColStd_MapOfInteger& theMEdges,
|
||||
@@ -539,12 +539,12 @@ protected:
|
||||
Standard_EXPORT void PutSEInOtherFaces(const Message_ProgressRange& theRange);
|
||||
|
||||
//! Analyzes the results of interferences of sub-shapes of the shapes
|
||||
//! looking for self-interfering entities by the following rules:<br>
|
||||
//! 1. The Faces of the same shape considered interfering in case they:<br>
|
||||
//! - Interfere with the other shapes in the same place (in the same vertex) or;<br>
|
||||
//! looking for self-interfering entities by the following rules:
|
||||
//! 1. The Faces of the same shape considered interfering in case they:
|
||||
//! - Interfere with the other shapes in the same place (in the same vertex) or;
|
||||
//! - Included in the same common block.
|
||||
//! 2. The Faces of the same shape considered interfering in case they
|
||||
//! share the IN or SECTION edges.<br>
|
||||
//! share the IN or SECTION edges.
|
||||
//! In case self-interference is found the warning is added.
|
||||
Standard_EXPORT void CheckSelfInterference();
|
||||
|
||||
|
||||
@@ -22,27 +22,27 @@
|
||||
#include <BOPAlgo_ToolsProvider.hxx>
|
||||
|
||||
//! The **Splitter algorithm** is the algorithm for splitting a group of
|
||||
//! arbitrary shapes by the other group of arbitrary shapes.<br>
|
||||
//! The arguments of the operation are divided on two groups:<br>
|
||||
//! *Objects* - shapes that will be split;<br>
|
||||
//! *Tools* - shapes by which the *Objects* will be split.<br>
|
||||
//! arbitrary shapes by the other group of arbitrary shapes.
|
||||
//! The arguments of the operation are divided on two groups:
|
||||
//! *Objects* - shapes that will be split;
|
||||
//! *Tools* - shapes by which the *Objects* will be split.
|
||||
//! The result of the operation contains only the split parts
|
||||
//! of the shapes from the group of *Objects*.<br>
|
||||
//! of the shapes from the group of *Objects*.
|
||||
//! The split parts of the shapes from the group of *Tools* are excluded
|
||||
//! from the result.<br>
|
||||
//! from the result.
|
||||
//! The shapes can be split by the other shapes from the same group
|
||||
//! (in case these shapes are interfering).
|
||||
//!
|
||||
//! The class is a General Fuse based algorithm. Thus, all options
|
||||
//! of the General Fuse algorithm such as Fuzzy mode, safe processing mode,
|
||||
//! parallel processing mode, gluing mode and history support are also
|
||||
//! available in this algorithm.<br>
|
||||
//! available in this algorithm.
|
||||
//! There is no requirement on the existence of the *Tools* shapes.
|
||||
//! And if there are no *Tools* shapes, the result of the splitting
|
||||
//! operation will be equivalent to the General Fuse result.
|
||||
//!
|
||||
//! The implementation of the algorithm is minimal - only the methods
|
||||
//! CheckData() and Perform() have been overridden.<br>
|
||||
//! CheckData() and Perform() have been overridden.
|
||||
//! The method BOPAlgo_Builder::BuildResult(), which adds the split parts of the arguments
|
||||
//! into result, does not have to be overridden, because its native implementation
|
||||
//! performs the necessary actions for the Splitter algorithm - it adds
|
||||
|
||||
@@ -126,45 +126,45 @@ public:
|
||||
const BOPDS_PDS theDS,
|
||||
const Handle(IntTools_Context)& theContext);
|
||||
|
||||
//! Creates planar wires from the given edges.<br>
|
||||
//! Creates planar wires from the given edges.
|
||||
//! The input edges are expected to be planar. And for the performance
|
||||
//! sake the method does not check if the edges are really planar.<br>
|
||||
//! Thus, the result wires will also be not planar if the input edges are not planar.<br>
|
||||
//! sake the method does not check if the edges are really planar.
|
||||
//! Thus, the result wires will also be not planar if the input edges are not planar.
|
||||
//! The edges may be not shared, but the resulting wires will be sharing the
|
||||
//! coinciding parts and intersecting parts.<br>
|
||||
//! The output wires may be non-manifold and contain free and multi-connected vertices.<br>
|
||||
//! coinciding parts and intersecting parts.
|
||||
//! The output wires may be non-manifold and contain free and multi-connected vertices.
|
||||
//! Parameters:
|
||||
//! <theEdges> - input edges;<br>
|
||||
//! <theWires> - output wires;<br>
|
||||
//! <theEdges> - input edges;
|
||||
//! <theWires> - output wires;
|
||||
//! <theShared> - boolean flag which defines whether the input edges are already
|
||||
//! shared or have to be intersected;<br>
|
||||
//! shared or have to be intersected;
|
||||
//! <theAngTol> - the angular tolerance which will be used for distinguishing
|
||||
//! the planes in which the edges are located. Default value is
|
||||
//! 1.e-8 which is used for intersection of planes in IntTools_FaceFace.<br>
|
||||
//! Method returns the following error statuses:<br>
|
||||
//! 0 - in case of success (at least one wire has been built);<br>
|
||||
//! 1 - in case there are no edges in the given shape;<br>
|
||||
//! 2 - sharing of the edges has failed.<br>
|
||||
//! 1.e-8 which is used for intersection of planes in IntTools_FaceFace.
|
||||
//! Method returns the following error statuses:
|
||||
//! 0 - in case of success (at least one wire has been built);
|
||||
//! 1 - in case there are no edges in the given shape;
|
||||
//! 2 - sharing of the edges has failed.
|
||||
Standard_EXPORT static Standard_Integer EdgesToWires(
|
||||
const TopoDS_Shape& theEdges,
|
||||
TopoDS_Shape& theWires,
|
||||
const Standard_Boolean theShared = Standard_False,
|
||||
const Standard_Real theAngTol = 1.e-8);
|
||||
|
||||
//! Creates planar faces from given planar wires.<br>
|
||||
//! The method does not check if the wires are really planar.<br>
|
||||
//! The input wires may be non-manifold but should be shared.<br>
|
||||
//! Creates planar faces from given planar wires.
|
||||
//! The method does not check if the wires are really planar.
|
||||
//! The input wires may be non-manifold but should be shared.
|
||||
//! The wires located in the same planes and included into other wires will create
|
||||
//! holes in the faces built from outer wires.<br>
|
||||
//! holes in the faces built from outer wires.
|
||||
//! The tolerance values of the input shapes may be modified during the operation
|
||||
//! due to projection of the edges on the planes for creation of 2D curves.<br>
|
||||
//! due to projection of the edges on the planes for creation of 2D curves.
|
||||
//! Parameters:
|
||||
//! <theWires> - the given wires;<br>
|
||||
//! <theFaces> - the output faces;<br>
|
||||
//! <theWires> - the given wires;
|
||||
//! <theFaces> - the output faces;
|
||||
//! <theAngTol> - the angular tolerance for distinguishing the planes in which
|
||||
//! the wires are located. Default value is 1.e-8 which is used
|
||||
//! for intersection of planes in IntTools_FaceFace.<br>
|
||||
//! Method returns TRUE in case of success, i.e. at least one face has been built.<br>
|
||||
//! for intersection of planes in IntTools_FaceFace.
|
||||
//! Method returns TRUE in case of success, i.e. at least one face has been built.
|
||||
Standard_EXPORT static Standard_Boolean WiresToFaces(const TopoDS_Shape& theWires,
|
||||
TopoDS_Shape& theFaces,
|
||||
const Standard_Real theAngTol = 1.e-8);
|
||||
|
||||
@@ -30,9 +30,9 @@ DEFINE_STANDARD_HANDLE(BOPDS_CommonBlock, Standard_Transient)
|
||||
|
||||
//! The class BOPDS_CommonBlock is to store the information
|
||||
//! about pave blocks that have geometrical coincidence
|
||||
//! (in terms of a tolerance) with:<br>
|
||||
//! a) other pave block(s);<br>
|
||||
//! b) face(s).<br>
|
||||
//! (in terms of a tolerance) with:
|
||||
//! a) other pave block(s);
|
||||
//! b) face(s).
|
||||
//! First pave block in the common block (real pave block)
|
||||
//! is always a pave block with the minimal index of the original edge.
|
||||
class BOPDS_CommonBlock : public Standard_Transient
|
||||
|
||||
@@ -413,7 +413,7 @@ public:
|
||||
//! Clears information about PaveBlocks for the untouched edges
|
||||
Standard_EXPORT void ReleasePaveBlocks();
|
||||
|
||||
//! Checks if the existing shrunk data of the pave block is still valid.<br>
|
||||
//! Checks if the existing shrunk data of the pave block is still valid.
|
||||
//! The shrunk data may become invalid if e.g. the vertices of the pave block
|
||||
//! have been replaced with the new one with bigger tolerances, or the tolerances
|
||||
//! of the existing vertices have been increased.
|
||||
|
||||
@@ -273,7 +273,7 @@ public: //! @name Face classification relatively solid
|
||||
const Handle(IntTools_Context)& theContext);
|
||||
|
||||
public: //! @name PCurve construction
|
||||
//! Makes 2d curve of the edge <theE> on the faces <theF1> and <theF2>.<br>
|
||||
//! Makes 2d curve of the edge <theE> on the faces <theF1> and <theF2>.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
Standard_EXPORT static void MakePCurve(
|
||||
const TopoDS_Edge& theE,
|
||||
|
||||
@@ -79,7 +79,7 @@ public:
|
||||
|
||||
//! 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>
|
||||
//! [aFirst, aLast] - range of the P-Curve
|
||||
//! [aToler] - reached tolerance
|
||||
//! Raises exception Standard_ConstructionError if algorithm Make2D() fails.
|
||||
//! <theContext> - storage for caching the geometrical tools
|
||||
@@ -131,7 +131,7 @@ public:
|
||||
const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());
|
||||
|
||||
//! Adjust P-Curve <aC2D> (3D-curve <C3D>) on surface <aF>.
|
||||
//! [aT1, aT2] - range to adjust
|
||||
//! [aT1, aT2] - range to adjust
|
||||
Standard_EXPORT static void AdjustPCurveOnSurf(const BRepAdaptor_Surface& aF,
|
||||
const Standard_Real aT1,
|
||||
const Standard_Real aT2,
|
||||
|
||||
@@ -46,8 +46,8 @@ class TopoDS_Shape;
|
||||
//! - For Boolean operation *SECTION* the arguments can be of any type.
|
||||
//!
|
||||
//! Additionally to the errors of the base class the algorithm returns
|
||||
//! the following Errors:<br>
|
||||
//! - *BOPAlgo_AlertBOPNotSet* - in case the type of Boolean Operation is not set.<br>
|
||||
//! the following Errors:
|
||||
//! - *BOPAlgo_AlertBOPNotSet* - in case the type of Boolean Operation is not set.
|
||||
class BRepAlgoAPI_BooleanOperation : public BRepAlgoAPI_BuilderAlgo
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -28,10 +28,10 @@
|
||||
#include <Standard_Real.hxx>
|
||||
#include <TopTools_ListOfShape.hxx>
|
||||
|
||||
//! The class contains API level of the General Fuse algorithm.<br>
|
||||
//! The class contains API level of the General Fuse algorithm.
|
||||
//!
|
||||
//! Additionally to the options defined in the base class, the algorithm has
|
||||
//! the following options:<br>
|
||||
//! the following options:
|
||||
//! - *Safe processing mode* - allows to avoid modification of the input
|
||||
//! shapes during the operation (by default it is off);
|
||||
//! - *Gluing options* - allows to speed up the calculation of the intersections
|
||||
@@ -43,12 +43,12 @@
|
||||
//! - *Disabling history collection* - allows disabling the collection of the history
|
||||
//! of shapes modifications during the operation.
|
||||
//!
|
||||
//! It returns the following Error statuses:<br>
|
||||
//! - 0 - in case of success;<br>
|
||||
//! It returns the following Error statuses:
|
||||
//! - 0 - in case of success;
|
||||
//! - *BOPAlgo_AlertTooFewArguments* - in case there are no enough arguments to perform the
|
||||
//! operation;<br>
|
||||
//! - *BOPAlgo_AlertIntersectionFailed* - in case the intersection of the arguments has failed;<br>
|
||||
//! - *BOPAlgo_AlertBuilderFailed* - in case building of the result shape has failed.<br>
|
||||
//! operation;
|
||||
//! - *BOPAlgo_AlertIntersectionFailed* - in case the intersection of the arguments has failed;
|
||||
//! - *BOPAlgo_AlertBuilderFailed* - in case building of the result shape has failed.
|
||||
//!
|
||||
//! Warnings statuses from underlying DS Filler and Builder algorithms
|
||||
//! are collected in the report.
|
||||
|
||||
@@ -23,30 +23,30 @@
|
||||
|
||||
//! The class contains API level of the **Splitter** algorithm,
|
||||
//! which allows splitting a group of arbitrary shapes by the
|
||||
//! other group of arbitrary shapes.<br>
|
||||
//! The arguments of the operation are divided on two groups:<br>
|
||||
//! *Objects* - shapes that will be split;<br>
|
||||
//! *Tools* - shapes by which the *Objects* will be split.<br>
|
||||
//! other group of arbitrary shapes.
|
||||
//! The arguments of the operation are divided on two groups:
|
||||
//! *Objects* - shapes that will be split;
|
||||
//! *Tools* - shapes by which the *Objects* will be split.
|
||||
//! The result of the operation contains only the split parts
|
||||
//! of the shapes from the group of *Objects*.<br>
|
||||
//! of the shapes from the group of *Objects*.
|
||||
//! The split parts of the shapes from the group of *Tools* are excluded
|
||||
//! from the result.<br>
|
||||
//! from the result.
|
||||
//! The shapes can be split by the other shapes from the same group
|
||||
//! (in case these shapes are interfering).
|
||||
//!
|
||||
//! The class is a General Fuse based algorithm. Thus, all options
|
||||
//! of the General Fuse algorithm such as Fuzzy mode, safe processing mode,
|
||||
//! parallel processing mode, gluing mode and history support are also
|
||||
//! available in this algorithm.<br>
|
||||
//! available in this algorithm.
|
||||
//! There is no requirement on the existence of the *Tools* shapes.
|
||||
//! And if there are no *Tools* shapes, the result of the splitting
|
||||
//! operation will be equivalent to the General Fuse result.
|
||||
//!
|
||||
//! The algorithm returns the following Error statuses:<br>
|
||||
//! - 0 - in case of success;<br>
|
||||
//! The algorithm returns the following Error statuses:
|
||||
//! - 0 - in case of success;
|
||||
//! - *BOPAlgo_AlertTooFewArguments* - in case there is no enough arguments for the
|
||||
//! operation;<br>
|
||||
//! - *BOPAlgo_AlertIntersectionFailed* - in case the Intersection of the arguments has failed;<br>
|
||||
//! operation;
|
||||
//! - *BOPAlgo_AlertIntersectionFailed* - in case the Intersection of the arguments has failed;
|
||||
//! - *BOPAlgo_AlertBuilderFailed* - in case the Building of the result has failed.
|
||||
class BRepAlgoAPI_Splitter : public BRepAlgoAPI_BuilderAlgo
|
||||
{
|
||||
|
||||
@@ -119,9 +119,9 @@ public:
|
||||
//! Returns zero if the distance between vertex
|
||||
//! and edge is less than sum of tolerances and the fuzzy value,
|
||||
//! otherwise and for following conditions returns
|
||||
//! negative value: <br>
|
||||
//! 1. the edge is degenerated (-1) <br>
|
||||
//! 2. the edge does not contain 3d curve and pcurves (-2) <br>
|
||||
//! negative value:
|
||||
//! 1. the edge is degenerated (-1)
|
||||
//! 2. the edge does not contain 3d curve and pcurves (-2)
|
||||
//! 3. projection algorithm failed (-3)
|
||||
Standard_EXPORT Standard_Integer ComputeVE(const TopoDS_Vertex& theV,
|
||||
const TopoDS_Edge& theE,
|
||||
@@ -134,9 +134,9 @@ public:
|
||||
//! Returns zero if the distance between vertex and face is
|
||||
//! less than or equal the sum of tolerances and the fuzzy value
|
||||
//! and the projection point lays inside boundaries of the face.
|
||||
//! For following conditions returns negative value <br>
|
||||
//! 1. projection algorithm failed (-1) <br>
|
||||
//! 2. distance is more than sum of tolerances (-2) <br>
|
||||
//! For following conditions returns negative value
|
||||
//! 1. projection algorithm failed (-1)
|
||||
//! 2. distance is more than sum of tolerances (-2)
|
||||
//! 3. projection point out or on the boundaries of face (-3)
|
||||
Standard_EXPORT Standard_Integer ComputeVF(const TopoDS_Vertex& theVertex,
|
||||
const TopoDS_Face& theFace,
|
||||
|
||||
@@ -27,14 +27,14 @@ class Geom_Curve;
|
||||
class Geom2d_Curve;
|
||||
class gp_Pnt;
|
||||
|
||||
//! The class is a container of one 3D curve, two 2D curves and two Tolerance values.<br>
|
||||
//! The class is a container of one 3D curve, two 2D curves and two Tolerance values.
|
||||
//! It is used in the Face/Face intersection algorithm to store the results
|
||||
//! of intersection. In this context:<br>
|
||||
//! **the 3D curve** is the intersection curve;<br>
|
||||
//! **the 2D curves** are the PCurves of the 3D curve on the intersecting faces;<br>
|
||||
//! of intersection. In this context:
|
||||
//! **the 3D curve** is the intersection curve;
|
||||
//! **the 2D curves** are the PCurves of the 3D curve on the intersecting faces;
|
||||
//! **the tolerance** is the valid tolerance for 3D curve computed as
|
||||
//! maximal deviation between 3D curve and 2D curves (or surfaces in case there are no 2D
|
||||
//! curves);<br>
|
||||
//! curves);
|
||||
//! **the tangential tolerance** is the maximal distance from 3D curve to the
|
||||
//! end of the tangential zone between faces in terms of their tolerance values.
|
||||
class IntTools_Curve
|
||||
@@ -100,7 +100,7 @@ public:
|
||||
|
||||
//! If the 3d curve is bounded curve the method will return TRUE
|
||||
//! and modify the output parameters with boundary parameters of
|
||||
//! the curve and corresponded 3d points.<br>
|
||||
//! the curve and corresponded 3d points.
|
||||
//! If the curve does not have bounds, the method will return false
|
||||
//! and the output parameters will stay untouched.
|
||||
Standard_EXPORT Standard_Boolean Bounds(Standard_Real& theFirst,
|
||||
@@ -110,7 +110,7 @@ public:
|
||||
|
||||
//! Computes 3d point corresponded to the given parameter if this
|
||||
//! parameter is inside the boundaries of the curve.
|
||||
//! Returns TRUE in this case. <br>
|
||||
//! Returns TRUE in this case.
|
||||
//! Otherwise, the point will not be computed and the method will return FALSE.
|
||||
Standard_EXPORT Standard_Boolean D0(const Standard_Real& thePar, gp_Pnt& thePnt) const;
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@ protected:
|
||||
const Standard_Real theToler);
|
||||
|
||||
//! Computes the valid tolerance for the intersection curves
|
||||
//! as a maximal deviation between 3D curve and 2D curves on faces.<br>
|
||||
//! as a maximal deviation between 3D curve and 2D curves on faces.
|
||||
//! If there are no 2D curves the maximal deviation between 3D curves
|
||||
//! and surfaces is computed.
|
||||
Standard_EXPORT void ComputeTolReached3d(const Standard_Boolean theToRunParallel);
|
||||
|
||||
@@ -136,7 +136,7 @@ public:
|
||||
Standard_EXPORT static Standard_Real CurveTolerance(const Handle(Geom_Curve)& aC,
|
||||
const Standard_Real aTolBase);
|
||||
|
||||
//! Checks if the curve is not covered by the default tolerance (confusion).<br>
|
||||
//! Checks if the curve is not covered by the default tolerance (confusion).
|
||||
//! Builds bounding box for the curve and stores it into <theBox>.
|
||||
Standard_EXPORT static Standard_Boolean CheckCurve(const IntTools_Curve& theCurve,
|
||||
Bnd_Box& theBox);
|
||||
|
||||
@@ -122,11 +122,11 @@ public:
|
||||
const Standard_Real Vsup,
|
||||
const Extrema_ExtAlgo Algo = Extrema_ExtAlgo_Grad);
|
||||
|
||||
//! Sets the Extrema search algorithm - Grad or Tree. <br>
|
||||
//! Sets the Extrema search algorithm - Grad or Tree.
|
||||
//! By default the Extrema is initialized with Grad algorithm.
|
||||
void SetExtremaAlgo(const Extrema_ExtAlgo theAlgo) { myExtPS.SetAlgo(theAlgo); }
|
||||
|
||||
//! Sets the Extrema search flag - MIN or MAX or MINMAX.<br>
|
||||
//! Sets the Extrema search flag - MIN or MAX or MINMAX.
|
||||
//! By default the Extrema is set to search the MinMax solutions.
|
||||
void SetExtremaFlag(const Extrema_ExtFlag theExtFlag) { myExtPS.SetFlag(theExtFlag); }
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
#include <Standard_HashUtils.hxx>
|
||||
|
||||
//! The class represents the couple of indices with additional
|
||||
//! characteristics such as analyzed flag and an angle.<br>
|
||||
//! characteristics such as analyzed flag and an angle.
|
||||
//! In IntPolyh_MaillageAffinage algorithm the class is used as a
|
||||
//! couple of interfering triangles with the intersection angle.
|
||||
class IntPolyh_Couple
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <Standard_Handle.hxx>
|
||||
|
||||
//! The class represents the edge built between the two IntPolyh points.<br>
|
||||
//! The class represents the edge built between the two IntPolyh points.
|
||||
//! It is linked to two IntPolyh triangles.
|
||||
class IntPolyh_Edge
|
||||
{
|
||||
|
||||
@@ -71,14 +71,14 @@ public:
|
||||
//! necessary to check the continuity in the following cases:
|
||||
//!
|
||||
//! case C0
|
||||
//! --------
|
||||
//! -------
|
||||
//! - the distance between P1 and P2 with P1=Curv1 (u1) and
|
||||
//! P2=Curv2(u2)
|
||||
//!
|
||||
//! case C1
|
||||
//! -------
|
||||
//!
|
||||
//! - the angle between the first derivatives
|
||||
//! - the angle between the first derivatives
|
||||
//! dCurv1(u1) dCurv2(u2)
|
||||
//! -------- and ---------
|
||||
//! du du
|
||||
|
||||
@@ -33,9 +33,9 @@ class HLRBRep_EdgeBuilder
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Creates an EdgeBuilder algorithm. <VList>
|
||||
//! describes the edge and the interferences.
|
||||
//! AreaLimits are created from the vertices.
|
||||
//! Creates an EdgeBuilder algorithm. <VList>
|
||||
//! describes the edge and the interferences.
|
||||
//! AreaLimits are created from the vertices.
|
||||
//! Builds(IN) is automatically called.
|
||||
Standard_EXPORT HLRBRep_EdgeBuilder(HLRBRep_VertexList& VList);
|
||||
|
||||
@@ -57,17 +57,17 @@ public:
|
||||
//! Returns the edge state of the current area.
|
||||
Standard_EXPORT TopAbs_State AreaEdgeState() const;
|
||||
|
||||
//! Returns the AreaLimit beginning the current area.
|
||||
//! Returns the AreaLimit beginning the current area.
|
||||
//! This is a NULL handle when the area is infinite on
|
||||
//! the left.
|
||||
Standard_EXPORT Handle(HLRBRep_AreaLimit) LeftLimit() const;
|
||||
|
||||
//! Returns the AreaLimit ending the current area.
|
||||
//! Returns the AreaLimit ending the current area.
|
||||
//! This is a NULL handle when the area is infinite on
|
||||
//! the right.
|
||||
Standard_EXPORT Handle(HLRBRep_AreaLimit) RightLimit() const;
|
||||
|
||||
//! Reinitialize the results iteration to the parts
|
||||
//! Reinitialize the results iteration to the parts
|
||||
//! with State <ToBuild>. If this method is not called
|
||||
//! after construction the default is <ToBuild> = IN.
|
||||
Standard_EXPORT void Builds(const TopAbs_State ToBuild);
|
||||
@@ -75,7 +75,7 @@ public:
|
||||
//! Returns True if there are more new edges to build.
|
||||
Standard_EXPORT Standard_Boolean MoreEdges() const;
|
||||
|
||||
//! Proceeds to the next edge to build. Skip all
|
||||
//! Proceeds to the next edge to build. Skip all
|
||||
//! remaining vertices on the current edge.
|
||||
Standard_EXPORT void NextEdge();
|
||||
|
||||
@@ -89,11 +89,11 @@ public:
|
||||
//! Returns the current vertex of the current edge.
|
||||
Standard_EXPORT const HLRAlgo_Intersection& Current() const;
|
||||
|
||||
//! Returns True if the current vertex comes from the
|
||||
//! Returns True if the current vertex comes from the
|
||||
//! boundary of the edge.
|
||||
Standard_EXPORT Standard_Boolean IsBoundary() const;
|
||||
|
||||
//! Returns True if the current vertex was an
|
||||
//! Returns True if the current vertex was an
|
||||
//! interference.
|
||||
Standard_EXPORT Standard_Boolean IsInterference() const;
|
||||
|
||||
|
||||
@@ -74,12 +74,12 @@ public:
|
||||
GeomAbs_Shape VContinuity() const;
|
||||
|
||||
//! If necessary, breaks the surface in U intervals of
|
||||
//! continuity <S>. And returns the number of
|
||||
//! continuity <S>. And returns the number of
|
||||
//! intervals.
|
||||
Standard_Integer NbUIntervals(const GeomAbs_Shape S);
|
||||
|
||||
//! If necessary, breaks the surface in V intervals of
|
||||
//! continuity <S>. And returns the number of
|
||||
//! continuity <S>. And returns the number of
|
||||
//! intervals.
|
||||
Standard_Integer NbVIntervals(const GeomAbs_Shape S);
|
||||
|
||||
@@ -105,15 +105,15 @@ public:
|
||||
//! Computes the point of parameters U,V on the surface.
|
||||
void D0(const Standard_Real U, const Standard_Real V, gp_Pnt& P) const;
|
||||
|
||||
//! Computes the point and the first derivatives on
|
||||
//! Computes the point and the first derivatives on
|
||||
//! the surface.
|
||||
//! Raised if the continuity of the current
|
||||
//! Raised if the continuity of the current
|
||||
//! intervals is not C1.
|
||||
void D1(const Standard_Real U, const Standard_Real V, gp_Pnt& P, gp_Vec& D1U, gp_Vec& D1V) const;
|
||||
|
||||
//! Computes the point, the first and second
|
||||
//! Computes the point, the first and second
|
||||
//! derivatives on the surface.
|
||||
//! Raised if the continuity of the current
|
||||
//! Raised if the continuity of the current
|
||||
//! intervals is not C2.
|
||||
void D2(const Standard_Real U,
|
||||
const Standard_Real V,
|
||||
@@ -124,9 +124,9 @@ public:
|
||||
gp_Vec& D2V,
|
||||
gp_Vec& D2UV) const;
|
||||
|
||||
//! Computes the point, the first, second and third
|
||||
//! Computes the point, the first, second and third
|
||||
//! derivatives on the surface.
|
||||
//! Raised if the continuity of the current
|
||||
//! Raised if the continuity of the current
|
||||
//! intervals is not C3.
|
||||
void D3(const Standard_Real U,
|
||||
const Standard_Real V,
|
||||
@@ -141,10 +141,10 @@ public:
|
||||
gp_Vec& D3UUV,
|
||||
gp_Vec& D3UVV) const;
|
||||
|
||||
//! Computes the derivative of order Nu in the
|
||||
//! direction U and Nv in the direction V at the point P(U,
|
||||
//! Computes the derivative of order Nu in the
|
||||
//! direction U and Nv in the direction V at the point P(U,
|
||||
//! V).
|
||||
//! Raised if the current U interval is not not CNu
|
||||
//! Raised if the current U interval is not not CNu
|
||||
//! and the current V interval is not CNv.
|
||||
//! Raised if Nu + Nv < 1 or Nu < 0 or Nv < 0.
|
||||
gp_Vec DN(const Standard_Real U,
|
||||
@@ -153,8 +153,8 @@ public:
|
||||
const Standard_Integer Nv) const;
|
||||
|
||||
//! Returns the type of the surface : Plane, Cylinder,
|
||||
//! Cone, Sphere, Torus, BezierSurface,
|
||||
//! BSplineSurface, SurfaceOfRevolution,
|
||||
//! Cone, Sphere, Torus, BezierSurface,
|
||||
//! BSplineSurface, SurfaceOfRevolution,
|
||||
//! SurfaceOfExtrusion, OtherSurface
|
||||
GeomAbs_SurfaceType GetType() const;
|
||||
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
|
||||
#include <TopTools_ListOfShape.hxx>
|
||||
|
||||
//! Contains the 3 ListOfShape of a Face ( Internal
|
||||
//! OutLines, OutLines on restriction and IsoLines ).
|
||||
//! Contains the 3 ListOfShape of a Face
|
||||
//! (Internal OutLines, OutLines on restriction and IsoLines).
|
||||
class HLRTopoBRep_FaceData
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
class gp_Circ2d;
|
||||
|
||||
//! Create sort and destroy the circles used in triangulation. <br>
|
||||
//! Create sort and destroy the circles used in triangulation.
|
||||
class BRepMesh_CircleTool
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -26,9 +26,9 @@
|
||||
|
||||
class TopoDS_Shape;
|
||||
|
||||
//! This class intended to setup / retrieve default triangulation algorithm. <br>
|
||||
//! Use BRepMesh_DiscretFactory::Get() static method to retrieve global Factory instance. <br>
|
||||
//! Use BRepMesh_DiscretFactory::Discret() method to retrieve meshing tool. <br>
|
||||
//! This class intended to setup / retrieve default triangulation algorithm.
|
||||
//! Use BRepMesh_DiscretFactory::Get() static method to retrieve global Factory instance.
|
||||
//! Use BRepMesh_DiscretFactory::Discret() method to retrieve meshing tool.
|
||||
class BRepMesh_DiscretFactory
|
||||
{
|
||||
public:
|
||||
@@ -40,8 +40,8 @@ public:
|
||||
//! Returns the list of registered meshing algorithms.
|
||||
const TColStd_MapOfAsciiString& Names() const { return myNames; }
|
||||
|
||||
//! Setup meshing algorithm by name. <br>
|
||||
//! Returns TRUE if requested tool is available. <br>
|
||||
//! Setup meshing algorithm by name.
|
||||
//! Returns TRUE if requested tool is available.
|
||||
//! On fail Factory will continue to use previous algo.
|
||||
Standard_Boolean SetDefaultName(const TCollection_AsciiString& theName)
|
||||
{
|
||||
@@ -51,8 +51,8 @@ public:
|
||||
//! Returns name for current meshing algorithm.
|
||||
const TCollection_AsciiString& DefaultName() const { return myDefaultName; }
|
||||
|
||||
//! Advanced function. Changes function name to retrieve from plugin. <br>
|
||||
//! Returns TRUE if requested tool is available. <br>
|
||||
//! Advanced function. Changes function name to retrieve from plugin.
|
||||
//! Returns TRUE if requested tool is available.
|
||||
//! On fail Factory will continue to use previous algo.
|
||||
Standard_Boolean SetFunctionName(const TCollection_AsciiString& theFuncName)
|
||||
{
|
||||
@@ -65,9 +65,9 @@ public:
|
||||
//! Returns error status for last meshing algorithm switch.
|
||||
BRepMesh_FactoryError ErrorStatus() const { return myErrorStatus; }
|
||||
|
||||
//! Setup meshing algorithm that should be created by this Factory. <br>
|
||||
//! Returns TRUE if requested tool is available. <br>
|
||||
//! On fail Factory will continue to use previous algo. <br>
|
||||
//! Setup meshing algorithm that should be created by this Factory.
|
||||
//! Returns TRUE if requested tool is available.
|
||||
//! On fail Factory will continue to use previous algo.
|
||||
//! Call ::ErrorStatus() method to retrieve fault reason.
|
||||
Standard_EXPORT Standard_Boolean
|
||||
SetDefault(const TCollection_AsciiString& theName,
|
||||
|
||||
@@ -112,7 +112,7 @@ public:
|
||||
//! Returns a number of vertices.
|
||||
Standard_Integer Extent() const { return mySelector.NbVertices(); }
|
||||
|
||||
//! Returns True when the map contains no keys. <br>
|
||||
//! Returns True when the map contains no keys.
|
||||
Standard_Boolean IsEmpty() const { return (Extent() == 0); }
|
||||
|
||||
//! Substitutes vertex with the given by the given vertex with attributes.
|
||||
|
||||
@@ -69,7 +69,7 @@ struct IMeshTools_Parameters
|
||||
//! Switches on/off multi-thread computation
|
||||
Standard_Boolean InParallel;
|
||||
|
||||
//! Switches on/off relative computation of edge tolerance<br>
|
||||
//! Switches on/off relative computation of edge tolerance
|
||||
//! If true, deflection used for the polygonalisation of each edge will be
|
||||
//! <defle> * Size of Edge. The deflection used for the faces will be the
|
||||
//! maximum deflection of their edges.
|
||||
|
||||
@@ -50,7 +50,7 @@ public:
|
||||
TopoDS_Vertex& V1,
|
||||
TopoDS_Vertex& V2);
|
||||
|
||||
//! <E> is a section between <F1> and <F2>. Computes
|
||||
//! <E> is a section between <F1> and <F2>. Computes
|
||||
//! <O1> the orientation of <E> in <F1> influenced by <F2>.
|
||||
//! idem for <O2>.
|
||||
Standard_EXPORT static void OrientSection(const TopoDS_Edge& E,
|
||||
@@ -59,25 +59,25 @@ public:
|
||||
TopAbs_Orientation& O1,
|
||||
TopAbs_Orientation& O2);
|
||||
|
||||
//! Looks for the common Vertices and Edges between faces <theF1> and <theF2>.<br>
|
||||
//! Returns TRUE if common shapes have been found.<br>
|
||||
//! <theLE> will contain the found common edges;<br>
|
||||
//! Looks for the common Vertices and Edges between faces <theF1> and <theF2>.
|
||||
//! Returns TRUE if common shapes have been found.
|
||||
//! <theLE> will contain the found common edges;
|
||||
//! <theLV> will contain the found common vertices.
|
||||
Standard_EXPORT static Standard_Boolean FindCommonShapes(const TopoDS_Face& theF1,
|
||||
const TopoDS_Face& theF2,
|
||||
TopTools_ListOfShape& theLE,
|
||||
TopTools_ListOfShape& theLV);
|
||||
|
||||
//! Looks for the common shapes of type <theType> between shapes <theS1> and <theS2>.<br>
|
||||
//! Returns TRUE if common shapes have been found.<br>
|
||||
//! Looks for the common shapes of type <theType> between shapes <theS1> and <theS2>.
|
||||
//! Returns TRUE if common shapes have been found.
|
||||
//! <theLSC> will contain the found common shapes.
|
||||
Standard_EXPORT static Standard_Boolean FindCommonShapes(const TopoDS_Shape& theS1,
|
||||
const TopoDS_Shape& theS2,
|
||||
const TopAbs_ShapeEnum theType,
|
||||
TopTools_ListOfShape& theLSC);
|
||||
|
||||
//! Computes the Section between <F1> and <F2> the
|
||||
//! edges solution are stored in <LInt1> with the
|
||||
//! Computes the Section between <F1> and <F2> the
|
||||
//! edges solution are stored in <LInt1> with the
|
||||
//! orientation on <F1>, the sames edges are stored in
|
||||
//! <Lint2> with the orientation on <F2>.
|
||||
Standard_EXPORT static void Inter3D(const TopoDS_Face& F1,
|
||||
@@ -125,11 +125,11 @@ public:
|
||||
Standard_Boolean& enlargeVfirst,
|
||||
Standard_Boolean& enlargeVlast);
|
||||
|
||||
//! Returns True if The Surface of <NF> has changed.
|
||||
//! if <ChangeGeom> is TRUE , the surface can be
|
||||
//! Returns True if The Surface of <NF> has changed.
|
||||
//! if <ChangeGeom> is TRUE the surface can be
|
||||
//! changed .
|
||||
//! if <UpdatePCurve> is TRUE, update the pcurves of the
|
||||
//! edges of <F> on the new surface if the surface has been changed.
|
||||
//! if <UpdatePCurve> is TRUE, update the pcurves of the
|
||||
//! edges of <F> on the new surface if the surface has been changed.
|
||||
//! <enlargeU>, <enlargeVfirst>, <enlargeVlast> allow or forbid
|
||||
//! enlargement in U and V directions correspondingly.
|
||||
//! <theExtensionMode> is a mode of extension of the surface of the face:
|
||||
@@ -172,16 +172,16 @@ public:
|
||||
TopTools_DataMapOfShapeShape& NOnV1,
|
||||
TopTools_DataMapOfShapeShape& NOnV2);
|
||||
|
||||
//! Store in MVE for a vertex <V> in <S> the incident
|
||||
//! Store in MVE for a vertex <V> in <S> the incident
|
||||
//! edges <E> in <S>.
|
||||
//! An Edge is Store only one Time for a vertex.
|
||||
Standard_EXPORT static void MapVertexEdges(const TopoDS_Shape& S,
|
||||
TopTools_DataMapOfShapeListOfShape& MVE);
|
||||
|
||||
//! Remove the non valid part of an offsetshape
|
||||
//! 1 - Remove all the free boundary and the faces
|
||||
//! Remove the non valid part of an offsetshape
|
||||
//! 1 - Remove all the free boundary and the faces
|
||||
//! connex to such edges.
|
||||
//! 2 - Remove all the shapes not valid in the result
|
||||
//! 2 - Remove all the shapes not valid in the result
|
||||
//! (according to the side of offsetting)
|
||||
//! in this version only the first point is implemented.
|
||||
Standard_EXPORT static TopoDS_Shape Deboucle3D(const TopoDS_Shape& S,
|
||||
@@ -196,7 +196,7 @@ public:
|
||||
Standard_EXPORT static Standard_Real Gabarit(const Handle(Geom_Curve)& aCurve);
|
||||
|
||||
//! Compares the normal directions of the planar faces and returns
|
||||
//! TRUE if the directions are the same with the given precision.<br>
|
||||
//! TRUE if the directions are the same with the given precision.
|
||||
Standard_EXPORT static Standard_Boolean CheckPlanesNormals(const TopoDS_Face& theFace1,
|
||||
const TopoDS_Face& theFace2,
|
||||
const Standard_Real theTolAng = 1.e-8);
|
||||
|
||||
@@ -34,10 +34,10 @@ class TopoDS_Shape;
|
||||
//! remaining faces of the solid become the walls of the
|
||||
//! hollowed solid, their thickness defined at the time of construction.
|
||||
//! the solid is built from an initial
|
||||
//! solid <S> and a set of faces {Fi} from <S>,
|
||||
//! builds a solid composed by two shells closed by
|
||||
//! the {Fi}. First shell <SS> is composed by all
|
||||
//! the faces of <S> expected {Fi}. Second shell is
|
||||
//! solid <S> and a set of faces {Fi} from <S>,
|
||||
//! builds a solid composed by two shells closed by
|
||||
//! the {Fi}. First shell <SS> is composed by all
|
||||
//! the faces of <S> expected {Fi}. Second shell is
|
||||
//! the offset shell of <SS>.
|
||||
//! A MakeThickSolid object provides a framework for:
|
||||
//! - defining the cross-section of a hollowed solid,
|
||||
@@ -115,7 +115,7 @@ public:
|
||||
Standard_EXPORT virtual void Build(
|
||||
const Message_ProgressRange& theRange = Message_ProgressRange()) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! <S>.
|
||||
Standard_EXPORT virtual const TopTools_ListOfShape& Modified(const TopoDS_Shape& S)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
@@ -58,11 +58,11 @@ public:
|
||||
//! Standard_ConstructionError if ToProj is not added.
|
||||
Standard_EXPORT void Add(const TopoDS_Shape& ToProj);
|
||||
|
||||
//! Sets the parameters used for computation
|
||||
//! Tol3 is the required tolerance between the 3d projected
|
||||
//! curve and its 2d representation
|
||||
//! InternalContinuity is the order of constraints
|
||||
//! used for approximation
|
||||
//! Sets the parameters used for computation
|
||||
//! Tol3 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,
|
||||
@@ -77,7 +77,7 @@ public:
|
||||
//! if MaxDist < 0 then this method does not affect the algorithm
|
||||
Standard_EXPORT void SetMaxDistance(const Standard_Real MaxDist);
|
||||
|
||||
//! Manage limitation of projected edges.
|
||||
//! Manage limitation of projected edges.
|
||||
Standard_EXPORT void SetLimit(const Standard_Boolean FaceBoundaries = Standard_True);
|
||||
|
||||
//! Returns true if a 3D curve is computed. If not, false is
|
||||
@@ -111,7 +111,7 @@ public:
|
||||
//! E has already been found.
|
||||
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 virtual const TopTools_ListOfShape& Generated(const TopoDS_Shape& S)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
@@ -101,14 +101,14 @@ public:
|
||||
//! Define the approximation algorithm
|
||||
Standard_EXPORT void SetSmoothing(const Standard_Boolean UseSmoothing);
|
||||
|
||||
//! Define the type of parametrization used in the approximation
|
||||
//! Define the type of parametrization used in the approximation
|
||||
Standard_EXPORT void SetParType(const Approx_ParametrizationType ParType);
|
||||
|
||||
//! Define the Continuity used in the approximation
|
||||
Standard_EXPORT void SetContinuity(const GeomAbs_Shape C);
|
||||
|
||||
//! define the Weights associed to the criterium used in
|
||||
//! the optimization.
|
||||
//! define the Weights associed to the criterium used in
|
||||
//! the optimization.
|
||||
//!
|
||||
//! if Wi <= 0
|
||||
Standard_EXPORT void SetCriteriumWeight(const Standard_Real W1,
|
||||
@@ -130,8 +130,8 @@ public:
|
||||
//! Define the approximation algorithm
|
||||
Standard_EXPORT Standard_Boolean UseSmoothing() const;
|
||||
|
||||
//! returns the Weights associed to the criterium used in
|
||||
//! the optimization.
|
||||
//! returns the Weights associed to the criterium used in
|
||||
//! the optimization.
|
||||
Standard_EXPORT void CriteriumWeight(Standard_Real& W1,
|
||||
Standard_Real& W2,
|
||||
Standard_Real& W3) const;
|
||||
|
||||
@@ -39,7 +39,7 @@ class BRepPrim_Builder
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Creates an empty, useless Builder. Necesseray for
|
||||
//! Creates an empty, useless Builder. Necesseray for
|
||||
//! compilation.
|
||||
Standard_EXPORT BRepPrim_Builder();
|
||||
|
||||
@@ -51,7 +51,7 @@ public:
|
||||
//! Make a empty Shell.
|
||||
Standard_EXPORT void MakeShell(TopoDS_Shell& S) const;
|
||||
|
||||
//! Returns in <F> a Face built with the plane
|
||||
//! Returns in <F> a Face built with the plane
|
||||
//! equation <P>. Used by all primitives.
|
||||
Standard_EXPORT void MakeFace(TopoDS_Face& F, const gp_Pln& P) const;
|
||||
|
||||
@@ -61,12 +61,12 @@ public:
|
||||
//! Returns in <E> a degenerated edge.
|
||||
Standard_EXPORT void MakeDegeneratedEdge(TopoDS_Edge& E) const;
|
||||
|
||||
//! Returns in <E> an Edge built with the line
|
||||
//! equation <L>.
|
||||
//! Returns in <E> an Edge built with the line
|
||||
//! equation <L>.
|
||||
Standard_EXPORT void MakeEdge(TopoDS_Edge& E, const gp_Lin& L) const;
|
||||
|
||||
//! Returns in <E> an Edge built with the circle
|
||||
//! equation <C>.
|
||||
//! Returns in <E> an Edge built with the circle
|
||||
//! equation <C>.
|
||||
Standard_EXPORT void MakeEdge(TopoDS_Edge& E, const gp_Circ& C) const;
|
||||
|
||||
//! Sets the line <L> to be the curve representing the
|
||||
@@ -74,16 +74,16 @@ public:
|
||||
//! <F>.
|
||||
Standard_EXPORT void SetPCurve(TopoDS_Edge& E, const TopoDS_Face& F, const gp_Lin2d& L) const;
|
||||
|
||||
//! Sets the lines <L1,L2> to be the curves
|
||||
//! representing the edge <E> in the parametric space
|
||||
//! Sets the lines <L1,L2> to be the curves
|
||||
//! representing the edge <E> in the parametric space
|
||||
//! of the closed surface of <F>.
|
||||
Standard_EXPORT void SetPCurve(TopoDS_Edge& E,
|
||||
const TopoDS_Face& F,
|
||||
const gp_Lin2d& L1,
|
||||
const gp_Lin2d& L2) const;
|
||||
|
||||
//! Sets the circle <C> to be the curve representing
|
||||
//! the edge <E> in the parametric space of the
|
||||
//! Sets the circle <C> to be the curve representing
|
||||
//! the edge <E> in the parametric space of the
|
||||
//! surface of <F>.
|
||||
Standard_EXPORT void SetPCurve(TopoDS_Edge& E, const TopoDS_Face& F, const gp_Circ2d& C) const;
|
||||
|
||||
@@ -93,54 +93,54 @@ public:
|
||||
//! Reverses the Face <F>.
|
||||
Standard_EXPORT void ReverseFace(TopoDS_Face& F) const;
|
||||
|
||||
//! Adds the Vertex <V> in the Edge <E>. <P> is the
|
||||
//! parameter of the vertex on the edge. If direct
|
||||
//! Adds the Vertex <V> in the Edge <E>. <P> is the
|
||||
//! parameter of the vertex on the edge. If direct
|
||||
//! is False the Vertex is reversed.
|
||||
Standard_EXPORT void AddEdgeVertex(TopoDS_Edge& E,
|
||||
const TopoDS_Vertex& V,
|
||||
const Standard_Real P,
|
||||
const Standard_Boolean direct) const;
|
||||
|
||||
//! Adds the Vertex <V> in the Edge <E>. <P1,P2>
|
||||
//! are the parameters of the vertex on the closed
|
||||
//! Adds the Vertex <V> in the Edge <E>. <P1,P2>
|
||||
//! are the parameters of the vertex on the closed
|
||||
//! edge.
|
||||
Standard_EXPORT void AddEdgeVertex(TopoDS_Edge& E,
|
||||
const TopoDS_Vertex& V,
|
||||
const Standard_Real P1,
|
||||
const Standard_Real P2) const;
|
||||
|
||||
//! <P1,P2> are the parameters of the vertex on the
|
||||
//! edge. The edge is a closed curve.
|
||||
//! <P1,P2> are the parameters of the vertex on the
|
||||
//! edge. The edge is a closed curve.
|
||||
Standard_EXPORT void SetParameters(TopoDS_Edge& E,
|
||||
const TopoDS_Vertex& V,
|
||||
const Standard_Real P1,
|
||||
const Standard_Real P2) const;
|
||||
|
||||
//! Adds the Edge <E> in the Wire <W>, if direct is
|
||||
//! Adds the Edge <E> in the Wire <W>, if direct is
|
||||
//! False the Edge is reversed.
|
||||
Standard_EXPORT void AddWireEdge(TopoDS_Wire& W,
|
||||
const TopoDS_Edge& E,
|
||||
const Standard_Boolean direct) const;
|
||||
|
||||
//! Adds the Wire <W> in the Face <F>.
|
||||
//! Adds the Wire <W> in the Face <F>.
|
||||
Standard_EXPORT void AddFaceWire(TopoDS_Face& F, const TopoDS_Wire& W) const;
|
||||
|
||||
//! Adds the Face <F> in the Shell <Sh>.
|
||||
//! Adds the Face <F> in the Shell <Sh>.
|
||||
Standard_EXPORT void AddShellFace(TopoDS_Shell& Sh, const TopoDS_Face& F) const;
|
||||
|
||||
//! This is called once an edge is completed. It gives
|
||||
//! the opportunity to perform any post treatment.
|
||||
Standard_EXPORT void CompleteEdge(TopoDS_Edge& E) const;
|
||||
|
||||
//! This is called once a wire is completed. It gives
|
||||
//! This is called once a wire is completed. It gives
|
||||
//! the opportunity to perform any post treatment.
|
||||
Standard_EXPORT void CompleteWire(TopoDS_Wire& W) const;
|
||||
|
||||
//! This is called once a face is completed. It gives
|
||||
//! This is called once a face is completed. It gives
|
||||
//! the opportunity to perform any post treatment.
|
||||
Standard_EXPORT void CompleteFace(TopoDS_Face& F) const;
|
||||
|
||||
//! This is called once a shell is completed. It gives
|
||||
//! This is called once a shell is completed. It gives
|
||||
//! the opportunity to perform any post treatment.
|
||||
Standard_EXPORT void CompleteShell(TopoDS_Shell& S) const;
|
||||
|
||||
|
||||
@@ -57,12 +57,12 @@ public:
|
||||
//! infinite cone with Axes
|
||||
Standard_EXPORT BRepPrim_Cone(const Standard_Real Angle, const gp_Ax2& Axes);
|
||||
|
||||
//! create a Cone at origin on Z axis, of height H,
|
||||
//! radius R1 at Z = 0, R2 at Z = H, X is the origin
|
||||
//! of angles. If R1 or R2 is 0 there is an apex.
|
||||
//! create a Cone at origin on Z axis, of height H,
|
||||
//! radius R1 at Z = 0, R2 at Z = H, X is the origin
|
||||
//! of angles. If R1 or R2 is 0 there is an apex.
|
||||
//! Otherwise, it is a truncated cone.
|
||||
//!
|
||||
//! Error : R1 and R2 < Resolution
|
||||
//! Error : R1 and R2 < Resolution
|
||||
//! R1 or R2 negative
|
||||
//! Abs(R1-R2) < Resolution
|
||||
//! H < Resolution
|
||||
@@ -83,7 +83,7 @@ public:
|
||||
const Standard_Real R2,
|
||||
const Standard_Real H);
|
||||
|
||||
//! The surface normal should be directed towards the
|
||||
//! The surface normal should be directed towards the
|
||||
//! outside.
|
||||
Standard_EXPORT virtual TopoDS_Face MakeEmptyLateralFace() const Standard_OVERRIDE;
|
||||
|
||||
|
||||
@@ -53,9 +53,9 @@ public:
|
||||
//! infinite Cylinder at Axes on Z negative
|
||||
Standard_EXPORT BRepPrim_Cylinder(const gp_Ax2& Axes, const Standard_Real Radius);
|
||||
|
||||
//! create a Cylinder at origin on Z axis, of
|
||||
//! create a Cylinder at origin on Z axis, of
|
||||
//! height H and radius R
|
||||
//! Error : Radius < Resolution
|
||||
//! Error : Radius < Resolution
|
||||
//! H < Resolution
|
||||
//! H negative
|
||||
Standard_EXPORT BRepPrim_Cylinder(const Standard_Real R, const Standard_Real H);
|
||||
@@ -65,7 +65,7 @@ public:
|
||||
const Standard_Real R,
|
||||
const Standard_Real H);
|
||||
|
||||
//! The surface normal should be directed towards the
|
||||
//! The surface normal should be directed towards the
|
||||
//! outside.
|
||||
Standard_EXPORT virtual TopoDS_Face MakeEmptyLateralFace() const Standard_OVERRIDE;
|
||||
|
||||
|
||||
@@ -28,10 +28,10 @@
|
||||
class BRep_Builder;
|
||||
class Geom_Surface;
|
||||
|
||||
//! The FaceBuilder is an algorithm to build a BRep
|
||||
//! The FaceBuilder is an algorithm to build a BRep
|
||||
//! Face from a Geom Surface.
|
||||
//!
|
||||
//! The face covers the whole surface or the area
|
||||
//! The face covers the whole surface or the area
|
||||
//! delimited by UMin, UMax, VMin, VMax
|
||||
class BRepPrim_FaceBuilder
|
||||
{
|
||||
|
||||
@@ -38,14 +38,14 @@ class gp_Pnt;
|
||||
//!
|
||||
//! Axes: an Axis2 (coordinate system)
|
||||
//!
|
||||
//! YMin, YMax the coordinates of the ymin and ymax
|
||||
//! YMin, YMax the coordinates of the ymin and ymax
|
||||
//! rectangular faces parallel to the ZX plane (of the
|
||||
//! coordinate systems)
|
||||
//!
|
||||
//! ZMin,ZMax,XMin,XMax the rectangular
|
||||
//! ZMin, ZMax, XMin, XMax the rectangular
|
||||
//! left (YMin) face parallel to the Z and X axes.
|
||||
//!
|
||||
//! Z2Min,Z2Max,X2Min,X2Max the rectangular
|
||||
//! Z2Min, Z2Max, X2Min, X2Max the rectangular
|
||||
//! right (YMax) face parallel to the Z and X axes.
|
||||
//!
|
||||
//! For a box Z2Min = ZMin, Z2Max = ZMax,
|
||||
|
||||
@@ -30,15 +30,15 @@ class TopoDS_Face;
|
||||
class TopoDS_Edge;
|
||||
class gp_Pnt2d;
|
||||
|
||||
//! Implement the OneAxis algorithm for a revolution
|
||||
//! Implement the OneAxis algorithm for a revolution
|
||||
//! surface.
|
||||
class BRepPrim_Revolution : public BRepPrim_OneAxis
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Create a revolution body <M> is the meridian nd
|
||||
//! must be in the XZ plane of <A>. <PM> is the
|
||||
//! Create a revolution body <M> is the meridian nd
|
||||
//! must be in the XZ plane of <A>. <PM> is the
|
||||
//! meridian in the XZ plane.
|
||||
Standard_EXPORT BRepPrim_Revolution(const gp_Ax2& A,
|
||||
const Standard_Real VMin,
|
||||
@@ -46,12 +46,12 @@ public:
|
||||
const Handle(Geom_Curve)& M,
|
||||
const Handle(Geom2d_Curve)& PM);
|
||||
|
||||
//! The surface normal should be directed towards the
|
||||
//! The surface normal should be directed towards the
|
||||
//! outside.
|
||||
Standard_EXPORT virtual TopoDS_Face MakeEmptyLateralFace() const;
|
||||
|
||||
//! Returns an edge with a 3D curve made from the
|
||||
//! meridian in the XZ plane rotated by <Ang> around
|
||||
//! Returns an edge with a 3D curve made from the
|
||||
//! meridian in the XZ plane rotated by <Ang> around
|
||||
//! the Z-axis. Ang may be 0 or myAngle.
|
||||
Standard_EXPORT virtual TopoDS_Edge MakeEmptyMeridianEdge(const Standard_Real Ang) const;
|
||||
|
||||
@@ -59,13 +59,13 @@ public:
|
||||
//! plane XZ.
|
||||
Standard_EXPORT virtual gp_Pnt2d MeridianValue(const Standard_Real V) const;
|
||||
|
||||
//! Sets the parametric urve of the edge <E> in the
|
||||
//! face <F> to be the 2d representation of the
|
||||
//! Sets the parametric urve of the edge <E> in the
|
||||
//! face <F> to be the 2d representation of the
|
||||
//! meridian.
|
||||
Standard_EXPORT virtual void SetMeridianPCurve(TopoDS_Edge& E, const TopoDS_Face& F) const;
|
||||
|
||||
protected:
|
||||
//! Create a revolution body. The meridian is set
|
||||
//! Create a revolution body. The meridian is set
|
||||
//! later. Reserved for derivated classes.
|
||||
Standard_EXPORT BRepPrim_Revolution(const gp_Ax2& A,
|
||||
const Standard_Real VMin,
|
||||
|
||||
@@ -32,8 +32,8 @@ class BRepPrim_Sphere : public BRepPrim_Revolution
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Creates a Sphere at origin with Radius. The axes
|
||||
//! of the sphere are the reference axes. An error is
|
||||
//! Creates a Sphere at origin with Radius. The axes
|
||||
//! of the sphere are the reference axes. An error is
|
||||
//! raised if the radius is < Resolution.
|
||||
Standard_EXPORT BRepPrim_Sphere(const Standard_Real Radius);
|
||||
|
||||
@@ -45,7 +45,7 @@ public:
|
||||
//! Creates a sphere with given axes system.
|
||||
Standard_EXPORT BRepPrim_Sphere(const gp_Ax2& Axes, const Standard_Real Radius);
|
||||
|
||||
//! The surface normal should be directed towards the
|
||||
//! The surface normal should be directed towards the
|
||||
//! outside.
|
||||
Standard_EXPORT virtual TopoDS_Face MakeEmptyLateralFace() const Standard_OVERRIDE;
|
||||
|
||||
|
||||
@@ -34,10 +34,10 @@ class gp_Ax1;
|
||||
//!
|
||||
//! * A basis topology which is swept.
|
||||
//!
|
||||
//! The basis topology must not contain solids
|
||||
//! The basis topology must not contain solids
|
||||
//! (neither composite solids.).
|
||||
//!
|
||||
//! The basis topology may be copied or shared in
|
||||
//! The basis topology may be copied or shared in
|
||||
//! the result.
|
||||
//!
|
||||
//! * A rotation axis and angle :
|
||||
@@ -56,22 +56,22 @@ class gp_Ax1;
|
||||
//! - Face -> Solid.
|
||||
//! - Shell -> CompSolid.
|
||||
//!
|
||||
//! Sweeping a Compound sweeps the elements of the
|
||||
//! compound and creates a compound with the
|
||||
//! Sweeping a Compound sweeps the elements of the
|
||||
//! compound and creates a compound with the
|
||||
//! results.
|
||||
class BRepPrimAPI_MakeRevol : public BRepPrimAPI_MakeSweep
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Builds the Revol of base S, axis A and angle D. If C
|
||||
//! Builds the Revol of base S, axis A and angle D. If C
|
||||
//! is true, S is copied.
|
||||
Standard_EXPORT BRepPrimAPI_MakeRevol(const TopoDS_Shape& S,
|
||||
const gp_Ax1& A,
|
||||
const Standard_Real D,
|
||||
const Standard_Boolean Copy = Standard_False);
|
||||
|
||||
//! Builds the Revol of base S, axis A and angle 2*Pi. If
|
||||
//! Builds the Revol of base S, axis A and angle 2*Pi. If
|
||||
//! C is true, S is copied.
|
||||
Standard_EXPORT BRepPrimAPI_MakeRevol(const TopoDS_Shape& S,
|
||||
const gp_Ax1& A,
|
||||
@@ -84,7 +84,7 @@ public:
|
||||
Standard_EXPORT virtual void Build(
|
||||
const Message_ProgressRange& theRange = Message_ProgressRange()) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the first shape of the revol (coinciding with
|
||||
//! Returns the first shape of the revol (coinciding with
|
||||
//! the generating shape).
|
||||
Standard_EXPORT TopoDS_Shape FirstShape() Standard_OVERRIDE;
|
||||
|
||||
@@ -101,11 +101,11 @@ public:
|
||||
Standard_EXPORT virtual Standard_Boolean IsDeleted(const TopoDS_Shape& S) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the TopoDS Shape of the beginning of the revolution,
|
||||
//! generated with theShape (subShape of the generating shape).
|
||||
//! generated with theShape (subShape of the generating shape).
|
||||
Standard_EXPORT TopoDS_Shape FirstShape(const TopoDS_Shape& theShape);
|
||||
|
||||
//! Returns the TopoDS Shape of the end of the revolution,
|
||||
//! generated with theShape (subShape of the generating shape).
|
||||
//! generated with theShape (subShape of the generating shape).
|
||||
Standard_EXPORT TopoDS_Shape LastShape(const TopoDS_Shape& theShape);
|
||||
|
||||
//! Check if there are degenerated edges in the result.
|
||||
|
||||
@@ -28,8 +28,8 @@
|
||||
#include <TColStd_Array2OfBoolean.hxx>
|
||||
#include <TopAbs_Orientation.hxx>
|
||||
|
||||
//! This a generic class is used to build Sweept
|
||||
//! primitives with a generating "shape" and a
|
||||
//! This a generic class is used to build Sweept
|
||||
//! primitives with a generating "shape" and a
|
||||
//! directing "line".
|
||||
//!
|
||||
//! The indexation and type analysis services required
|
||||
@@ -41,13 +41,13 @@
|
||||
//! The iteration services required for the generatrix
|
||||
//! are given by <Iterator from BRepSweep>.
|
||||
//!
|
||||
//! The iteration services required for the directrix
|
||||
//! The iteration services required for the directrix
|
||||
//! are given by <NumShapeIterator from Sweep>.
|
||||
//!
|
||||
//! The topology is like a grid of shapes. Each shape
|
||||
//! of the grid must be addressable without confusion
|
||||
//! by one or two objects from the generating or
|
||||
//! directing shapes. Here are examples of correct
|
||||
//! The topology is like a grid of shapes. Each shape
|
||||
//! of the grid must be addressable without confusion
|
||||
//! by one or two objects from the generating or
|
||||
//! directing shapes. Here are examples of correct
|
||||
//! associations to address:
|
||||
//!
|
||||
//! - a vertex : GenVertex - DirVertex
|
||||
@@ -63,7 +63,7 @@
|
||||
//! types.
|
||||
//!
|
||||
//! The method Has... is given because in some special
|
||||
//! cases, a vertex, an edge or a face may be
|
||||
//! cases, a vertex, an edge or a face may be
|
||||
//! geometricaly nonexistent or not useful.
|
||||
class BRepSweep_NumLinearRegularSweep
|
||||
{
|
||||
@@ -86,8 +86,8 @@ public:
|
||||
Standard_EXPORT virtual TopoDS_Shape MakeEmptyGeneratingEdge(const TopoDS_Shape& aGenE,
|
||||
const Sweep_NumShape& aDirV) = 0;
|
||||
|
||||
//! Sets the parameters of the new vertex on the new
|
||||
//! face. The new face and new vertex where generated
|
||||
//! Sets the parameters of the new vertex on the new
|
||||
//! face. The new face and new vertex where generated
|
||||
//! from aGenF, aGenV and aDirV .
|
||||
Standard_EXPORT virtual void SetParameters(const TopoDS_Shape& aNewFace,
|
||||
TopoDS_Shape& aNewVertex,
|
||||
@@ -95,8 +95,8 @@ public:
|
||||
const TopoDS_Shape& aGenV,
|
||||
const Sweep_NumShape& aDirV) = 0;
|
||||
|
||||
//! Sets the parameter of the new vertex on the new
|
||||
//! edge. The new edge and new vertex where generated
|
||||
//! Sets the parameter of the new vertex on the new
|
||||
//! edge. The new edge and new vertex where generated
|
||||
//! from aGenV aDirE, and aDirV.
|
||||
Standard_EXPORT virtual void SetDirectingParameter(const TopoDS_Shape& aNewEdge,
|
||||
TopoDS_Shape& aNewVertex,
|
||||
@@ -104,8 +104,8 @@ public:
|
||||
const Sweep_NumShape& aDirE,
|
||||
const Sweep_NumShape& aDirV) = 0;
|
||||
|
||||
//! Sets the parameter of the new vertex on the new
|
||||
//! edge. The new edge and new vertex where generated
|
||||
//! Sets the parameter of the new vertex on the new
|
||||
//! edge. The new edge and new vertex where generated
|
||||
//! from aGenE, aGenV and aDirV .
|
||||
Standard_EXPORT virtual void SetGeneratingParameter(const TopoDS_Shape& aNewEdge,
|
||||
TopoDS_Shape& aNewVertex,
|
||||
@@ -113,16 +113,16 @@ public:
|
||||
const TopoDS_Shape& aGenV,
|
||||
const Sweep_NumShape& aDirV) = 0;
|
||||
|
||||
//! Builds the face addressed by [aGenS,aDirS], with
|
||||
//! Builds the face addressed by [aGenS,aDirS], with
|
||||
//! its geometric part, but without subcomponents. The
|
||||
//! couple aGenS, aDirS can be a "generating face and
|
||||
//! a directing vertex" or "a generating edge and a
|
||||
//! directing edge".
|
||||
//! couple aGenS, aDirS can be a "generating face and
|
||||
//! a directing vertex" or "a generating edge and a
|
||||
//! directing edge".
|
||||
Standard_EXPORT virtual TopoDS_Shape MakeEmptyFace(const TopoDS_Shape& aGenS,
|
||||
const Sweep_NumShape& aDirS) = 0;
|
||||
|
||||
//! Sets the PCurve for a new edge on a new face. The
|
||||
//! new edge and the new face were generated using
|
||||
//! new edge and the new face were generated using
|
||||
//! aGenF, aGenE and aDirV.
|
||||
Standard_EXPORT virtual void SetPCurve(const TopoDS_Shape& aNewFace,
|
||||
TopoDS_Shape& aNewEdge,
|
||||
@@ -132,7 +132,7 @@ public:
|
||||
const TopAbs_Orientation orien) = 0;
|
||||
|
||||
//! Sets the PCurve for a new edge on a new face. The
|
||||
//! new edge and the new face were generated using
|
||||
//! new edge and the new face were generated using
|
||||
//! aGenE, aDirE and aDirV.
|
||||
Standard_EXPORT virtual void SetGeneratingPCurve(const TopoDS_Shape& aNewFace,
|
||||
TopoDS_Shape& aNewEdge,
|
||||
@@ -142,7 +142,7 @@ public:
|
||||
const TopAbs_Orientation orien) = 0;
|
||||
|
||||
//! Sets the PCurve for a new edge on a new face. The
|
||||
//! new edge and the new face were generated using
|
||||
//! new edge and the new face were generated using
|
||||
//! aGenE, aDirE and aGenV.
|
||||
Standard_EXPORT virtual void SetDirectingPCurve(const TopoDS_Shape& aNewFace,
|
||||
TopoDS_Shape& aNewEdge,
|
||||
@@ -151,15 +151,15 @@ public:
|
||||
const Sweep_NumShape& aDirE,
|
||||
const TopAbs_Orientation orien) = 0;
|
||||
|
||||
//! Returns the Orientation of the shell in the solid
|
||||
//! generated by the face aGenS with the edge aDirS.
|
||||
//! It is REVERSED if the surface is swept in the
|
||||
//! Returns the Orientation of the shell in the solid
|
||||
//! generated by the face aGenS with the edge aDirS.
|
||||
//! It is REVERSED if the surface is swept in the
|
||||
//! direction of the normal.
|
||||
Standard_EXPORT virtual TopAbs_Orientation DirectSolid(const TopoDS_Shape& aGenS,
|
||||
const Sweep_NumShape& aDirS) = 0;
|
||||
|
||||
//! Returns true if aNewSubShape (addressed by
|
||||
//! aSubGenS and aDirS) must be added in aNewShape
|
||||
//! Returns true if aNewSubShape (addressed by
|
||||
//! aSubGenS and aDirS) must be added in aNewShape
|
||||
//! (addressed by aGenS and aDirS).
|
||||
Standard_EXPORT virtual Standard_Boolean GGDShapeIsToAdd(const TopoDS_Shape& aNewShape,
|
||||
const TopoDS_Shape& aNewSubShape,
|
||||
@@ -167,8 +167,8 @@ public:
|
||||
const TopoDS_Shape& aSubGenS,
|
||||
const Sweep_NumShape& aDirS) const = 0;
|
||||
|
||||
//! Returns true if aNewSubShape (addressed by
|
||||
//! aGenS and aSubDirS) must be added in aNewShape
|
||||
//! Returns true if aNewSubShape (addressed by
|
||||
//! aGenS and aSubDirS) must be added in aNewShape
|
||||
//! (addressed by aGenS and aDirS).
|
||||
Standard_EXPORT virtual Standard_Boolean GDDShapeIsToAdd(
|
||||
const TopoDS_Shape& aNewShape,
|
||||
@@ -177,9 +177,9 @@ public:
|
||||
const Sweep_NumShape& aDirS,
|
||||
const Sweep_NumShape& aSubDirS) const = 0;
|
||||
|
||||
//! In some particular cases the topology of a
|
||||
//! generated face must be composed of independent
|
||||
//! closed wires, in this case this function returns
|
||||
//! In some particular cases the topology of a
|
||||
//! generated face must be composed of independent
|
||||
//! closed wires, in this case this function returns
|
||||
//! true.
|
||||
Standard_EXPORT virtual Standard_Boolean SeparatedWires(const TopoDS_Shape& aNewShape,
|
||||
const TopoDS_Shape& aNewSubShape,
|
||||
@@ -187,21 +187,21 @@ public:
|
||||
const TopoDS_Shape& aSubGenS,
|
||||
const Sweep_NumShape& aDirS) const = 0;
|
||||
|
||||
//! In some particular cases the topology of a
|
||||
//! generated Shell must be composed of independent
|
||||
//! closed Shells, in this case this function returns
|
||||
//! In some particular cases the topology of a
|
||||
//! generated Shell must be composed of independent
|
||||
//! closed Shells, in this case this function returns
|
||||
//! a Compound of independent Shells.
|
||||
Standard_EXPORT virtual TopoDS_Shape SplitShell(const TopoDS_Shape& aNewShape) const;
|
||||
|
||||
//! Called to propagate the continuity of every vertex
|
||||
//! between two edges of the generating wire aGenS on
|
||||
//! Called to propagate the continuity of every vertex
|
||||
//! between two edges of the generating wire aGenS on
|
||||
//! the generated edge and faces.
|
||||
Standard_EXPORT virtual void SetContinuity(const TopoDS_Shape& aGenS,
|
||||
const Sweep_NumShape& aDirS) = 0;
|
||||
|
||||
//! Returns true if aDirS and aGenS addresses a
|
||||
//! resulting Shape. In some specific cases the shape
|
||||
//! can be geometrically inexsistant, then this
|
||||
//! Returns true if aDirS and aGenS addresses a
|
||||
//! resulting Shape. In some specific cases the shape
|
||||
//! can be geometrically inexsistant, then this
|
||||
//! function returns false.
|
||||
Standard_EXPORT virtual Standard_Boolean HasShape(const TopoDS_Shape& aGenS,
|
||||
const Sweep_NumShape& aDirS) const = 0;
|
||||
@@ -209,11 +209,11 @@ public:
|
||||
//! Returns true if aGenS cannot be transformed.
|
||||
Standard_EXPORT virtual Standard_Boolean IsInvariant(const TopoDS_Shape& aGenS) const = 0;
|
||||
|
||||
//! Returns the resulting Shape indexed by aDirS and
|
||||
//! Returns the resulting Shape indexed by aDirS and
|
||||
//! aGenS.
|
||||
Standard_EXPORT TopoDS_Shape Shape(const TopoDS_Shape& aGenS, const Sweep_NumShape& aDirS);
|
||||
|
||||
//! Returns the resulting Shape indexed by myDirWire
|
||||
//! Returns the resulting Shape indexed by myDirWire
|
||||
//! and aGenS.
|
||||
Standard_EXPORT TopoDS_Shape Shape(const TopoDS_Shape& aGenS);
|
||||
|
||||
@@ -225,30 +225,30 @@ public:
|
||||
//! is used in result shape
|
||||
Standard_EXPORT Standard_Boolean GenIsUsed(const TopoDS_Shape& theS) const;
|
||||
|
||||
//! Returns the resulting Shape indexed by myDirWire
|
||||
//! Returns the resulting Shape indexed by myDirWire
|
||||
//! and myGenShape.
|
||||
Standard_EXPORT TopoDS_Shape Shape();
|
||||
|
||||
//! Returns the resulting Shape indexed by the first
|
||||
//! Vertex of myDirWire and myGenShape.
|
||||
//! Returns the resulting Shape indexed by the first
|
||||
//! Vertex of myDirWire and myGenShape.
|
||||
Standard_EXPORT TopoDS_Shape FirstShape();
|
||||
|
||||
//! Returns the resulting Shape indexed by the last
|
||||
//! Returns the resulting Shape indexed by the last
|
||||
//! Vertex of myDirWire and myGenShape.
|
||||
Standard_EXPORT TopoDS_Shape LastShape();
|
||||
|
||||
//! Returns the resulting Shape indexed by the first
|
||||
//! Vertex of myDirWire and aGenS.
|
||||
//! Returns the resulting Shape indexed by the first
|
||||
//! Vertex of myDirWire and aGenS.
|
||||
Standard_EXPORT TopoDS_Shape FirstShape(const TopoDS_Shape& aGenS);
|
||||
|
||||
//! Returns the resulting Shape indexed by the last
|
||||
//! Returns the resulting Shape indexed by the last
|
||||
//! Vertex of myDirWire and aGenS.
|
||||
Standard_EXPORT TopoDS_Shape LastShape(const TopoDS_Shape& aGenS);
|
||||
|
||||
Standard_EXPORT Standard_Boolean Closed() const;
|
||||
|
||||
protected:
|
||||
//! Creates a NumLinearRegularSweep. <aBuilder> gives
|
||||
//! Creates a NumLinearRegularSweep. <aBuilder> gives
|
||||
//! basic topological services.
|
||||
Standard_EXPORT BRepSweep_NumLinearRegularSweep(const BRepSweep_Builder& aBuilder,
|
||||
const TopoDS_Shape& aGenShape,
|
||||
|
||||
@@ -45,8 +45,8 @@ public:
|
||||
const Standard_Boolean Canonize = Standard_True);
|
||||
|
||||
//! Builds a semi-infinite or an infinite prism of base S.
|
||||
//! If Copy is true S is copied. If Inf is true the prism
|
||||
//! is infinite, if Inf is false the prism is infinite in
|
||||
//! If Copy is true S is copied. If Inf is true the prism
|
||||
//! is infinite, if Inf is false the prism is infinite in
|
||||
//! the direction D. If Canonize is true then generated surfaces
|
||||
//! are attempted to be canonized in simple types
|
||||
Standard_EXPORT BRepSweep_Prism(const TopoDS_Shape& S,
|
||||
@@ -58,27 +58,27 @@ public:
|
||||
//! Returns the TopoDS Shape attached to the prism.
|
||||
Standard_EXPORT TopoDS_Shape Shape();
|
||||
|
||||
//! Returns the TopoDS Shape generated with aGenS
|
||||
//! (subShape of the generating shape).
|
||||
//! Returns the TopoDS Shape generated with aGenS
|
||||
//! (subShape of the generating shape).
|
||||
Standard_EXPORT TopoDS_Shape Shape(const TopoDS_Shape& aGenS);
|
||||
|
||||
//! Returns the TopoDS Shape of the bottom of the prism.
|
||||
//! Returns the TopoDS Shape of the bottom of the prism.
|
||||
Standard_EXPORT TopoDS_Shape FirstShape();
|
||||
|
||||
//! Returns the TopoDS Shape of the bottom of the prism.
|
||||
//! generated with aGenS (subShape of the generating
|
||||
//! Returns the TopoDS Shape of the bottom of the prism.
|
||||
//! generated with aGenS (subShape of the generating
|
||||
//! shape).
|
||||
Standard_EXPORT TopoDS_Shape FirstShape(const TopoDS_Shape& aGenS);
|
||||
|
||||
//! Returns the TopoDS Shape of the top of the prism.
|
||||
Standard_EXPORT TopoDS_Shape LastShape();
|
||||
|
||||
//! Returns the TopoDS Shape of the top of the prism.
|
||||
//! generated with aGenS (subShape of the generating
|
||||
//! Returns the TopoDS Shape of the top of the prism.
|
||||
//! generated with aGenS (subShape of the generating
|
||||
//! shape).
|
||||
Standard_EXPORT TopoDS_Shape LastShape(const TopoDS_Shape& aGenS);
|
||||
|
||||
//! Returns the Vector of the Prism, if it is an infinite
|
||||
//! Returns the Vector of the Prism, if it is an infinite
|
||||
//! prism the Vec is unitar.
|
||||
Standard_EXPORT gp_Vec Vec() const;
|
||||
|
||||
|
||||
@@ -35,14 +35,14 @@ class BRepSweep_Revol
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Builds the Revol of meridian S axis A and angle D. If
|
||||
//! Builds the Revol of meridian S axis A and angle D. If
|
||||
//! C is true S is copied.
|
||||
Standard_EXPORT BRepSweep_Revol(const TopoDS_Shape& S,
|
||||
const gp_Ax1& A,
|
||||
const Standard_Real D,
|
||||
const Standard_Boolean C = Standard_False);
|
||||
|
||||
//! Builds the Revol of meridian S axis A and angle 2*Pi.
|
||||
//! Builds the Revol of meridian S axis A and angle 2*Pi.
|
||||
//! If C is true S is copied.
|
||||
Standard_EXPORT BRepSweep_Revol(const TopoDS_Shape& S,
|
||||
const gp_Ax1& A,
|
||||
@@ -51,23 +51,23 @@ public:
|
||||
//! Returns the TopoDS Shape attached to the Revol.
|
||||
Standard_EXPORT TopoDS_Shape Shape();
|
||||
|
||||
//! Returns the TopoDS Shape generated with aGenS
|
||||
//! (subShape of the generating shape).
|
||||
//! Returns the TopoDS Shape generated with aGenS
|
||||
//! (subShape of the generating shape).
|
||||
Standard_EXPORT TopoDS_Shape Shape(const TopoDS_Shape& aGenS);
|
||||
|
||||
//! Returns the first shape of the revol (coinciding with
|
||||
//! Returns the first shape of the revol (coinciding with
|
||||
//! the generating shape).
|
||||
Standard_EXPORT TopoDS_Shape FirstShape();
|
||||
|
||||
//! Returns the first shape of the revol (coinciding with
|
||||
//! Returns the first shape of the revol (coinciding with
|
||||
//! the generating shape).
|
||||
Standard_EXPORT TopoDS_Shape FirstShape(const TopoDS_Shape& aGenS);
|
||||
|
||||
//! Returns the TopoDS Shape of the top of the prism.
|
||||
Standard_EXPORT TopoDS_Shape LastShape();
|
||||
|
||||
//! Returns the TopoDS Shape of the top of the prism.
|
||||
//! generated with aGenS (subShape of the generating
|
||||
//! Returns the TopoDS Shape of the top of the prism.
|
||||
//! generated with aGenS (subShape of the generating
|
||||
//! shape).
|
||||
Standard_EXPORT TopoDS_Shape LastShape(const TopoDS_Shape& aGenS);
|
||||
|
||||
|
||||
@@ -29,14 +29,14 @@ class TopoDS_Shape;
|
||||
class Sweep_NumShape;
|
||||
class TopLoc_Location;
|
||||
|
||||
//! Provides an algorithm to build object by
|
||||
//! Provides an algorithm to build object by
|
||||
//! Rotation sweep.
|
||||
class BRepSweep_Rotation : public BRepSweep_Trsf
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Creates a topology by rotating <S> around A with the
|
||||
//! Creates a topology by rotating <S> around A with the
|
||||
//! angle D.
|
||||
Standard_EXPORT BRepSweep_Rotation(const TopoDS_Shape& S,
|
||||
const Sweep_NumShape& N,
|
||||
@@ -62,8 +62,8 @@ public:
|
||||
const Sweep_NumShape& aDirV)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
//! Sets the parameters of the new vertex on the new
|
||||
//! face. The new face and new vertex where generated
|
||||
//! Sets the parameters of the new vertex on the new
|
||||
//! face. The new face and new vertex where generated
|
||||
//! from aGenF, aGenV and aDirV .
|
||||
Standard_EXPORT void SetParameters(const TopoDS_Shape& aNewFace,
|
||||
TopoDS_Shape& aNewVertex,
|
||||
@@ -71,8 +71,8 @@ public:
|
||||
const TopoDS_Shape& aGenV,
|
||||
const Sweep_NumShape& aDirV) Standard_OVERRIDE;
|
||||
|
||||
//! Sets the parameter of the new vertex on the new
|
||||
//! edge. The new edge and new vertex where generated
|
||||
//! Sets the parameter of the new vertex on the new
|
||||
//! edge. The new edge and new vertex where generated
|
||||
//! from aGenV aDirE, and aDirV.
|
||||
Standard_EXPORT void SetDirectingParameter(const TopoDS_Shape& aNewEdge,
|
||||
TopoDS_Shape& aNewVertex,
|
||||
@@ -80,8 +80,8 @@ public:
|
||||
const Sweep_NumShape& aDirE,
|
||||
const Sweep_NumShape& aDirV) Standard_OVERRIDE;
|
||||
|
||||
//! Sets the parameter of the new vertex on the new
|
||||
//! edge. The new edge and new vertex where generated
|
||||
//! Sets the parameter of the new vertex on the new
|
||||
//! edge. The new edge and new vertex where generated
|
||||
//! from aGenE, aGenV and aDirV .
|
||||
Standard_EXPORT void SetGeneratingParameter(const TopoDS_Shape& aNewEdge,
|
||||
TopoDS_Shape& aNewVertex,
|
||||
@@ -89,16 +89,16 @@ public:
|
||||
const TopoDS_Shape& aGenV,
|
||||
const Sweep_NumShape& aDirV) Standard_OVERRIDE;
|
||||
|
||||
//! Builds the face addressed by [aGenS,aDirS], with
|
||||
//! Builds the face addressed by [aGenS,aDirS], with
|
||||
//! its geometric part, but without subcomponents. The
|
||||
//! couple aGenS, aDirS can be a "generating face and
|
||||
//! a directing vertex" or "a generating edge and a
|
||||
//! couple aGenS, aDirS can be a "generating face and
|
||||
//! a directing vertex" or "a generating edge and a
|
||||
//! directing edge".
|
||||
Standard_EXPORT TopoDS_Shape MakeEmptyFace(const TopoDS_Shape& aGenS,
|
||||
const Sweep_NumShape& aDirS) Standard_OVERRIDE;
|
||||
|
||||
//! Sets the PCurve for a new edge on a new face. The
|
||||
//! new edge and the new face were generated using
|
||||
//! new edge and the new face were generated using
|
||||
//! aGenF, aGenE and aDirV.
|
||||
Standard_EXPORT void SetPCurve(const TopoDS_Shape& aNewFace,
|
||||
TopoDS_Shape& aNewEdge,
|
||||
@@ -108,7 +108,7 @@ public:
|
||||
const TopAbs_Orientation orien) Standard_OVERRIDE;
|
||||
|
||||
//! Sets the PCurve for a new edge on a new face. The
|
||||
//! new edge and the new face were generated using
|
||||
//! new edge and the new face were generated using
|
||||
//! aGenE, aDirE and aDirV.
|
||||
Standard_EXPORT void SetGeneratingPCurve(const TopoDS_Shape& aNewFace,
|
||||
TopoDS_Shape& aNewEdge,
|
||||
@@ -118,7 +118,7 @@ public:
|
||||
const TopAbs_Orientation orien) Standard_OVERRIDE;
|
||||
|
||||
//! Sets the PCurve for a new edge on a new face. The
|
||||
//! new edge and the new face were generated using
|
||||
//! new edge and the new face were generated using
|
||||
//! aGenE, aDirE and aGenV.
|
||||
Standard_EXPORT void SetDirectingPCurve(const TopoDS_Shape& aNewFace,
|
||||
TopoDS_Shape& aNewEdge,
|
||||
@@ -127,15 +127,15 @@ public:
|
||||
const Sweep_NumShape& aDirE,
|
||||
const TopAbs_Orientation orien) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the Orientation of the shell in the solid
|
||||
//! generated by the face aGenS with the edge aDirS.
|
||||
//! It is REVERSED if the surface is swept in the
|
||||
//! Returns the Orientation of the shell in the solid
|
||||
//! generated by the face aGenS with the edge aDirS.
|
||||
//! It is REVERSED if the surface is swept in the
|
||||
//! direction of the normal.
|
||||
Standard_EXPORT TopAbs_Orientation DirectSolid(const TopoDS_Shape& aGenS,
|
||||
const Sweep_NumShape& aDirS) Standard_OVERRIDE;
|
||||
|
||||
//! Returns true if aNewSubShape (addressed by
|
||||
//! aSubGenS and aDirS) must be added in aNewShape
|
||||
//! Returns true if aNewSubShape (addressed by
|
||||
//! aSubGenS and aDirS) must be added in aNewShape
|
||||
//! (addressed by aGenS and aDirS).
|
||||
Standard_EXPORT Standard_Boolean
|
||||
GGDShapeIsToAdd(const TopoDS_Shape& aNewShape,
|
||||
@@ -144,8 +144,8 @@ public:
|
||||
const TopoDS_Shape& aSubGenS,
|
||||
const Sweep_NumShape& aDirS) const Standard_OVERRIDE;
|
||||
|
||||
//! Returns true if aNewSubShape (addressed by
|
||||
//! aGenS and aSubDirS) must be added in aNewShape
|
||||
//! Returns true if aNewSubShape (addressed by
|
||||
//! aGenS and aSubDirS) must be added in aNewShape
|
||||
//! (addressed by aGenS and aDirS).
|
||||
Standard_EXPORT Standard_Boolean
|
||||
GDDShapeIsToAdd(const TopoDS_Shape& aNewShape,
|
||||
@@ -154,10 +154,10 @@ public:
|
||||
const Sweep_NumShape& aDirS,
|
||||
const Sweep_NumShape& aSubDirS) const Standard_OVERRIDE;
|
||||
|
||||
//! In some particular cases the topology of a
|
||||
//! generated face must be composed of independent
|
||||
//! closed wires, in this case this function returns
|
||||
//! true. The only case in which the function may
|
||||
//! In some particular cases the topology of a
|
||||
//! generated face must be composed of independent
|
||||
//! closed wires, in this case this function returns
|
||||
//! true. The only case in which the function may
|
||||
//! return true is a planar face in a closed revol.
|
||||
Standard_EXPORT Standard_Boolean
|
||||
SeparatedWires(const TopoDS_Shape& aNewShape,
|
||||
@@ -166,22 +166,22 @@ public:
|
||||
const TopoDS_Shape& aSubGenS,
|
||||
const Sweep_NumShape& aDirS) const Standard_OVERRIDE;
|
||||
|
||||
//! In some particular cases the topology of a
|
||||
//! generated Shell must be composed of independent
|
||||
//! closed Shells, in this case this function returns
|
||||
//! In some particular cases the topology of a
|
||||
//! generated Shell must be composed of independent
|
||||
//! closed Shells, in this case this function returns
|
||||
//! a Compound of independent Shells.
|
||||
Standard_EXPORT virtual TopoDS_Shape SplitShell(const TopoDS_Shape& aNewShape) const
|
||||
Standard_OVERRIDE;
|
||||
|
||||
//! Returns true if aDirS and aGenS addresses a
|
||||
//! resulting Shape. In some specific cases the shape
|
||||
//! can be geometrically inexsistant, then this
|
||||
//! Returns true if aDirS and aGenS addresses a
|
||||
//! resulting Shape. In some specific cases the shape
|
||||
//! can be geometrically inexsistant, then this
|
||||
//! function returns false.
|
||||
Standard_EXPORT Standard_Boolean HasShape(const TopoDS_Shape& aGenS,
|
||||
const Sweep_NumShape& aDirS) const Standard_OVERRIDE;
|
||||
|
||||
//! Returns true when the geometry of aGenS is not
|
||||
//! modified by the rotation.
|
||||
//! Returns true when the geometry of aGenS is not
|
||||
//! modified by the rotation.
|
||||
Standard_EXPORT Standard_Boolean IsInvariant(const TopoDS_Shape& aGenS) const Standard_OVERRIDE;
|
||||
|
||||
//! returns the axis
|
||||
|
||||
@@ -26,15 +26,15 @@
|
||||
#include <TopAbs_Orientation.hxx>
|
||||
class TopoDS_Shape;
|
||||
|
||||
//! Provides the indexation and type analysis services
|
||||
//! Provides the indexation and type analysis services
|
||||
//! required by the TopoDS generating Shape of BRepSweep.
|
||||
class BRepSweep_Tool
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Initialize the tool with <aShape>. The IndexTool
|
||||
//! must prepare an indexation for all the subshapes
|
||||
//! Initialize the tool with <aShape>. The IndexTool
|
||||
//! must prepare an indexation for all the subshapes
|
||||
//! of this shape.
|
||||
Standard_EXPORT BRepSweep_Tool(const TopoDS_Shape& aShape);
|
||||
|
||||
|
||||
@@ -349,7 +349,7 @@ private:
|
||||
//!
|
||||
//! The singularities and corresponding precisions are the
|
||||
//! following:
|
||||
//! - ConicalSurface - one degenerated point (apex of the cone),
|
||||
//! - ConicalSurface - one degenerated point (apex of the cone),
|
||||
//! precision is 0.,
|
||||
//! - ToroidalSurface - two degenerated points, precision is
|
||||
//! Max (0, majorR-minorR),
|
||||
|
||||
+24
-24
@@ -43,11 +43,11 @@ class ShapeCustom_ConvertToRevolution : public ShapeCustom_Modification
|
||||
public:
|
||||
Standard_EXPORT ShapeCustom_ConvertToRevolution();
|
||||
|
||||
//! Returns Standard_True if the face <F> has been
|
||||
//! Returns Standard_True if the face <F> has been
|
||||
//! modified. In this case, <S> is the new geometric
|
||||
//! support of the face, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <S>, <L>, <Tol> are not
|
||||
//! support of the face, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <S>, <L>, <Tol> are not
|
||||
//! significant.
|
||||
Standard_EXPORT Standard_Boolean NewSurface(const TopoDS_Face& F,
|
||||
Handle(Geom_Surface)& S,
|
||||
@@ -56,35 +56,35 @@ public:
|
||||
Standard_Boolean& RevWires,
|
||||
Standard_Boolean& RevFace) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the edge <E> has been
|
||||
//! modified. In this case, <C> is the new geometric
|
||||
//! support of the edge, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <C>, <L>, <Tol> are not
|
||||
//! Returns Standard_True if the edge <E> has been
|
||||
//! modified. In this case, <C> is the new geometric
|
||||
//! support of the edge, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <C>, <L>, <Tol> are not
|
||||
//! significant.
|
||||
Standard_EXPORT Standard_Boolean NewCurve(const TopoDS_Edge& E,
|
||||
Handle(Geom_Curve)& C,
|
||||
TopLoc_Location& L,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the vertex <V> has been
|
||||
//! modified. In this case, <P> is the new geometric
|
||||
//! support of the vertex, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! Returns Standard_True if the vertex <V> has been
|
||||
//! modified. In this case, <P> is the new geometric
|
||||
//! support of the vertex, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! are not significant.
|
||||
Standard_EXPORT Standard_Boolean NewPoint(const TopoDS_Vertex& V,
|
||||
gp_Pnt& P,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the edge <E> has a new
|
||||
//! Returns Standard_True if the edge <E> has a new
|
||||
//! curve on surface on the face <F>.In this case, <C>
|
||||
//! is the new geometric support of the edge, <L> the
|
||||
//! is the new geometric support of the edge, <L> the
|
||||
//! new location, <Tol> the new tolerance.
|
||||
//!
|
||||
//! Otherwise, returns Standard_False, and <C>, <L>,
|
||||
//! Otherwise, returns Standard_False, and <C>, <L>,
|
||||
//! <Tol> are not significant.
|
||||
//!
|
||||
//! <NewE> is the new edge created from <E>. <NewF>
|
||||
//! <NewE> is the new edge created from <E>. <NewF>
|
||||
//! is the new face created from <F>. They may be useful.
|
||||
Standard_EXPORT Standard_Boolean NewCurve2d(const TopoDS_Edge& E,
|
||||
const TopoDS_Face& F,
|
||||
@@ -93,21 +93,21 @@ public:
|
||||
Handle(Geom2d_Curve)& C,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the Vertex <V> has a new
|
||||
//! parameter on the edge <E>. In this case, <P> is
|
||||
//! the parameter, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! Returns Standard_True if the Vertex <V> has a new
|
||||
//! parameter on the edge <E>. In this case, <P> is
|
||||
//! the parameter, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! are not significant.
|
||||
Standard_EXPORT Standard_Boolean NewParameter(const TopoDS_Vertex& V,
|
||||
const TopoDS_Edge& E,
|
||||
Standard_Real& P,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the continuity of <NewE> between <NewF1>
|
||||
//! Returns the continuity of <NewE> between <NewF1>
|
||||
//! and <NewF2>.
|
||||
//!
|
||||
//! <NewE> is the new edge created from <E>. <NewF1>
|
||||
//! (resp. <NewF2>) is the new face created from <F1>
|
||||
//! <NewE> is the new edge created from <E>. <NewF1>
|
||||
//! (resp. <NewF2>) is the new face created from <F1>
|
||||
//! (resp. <F2>).
|
||||
Standard_EXPORT GeomAbs_Shape Continuity(const TopoDS_Edge& E,
|
||||
const TopoDS_Face& F1,
|
||||
|
||||
@@ -43,11 +43,11 @@ class ShapeCustom_DirectModification : public ShapeCustom_Modification
|
||||
public:
|
||||
Standard_EXPORT ShapeCustom_DirectModification();
|
||||
|
||||
//! Returns Standard_True if the face <F> has been
|
||||
//! Returns Standard_True if the face <F> has been
|
||||
//! modified. In this case, <S> is the new geometric
|
||||
//! support of the face, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <S>, <L>, <Tol> are not
|
||||
//! support of the face, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <S>, <L>, <Tol> are not
|
||||
//! significant.
|
||||
Standard_EXPORT Standard_Boolean NewSurface(const TopoDS_Face& F,
|
||||
Handle(Geom_Surface)& S,
|
||||
@@ -56,35 +56,35 @@ public:
|
||||
Standard_Boolean& RevWires,
|
||||
Standard_Boolean& RevFace) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the edge <E> has been
|
||||
//! modified. In this case, <C> is the new geometric
|
||||
//! support of the edge, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <C>, <L>, <Tol> are not
|
||||
//! Returns Standard_True if the edge <E> has been
|
||||
//! modified. In this case, <C> is the new geometric
|
||||
//! support of the edge, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <C>, <L>, <Tol> are not
|
||||
//! significant.
|
||||
Standard_EXPORT Standard_Boolean NewCurve(const TopoDS_Edge& E,
|
||||
Handle(Geom_Curve)& C,
|
||||
TopLoc_Location& L,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the vertex <V> has been
|
||||
//! modified. In this case, <P> is the new geometric
|
||||
//! support of the vertex, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! Returns Standard_True if the vertex <V> has been
|
||||
//! modified. In this case, <P> is the new geometric
|
||||
//! support of the vertex, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! are not significant.
|
||||
Standard_EXPORT Standard_Boolean NewPoint(const TopoDS_Vertex& V,
|
||||
gp_Pnt& P,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the edge <E> has a new
|
||||
//! Returns Standard_True if the edge <E> has a new
|
||||
//! curve on surface on the face <F>.In this case, <C>
|
||||
//! is the new geometric support of the edge, <L> the
|
||||
//! is the new geometric support of the edge, <L> the
|
||||
//! new location, <Tol> the new tolerance.
|
||||
//!
|
||||
//! Otherwise, returns Standard_False, and <C>, <L>,
|
||||
//! Otherwise, returns Standard_False, and <C>, <L>,
|
||||
//! <Tol> are not significant.
|
||||
//!
|
||||
//! <NewE> is the new edge created from <E>. <NewF>
|
||||
//! <NewE> is the new edge created from <E>. <NewF>
|
||||
//! is the new face created from <F>. They may be useful.
|
||||
Standard_EXPORT Standard_Boolean NewCurve2d(const TopoDS_Edge& E,
|
||||
const TopoDS_Face& F,
|
||||
@@ -93,21 +93,21 @@ public:
|
||||
Handle(Geom2d_Curve)& C,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the Vertex <V> has a new
|
||||
//! parameter on the edge <E>. In this case, <P> is
|
||||
//! the parameter, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! Returns Standard_True if the Vertex <V> has a new
|
||||
//! parameter on the edge <E>. In this case, <P> is
|
||||
//! the parameter, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! are not significant.
|
||||
Standard_EXPORT Standard_Boolean NewParameter(const TopoDS_Vertex& V,
|
||||
const TopoDS_Edge& E,
|
||||
Standard_Real& P,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the continuity of <NewE> between <NewF1>
|
||||
//! Returns the continuity of <NewE> between <NewF1>
|
||||
//! and <NewF2>.
|
||||
//!
|
||||
//! <NewE> is the new edge created from <E>. <NewF1>
|
||||
//! (resp. <NewF2>) is the new face created from <F1>
|
||||
//! <NewE> is the new edge created from <E>. <NewF1>
|
||||
//! (resp. <NewF2>) is the new face created from <F1>
|
||||
//! (resp. <F2>).
|
||||
Standard_EXPORT GeomAbs_Shape Continuity(const TopoDS_Edge& E,
|
||||
const TopoDS_Face& F1,
|
||||
|
||||
@@ -42,11 +42,11 @@ class ShapeCustom_SweptToElementary : public ShapeCustom_Modification
|
||||
public:
|
||||
Standard_EXPORT ShapeCustom_SweptToElementary();
|
||||
|
||||
//! Returns Standard_True if the face <F> has been
|
||||
//! Returns Standard_True if the face <F> has been
|
||||
//! modified. In this case, <S> is the new geometric
|
||||
//! support of the face, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <S>, <L>, <Tol> are not
|
||||
//! support of the face, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <S>, <L>, <Tol> are not
|
||||
//! significant.
|
||||
Standard_EXPORT Standard_Boolean NewSurface(const TopoDS_Face& F,
|
||||
Handle(Geom_Surface)& S,
|
||||
@@ -55,35 +55,35 @@ public:
|
||||
Standard_Boolean& RevWires,
|
||||
Standard_Boolean& RevFace) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the edge <E> has been
|
||||
//! modified. In this case, <C> is the new geometric
|
||||
//! support of the edge, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <C>, <L>, <Tol> are not
|
||||
//! Returns Standard_True if the edge <E> has been
|
||||
//! modified. In this case, <C> is the new geometric
|
||||
//! support of the edge, <L> the new location, <Tol>
|
||||
//! the new tolerance. Otherwise, returns
|
||||
//! Standard_False, and <C>, <L>, <Tol> are not
|
||||
//! significant.
|
||||
Standard_EXPORT Standard_Boolean NewCurve(const TopoDS_Edge& E,
|
||||
Handle(Geom_Curve)& C,
|
||||
TopLoc_Location& L,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the vertex <V> has been
|
||||
//! modified. In this case, <P> is the new geometric
|
||||
//! support of the vertex, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! Returns Standard_True if the vertex <V> has been
|
||||
//! modified. In this case, <P> is the new geometric
|
||||
//! support of the vertex, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! are not significant.
|
||||
Standard_EXPORT Standard_Boolean NewPoint(const TopoDS_Vertex& V,
|
||||
gp_Pnt& P,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the edge <E> has a new
|
||||
//! Returns Standard_True if the edge <E> has a new
|
||||
//! curve on surface on the face <F>.In this case, <C>
|
||||
//! is the new geometric support of the edge, <L> the
|
||||
//! is the new geometric support of the edge, <L> the
|
||||
//! new location, <Tol> the new tolerance.
|
||||
//!
|
||||
//! Otherwise, returns Standard_False, and <C>, <L>,
|
||||
//! Otherwise, returns Standard_False, and <C>, <L>,
|
||||
//! <Tol> are not significant.
|
||||
//!
|
||||
//! <NewE> is the new edge created from <E>. <NewF>
|
||||
//! <NewE> is the new edge created from <E>. <NewF>
|
||||
//! is the new face created from <F>. They may be useful.
|
||||
Standard_EXPORT Standard_Boolean NewCurve2d(const TopoDS_Edge& E,
|
||||
const TopoDS_Face& F,
|
||||
@@ -92,21 +92,21 @@ public:
|
||||
Handle(Geom2d_Curve)& C,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns Standard_True if the Vertex <V> has a new
|
||||
//! parameter on the edge <E>. In this case, <P> is
|
||||
//! the parameter, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! Returns Standard_True if the Vertex <V> has a new
|
||||
//! parameter on the edge <E>. In this case, <P> is
|
||||
//! the parameter, <Tol> the new tolerance.
|
||||
//! Otherwise, returns Standard_False, and <P>, <Tol>
|
||||
//! are not significant.
|
||||
Standard_EXPORT Standard_Boolean NewParameter(const TopoDS_Vertex& V,
|
||||
const TopoDS_Edge& E,
|
||||
Standard_Real& P,
|
||||
Standard_Real& Tol) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the continuity of <NewE> between <NewF1>
|
||||
//! Returns the continuity of <NewE> between <NewF1>
|
||||
//! and <NewF2>.
|
||||
//!
|
||||
//! <NewE> is the new edge created from <E>. <NewF1>
|
||||
//! (resp. <NewF2>) is the new face created from <F1>
|
||||
//! <NewE> is the new edge created from <E>. <NewF1>
|
||||
//! (resp. <NewF2>) is the new face created from <F1>
|
||||
//! (resp. <F2>).
|
||||
Standard_EXPORT GeomAbs_Shape Continuity(const TopoDS_Edge& E,
|
||||
const TopoDS_Face& F1,
|
||||
|
||||
@@ -56,10 +56,10 @@ DEFINE_STANDARD_HANDLE(ShapeUpgrade_UnifySameDomain, Standard_Transient)
|
||||
//! The output result of the tool is the unified shape.
|
||||
//!
|
||||
//! All the modifications of initial shape are recorded during unifying.
|
||||
//! Methods History are intended to: <br>
|
||||
//! Methods History are intended to:
|
||||
//! - set a place holder for the history of modifications of sub-shapes of
|
||||
//! the initial shape; <br>
|
||||
//! - get the collected history. <br>
|
||||
//! the initial shape;
|
||||
//! - get the collected history.
|
||||
//! The algorithm provides a place holder for the history and collects the
|
||||
//! history by default.
|
||||
//! To avoid collecting of the history the place holder should be set to null handle.
|
||||
|
||||
+1
-1
@@ -155,7 +155,7 @@ public:
|
||||
//! returns the result of the approximation.
|
||||
Standard_EXPORT const AppParCurves_MultiBSpCurve& SplineValue();
|
||||
|
||||
//! returns the type of parametrization
|
||||
//! returns the type of parametrization
|
||||
Standard_EXPORT Approx_ParametrizationType Parametrization() const;
|
||||
|
||||
//! returns the new parameters of the approximation
|
||||
|
||||
@@ -127,7 +127,7 @@ public:
|
||||
Standard_EXPORT void Perform(const BRepApprox_TheMultiLineOfApprox& Line);
|
||||
|
||||
//! The approximation will begin with the
|
||||
//! set of parameters <ThePar>.
|
||||
//! set of parameters <ThePar>.
|
||||
Standard_EXPORT void SetParameters(const math_Vector& ThePar);
|
||||
|
||||
//! The approximation will be done with the
|
||||
|
||||
@@ -41,9 +41,9 @@ public:
|
||||
|
||||
//! The class SvSurfaces is used when the approximation algorithm
|
||||
//! needs some extra points on the line <line>.
|
||||
//! A New line is then created which shares the same surfaces and functions.
|
||||
//! A New line is then created which shares the same surfaces and functions.
|
||||
//! SvSurfaces is a deferred class which allows several implementations of
|
||||
//! this algorithm with different surfaces (bi-parametric ones, or
|
||||
//! this algorithm with different surfaces (bi-parametric ones, or
|
||||
//! implicit and biparametric ones)
|
||||
Standard_EXPORT BRepApprox_TheMultiLineOfApprox(const Handle(BRepApprox_ApproxLine)& line,
|
||||
const Standard_Address PtrSvSurfaces,
|
||||
|
||||
@@ -24,22 +24,22 @@
|
||||
#include <Standard_Real.hxx>
|
||||
class Geom_Plane;
|
||||
|
||||
//! The BRepBuilderAPI package provides an Application
|
||||
//! Programming Interface for the BRep topology data
|
||||
//! The BRepBuilderAPI package provides an Application
|
||||
//! Programming Interface for the BRep topology data
|
||||
//! structure.
|
||||
//!
|
||||
//! The API is a set of classes aiming to provide :
|
||||
//! The API is a set of classes aiming to provide:
|
||||
//!
|
||||
//! * High level and simple calls for the most common
|
||||
//! * High level and simple calls for the most common
|
||||
//! operations.
|
||||
//!
|
||||
//! * Keeping an access on the low-level
|
||||
//! * Keeping an access on the low-level
|
||||
//! implementation of high-level calls.
|
||||
//!
|
||||
//! * Examples of programming of high-level operations
|
||||
//! * Examples of programming of high-level operations
|
||||
//! from low-level operations.
|
||||
//!
|
||||
//! * A complete coverage of modelling :
|
||||
//! * A complete coverage of modelling:
|
||||
//!
|
||||
//! - Creating vertices ,edges, faces, solids.
|
||||
//!
|
||||
@@ -49,20 +49,20 @@ class Geom_Plane;
|
||||
//!
|
||||
//! - Global properties computation.
|
||||
//!
|
||||
//! The API provides classes to build objects:
|
||||
//! The API provides classes to build objects:
|
||||
//!
|
||||
//! * The constructors of the classes provides the
|
||||
//! * The constructors of the classes provides the
|
||||
//! different constructions methods.
|
||||
//!
|
||||
//! * The class keeps as fields the different tools
|
||||
//! * The class keeps as fields the different tools
|
||||
//! used to build the object.
|
||||
//!
|
||||
//! * The class provides a casting method to get
|
||||
//! automatically the result with a function-like
|
||||
//! * The class provides a casting method to get
|
||||
//! automatically the result with a function-like
|
||||
//! call.
|
||||
//!
|
||||
//! For example to make a vertex <V> from a point <P>
|
||||
//! one can writes :
|
||||
//! For example to make a vertex <V> from a point <P>
|
||||
//! one can write:
|
||||
//!
|
||||
//! V = BRepBuilderAPI_MakeVertex(P);
|
||||
//!
|
||||
@@ -71,8 +71,8 @@ class Geom_Plane;
|
||||
//! BRepBuilderAPI_MakeVertex MV(P);
|
||||
//! V = MV.Vertex();
|
||||
//!
|
||||
//! For tolerances a default precision is used which
|
||||
//! can be changed by the packahe method
|
||||
//! For tolerances a default precision is used which
|
||||
//! can be changed by the packahe method
|
||||
//! BRepBuilderAPI::Precision.
|
||||
//!
|
||||
//! For error handling the BRepBuilderAPI commands raise only
|
||||
@@ -87,13 +87,13 @@ class BRepBuilderAPI
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Sets the current plane.
|
||||
//! Sets the current plane.
|
||||
Standard_EXPORT static void Plane(const Handle(Geom_Plane)& P);
|
||||
|
||||
//! Returns the current plane.
|
||||
Standard_EXPORT static const Handle(Geom_Plane)& Plane();
|
||||
|
||||
//! Sets the default precision. The current Precision
|
||||
//! Sets the default precision. The current Precision
|
||||
//! is returned.
|
||||
Standard_EXPORT static void Precision(const Standard_Real P);
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
//! Indicates the outcome of the
|
||||
//! construction of an edge, i.e. whether it has been successful or
|
||||
//! not, as explained below:
|
||||
//! - BRepBuilderAPI_EdgeDone No error occurred; The edge is
|
||||
//! - BRepBuilderAPI_EdgeDone No error occurred; The edge is
|
||||
//! correctly built.
|
||||
//! - BRepBuilderAPI_PointProjectionFailed No parameters were given but
|
||||
//! the projection of the 3D points on the curve failed. This
|
||||
@@ -34,13 +34,13 @@
|
||||
//! curve but have different locations.
|
||||
//! - BRepBuilderAPI_PointWithInfiniteParameter
|
||||
//! A finite coordinate point was associated with an infinite
|
||||
//! parameter (see the Precision package for a definition of infinite values).
|
||||
//! parameter (see the Precision package for a definition of infinite values).
|
||||
//! - BRepBuilderAPI_DifferentsPointAndParameter
|
||||
//! The distance between the 3D point and the point evaluated
|
||||
//! on the curve with the parameter is greater than the precision.
|
||||
//! - BRepBuilderAPI_LineThroughIdenticPoints
|
||||
//! Two identical points were given to define a line (construction
|
||||
//! of an edge without curve); gp::Resolution is used for the confusion test.
|
||||
//! of an edge without curve); gp::Resolution is used for the confusion test.
|
||||
enum BRepBuilderAPI_EdgeError
|
||||
{
|
||||
BRepBuilderAPI_EdgeDone,
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
//! - BRepBuilderAPI_CurveProjectionFailed
|
||||
//! Not used so far.
|
||||
//! - BRepBuilderAPI_ParametersOutOfRange
|
||||
//! The parameters given to limit the surface are out of its bounds.
|
||||
//! The parameters given to limit the surface are out of its bounds.
|
||||
enum BRepBuilderAPI_FaceError
|
||||
{
|
||||
BRepBuilderAPI_FaceDone,
|
||||
|
||||
@@ -89,7 +89,7 @@ public:
|
||||
//! them by calling the function Perform again.
|
||||
Standard_EXPORT void Perform(const TopoDS_Shape& S, const Standard_Boolean Copy = Standard_False);
|
||||
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! <S>.
|
||||
Standard_EXPORT virtual const TopTools_ListOfShape& Modified(const TopoDS_Shape& S)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
@@ -39,34 +39,34 @@ class TopoDS_Edge;
|
||||
|
||||
//! Provides methods to build edges.
|
||||
//!
|
||||
//! The methods have the following syntax, where
|
||||
//! The methods have the following syntax, where
|
||||
//! TheCurve is one of Lin, Circ, ...
|
||||
//!
|
||||
//! Create(C : TheCurve)
|
||||
//!
|
||||
//! Makes an edge on the whole curve. Add vertices
|
||||
//! Makes an edge on the whole curve. Add vertices
|
||||
//! on finite curves.
|
||||
//!
|
||||
//! Create(C : TheCurve; p1,p2 : Real)
|
||||
//!
|
||||
//! Make an edge on the curve between parameters p1
|
||||
//! Make an edge on the curve between parameters p1
|
||||
//! and p2. if p2 < p1 the edge will be REVERSED. If
|
||||
//! p1 or p2 is infinite the curve will be open in
|
||||
//! that direction. Vertices are created for finite
|
||||
//! p1 or p2 is infinite the curve will be open in
|
||||
//! that direction. Vertices are created for finite
|
||||
//! values of p1 and p2.
|
||||
//!
|
||||
//! Create(C : TheCurve; P1, P2 : Pnt from gp)
|
||||
//!
|
||||
//! Make an edge on the curve between the points P1
|
||||
//! and P2. The points are projected on the curve
|
||||
//! and the previous method is used. An error is
|
||||
//! Make an edge on the curve between the points P1
|
||||
//! and P2. The points are projected on the curve
|
||||
//! and the previous method is used. An error is
|
||||
//! raised if the points are not on the curve.
|
||||
//!
|
||||
//! Create(C : TheCurve; V1, V2 : Vertex from TopoDS)
|
||||
//!
|
||||
//! Make an edge on the curve between the vertices
|
||||
//! V1 and V2. Same as the previous but no vertices
|
||||
//! are created. If a vertex is Null the curve will
|
||||
//! Make an edge on the curve between the vertices
|
||||
//! V1 and V2. Same as the previous but no vertices
|
||||
//! are created. If a vertex is Null the curve will
|
||||
//! be open in this direction.
|
||||
class BRepBuilderAPI_MakeEdge : public BRepBuilderAPI_MakeShape
|
||||
{
|
||||
|
||||
@@ -37,34 +37,34 @@ class TopoDS_Edge;
|
||||
|
||||
//! Provides methods to build edges.
|
||||
//!
|
||||
//! The methods have the following syntax, where
|
||||
//! The methods have the following syntax, where
|
||||
//! TheCurve is one of Lin2d, Circ2d, ...
|
||||
//!
|
||||
//! Create(C : TheCurve)
|
||||
//!
|
||||
//! Makes an edge on the whole curve. Add vertices
|
||||
//! Makes an edge on the whole curve. Add vertices
|
||||
//! on finite curves.
|
||||
//!
|
||||
//! Create(C : TheCurve; p1,p2 : Real)
|
||||
//!
|
||||
//! Make an edge on the curve between parameters p1
|
||||
//! Make an edge on the curve between parameters p1
|
||||
//! and p2. if p2 < p1 the edge will be REVERSED. If
|
||||
//! p1 or p2 is infinite the curve will be open in
|
||||
//! that direction. Vertices are created for finite
|
||||
//! p1 or p2 is infinite the curve will be open in
|
||||
//! that direction. Vertices are created for finite
|
||||
//! values of p1 and p2.
|
||||
//!
|
||||
//! Create(C : TheCurve; P1, P2 : Pnt2d from gp)
|
||||
//!
|
||||
//! Make an edge on the curve between the points P1
|
||||
//! and P2. The points are projected on the curve
|
||||
//! and the previous method is used. An error is
|
||||
//! Make an edge on the curve between the points P1
|
||||
//! and P2. The points are projected on the curve
|
||||
//! and the previous method is used. An error is
|
||||
//! raised if the points are not on the curve.
|
||||
//!
|
||||
//! Create(C : TheCurve; V1, V2 : Vertex from TopoDS)
|
||||
//!
|
||||
//! Make an edge on the curve between the vertices
|
||||
//! V1 and V2. Same as the previous but no vertices
|
||||
//! are created. If a vertex is Null the curve will
|
||||
//! Make an edge on the curve between the vertices
|
||||
//! V1 and V2. Same as the previous but no vertices
|
||||
//! are created. If a vertex is Null the curve will
|
||||
//! be open in this direction.
|
||||
class BRepBuilderAPI_MakeEdge2d : public BRepBuilderAPI_MakeShape
|
||||
{
|
||||
|
||||
@@ -36,7 +36,7 @@ class TopoDS_Wire;
|
||||
|
||||
//! Provides methods to build faces.
|
||||
//!
|
||||
//! A face may be built :
|
||||
//! A face may be built:
|
||||
//!
|
||||
//! * From a surface.
|
||||
//!
|
||||
@@ -53,7 +53,7 @@ class TopoDS_Wire;
|
||||
//! * From a surface and a wire.
|
||||
//!
|
||||
//! - A flag Inside is given, when this flag is True
|
||||
//! the wire is oriented to bound a finite area on
|
||||
//! the wire is oriented to bound a finite area on
|
||||
//! the surface.
|
||||
//!
|
||||
//! * From a face and a wire.
|
||||
|
||||
@@ -32,8 +32,8 @@ class TopoDS_Wire;
|
||||
//! polygonal wire can be built from any number of points
|
||||
//! or vertices, and consists of a sequence of connected
|
||||
//! rectilinear edges.
|
||||
//! When a point or vertex is added to the polygon if
|
||||
//! it is identic to the previous point no edge is
|
||||
//! When a point or vertex is added to the polygon if
|
||||
//! it is identic to the previous point no edge is
|
||||
//! built. The method added can be used to test it.
|
||||
//! Construction of a Polygonal Wire
|
||||
//! You can construct:
|
||||
|
||||
@@ -26,17 +26,17 @@
|
||||
#include <BRepBuilderAPI_Command.hxx>
|
||||
#include <Message_ProgressRange.hxx>
|
||||
|
||||
//! This is the root class for all shape
|
||||
//! constructions. It stores the result.
|
||||
//! This is the root class for all shape
|
||||
//! constructions. It stores the result.
|
||||
//!
|
||||
//! It provides deferred methods to trace the history
|
||||
//! It provides deferred methods to trace the history
|
||||
//! of sub-shapes.
|
||||
class BRepBuilderAPI_MakeShape : public BRepBuilderAPI_Command
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! This is called by Shape(). It does nothing but
|
||||
//! This is called by Shape(). It does nothing but
|
||||
//! may be redefined.
|
||||
Standard_EXPORT virtual void Build(
|
||||
const Message_ProgressRange& theRange = Message_ProgressRange());
|
||||
@@ -46,11 +46,11 @@ public:
|
||||
Standard_EXPORT virtual const TopoDS_Shape& Shape();
|
||||
Standard_EXPORT operator TopoDS_Shape();
|
||||
|
||||
//! Returns the list of shapes generated from the
|
||||
//! Returns the list of shapes generated from the
|
||||
//! shape <S>.
|
||||
Standard_EXPORT virtual const TopTools_ListOfShape& Generated(const TopoDS_Shape& S);
|
||||
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! <S>.
|
||||
Standard_EXPORT virtual const TopTools_ListOfShape& Modified(const TopoDS_Shape& S);
|
||||
|
||||
|
||||
@@ -27,11 +27,11 @@
|
||||
#include <TopTools_ListOfShape.hxx>
|
||||
class BRepTools_Modification;
|
||||
|
||||
//! Implements the methods of MakeShape for the
|
||||
//! constant topology modifications. The methods are
|
||||
//! implemented when the modification uses a Modifier
|
||||
//! from BRepTools. Some of them have to be redefined
|
||||
//! if the modification is implemented with another
|
||||
//! Implements the methods of MakeShape for the
|
||||
//! constant topology modifications. The methods are
|
||||
//! implemented when the modification uses a Modifier
|
||||
//! from BRepTools. Some of them have to be redefined
|
||||
//! if the modification is implemented with another
|
||||
//! tool (see Transform from BRepBuilderAPI for example).
|
||||
//! The BRepBuilderAPI package provides the following
|
||||
//! frameworks to perform modifications of this sort:
|
||||
@@ -47,7 +47,7 @@ class BRepBuilderAPI_ModifyShape : public BRepBuilderAPI_MakeShape
|
||||
public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! <S>.
|
||||
Standard_EXPORT virtual const TopTools_ListOfShape& Modified(const TopoDS_Shape& S)
|
||||
Standard_OVERRIDE;
|
||||
@@ -66,29 +66,29 @@ protected:
|
||||
//! Empty constructor.
|
||||
Standard_EXPORT BRepBuilderAPI_ModifyShape();
|
||||
|
||||
//! Initializes the modifier with the Shape <S>, and
|
||||
//! Initializes the modifier with the Shape <S>, and
|
||||
//! set the field <myInitialShape> to <S>.
|
||||
Standard_EXPORT BRepBuilderAPI_ModifyShape(const TopoDS_Shape& S);
|
||||
|
||||
//! Set the field <myModification> with <M>.
|
||||
Standard_EXPORT BRepBuilderAPI_ModifyShape(const Handle(BRepTools_Modification)& M);
|
||||
|
||||
//! Initializes the modifier with the Shape <S>, and
|
||||
//! Initializes the modifier with the Shape <S>, and
|
||||
//! set the field <myInitialShape> to <S>, and set the
|
||||
//! field <myModification> with <M>, the performs the
|
||||
//! field <myModification> with <M>, the performs the
|
||||
//! modification.
|
||||
Standard_EXPORT BRepBuilderAPI_ModifyShape(const TopoDS_Shape& S,
|
||||
const Handle(BRepTools_Modification)& M);
|
||||
|
||||
//! Performs the previously given modification on the
|
||||
//! Performs the previously given modification on the
|
||||
//! shape <S>.
|
||||
Standard_EXPORT void DoModif(const TopoDS_Shape& S);
|
||||
|
||||
//! Performs the modification <M> on a previously
|
||||
//! Performs the modification <M> on a previously
|
||||
//! given shape.
|
||||
Standard_EXPORT void DoModif(const Handle(BRepTools_Modification)& M);
|
||||
|
||||
//! Performs the modification <M> on the shape <S>.
|
||||
//! Performs the modification <M> on the shape <S>.
|
||||
Standard_EXPORT void DoModif(const TopoDS_Shape& S, const Handle(BRepTools_Modification)& M);
|
||||
|
||||
BRepTools_Modifier myModifier;
|
||||
|
||||
@@ -64,7 +64,7 @@ public:
|
||||
//! shapes: you specify them by calling the function Perform again.
|
||||
Standard_EXPORT void Perform(const TopoDS_Shape& S, const Standard_Boolean Copy = Standard_False);
|
||||
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! <S>.
|
||||
Standard_EXPORT virtual const TopTools_ListOfShape& Modified(const TopoDS_Shape& S);
|
||||
|
||||
|
||||
@@ -145,7 +145,7 @@ public:
|
||||
Standard_EXPORT Standard_Boolean IsSectionBound(const TopoDS_Edge& section) const;
|
||||
|
||||
//! Gives the original edge (free boundary) which becomes the
|
||||
//! the section. Remember that sections constitute common edges.
|
||||
//! the section. Remember that sections constitute common edges.
|
||||
//! This information is important for control because with
|
||||
//! original edge we can find the surface to which the section
|
||||
//! is attached.
|
||||
|
||||
@@ -49,10 +49,10 @@ public:
|
||||
|
||||
//! Creates a transformation from the gp_Trsf <theTrsf>, and
|
||||
//! applies it to the shape <theShape>. If the transformation
|
||||
//! is direct and isometric (determinant = 1) and
|
||||
//! <theCopyGeom> = Standard_False, the resulting shape is
|
||||
//! <theShape> on which a new location has been set.
|
||||
//! Otherwise, the transformation is applied on a
|
||||
//! is direct and isometric (determinant = 1) and
|
||||
//! <theCopyGeom> = Standard_False, the resulting shape is
|
||||
//! <theShape> on which a new location has been set.
|
||||
//! Otherwise, the transformation is applied on a
|
||||
//! duplication of <theShape>.
|
||||
//! If <theCopyMesh> is true, the triangulation will be copied,
|
||||
//! and the copy will be assigned to the result shape.
|
||||
@@ -82,7 +82,7 @@ public:
|
||||
//! Returns the modified shape corresponding to <S>.
|
||||
Standard_EXPORT virtual TopoDS_Shape ModifiedShape(const TopoDS_Shape& S) const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! Returns the list of shapes modified from the shape
|
||||
//! <S>.
|
||||
Standard_EXPORT virtual const TopTools_ListOfShape& Modified(const TopoDS_Shape& S)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
#ifndef _BRepBuilderAPI_TransitionMode_HeaderFile
|
||||
#define _BRepBuilderAPI_TransitionMode_HeaderFile
|
||||
|
||||
//! Option to manage discontinuities in Sweep
|
||||
//! Option to manage discontinuities in Sweep
|
||||
enum BRepBuilderAPI_TransitionMode
|
||||
{
|
||||
BRepBuilderAPI_Transformed,
|
||||
|
||||
@@ -27,7 +27,7 @@ class TopoDS_Face;
|
||||
class TopoDS_Edge;
|
||||
class Adaptor3d_Curve;
|
||||
|
||||
//! This package provides tools to check the validity
|
||||
//! This package provides tools to check the validity
|
||||
//! of the BRep.
|
||||
class BRepCheck
|
||||
{
|
||||
|
||||
@@ -39,21 +39,21 @@ public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Constructs a shape validation object defined by the shape S.
|
||||
//! <S> is the shape to control. <GeomControls> If
|
||||
//! False only topological informaions are checked.
|
||||
//! <S> is the shape to control. <GeomControls> If
|
||||
//! False only topological informaions are checked.
|
||||
//! The geometricals controls are
|
||||
//! For a Vertex :
|
||||
//! BRepCheck_InvalidToleranceValue NYI
|
||||
//! For an Edge :
|
||||
//! For a Vertex:
|
||||
//! BRepCheck_InvalidToleranceValue NYI
|
||||
//! For an Edge:
|
||||
//! BRepCheck_InvalidCurveOnClosedSurface,
|
||||
//! BRepCheck_InvalidCurveOnSurface,
|
||||
//! BRepCheck_InvalidSameParameterFlag,
|
||||
//! BRepCheck_InvalidToleranceValue NYI
|
||||
//! For a face :
|
||||
//! BRepCheck_InvalidToleranceValue NYI
|
||||
//! For a face:
|
||||
//! BRepCheck_UnorientableShape,
|
||||
//! BRepCheck_IntersectingWires,
|
||||
//! BRepCheck_InvalidToleranceValue NYI
|
||||
//! For a wire :
|
||||
//! BRepCheck_InvalidToleranceValue NYI
|
||||
//! For a wire:
|
||||
//! BRepCheck_SelfIntersectingWire
|
||||
BRepCheck_Analyzer(const TopoDS_Shape& S,
|
||||
const Standard_Boolean GeomControls = Standard_True,
|
||||
@@ -65,21 +65,21 @@ public:
|
||||
Init(S, GeomControls);
|
||||
}
|
||||
|
||||
//! <S> is the shape to control. <GeomControls> If
|
||||
//! False only topological informaions are checked.
|
||||
//! <S> is the shape to control. <GeomControls> If
|
||||
//! False only topological informaions are checked.
|
||||
//! The geometricals controls are
|
||||
//! For a Vertex :
|
||||
//! BRepCheck_InvalidTolerance NYI
|
||||
//! For an Edge :
|
||||
//! For a Vertex:
|
||||
//! BRepCheck_InvalidTolerance NYI
|
||||
//! For an Edge:
|
||||
//! BRepCheck_InvalidCurveOnClosedSurface,
|
||||
//! BRepCheck_InvalidCurveOnSurface,
|
||||
//! BRepCheck_InvalidSameParameterFlag,
|
||||
//! BRepCheck_InvalidTolerance NYI
|
||||
//! For a face :
|
||||
//! BRepCheck_InvalidTolerance NYI
|
||||
//! For a face:
|
||||
//! BRepCheck_UnorientableShape,
|
||||
//! BRepCheck_IntersectingWires,
|
||||
//! BRepCheck_InvalidTolerance NYI
|
||||
//! For a wire :
|
||||
//! BRepCheck_InvalidTolerance NYI
|
||||
//! For a wire:
|
||||
//! BRepCheck_SelfIntersectingWire
|
||||
Standard_EXPORT void Init(const TopoDS_Shape& S,
|
||||
const Standard_Boolean GeomControls = Standard_True);
|
||||
@@ -100,7 +100,7 @@ public:
|
||||
//! Returns true if parallel flag is set
|
||||
Standard_Boolean IsParallel() { return myIsParallel; }
|
||||
|
||||
//! <S> is a subshape of the original shape. Returns
|
||||
//! <S> is a subshape of the original shape. Returns
|
||||
//! <STandard_True> if no default has been detected on
|
||||
//! <S> and any of its subshape.
|
||||
Standard_EXPORT Standard_Boolean IsValid(const TopoDS_Shape& S) const;
|
||||
@@ -128,7 +128,7 @@ public:
|
||||
//! the edge?s contextual situation.
|
||||
//! - if the edge is either single, or it is in the context
|
||||
//! of a wire or a compound, its parameterization is defined by
|
||||
//! the parameterization of its 3D curve and is considered as valid.
|
||||
//! the parameterization of its 3D curve and is considered as valid.
|
||||
//! - If the edge is in the context of a face, it should
|
||||
//! have SameParameter and SameRange flags set to Standard_True. To
|
||||
//! check these flags, you should call the function
|
||||
|
||||
@@ -41,15 +41,15 @@ public:
|
||||
|
||||
Standard_EXPORT void Blind() Standard_OVERRIDE;
|
||||
|
||||
//! Checks if the oriented faces of the shell give a
|
||||
//! closed shell. If the wire is closed, returns
|
||||
//! BRepCheck_NoError.If <Update> is set to
|
||||
//! Checks if the oriented faces of the shell give a
|
||||
//! closed shell. If the wire is closed, returns
|
||||
//! BRepCheck_NoError. If <Update> is set to
|
||||
//! Standard_True, registers the status in the list.
|
||||
Standard_EXPORT BRepCheck_Status Closed(const Standard_Boolean Update = Standard_False);
|
||||
|
||||
//! Checks if the oriented faces of the shell are
|
||||
//! correctly oriented. An internal call is made to
|
||||
//! the method Closed. If <Update> is set to
|
||||
//! Checks if the oriented faces of the shell are
|
||||
//! correctly oriented. An internal call is made to
|
||||
//! the method Closed. If <Update> is set to
|
||||
//! Standard_True, registers the status in the list.
|
||||
Standard_EXPORT BRepCheck_Status Orientation(const Standard_Boolean Update = Standard_False);
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ public:
|
||||
//! Status: BRepCheck_BadOrientationOfSubshape
|
||||
//!
|
||||
//! 3. For closed, non-internal shells:
|
||||
//! 3.1 Shells containing entities of the solid that
|
||||
//! 3.1 Shells containing entities of the solid that
|
||||
//! are outside towards the shells
|
||||
//! Status: BRepCheck_SubshapeNotInShape
|
||||
//!
|
||||
|
||||
@@ -37,46 +37,46 @@ class BRepCheck_Wire : public BRepCheck_Result
|
||||
public:
|
||||
Standard_EXPORT BRepCheck_Wire(const TopoDS_Wire& W);
|
||||
|
||||
//! if <ContextShape> is a face, consequently checks
|
||||
//! SelfIntersect(), Closed(), Orientation() and
|
||||
//! if <ContextShape> is a face, consequently checks
|
||||
//! SelfIntersect(), Closed(), Orientation() and
|
||||
//! Closed2d until faulty is found
|
||||
Standard_EXPORT void InContext(const TopoDS_Shape& ContextShape) Standard_OVERRIDE;
|
||||
|
||||
//! checks that the wire is not empty and "connex".
|
||||
//! checks that the wire is not empty and "connex".
|
||||
//! Called by constructor
|
||||
Standard_EXPORT void Minimum() Standard_OVERRIDE;
|
||||
|
||||
//! Does nothing
|
||||
Standard_EXPORT void Blind() Standard_OVERRIDE;
|
||||
|
||||
//! Checks if the oriented edges of the wire give a
|
||||
//! closed wire. If the wire is closed, returns
|
||||
//! BRepCheck_NoError. Warning : if the first and
|
||||
//! last edge are infinite, the wire will be
|
||||
//! considered as a closed one. If <Update> is set to
|
||||
//! Checks if the oriented edges of the wire give a
|
||||
//! closed wire. If the wire is closed, returns
|
||||
//! BRepCheck_NoError. Warning: if the first and
|
||||
//! last edge are infinite, the wire will be
|
||||
//! considered as a closed one. If <Update> is set to
|
||||
//! Standard_True, registers the status in the list.
|
||||
//! May return (and registers):
|
||||
//! **BRepCheck_NotConnected, if wire is not
|
||||
//! **BRepCheck_NotConnected, if wire is not
|
||||
//! topologically closed
|
||||
//! **BRepCheck_RedundantEdge, if an edge is in wire
|
||||
//! more than 3 times or in case of 2 occurrences if
|
||||
//! **BRepCheck_RedundantEdge, if an edge is in wire
|
||||
//! more than 3 times or in case of 2 occurrences if
|
||||
//! not with FORWARD and REVERSED orientation.
|
||||
//! **BRepCheck_NoError
|
||||
Standard_EXPORT BRepCheck_Status Closed(const Standard_Boolean Update = Standard_False);
|
||||
|
||||
//! Checks if edges of the wire give a wire closed in
|
||||
//! Checks if edges of the wire give a wire closed in
|
||||
//! 2d space.
|
||||
//! Returns BRepCheck_NoError, or BRepCheck_NotClosed
|
||||
//! Returns BRepCheck_NoError, or BRepCheck_NotClosed
|
||||
//! If <Update> is set to Standard_True, registers the
|
||||
//! status in the list.
|
||||
Standard_EXPORT BRepCheck_Status Closed2d(const TopoDS_Face& F,
|
||||
const Standard_Boolean Update = Standard_False);
|
||||
|
||||
//! Checks if the oriented edges of the wire are
|
||||
//! correctly oriented. An internal call is made to
|
||||
//! the method Closed. If no face exists, call the
|
||||
//! method with a null face (TopoDS_face()). If
|
||||
//! <Update> is set to Standard_True, registers the
|
||||
//! Checks if the oriented edges of the wire are
|
||||
//! correctly oriented. An internal call is made to
|
||||
//! the method Closed. If no face exists, call the
|
||||
//! method with a null face (TopoDS_face()). If
|
||||
//! <Update> is set to Standard_True, registers the
|
||||
//! status in the list.
|
||||
//! May return (and registers):
|
||||
//! BRepCheck_InvalidDegeneratedFlag,
|
||||
@@ -86,11 +86,11 @@ public:
|
||||
Standard_EXPORT BRepCheck_Status Orientation(const TopoDS_Face& F,
|
||||
const Standard_Boolean Update = Standard_False);
|
||||
|
||||
//! Checks if the wire intersect itself on the face
|
||||
//! <F>. <E1> and <E2> are the first intersecting
|
||||
//! edges found. <E2> may be a null edge when a
|
||||
//! Checks if the wire intersect itself on the face
|
||||
//! <F>. <E1> and <E2> are the first intersecting
|
||||
//! edges found. <E2> may be a null edge when a
|
||||
//! self-intersecting edge is found.If <Update> is set
|
||||
//! to Standard_True, registers the status in the
|
||||
//! to Standard_True, registers the status in the
|
||||
//! list.
|
||||
//! May return (and register):
|
||||
//! BRepCheck_EmptyWire,
|
||||
|
||||
@@ -25,8 +25,8 @@
|
||||
#include <TopoDS_Edge.hxx>
|
||||
#include <TopoDS_Face.hxx>
|
||||
|
||||
//! This class is used to send the description of an
|
||||
//! Edge to the classifier. It contains an Edge and a
|
||||
//! This class is used to send the description of an
|
||||
//! Edge to the classifier. It contains an Edge and a
|
||||
//! Face. So the PCurve of the Edge can be found.
|
||||
class BRepClass_Edge
|
||||
{
|
||||
|
||||
@@ -38,14 +38,14 @@ public:
|
||||
//! Creates an undefined classifier.
|
||||
Standard_EXPORT BRepClass_FClass2dOfFClassifier();
|
||||
|
||||
//! Starts a classification process. The point to
|
||||
//! classify is the origin of the line <L>. <P> is
|
||||
//! the original length of the segment on <L> used to
|
||||
//! compute intersections. <Tol> is the tolerance
|
||||
//! Starts a classification process. The point to
|
||||
//! classify is the origin of the line <L>. <P> is
|
||||
//! the original length of the segment on <L> used to
|
||||
//! compute intersections. <Tol> is the tolerance
|
||||
//! attached to the line segment in intersections.
|
||||
Standard_EXPORT void Reset(const gp_Lin2d& L, const Standard_Real P, const Standard_Real Tol);
|
||||
|
||||
//! Updates the classification process with the edge
|
||||
//! Updates the classification process with the edge
|
||||
//! <E> from the boundary.
|
||||
Standard_EXPORT void Compare(const BRepClass_Edge& E, const TopAbs_Orientation Or);
|
||||
|
||||
@@ -55,9 +55,9 @@ public:
|
||||
//! Returns the intersecting algorithm.
|
||||
BRepClass_Intersector& Intersector();
|
||||
|
||||
//! Returns 0 if the last compared edge had no
|
||||
//! relevant intersection. Else returns the index of
|
||||
//! this intersection in the last intersection
|
||||
//! Returns 0 if the last compared edge had no
|
||||
//! relevant intersection. Else returns the index of
|
||||
//! this intersection in the last intersection
|
||||
//! algorithm.
|
||||
Standard_Integer ClosestIntersection() const;
|
||||
|
||||
|
||||
@@ -39,13 +39,13 @@ public:
|
||||
//! Empty constructor, undefined algorithm.
|
||||
Standard_EXPORT BRepClass_FClassifier();
|
||||
|
||||
//! Creates an algorithm to classify the Point P with
|
||||
//! Creates an algorithm to classify the Point P with
|
||||
//! Tolerance <T> on the face described by <F>.
|
||||
Standard_EXPORT BRepClass_FClassifier(BRepClass_FaceExplorer& F,
|
||||
const gp_Pnt2d& P,
|
||||
const Standard_Real Tol);
|
||||
|
||||
//! Classify the Point P with Tolerance <T> on the
|
||||
//! Classify the Point P with Tolerance <T> on the
|
||||
//! face described by <F>.
|
||||
Standard_EXPORT void Perform(BRepClass_FaceExplorer& F,
|
||||
const gp_Pnt2d& P,
|
||||
@@ -54,24 +54,24 @@ public:
|
||||
//! Returns the result of the classification.
|
||||
Standard_EXPORT TopAbs_State State() const;
|
||||
|
||||
//! Returns True when the state was computed by a
|
||||
//! Returns True when the state was computed by a
|
||||
//! rejection. The state is OUT.
|
||||
Standard_Boolean Rejected() const;
|
||||
|
||||
//! Returns True if the face contains no wire. The
|
||||
//! Returns True if the face contains no wire. The
|
||||
//! state is IN.
|
||||
Standard_Boolean NoWires() const;
|
||||
|
||||
//! Returns the Edge used to determine the
|
||||
//! classification. When the State is ON this is the
|
||||
//! Returns the Edge used to determine the
|
||||
//! classification. When the State is ON this is the
|
||||
//! Edge containing the point.
|
||||
Standard_EXPORT const BRepClass_Edge& Edge() const;
|
||||
|
||||
//! Returns the parameter on Edge() used to determine the
|
||||
//! Returns the parameter on Edge() used to determine the
|
||||
//! classification.
|
||||
Standard_EXPORT Standard_Real EdgeParameter() const;
|
||||
|
||||
//! Returns the position of the point on the edge
|
||||
//! Returns the position of the point on the edge
|
||||
//! returned by Edge.
|
||||
IntRes2d_Position Position() const;
|
||||
|
||||
|
||||
@@ -36,13 +36,13 @@ public:
|
||||
//! Empty constructor, undefined algorithm.
|
||||
Standard_EXPORT BRepClass_FaceClassifier();
|
||||
|
||||
//! Creates an algorithm to classify the Point P with
|
||||
//! Creates an algorithm to classify the Point P with
|
||||
//! Tolerance <T> on the face described by <F>.
|
||||
Standard_EXPORT BRepClass_FaceClassifier(BRepClass_FaceExplorer& F,
|
||||
const gp_Pnt2d& P,
|
||||
const Standard_Real Tol);
|
||||
|
||||
//! Creates an algorithm to classify the Point P with
|
||||
//! Creates an algorithm to classify the Point P with
|
||||
//! Tolerance <T> on the face <F>.
|
||||
//! Recommended to use Bnd_Box if the number of edges > 10
|
||||
//! and the geometry is mostly spline
|
||||
@@ -52,7 +52,7 @@ public:
|
||||
const Standard_Boolean theUseBndBox = Standard_False,
|
||||
const Standard_Real theGapCheckTol = 0.1);
|
||||
|
||||
//! Classify the Point P with Tolerance <T> on the
|
||||
//! Classify the Point P with Tolerance <T> on the
|
||||
//! face described by <F>.
|
||||
//! Recommended to use Bnd_Box if the number of edges > 10
|
||||
//! and the geometry is mostly spline
|
||||
@@ -62,7 +62,7 @@ public:
|
||||
const Standard_Boolean theUseBndBox = Standard_False,
|
||||
const Standard_Real theGapCheckTol = 0.1);
|
||||
|
||||
//! Creates an algorithm to classify the Point P with
|
||||
//! Creates an algorithm to classify the Point P with
|
||||
//! Tolerance <T> on the face <F>.
|
||||
//! Recommended to use Bnd_Box if the number of edges > 10
|
||||
//! and the geometry is mostly spline
|
||||
@@ -72,7 +72,7 @@ public:
|
||||
const Standard_Boolean theUseBndBox = Standard_False,
|
||||
const Standard_Real theGapCheckTol = 0.1);
|
||||
|
||||
//! Classify the Point P with Tolerance <T> on the
|
||||
//! Classify the Point P with Tolerance <T> on the
|
||||
//! face described by <F>.
|
||||
//! Recommended to use Bnd_Box if the number of edges > 10
|
||||
//! and the geometry is mostly spline
|
||||
|
||||
@@ -29,7 +29,7 @@ class gp_Pnt2d;
|
||||
class gp_Lin2d;
|
||||
class BRepClass_Edge;
|
||||
|
||||
//! Provide an exploration of a BRep Face for the
|
||||
//! Provide an exploration of a BRep Face for the
|
||||
//! classification. Return UV edges.
|
||||
class BRepClass_FaceExplorer
|
||||
{
|
||||
@@ -44,44 +44,44 @@ public:
|
||||
//! bounding box. Returns True if point was not changed.
|
||||
Standard_EXPORT Standard_Boolean CheckPoint(gp_Pnt2d& thePoint);
|
||||
|
||||
//! Should return True if the point is outside a
|
||||
//! Should return True if the point is outside a
|
||||
//! bounding volume of the face.
|
||||
Standard_EXPORT Standard_Boolean Reject(const gp_Pnt2d& P) const;
|
||||
|
||||
//! Returns in <L>, <Par> a segment having at least
|
||||
//! one intersection with the face boundary to
|
||||
//! compute intersections.
|
||||
//! Returns in <L>, <Par> a segment having at least
|
||||
//! one intersection with the face boundary to
|
||||
//! compute intersections.
|
||||
Standard_EXPORT Standard_Boolean Segment(const gp_Pnt2d& P, gp_Lin2d& L, Standard_Real& Par);
|
||||
|
||||
//! Returns in <L>, <Par> a segment having at least
|
||||
//! one intersection with the face boundary to
|
||||
//! compute intersections. Each call gives another segment.
|
||||
//! Returns in <L>, <Par> a segment having at least
|
||||
//! one intersection with the face boundary to
|
||||
//! compute intersections. Each call gives another segment.
|
||||
Standard_EXPORT Standard_Boolean OtherSegment(const gp_Pnt2d& P, gp_Lin2d& L, Standard_Real& Par);
|
||||
|
||||
//! Starts an exploration of the wires.
|
||||
Standard_EXPORT void InitWires();
|
||||
|
||||
//! Returns True if there is a current wire.
|
||||
//! Returns True if there is a current wire.
|
||||
Standard_Boolean MoreWires() const;
|
||||
|
||||
//! Sets the explorer to the next wire.
|
||||
//! Sets the explorer to the next wire.
|
||||
void NextWire();
|
||||
|
||||
//! Returns True if the wire bounding volume does not
|
||||
//! Returns True if the wire bounding volume does not
|
||||
//! intersect the segment.
|
||||
Standard_EXPORT Standard_Boolean RejectWire(const gp_Lin2d& L, const Standard_Real Par) const;
|
||||
|
||||
//! Starts an exploration of the edges of the current
|
||||
//! Starts an exploration of the edges of the current
|
||||
//! wire.
|
||||
Standard_EXPORT void InitEdges();
|
||||
|
||||
//! Returns True if there is a current edge.
|
||||
Standard_Boolean MoreEdges() const;
|
||||
|
||||
//! Sets the explorer to the next edge.
|
||||
//! Sets the explorer to the next edge.
|
||||
void NextEdge();
|
||||
|
||||
//! Returns True if the edge bounding volume does not
|
||||
//! Returns True if the edge bounding volume does not
|
||||
//! intersect the segment.
|
||||
Standard_EXPORT Standard_Boolean RejectEdge(const gp_Lin2d& L, const Standard_Real Par) const;
|
||||
|
||||
|
||||
@@ -39,14 +39,14 @@ public:
|
||||
//! Creates an undefined classifier.
|
||||
Standard_EXPORT BRepClass_FacePassiveClassifier();
|
||||
|
||||
//! Starts a classification process. The point to
|
||||
//! classify is the origin of the line <L>. <P> is
|
||||
//! the original length of the segment on <L> used to
|
||||
//! compute intersections. <Tol> is the tolerance
|
||||
//! Starts a classification process. The point to
|
||||
//! classify is the origin of the line <L>. <P> is
|
||||
//! the original length of the segment on <L> used to
|
||||
//! compute intersections. <Tol> is the tolerance
|
||||
//! attached to the line segment in intersections.
|
||||
Standard_EXPORT void Reset(const gp_Lin2d& L, const Standard_Real P, const Standard_Real Tol);
|
||||
|
||||
//! Updates the classification process with the edge
|
||||
//! Updates the classification process with the edge
|
||||
//! <E> from the boundary.
|
||||
Standard_EXPORT void Compare(const BRepClass_Edge& E, const TopAbs_Orientation Or);
|
||||
|
||||
@@ -56,9 +56,9 @@ public:
|
||||
//! Returns the intersecting algorithm.
|
||||
BRepClass_Intersector& Intersector();
|
||||
|
||||
//! Returns 0 if the last compared edge had no
|
||||
//! relevant intersection. Else returns the index of
|
||||
//! this intersection in the last intersection
|
||||
//! Returns 0 if the last compared edge had no
|
||||
//! relevant intersection. Else returns the index of
|
||||
//! this intersection in the last intersection
|
||||
//! algorithm.
|
||||
Standard_Integer ClosestIntersection() const;
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ class gp_Lin2d;
|
||||
class BRepClass_Edge;
|
||||
class gp_Dir2d;
|
||||
|
||||
//! Intersect an Edge with a segment.
|
||||
//! Intersect an Edge with a segment.
|
||||
//! Implement the Intersector2d required by the classifier.
|
||||
class BRepClass_Intersector : public Geom2dInt_IntConicCurveOfGInter
|
||||
{
|
||||
@@ -40,8 +40,8 @@ public:
|
||||
const Standard_Real Tol,
|
||||
const BRepClass_Edge& E);
|
||||
|
||||
//! Returns in <T>, <N> and <C> the tangent, normal
|
||||
//! and curvature of the edge <E> at parameter value
|
||||
//! Returns in <T>, <N> and <C> the tangent, normal
|
||||
//! and curvature of the edge <E> at parameter value
|
||||
//! <U>.
|
||||
Standard_EXPORT void LocalGeometry(const BRepClass_Edge& E,
|
||||
const Standard_Real U,
|
||||
|
||||
@@ -51,8 +51,8 @@ public:
|
||||
//! Should return True if P outside of bounding vol. of the shape
|
||||
Standard_EXPORT virtual Standard_Boolean Reject(const gp_Pnt& P) const;
|
||||
|
||||
//! compute a point P in the face F. Param is a Real in
|
||||
//! ]0,1[ and is used to initialise the algorithm. For
|
||||
//! compute a point P in the face F. Param is a Real in
|
||||
//! ]0,1[ and is used to initialise the algorithm. For
|
||||
//! different values , different points are returned.
|
||||
Standard_EXPORT static Standard_Boolean FindAPointInTheFace(const TopoDS_Face& F,
|
||||
gp_Pnt& P,
|
||||
@@ -102,7 +102,7 @@ public:
|
||||
const Standard_Real u2,
|
||||
const Standard_Real v2) const;
|
||||
|
||||
//! <Index> gives point index to search from and returns
|
||||
//! <Index> gives point index to search from and returns
|
||||
//! point index of succeseful search
|
||||
Standard_EXPORT Standard_Boolean PointInTheFace(const TopoDS_Face& F,
|
||||
gp_Pnt& P,
|
||||
@@ -148,14 +148,14 @@ public:
|
||||
//! returns True if the face is rejected.
|
||||
Standard_EXPORT virtual Standard_Boolean RejectFace(const gp_Lin& L) const;
|
||||
|
||||
//! Returns in <L>, <Par> a segment having at least
|
||||
//! one intersection with the shape boundary to
|
||||
//! compute intersections.
|
||||
//! Returns in <L>, <Par> a segment having at least
|
||||
//! one intersection with the shape boundary to
|
||||
//! compute intersections.
|
||||
Standard_EXPORT Standard_Integer Segment(const gp_Pnt& P, gp_Lin& L, Standard_Real& Par);
|
||||
|
||||
//! Returns in <L>, <Par> a segment having at least
|
||||
//! one intersection with the shape boundary to
|
||||
//! compute intersections.
|
||||
//! Returns in <L>, <Par> a segment having at least
|
||||
//! one intersection with the shape boundary to
|
||||
//! compute intersections.
|
||||
//!
|
||||
//! The First Call to this method returns a line which
|
||||
//! point to a point of the first face of the shape.
|
||||
|
||||
@@ -38,14 +38,14 @@ public:
|
||||
//! Creates an undefined classifier.
|
||||
Standard_EXPORT BRepClass3d_SolidPassiveClassifier();
|
||||
|
||||
//! Starts a classification process. The point to
|
||||
//! classify is the origin of the line <L>. <P> is
|
||||
//! the original length of the segment on <L> used to
|
||||
//! compute intersections. <Tol> is the tolerance
|
||||
//! Starts a classification process. The point to
|
||||
//! classify is the origin of the line <L>. <P> is
|
||||
//! the original length of the segment on <L> used to
|
||||
//! compute intersections. <Tol> is the tolerance
|
||||
//! attached to the intersections.
|
||||
Standard_EXPORT void Reset(const gp_Lin& L, const Standard_Real P, const Standard_Real Tol);
|
||||
|
||||
//! Updates the classification process with the face
|
||||
//! Updates the classification process with the face
|
||||
//! <F> from the boundary.
|
||||
Standard_EXPORT void Compare(const TopoDS_Face& F, const TopAbs_Orientation Or);
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#include <TopTools_IndexedMapOfShape.hxx>
|
||||
|
||||
//! This class provides tools to compute minimum distance
|
||||
//! This class provides tools to compute minimum distance
|
||||
//! between two Shapes (Compound,CompSolid, Solid, Shell, Face, Wire, Edge, Vertex).
|
||||
class BRepExtrema_DistShapeShape
|
||||
{
|
||||
@@ -37,8 +37,8 @@ public:
|
||||
Standard_EXPORT BRepExtrema_DistShapeShape();
|
||||
|
||||
//! create tool and computation of the minimum distance (value and pair of points)
|
||||
//! using default deflection in single thread mode. <br>
|
||||
//! Default deflection value is Precision::Confusion(). <br>
|
||||
//! using default deflection in single thread mode.
|
||||
//! Default deflection value is Precision::Confusion().
|
||||
//! @param Shape1 - the first shape for distance computation
|
||||
//! @param Shape2 - the second shape for distance computation
|
||||
//! @param F and @param A are not used in computation and are obsolete.
|
||||
@@ -50,8 +50,8 @@ public:
|
||||
const Extrema_ExtAlgo A = Extrema_ExtAlgo_Grad,
|
||||
const Message_ProgressRange& theRange = Message_ProgressRange());
|
||||
//! create tool and computation of the minimum distance
|
||||
//! (value and pair of points) in single thread mode. <br>
|
||||
//! Default deflection value is Precision::Confusion(). <br>
|
||||
//! (value and pair of points) in single thread mode.
|
||||
//! Default deflection value is Precision::Confusion().
|
||||
//! @param Shape1 - the first shape for distance computation
|
||||
//! @param Shape2 - the second shape for distance computation
|
||||
//! @param theDeflection - the presition of distance computation
|
||||
@@ -65,98 +65,98 @@ public:
|
||||
const Extrema_ExtAlgo A = Extrema_ExtAlgo_Grad,
|
||||
const Message_ProgressRange& theRange = Message_ProgressRange());
|
||||
|
||||
//! Sets deflection to computation of the minimum distance <br>
|
||||
//! Sets deflection to computation of the minimum distance
|
||||
void SetDeflection(const Standard_Real theDeflection) { myEps = theDeflection; }
|
||||
|
||||
//! load first shape into extrema <br>
|
||||
//! load first shape into extrema
|
||||
Standard_EXPORT void LoadS1(const TopoDS_Shape& Shape1);
|
||||
|
||||
//! load second shape into extrema <br>
|
||||
//! load second shape into extrema
|
||||
Standard_EXPORT void LoadS2(const TopoDS_Shape& Shape1);
|
||||
|
||||
//! computation of the minimum distance (value and <br>
|
||||
//! couple of points). Parameter theDeflection is used <br>
|
||||
//! to specify a maximum deviation of extreme distances <br>
|
||||
//! from the minimum one. <br>
|
||||
//! Returns IsDone status. <br>
|
||||
//! computation of the minimum distance (value and
|
||||
//! couple of points). Parameter theDeflection is used
|
||||
//! to specify a maximum deviation of extreme distances
|
||||
//! from the minimum one.
|
||||
//! Returns IsDone status.
|
||||
//! theRange - the progress indicator of algorithm
|
||||
Standard_EXPORT Standard_Boolean
|
||||
Perform(const Message_ProgressRange& theRange = Message_ProgressRange());
|
||||
|
||||
//! True if the minimum distance is found. <br>
|
||||
//! True if the minimum distance is found.
|
||||
Standard_Boolean IsDone() const { return myIsDone; }
|
||||
|
||||
//! Returns the number of solutions satisfying the minimum distance. <br>
|
||||
//! Returns the number of solutions satisfying the minimum distance.
|
||||
Standard_Integer NbSolution() const { return mySolutionsShape1.Length(); }
|
||||
|
||||
//! Returns the value of the minimum distance. <br>
|
||||
//! Returns the value of the minimum distance.
|
||||
Standard_EXPORT Standard_Real Value() const;
|
||||
|
||||
//! True if one of the shapes is a solid and the other shape <br>
|
||||
//! is completely or partially inside the solid. <br>
|
||||
//! True if one of the shapes is a solid and the other shape
|
||||
//! is completely or partially inside the solid.
|
||||
Standard_Boolean InnerSolution() const { return myInnerSol; }
|
||||
|
||||
//! Returns the Point corresponding to the <N>th solution on the first Shape <br>
|
||||
//! Returns the Point corresponding to the <N>th solution on the first Shape
|
||||
const gp_Pnt& PointOnShape1(const Standard_Integer N) const
|
||||
{
|
||||
return mySolutionsShape1.Value(N).Point();
|
||||
}
|
||||
|
||||
//! Returns the Point corresponding to the <N>th solution on the second Shape <br>
|
||||
//! Returns the Point corresponding to the <N>th solution on the second Shape
|
||||
const gp_Pnt& PointOnShape2(const Standard_Integer N) const
|
||||
{
|
||||
return mySolutionsShape2.Value(N).Point();
|
||||
}
|
||||
|
||||
//! gives the type of the support where the Nth solution on the first shape is situated: <br>
|
||||
//! IsVertex => the Nth solution on the first shape is a Vertex <br>
|
||||
//! IsOnEdge => the Nth soluion on the first shape is on a Edge <br>
|
||||
//! IsInFace => the Nth solution on the first shape is inside a face <br>
|
||||
//! the corresponding support is obtained by the method SupportOnShape1 <br>
|
||||
//! gives the type of the support where the Nth solution on the first shape is situated:
|
||||
//! IsVertex => the Nth solution on the first shape is a Vertex
|
||||
//! IsOnEdge => the Nth soluion on the first shape is on a Edge
|
||||
//! IsInFace => the Nth solution on the first shape is inside a face
|
||||
//! the corresponding support is obtained by the method SupportOnShape1
|
||||
BRepExtrema_SupportType SupportTypeShape1(const Standard_Integer N) const
|
||||
{
|
||||
return mySolutionsShape1.Value(N).SupportKind();
|
||||
}
|
||||
|
||||
//! gives the type of the support where the Nth solution on the second shape is situated: <br>
|
||||
//! IsVertex => the Nth solution on the second shape is a Vertex <br>
|
||||
//! IsOnEdge => the Nth soluion on the secondt shape is on a Edge <br>
|
||||
//! IsInFace => the Nth solution on the second shape is inside a face <br>
|
||||
//! the corresponding support is obtained by the method SupportOnShape2 <br>
|
||||
//! gives the type of the support where the Nth solution on the second shape is situated:
|
||||
//! IsVertex => the Nth solution on the second shape is a Vertex
|
||||
//! IsOnEdge => the Nth soluion on the secondt shape is on a Edge
|
||||
//! IsInFace => the Nth solution on the second shape is inside a face
|
||||
//! the corresponding support is obtained by the method SupportOnShape2
|
||||
BRepExtrema_SupportType SupportTypeShape2(const Standard_Integer N) const
|
||||
{
|
||||
return mySolutionsShape2.Value(N).SupportKind();
|
||||
}
|
||||
|
||||
//! gives the support where the Nth solution on the first shape is situated. <br>
|
||||
//! This support can be a Vertex, an Edge or a Face. <br>
|
||||
//! gives the support where the Nth solution on the first shape is situated.
|
||||
//! This support can be a Vertex, an Edge or a Face.
|
||||
Standard_EXPORT TopoDS_Shape SupportOnShape1(const Standard_Integer N) const;
|
||||
|
||||
//! gives the support where the Nth solution on the second shape is situated. <br>
|
||||
//! This support can be a Vertex, an Edge or a Face. <br>
|
||||
//! gives the support where the Nth solution on the second shape is situated.
|
||||
//! This support can be a Vertex, an Edge or a Face.
|
||||
Standard_EXPORT TopoDS_Shape SupportOnShape2(const Standard_Integer N) const;
|
||||
|
||||
//! gives the corresponding parameter t if the Nth solution <br>
|
||||
//! is situated on an Edge of the first shape <br>
|
||||
//! gives the corresponding parameter t if the Nth solution
|
||||
//! is situated on an Edge of the first shape
|
||||
Standard_EXPORT void ParOnEdgeS1(const Standard_Integer N, Standard_Real& t) const;
|
||||
|
||||
//! gives the corresponding parameter t if the Nth solution <br>
|
||||
//! is situated on an Edge of the first shape <br>
|
||||
//! gives the corresponding parameter t if the Nth solution
|
||||
//! is situated on an Edge of the first shape
|
||||
Standard_EXPORT void ParOnEdgeS2(const Standard_Integer N, Standard_Real& t) const;
|
||||
|
||||
//! gives the corresponding parameters (U,V) if the Nth solution <br>
|
||||
//! is situated on an face of the first shape <br>
|
||||
//! gives the corresponding parameters (U,V) if the Nth solution
|
||||
//! is situated on an face of the first shape
|
||||
Standard_EXPORT void ParOnFaceS1(const Standard_Integer N,
|
||||
Standard_Real& u,
|
||||
Standard_Real& v) const;
|
||||
|
||||
//! gives the corresponding parameters (U,V) if the Nth solution <br>
|
||||
//! is situated on an Face of the second shape <br>
|
||||
//! gives the corresponding parameters (U,V) if the Nth solution
|
||||
//! is situated on an Face of the second shape
|
||||
Standard_EXPORT void ParOnFaceS2(const Standard_Integer N,
|
||||
Standard_Real& u,
|
||||
Standard_Real& v) const;
|
||||
|
||||
//! Prints on the stream o information on the current state of the object. <br>
|
||||
//! Prints on the stream o information on the current state of the object.
|
||||
Standard_EXPORT void Dump(Standard_OStream& o) const;
|
||||
|
||||
//! Sets unused parameter
|
||||
@@ -175,14 +175,14 @@ public:
|
||||
Standard_Boolean IsMultiThread() const { return myIsMultiThread; }
|
||||
|
||||
private:
|
||||
//! computes the minimum distance between two maps of shapes (Face,Edge,Vertex) <br>
|
||||
//! computes the minimum distance between two maps of shapes (Face,Edge,Vertex)
|
||||
Standard_Boolean DistanceMapMap(const TopTools_IndexedMapOfShape& Map1,
|
||||
const TopTools_IndexedMapOfShape& Map2,
|
||||
const Bnd_Array1OfBox& LBox1,
|
||||
const Bnd_Array1OfBox& LBox2,
|
||||
const Message_ProgressRange& theRange);
|
||||
|
||||
//! computes the minimum distance between two maps of vertices <br>
|
||||
//! computes the minimum distance between two maps of vertices
|
||||
Standard_Boolean DistanceVertVert(const TopTools_IndexedMapOfShape& theMap1,
|
||||
const TopTools_IndexedMapOfShape& theMap2,
|
||||
const Message_ProgressRange& theRange);
|
||||
|
||||
@@ -28,37 +28,37 @@ public:
|
||||
|
||||
BRepExtrema_ExtCC() {}
|
||||
|
||||
//! It calculates all the distances. <br>
|
||||
//! It calculates all the distances.
|
||||
Standard_EXPORT BRepExtrema_ExtCC(const TopoDS_Edge& E1, const TopoDS_Edge& E2);
|
||||
|
||||
Standard_EXPORT void Initialize(const TopoDS_Edge& E2);
|
||||
//! An exception is raised if the fields have not been initialized. <br>
|
||||
//! An exception is raised if the fields have not been initialized.
|
||||
Standard_EXPORT void Perform(const TopoDS_Edge& E1);
|
||||
|
||||
//! True if the distances are found. <br>
|
||||
//! True if the distances are found.
|
||||
Standard_Boolean IsDone() const { return myExtCC.IsDone(); }
|
||||
|
||||
//! Returns the number of extremum distances. <br>
|
||||
//! Returns the number of extremum distances.
|
||||
Standard_Integer NbExt() const { return myExtCC.NbExt(); }
|
||||
|
||||
//! Returns True if E1 and E2 are parallel. <br>
|
||||
//! Returns True if E1 and E2 are parallel.
|
||||
Standard_Boolean IsParallel() const { return myExtCC.IsParallel(); }
|
||||
|
||||
//! Returns the value of the <N>th extremum square distance. <br>
|
||||
//! Returns the value of the <N>th extremum square distance.
|
||||
Standard_Real SquareDistance(const Standard_Integer N) const { return myExtCC.SquareDistance(N); }
|
||||
|
||||
//! Returns the parameter on the first edge of the <N>th extremum distance. <br>
|
||||
//! Returns the parameter on the first edge of the <N>th extremum distance.
|
||||
Standard_EXPORT Standard_Real ParameterOnE1(const Standard_Integer N) const;
|
||||
//! Returns the Point of the <N>th extremum distance on the edge E1. <br>
|
||||
//! Returns the Point of the <N>th extremum distance on the edge E1.
|
||||
Standard_EXPORT gp_Pnt PointOnE1(const Standard_Integer N) const;
|
||||
//! Returns the parameter on the second edge of the <N>th extremum distance. <br>
|
||||
//! Returns the parameter on the second edge of the <N>th extremum distance.
|
||||
Standard_EXPORT Standard_Real ParameterOnE2(const Standard_Integer N) const;
|
||||
//! Returns the Point of the <N>th extremum distance on the edge E2. <br>
|
||||
//! Returns the Point of the <N>th extremum distance on the edge E2.
|
||||
Standard_EXPORT gp_Pnt PointOnE2(const Standard_Integer N) const;
|
||||
//! if the edges is a trimmed curve, <br>
|
||||
//! dist11 is a square distance between the point on E1 <br>
|
||||
//! of parameter FirstParameter and the point of <br>
|
||||
//! parameter FirstParameter on E2. <br>
|
||||
//! if the edges is a trimmed curve,
|
||||
//! dist11 is a square distance between the point on E1
|
||||
//! of parameter FirstParameter and the point of
|
||||
//! parameter FirstParameter on E2.
|
||||
Standard_EXPORT void TrimmedSquareDistances(Standard_Real& dist11,
|
||||
Standard_Real& distP12,
|
||||
Standard_Real& distP21,
|
||||
|
||||
@@ -33,42 +33,42 @@ public:
|
||||
|
||||
BRepExtrema_ExtCF() {}
|
||||
|
||||
//! It calculates all the distances. <br>
|
||||
//! It calculates all the distances.
|
||||
Standard_EXPORT BRepExtrema_ExtCF(const TopoDS_Edge& E, const TopoDS_Face& F);
|
||||
|
||||
Standard_EXPORT void Initialize(const TopoDS_Edge& E, const TopoDS_Face& F);
|
||||
//! An exception is raised if the fields have not been initialized. <br>
|
||||
//! Be careful: this method uses the Face only for classify not for the fields. <br>
|
||||
//! An exception is raised if the fields have not been initialized.
|
||||
//! Be careful: this method uses the Face only for classify not for the fields.
|
||||
Standard_EXPORT void Perform(const TopoDS_Edge& E, const TopoDS_Face& F);
|
||||
|
||||
//! True if the distances are found. <br>
|
||||
//! True if the distances are found.
|
||||
Standard_Boolean IsDone() const { return myExtCS.IsDone(); }
|
||||
|
||||
//! Returns the number of extremum distances. <br>
|
||||
//! Returns the number of extremum distances.
|
||||
Standard_Integer NbExt() const { return mySqDist.Length(); }
|
||||
|
||||
//! Returns the value of the <N>th extremum square distance. <br>
|
||||
//! Returns the value of the <N>th extremum square distance.
|
||||
Standard_Real SquareDistance(const Standard_Integer N) const { return mySqDist.Value(N); }
|
||||
|
||||
//! Returns True if the curve is on a parallel surface. <br>
|
||||
//! Returns True if the curve is on a parallel surface.
|
||||
Standard_Boolean IsParallel() const { return myExtCS.IsParallel(); }
|
||||
|
||||
//! Returns the parameters on the Edge of the <N>th extremum distance. <br>
|
||||
//! Returns the parameters on the Edge of the <N>th extremum distance.
|
||||
Standard_Real ParameterOnEdge(const Standard_Integer N) const
|
||||
{
|
||||
return myPointsOnC.Value(N).Parameter();
|
||||
}
|
||||
|
||||
//! Returns the parameters on the Face of the <N>th extremum distance. <br>
|
||||
//! Returns the parameters on the Face of the <N>th extremum distance.
|
||||
void ParameterOnFace(const Standard_Integer N, Standard_Real& U, Standard_Real& V) const
|
||||
{
|
||||
myPointsOnS.Value(N).Parameter(U, V);
|
||||
}
|
||||
|
||||
//! Returns the Point of the <N>th extremum distance. <br>
|
||||
//! Returns the Point of the <N>th extremum distance.
|
||||
gp_Pnt PointOnEdge(const Standard_Integer N) const { return myPointsOnC.Value(N).Value(); }
|
||||
|
||||
//! Returns the Point of the <N>th extremum distance. <br>
|
||||
//! Returns the Point of the <N>th extremum distance.
|
||||
gp_Pnt PointOnFace(const Standard_Integer N) const { return myPointsOnS.Value(N).Value(); }
|
||||
|
||||
private:
|
||||
|
||||
@@ -30,42 +30,42 @@ public:
|
||||
|
||||
BRepExtrema_ExtFF() {}
|
||||
|
||||
//! It calculates all the distances. <br>
|
||||
//! It calculates all the distances.
|
||||
Standard_EXPORT BRepExtrema_ExtFF(const TopoDS_Face& F1, const TopoDS_Face& F2);
|
||||
|
||||
Standard_EXPORT void Initialize(const TopoDS_Face& F2);
|
||||
//! An exception is raised if the fields have not been initialized. <br>
|
||||
//! Be careful: this method uses the Face F2 only for classify, not for the fields. <br>
|
||||
//! An exception is raised if the fields have not been initialized.
|
||||
//! Be careful: this method uses the Face F2 only for classify, not for the fields.
|
||||
Standard_EXPORT void Perform(const TopoDS_Face& F1, const TopoDS_Face& F2);
|
||||
|
||||
//! True if the distances are found. <br>
|
||||
//! True if the distances are found.
|
||||
Standard_Boolean IsDone() const { return myExtSS.IsDone(); }
|
||||
|
||||
//! Returns True if the surfaces are parallel. <br>
|
||||
//! Returns True if the surfaces are parallel.
|
||||
Standard_Boolean IsParallel() const { return myExtSS.IsParallel(); }
|
||||
|
||||
//! Returns the number of extremum distances. <br>
|
||||
//! Returns the number of extremum distances.
|
||||
Standard_Integer NbExt() const { return mySqDist.Length(); }
|
||||
|
||||
//! Returns the value of the <N>th extremum square distance. <br>
|
||||
//! Returns the value of the <N>th extremum square distance.
|
||||
Standard_Real SquareDistance(const Standard_Integer N) const { return mySqDist.Value(N); }
|
||||
|
||||
//! Returns the parameters on the Face F1 of the <N>th extremum distance. <br>
|
||||
//! Returns the parameters on the Face F1 of the <N>th extremum distance.
|
||||
void ParameterOnFace1(const Standard_Integer N, Standard_Real& U, Standard_Real& V) const
|
||||
{
|
||||
myPointsOnS1.Value(N).Parameter(U, V);
|
||||
}
|
||||
|
||||
//! Returns the parameters on the Face F2 of the <N>th extremum distance. <br>
|
||||
//! Returns the parameters on the Face F2 of the <N>th extremum distance.
|
||||
void ParameterOnFace2(const Standard_Integer N, Standard_Real& U, Standard_Real& V) const
|
||||
{
|
||||
myPointsOnS2.Value(N).Parameter(U, V);
|
||||
}
|
||||
|
||||
//! Returns the Point of the <N>th extremum distance. <br>
|
||||
//! Returns the Point of the <N>th extremum distance.
|
||||
gp_Pnt PointOnFace1(const Standard_Integer N) const { return myPointsOnS1.Value(N).Value(); }
|
||||
|
||||
//! Returns the Point of the <N>th extremum distance. <br>
|
||||
//! Returns the Point of the <N>th extremum distance.
|
||||
gp_Pnt PointOnFace2(const Standard_Integer N) const { return myPointsOnS2.Value(N).Value(); }
|
||||
|
||||
private:
|
||||
|
||||
@@ -28,36 +28,36 @@ public:
|
||||
|
||||
BRepExtrema_ExtPC() {}
|
||||
|
||||
//! It calculates all the distances. <br>
|
||||
//! It calculates all the distances.
|
||||
Standard_EXPORT BRepExtrema_ExtPC(const TopoDS_Vertex& V, const TopoDS_Edge& E);
|
||||
|
||||
Standard_EXPORT void Initialize(const TopoDS_Edge& E);
|
||||
//! An exception is raised if the fields have not been initialized. <br>
|
||||
//! An exception is raised if the fields have not been initialized.
|
||||
Standard_EXPORT void Perform(const TopoDS_Vertex& V);
|
||||
|
||||
//! True if the distances are found. <br>
|
||||
//! True if the distances are found.
|
||||
Standard_Boolean IsDone() const { return myExtPC.IsDone(); }
|
||||
|
||||
//! Returns the number of extremum distances. <br>
|
||||
//! Returns the number of extremum distances.
|
||||
Standard_Integer NbExt() const { return myExtPC.NbExt(); }
|
||||
|
||||
//! Returns True if the <N>th extremum distance is a minimum. <br>
|
||||
//! Returns True if the <N>th extremum distance is a minimum.
|
||||
Standard_Boolean IsMin(const Standard_Integer N) const { return myExtPC.IsMin(N); }
|
||||
|
||||
//! Returns the value of the <N>th extremum square distance. <br>
|
||||
//! Returns the value of the <N>th extremum square distance.
|
||||
Standard_Real SquareDistance(const Standard_Integer N) const { return myExtPC.SquareDistance(N); }
|
||||
|
||||
//! Returns the parameter on the edge of the <N>th extremum distance. <br>
|
||||
//! Returns the parameter on the edge of the <N>th extremum distance.
|
||||
Standard_Real Parameter(const Standard_Integer N) const { return myExtPC.Point(N).Parameter(); }
|
||||
|
||||
//! Returns the Point of the <N>th extremum distance. <br>
|
||||
//! Returns the Point of the <N>th extremum distance.
|
||||
gp_Pnt Point(const Standard_Integer N) const { return myExtPC.Point(N).Value(); }
|
||||
|
||||
//! if the curve is a trimmed curve, <br>
|
||||
//! dist1 is a square distance between <P> and the point <br>
|
||||
//! of parameter FirstParameter <pnt1> and <br>
|
||||
//! dist2 is a square distance between <P> and the point <br>
|
||||
//! of parameter LastParameter <pnt2>. <br>
|
||||
//! if the curve is a trimmed curve,
|
||||
//! dist1 is a square distance between <P> and the point
|
||||
//! of parameter FirstParameter <pnt1> and
|
||||
//! dist2 is a square distance between <P> and the point
|
||||
//! of parameter LastParameter <pnt2>.
|
||||
void TrimmedSquareDistances(Standard_Real& dist1,
|
||||
Standard_Real& dist2,
|
||||
gp_Pnt& pnt1,
|
||||
|
||||
@@ -31,7 +31,7 @@ public:
|
||||
|
||||
BRepExtrema_ExtPF() {}
|
||||
|
||||
//! It calculates all the distances. <br>
|
||||
//! It calculates all the distances.
|
||||
Standard_EXPORT BRepExtrema_ExtPF(const TopoDS_Vertex& TheVertex,
|
||||
const TopoDS_Face& TheFace,
|
||||
const Extrema_ExtFlag TheFlag = Extrema_ExtFlag_MINMAX,
|
||||
@@ -41,26 +41,26 @@ public:
|
||||
const Extrema_ExtFlag TheFlag = Extrema_ExtFlag_MINMAX,
|
||||
const Extrema_ExtAlgo TheAlgo = Extrema_ExtAlgo_Grad);
|
||||
|
||||
//! An exception is raised if the fields have not been initialized. <br>
|
||||
//! Be careful: this method uses the Face only for classify not for the fields. <br>
|
||||
//! An exception is raised if the fields have not been initialized.
|
||||
//! Be careful: this method uses the Face only for classify not for the fields.
|
||||
Standard_EXPORT void Perform(const TopoDS_Vertex& TheVertex, const TopoDS_Face& TheFace);
|
||||
|
||||
//! True if the distances are found. <br>
|
||||
//! True if the distances are found.
|
||||
Standard_Boolean IsDone() const { return myExtPS.IsDone(); }
|
||||
|
||||
//! Returns the number of extremum distances. <br>
|
||||
//! Returns the number of extremum distances.
|
||||
Standard_Integer NbExt() const { return myPoints.Length(); }
|
||||
|
||||
//! Returns the value of the <N>th extremum square distance. <br>
|
||||
//! Returns the value of the <N>th extremum square distance.
|
||||
Standard_Real SquareDistance(const Standard_Integer N) const { return mySqDist.Value(N); }
|
||||
|
||||
//! Returns the parameters on the Face of the <N>th extremum distance. <br>
|
||||
//! Returns the parameters on the Face of the <N>th extremum distance.
|
||||
void Parameter(const Standard_Integer N, Standard_Real& U, Standard_Real& V) const
|
||||
{
|
||||
myPoints.Value(N).Parameter(U, V);
|
||||
}
|
||||
|
||||
//! Returns the Point of the <N>th extremum distance. <br>
|
||||
//! Returns the Point of the <N>th extremum distance.
|
||||
gp_Pnt Point(const Standard_Integer N) const { return myPoints.Value(N).Value(); }
|
||||
|
||||
void SetFlag(const Extrema_ExtFlag F) { myExtPS.SetFlag(F); }
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
class BRepAdaptor_Curve;
|
||||
class gp_Pnt;
|
||||
|
||||
//! Computes the global properties of bounded curves
|
||||
//! Computes the global properties of bounded curves
|
||||
//! in 3D space. The curve must have at least a continuity C1.
|
||||
//! It can be a curve as defined in the template CurveTool from
|
||||
//! package GProp. This template gives the minimum of methods
|
||||
|
||||
@@ -27,7 +27,7 @@ class BRepAdaptor_Curve;
|
||||
class gp_Pnt;
|
||||
class gp_Vec;
|
||||
|
||||
//! Provides the required methods to instantiate
|
||||
//! Provides the required methods to instantiate
|
||||
//! CGProps from GProp with a Curve from BRepAdaptor.
|
||||
class BRepGProp_EdgeTool
|
||||
{
|
||||
@@ -35,18 +35,18 @@ public:
|
||||
DEFINE_STANDARD_ALLOC
|
||||
|
||||
//! Returns the parametric value of the start point of
|
||||
//! the curve. The curve is oriented from the start point
|
||||
//! the curve. The curve is oriented from the start point
|
||||
//! to the end point.
|
||||
Standard_EXPORT static Standard_Real FirstParameter(const BRepAdaptor_Curve& C);
|
||||
|
||||
//! Returns the parametric value of the end point of
|
||||
//! the curve. The curve is oriented from the start point
|
||||
//! the curve. The curve is oriented from the start point
|
||||
//! to the end point.
|
||||
Standard_EXPORT static Standard_Real LastParameter(const BRepAdaptor_Curve& C);
|
||||
|
||||
//! Returns the number of Gauss points required to do
|
||||
//! the integration with a good accuracy using the
|
||||
//! Gauss method. For a polynomial curve of degree n
|
||||
//! Gauss method. For a polynomial curve of degree n
|
||||
//! the maxima of accuracy is obtained with an order
|
||||
//! of integration equal to 2*n-1.
|
||||
Standard_EXPORT static Standard_Integer IntegrationOrder(const BRepAdaptor_Curve& C);
|
||||
@@ -61,15 +61,15 @@ public:
|
||||
gp_Pnt& P,
|
||||
gp_Vec& V1);
|
||||
|
||||
//! Returns the number of intervals for continuity
|
||||
//! Returns the number of intervals for continuity
|
||||
//! <S>. May be one if Continuity(me) >= <S>
|
||||
Standard_EXPORT static Standard_Integer NbIntervals(const BRepAdaptor_Curve& C,
|
||||
const GeomAbs_Shape S);
|
||||
|
||||
//! Stores in <T> the parameters bounding the intervals
|
||||
//! Stores in <T> the parameters bounding the intervals
|
||||
//! of continuity <S>.
|
||||
//!
|
||||
//! The array must provide enough room to accommodate
|
||||
//! The array must provide enough room to accommodate
|
||||
//! for the parameters. i.e. T.Length() > NbIntervals()
|
||||
Standard_EXPORT static void Intervals(const BRepAdaptor_Curve& C,
|
||||
TColStd_Array1OfReal& T,
|
||||
|
||||
@@ -22,8 +22,8 @@
|
||||
class gp_Pnt;
|
||||
class TopoDS_Edge;
|
||||
|
||||
//! Computes the global properties of
|
||||
//! of polylines represented by set of points.
|
||||
//! Computes the global properties of
|
||||
//! of polylines represented by set of points.
|
||||
//! This class is used for computation of global
|
||||
//! properties of edge, which has no exact geometry
|
||||
//! (3d or 2d curve), but has any of allowed
|
||||
@@ -38,8 +38,8 @@ public:
|
||||
|
||||
Standard_EXPORT void SetLocation(const gp_Pnt& CLocation);
|
||||
|
||||
//! Computes the global properties of
|
||||
//! of polylines represented by set of points.
|
||||
//! Computes the global properties of
|
||||
//! of polylines represented by set of points.
|
||||
Standard_EXPORT void Perform(const TColgp_Array1OfPnt& theNodes);
|
||||
|
||||
//! Prepare set of 3d points on base of any available edge polygons:
|
||||
|
||||
@@ -65,7 +65,7 @@ public:
|
||||
const Standard_Real Eps);
|
||||
|
||||
//! If previously used method contained Eps parameter
|
||||
//! get actual relative error of the computation, else return 1.0.
|
||||
//! get actual relative error of the computation, else return 1.0.
|
||||
Standard_EXPORT Standard_Real GetEpsilon();
|
||||
|
||||
protected:
|
||||
|
||||
@@ -76,7 +76,7 @@ public:
|
||||
//! parameter is directly passed to the UFunction.
|
||||
void SetValueType(const GProp_ValueType aType);
|
||||
|
||||
//! Setting the tolerance for inner integration
|
||||
//! Setting the tolerance for inner integration
|
||||
void SetTolerance(const Standard_Real aTol);
|
||||
|
||||
//! Returns the relative reached error of all values computation since
|
||||
@@ -93,7 +93,7 @@ public:
|
||||
Standard_EXPORT virtual Standard_Boolean Value(const Standard_Real X,
|
||||
Standard_Real& F) Standard_OVERRIDE;
|
||||
|
||||
//! Redefined method. Remembers the error reached during
|
||||
//! Redefined method. Remembers the error reached during
|
||||
//! computation of integral values since the object creation
|
||||
//! or the last call of GetStateNumber. It is invoked in each
|
||||
//! algorithm from the package math. Particularly in the
|
||||
|
||||
@@ -50,7 +50,7 @@ public:
|
||||
//! The method is quick and its precision is enough for many cases of analytical
|
||||
//! surfaces.
|
||||
//! Non-adaptive 2D Gauss integration with predefined numbers of Gauss points
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! Error of the computation is not calculated.
|
||||
Standard_EXPORT BRepGProp_Vinert(const BRepGProp_Face& S, const gp_Pnt& VLocation);
|
||||
|
||||
@@ -69,7 +69,7 @@ public:
|
||||
//! The method is quick and its precision is enough for many cases of analytical
|
||||
//! surfaces.
|
||||
//! Non-adaptive 2D Gauss integration with predefined numbers of Gauss points
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! Error of the computation is not calculated.
|
||||
Standard_EXPORT BRepGProp_Vinert(const BRepGProp_Face& S,
|
||||
const gp_Pnt& O,
|
||||
@@ -92,7 +92,7 @@ public:
|
||||
//! The method is quick and its precision is enough for many cases of analytical
|
||||
//! surfaces.
|
||||
//! Non-adaptive 2D Gauss integration with predefined numbers of Gauss points
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! Error of the computation is not calculated.
|
||||
Standard_EXPORT BRepGProp_Vinert(const BRepGProp_Face& S,
|
||||
const gp_Pln& Pl,
|
||||
@@ -115,7 +115,7 @@ public:
|
||||
//! The method is quick and its precision is enough for many cases of analytical
|
||||
//! surfaces.
|
||||
//! Non-adaptive 2D Gauss integration with predefined numbers of Gauss points
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! Error of the computation is not calculated.
|
||||
Standard_EXPORT BRepGProp_Vinert(BRepGProp_Face& S, BRepGProp_Domain& D, const gp_Pnt& VLocation);
|
||||
|
||||
@@ -135,7 +135,7 @@ public:
|
||||
//! The method is quick and its precision is enough for many cases of analytical
|
||||
//! surfaces.
|
||||
//! Non-adaptive 2D Gauss integration with predefined numbers of Gauss points
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! Error of the computation is not calculated.
|
||||
Standard_EXPORT BRepGProp_Vinert(BRepGProp_Face& S,
|
||||
BRepGProp_Domain& D,
|
||||
@@ -160,7 +160,7 @@ public:
|
||||
//! The method is quick and its precision is enough for many cases of analytical
|
||||
//! surfaces.
|
||||
//! Non-adaptive 2D Gauss integration with predefined numbers of Gauss points
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! is used. Numbers of points depend on types of surfaces and curves.
|
||||
//! Error of the computation is not calculated.
|
||||
Standard_EXPORT BRepGProp_Vinert(BRepGProp_Face& S,
|
||||
BRepGProp_Domain& D,
|
||||
@@ -218,8 +218,8 @@ public:
|
||||
const gp_Pln& Pl,
|
||||
const Standard_Real Eps);
|
||||
|
||||
//! If previously used methods containe Eps parameter
|
||||
//! gets actual relative error of the computation, else returns 1.0.
|
||||
//! If previously used methods contain Eps parameter
|
||||
//! gets actual relative error of the computation, else returns 1.0.
|
||||
Standard_EXPORT Standard_Real GetEpsilon();
|
||||
|
||||
protected:
|
||||
|
||||
@@ -46,7 +46,7 @@ class TopoDS_Face;
|
||||
//! for( i =1; i <= nbCurves;i++)
|
||||
//! {
|
||||
//! Inter.Init(curve);
|
||||
//! for( ;Inter.More(); Inter.Next())
|
||||
//! for( ;Inter.More(); Inter.Next())
|
||||
//! {
|
||||
//! .......
|
||||
//! }
|
||||
|
||||
@@ -52,7 +52,7 @@ public:
|
||||
|
||||
//! Computes the max distance between edge
|
||||
//! and its 2d representation on the face.
|
||||
//! Sets the default precision. The current Precision
|
||||
//! Sets the default precision. The current Precision
|
||||
//! is returned.
|
||||
Standard_EXPORT static void Precision(const Standard_Real P);
|
||||
|
||||
@@ -83,9 +83,9 @@ public:
|
||||
Standard_EXPORT static void SameRange(const TopoDS_Edge& E,
|
||||
const Standard_Real Tolerance = 1.0e-5);
|
||||
|
||||
//! Computes the 3d curve for the edge <E> if it does
|
||||
//! not exist. Returns True if the curve was computed
|
||||
//! or existed. Returns False if there is no planar
|
||||
//! Computes the 3d curve for the edge <E> if it does
|
||||
//! not exist. Returns True if the curve was computed
|
||||
//! or existed. Returns False if there is no planar
|
||||
//! pcurve or the computation failed.
|
||||
//! <MaxSegment> >= 30 in approximation
|
||||
Standard_EXPORT static Standard_Boolean BuildCurve3d(const TopoDS_Edge& E,
|
||||
@@ -94,7 +94,7 @@ public:
|
||||
const Standard_Integer MaxDegree = 14,
|
||||
const Standard_Integer MaxSegment = 0);
|
||||
|
||||
//! Computes the 3d curves for all the edges of <S>
|
||||
//! Computes the 3d curves for all the edges of <S>
|
||||
//! return False if one of the computation failed.
|
||||
//! <MaxSegment> >= 30 in approximation
|
||||
Standard_EXPORT static Standard_Boolean BuildCurves3d(const TopoDS_Shape& S,
|
||||
@@ -103,7 +103,7 @@ public:
|
||||
const Standard_Integer MaxDegree = 14,
|
||||
const Standard_Integer MaxSegment = 0);
|
||||
|
||||
//! Computes the 3d curves for all the edges of <S>
|
||||
//! Computes the 3d curves for all the edges of <S>
|
||||
//! return False if one of the computation failed.
|
||||
Standard_EXPORT static Standard_Boolean BuildCurves3d(const TopoDS_Shape& S);
|
||||
|
||||
@@ -130,43 +130,43 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
//! Checks if the edge has a Tolerance smaller than -- --
|
||||
//! -- -- MaxToleranceToCheck if so it will compute the
|
||||
//! radius of -- the cylindrical pipe surface that
|
||||
//! Checks if the edge has a Tolerance smaller than
|
||||
//! MaxToleranceToCheck if so it will compute the
|
||||
//! radius of the cylindrical pipe surface that
|
||||
//! MinToleranceRequest is the minimum tolerance before it
|
||||
//! is useful to start testing.
|
||||
//! Usually it should be around 10e-5
|
||||
//! contains all -- the curve representation of the edge
|
||||
//! contains all the curve representation of the edge
|
||||
//! returns True if the Edge tolerance had to be updated
|
||||
Standard_EXPORT static Standard_Boolean UpdateEdgeTol(const TopoDS_Edge& E,
|
||||
const Standard_Real MinToleranceRequest,
|
||||
const Standard_Real MaxToleranceToCheck);
|
||||
|
||||
//! -- Checks all the edges of the shape whose -- -- --
|
||||
//! Tolerance is smaller than MaxToleranceToCheck --
|
||||
//! Returns True if at least one edge was updated --
|
||||
//! Checks all the edges of the shape whose
|
||||
//! Tolerance is smaller than MaxToleranceToCheck
|
||||
//! Returns True if at least one edge was updated
|
||||
//! MinToleranceRequest is the minimum tolerance before
|
||||
//! -- it -- is useful to start testing.
|
||||
//! Usually it should be around -- 10e-5--
|
||||
//! it is useful to start testing.
|
||||
//! Usually it should be around 10e-5
|
||||
//!
|
||||
//! Warning :The method is very slow as it checks all.
|
||||
//! Use only in interfaces or processing assimilate batch
|
||||
//! Warning: The method is very slow as it checks all.
|
||||
//! Use only in interfaces or processing assimilate batch
|
||||
Standard_EXPORT static Standard_Boolean UpdateEdgeTolerance(
|
||||
const TopoDS_Shape& S,
|
||||
const Standard_Real MinToleranceRequest,
|
||||
const Standard_Real MaxToleranceToCheck);
|
||||
|
||||
//! Computes new 2d curve(s) for the edge <theEdge> to have
|
||||
//! the same parameter as the 3d curve.
|
||||
//! Computes new 2d curve(s) for the edge <theEdge> to have
|
||||
//! the same parameter as the 3d curve.
|
||||
//! The algorithm is not done if the flag SameParameter
|
||||
//! was True on the Edge.
|
||||
//! was True on the Edge.
|
||||
Standard_EXPORT static void SameParameter(const TopoDS_Edge& theEdge,
|
||||
const Standard_Real Tolerance = 1.0e-5);
|
||||
|
||||
//! Computes new 2d curve(s) for the edge <theEdge> to have
|
||||
//! the same parameter as the 3d curve.
|
||||
//! Computes new 2d curve(s) for the edge <theEdge> to have
|
||||
//! the same parameter as the 3d curve.
|
||||
//! The algorithm is not done if the flag SameParameter
|
||||
//! was True on the Edge.<br>
|
||||
//! was True on the Edge.
|
||||
//! theNewTol is a new tolerance of vertices of the input edge
|
||||
//! (not applied inside the algorithm, but pre-computed).
|
||||
//! If IsUseOldEdge is true then the input edge will be modified,
|
||||
@@ -177,18 +177,18 @@ public:
|
||||
Standard_Real& theNewTol,
|
||||
const Standard_Boolean IsUseOldEdge);
|
||||
|
||||
//! Computes new 2d curve(s) for all the edges of <S>
|
||||
//! to have the same parameter as the 3d curve.
|
||||
//! Computes new 2d curve(s) for all the edges of <S>
|
||||
//! to have the same parameter as the 3d curve.
|
||||
//! The algorithm is not done if the flag SameParameter
|
||||
//! was True on an Edge.
|
||||
//! was True on an Edge.
|
||||
Standard_EXPORT static void SameParameter(const TopoDS_Shape& S,
|
||||
const Standard_Real Tolerance = 1.0e-5,
|
||||
const Standard_Boolean forced = Standard_False);
|
||||
|
||||
//! Computes new 2d curve(s) for all the edges of <S>
|
||||
//! to have the same parameter as the 3d curve.
|
||||
//! Computes new 2d curve(s) for all the edges of <S>
|
||||
//! to have the same parameter as the 3d curve.
|
||||
//! The algorithm is not done if the flag SameParameter
|
||||
//! was True on an Edge.<br>
|
||||
//! was True on an Edge.
|
||||
//! theReshaper is used to record the modifications of input shape <S> to prevent any
|
||||
//! modifications on the shape itself.
|
||||
//! Thus the input shape (and its subshapes) will not be modified, instead the reshaper will
|
||||
@@ -198,7 +198,7 @@ public:
|
||||
const Standard_Real Tolerance = 1.0e-5,
|
||||
const Standard_Boolean forced = Standard_False);
|
||||
|
||||
//! Replaces tolerance of FACE EDGE VERTEX by the
|
||||
//! Replaces tolerance of FACE EDGE VERTEX by the
|
||||
//! tolerance Max of their connected handling shapes.
|
||||
//! It is not necessary to use this call after
|
||||
//! SameParameter. (called in)
|
||||
@@ -206,10 +206,10 @@ public:
|
||||
const TopoDS_Shape& S,
|
||||
const Standard_Boolean verifyFaceTolerance = Standard_False);
|
||||
|
||||
//! Replaces tolerance of FACE EDGE VERTEX by the
|
||||
//! Replaces tolerance of FACE EDGE VERTEX by the
|
||||
//! tolerance Max of their connected handling shapes.
|
||||
//! It is not necessary to use this call after
|
||||
//! SameParameter. (called in)<br>
|
||||
//! SameParameter. (called in)
|
||||
//! theReshaper is used to record the modifications of input shape <S> to prevent any
|
||||
//! modifications on the shape itself.
|
||||
//! Thus the input shape (and its subshapes) will not be modified, instead the reshaper will
|
||||
@@ -223,8 +223,8 @@ public:
|
||||
//! of a shape and updates them to satisfy "SameParameter" condition
|
||||
Standard_EXPORT static void UpdateInnerTolerances(const TopoDS_Shape& S);
|
||||
|
||||
//! Orients the solid forward and the shell with the
|
||||
//! orientation to have matter in the solid. Returns
|
||||
//! Orients the solid forward and the shell with the
|
||||
//! orientation to have matter in the solid. Returns
|
||||
//! False if the solid is unOrientable (open or incoherent)
|
||||
Standard_EXPORT static Standard_Boolean OrientClosedSolid(TopoDS_Solid& solid);
|
||||
|
||||
@@ -259,13 +259,13 @@ public:
|
||||
const TopoDS_Face& F2,
|
||||
const Standard_Real TolAng = 1.0e-10);
|
||||
|
||||
//! Sorts in LF the Faces of S on the complexity of
|
||||
//! their surfaces
|
||||
//! Sorts in LF the Faces of S on the complexity of
|
||||
//! their surfaces
|
||||
//! (Plane,Cylinder,Cone,Sphere,Torus,other)
|
||||
Standard_EXPORT static void SortFaces(const TopoDS_Shape& S, TopTools_ListOfShape& LF);
|
||||
|
||||
//! Sorts in LF the Faces of S on the reverse
|
||||
//! complexity of their surfaces
|
||||
//! Sorts in LF the Faces of S on the reverse
|
||||
//! complexity of their surfaces
|
||||
//! (other,Torus,Sphere,Cone,Cylinder,Plane)
|
||||
Standard_EXPORT static void ReverseSortFaces(const TopoDS_Shape& S, TopTools_ListOfShape& LF);
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ class Geom_Curve;
|
||||
//! * From a surface and a wire.
|
||||
//!
|
||||
//! - A flag Inside is given, when this flag is True
|
||||
//! the wire is oriented to bound a finite area on
|
||||
//! the wire is oriented to bound a finite area on
|
||||
//! the surface.
|
||||
//!
|
||||
//! * From a face and a wire.
|
||||
@@ -176,7 +176,7 @@ public:
|
||||
//! Load the face.
|
||||
Standard_EXPORT void Init(const TopoDS_Face& F);
|
||||
|
||||
//! Creates the face from the surface. If Bound is
|
||||
//! Creates the face from the surface. If Bound is
|
||||
//! True a wire is made from the natural bounds.
|
||||
//! Accepts tolerance value (TolDegen) for resolution
|
||||
//! of degenerated edges.
|
||||
@@ -214,7 +214,7 @@ public:
|
||||
|
||||
protected:
|
||||
private:
|
||||
//! Reorient the current face if the boundary is not
|
||||
//! Reorient the current face if the boundary is not
|
||||
//! finite.
|
||||
Standard_EXPORT void CheckInside();
|
||||
|
||||
|
||||
@@ -38,8 +38,8 @@ class TopoDS_Wire;
|
||||
//!
|
||||
//! - any number of vertices.
|
||||
//!
|
||||
//! When a point or vertex is added to the polygon if
|
||||
//! it is identic to the previous point no edge is
|
||||
//! When a point or vertex is added to the polygon if
|
||||
//! it is identic to the previous point no edge is
|
||||
//! built. The method added can be used to test it.
|
||||
class BRepLib_MakePolygon : public BRepLib_MakeShape
|
||||
{
|
||||
@@ -79,7 +79,7 @@ public:
|
||||
|
||||
Standard_EXPORT void Add(const TopoDS_Vertex& V);
|
||||
|
||||
//! Returns True if the last vertex or point was
|
||||
//! Returns True if the last vertex or point was
|
||||
//! successfully added.
|
||||
Standard_EXPORT Standard_Boolean Added() const;
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user