1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-09 13:22:24 +03:00
Files
occt/src/ShapeAnalysis/ShapeAnalysis.cdl
ski ff8178ef85 0024784: Move documentation in CDL files to proper location
Mostly duplicated comments were removed and missing ones were moved
into dedicated class CDL files.
Some more duplicated comments were removed from CDL files.
Correction of merge
2014-05-29 16:06:49 +04:00

173 lines
6.0 KiB
Plaintext

-- Created on: 1998-06-03
-- Created by: data exchange team
-- Copyright (c) 1998-1999 Matra Datavision
-- Copyright (c) 1999-2014 OPEN CASCADE SAS
--
-- This file is part of Open CASCADE Technology software library.
--
-- This library is free software; you can redistribute it and/or modify it under
-- the terms of the GNU Lesser General Public License version 2.1 as published
-- by the Free Software Foundation, with special exception defined in the file
-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
-- distribution for complete text of the license and disclaimer of any warranty.
--
-- Alternatively, this file may be used under the terms of Open CASCADE
-- commercial license or contractual agreement.
package ShapeAnalysis
---Purpose: This package is intended to analyze geometrical objects
-- and topological shapes. Analysis domain includes both
-- exploring geometrical and topological properties of
-- shapes and checking their conformance to Open CASCADE requirements.
-- The directions of analysis provided by tools of this package are:
-- computing quantities of subshapes,
-- computing parameters of points on curve and surface,
-- computing surface singularities,
-- checking edge and wire consistency,
-- checking edges order in the wire,
-- checking face bounds orientation,
-- checking small faces,
-- analyzing shape tolerances,
-- analyzing of free bounds of the shape.
uses
gp,
TColStd,
TCollection,
TColgp,
Bnd,
Geom,
Geom2d,
GeomAdaptor,
Extrema,
IntRes2d,
TopAbs,
TopLoc,
TopoDS,
TopTools,
ShapeExtend,
Adaptor3d
is
class Geom;
class Curve;
class Surface;
class Edge;
class Wire;
class WireOrder;
class WireVertex;
class CheckSmallFace;
class Shell;
class ShapeTolerance;
--class OverlapEdges; now it is in package OverlapShape of Products
--- Container for keeping information about
-- overlapping edges
--class CheckCoincidenceTool; now it is in package OverlapShape of Products
---Tool for checking coincidence of faces and edges
-- Class intended for analyzing shape contents
class ShapeContents;
-- Classes intended for free bounds analysis
class FreeBounds;
class FreeBoundData;
class FreeBoundsProperties;
class TransferParameters;
class TransferParametersProj;
class SequenceOfFreeBounds instantiates
Sequence from TCollection (FreeBoundData from ShapeAnalysis);
class HSequenceOfFreeBounds instantiates
HSequence from TCollection (FreeBoundData from ShapeAnalysis,
SequenceOfFreeBounds from ShapeAnalysis);
class DataMapOfShapeListOfReal instantiates
DataMap from TCollection(Shape from TopoDS,
ListOfReal from TColStd,
ShapeMapHasher from TopTools);
--class SequenceOfOverlapEdges instantiates
--Sequence from TCollection (OverlapEdges from ShapeAnalysis);
-- now it is in package OverlapShape of Products
--class IndexedDataMapOfShapeSequenceOfOverlapEdges instantiates
--IndexedDataMap from TCollection(Shape from TopoDS,
--SequenceOfOverlapEdges from ShapeAnalysis,
--ShapeMapHasher from TopTools);
-- now it is in package OverlapShape of Products
OuterWire (face: Face from TopoDS) returns Wire from TopoDS;
---Purpose: Returns the outer wire on the face <Face>.
-- This is replacement of the method BRepTools::OuterWire
-- until it works badly.
-- Returns the first wire oriented as outer according to
-- FClass2d_Classifier. If none, last wire is returned.
TotCross2D(sewd: WireData from ShapeExtend; aFace: Face from TopoDS)
returns Real;
---Purpose: Returns a total area of 2d wire
ContourArea(theWire : Wire from TopoDS) returns Real;
--sewd: WireData from ShapeExtend) returns Real;
---Purpose: Returns a total area of 3d wire
IsOuterBound (face: Face from TopoDS) returns Boolean;
---Purpose: Returns True if <F> has outer bound.
---Remarks: This method checks only presence of outer bound, it does not
-- check mutual orientation of the bounds on a face
AdjustByPeriod(Val: Real; ToVal: Real; Period: Real)
returns Real;
---Purpose: Returns a shift required to move point
-- <Val> to the range [ToVal-Period/2,ToVal+Period/2].
-- This shift will be the divisible by Period.
-- Intended for adjusting parameters on periodic surfaces.
AdjustToPeriod(Val: Real; ValMin: Real; ValMax: Real)
returns Real;
---Purpose: Returns a shift required to move point
-- <Val> to the range [ValMin,ValMax].
-- This shift will be the divisible by Period
-- with Period = ValMax - ValMin.
-- Intended for adjusting parameters on periodic surfaces.
FindBounds (shape: Shape from TopoDS;
V1 : in out Vertex from TopoDS;
V2 : in out Vertex from TopoDS);
---Purpose: Finds the start and end vertices of the shape
-- Shape can be of the following type:
-- vertex: V1 and V2 are the same and equal to <shape>,
-- edge : V1 is start and V2 is end vertex (see ShapeAnalysis_Edge
-- methods FirstVertex and LastVertex),
-- wire : V1 is start vertex of the first edge, V2 is end vertex
-- of the last edge (also see ShapeAnalysis_Edge).
-- If wire contains no edges V1 and V2 are nullified
-- If none of the above V1 and V2 are nullified
---Remark: V1 and V2 can be of any orientation
GetFaceUVBounds(F: Face from TopoDS; Umin, Umax, Vmin, Vmax: out Real);
---Purpose: Computes exact UV bounds of all wires on the face
end ShapeAnalysis;