1 -- Created on: 1993-05-12
2 -- Created by: Didier PIFFAULT
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
8 -- This library is free software; you can redistribute it and/or modify it under
9 -- the terms of the GNU Lesser General Public License version 2.1 as published
10 -- by the Free Software Foundation, with special exception defined in the file
11 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 -- distribution for complete text of the license and disclaimer of any warranty.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 class CircleTool from BRepMesh
19 ---Purpose: Create sort and destroy the circles used in
22 uses Boolean from Standard,
23 Integer from Standard,
27 ListOfInteger from BRepMesh,
28 CellFilter from BRepMesh,
29 CircleInspector from BRepMesh,
30 BaseAllocator from BRepMesh
32 is Create (theAlloc : in BaseAllocator from BRepMesh)
33 returns CircleTool from BRepMesh;
36 Create (numberOfComponents : in Integer from Standard;
37 theAlloc : in BaseAllocator from BRepMesh)
38 ---Purpose: Constructs a CircleTool with the maximal dimension
39 -- of the occuped space and an evaluation of the
41 returns CircleTool from BRepMesh;
43 Initialize (me : in out;
44 numberOfComponents : in Integer from Standard)
45 ---Purpose: Constructs a CircleTool with the maximal dimension
46 -- of the occuped space and an evaluation of the
50 SetCellSize(me : in out;
51 theSize : in Real from Standard)
52 ---Purpose: Sets new size for cellfilter
55 SetCellSize(me : in out;
56 theXSize : in Real from Standard;
57 theYSize : in Real from Standard)
58 ---Purpose: Sets new size for cellfilter
61 SetMinMaxSize(me : in out;
62 theMin : in XY from gp;
63 theMax : in XY from gp)
64 ---Purpose: Sets min and max size for circle
68 theCirc : in Circ2d from gp;
69 theIndex : in Integer from Standard)
70 ---Purpose: Adds and binds circle to the tool.
75 p1, p2, p3 : in XY from gp;
76 theIndex : in Integer from Standard)
77 ---Purpose: Computes adds and binds circle to the tool.
78 returns Boolean from Standard is static;
81 theIndex : in Integer from Standard);
82 ---Purpose: Adds implicit zero circle
85 Delete (me : in out; theIndex : Integer from Standard)
86 ---Purpose: Deletes a circle from the tool.
90 Select (me : in out; thePnt : XY from gp)
91 ---Purpose: Select the circles which contains thePnt.
93 returns ListOfInteger from BRepMesh is static;
95 fields Tolerance : Real from Standard;
96 Allocator : BaseAllocator from BRepMesh;
97 CellFilter : CellFilter from BRepMesh;
98 Selector : CircleInspector from BRepMesh;
100 FaceMin : XY from gp;