0025129: Visualization - add interactive object for Points Cloud objects
[occt.git] / src / StdPrs / StdPrs_WFDeflectionRestrictedFace.cdl
1 -- Created on: 1995-08-07
2 -- Created by: Modelistation
3 -- Copyright (c) 1995-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
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.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 class WFDeflectionRestrictedFace from StdPrs
18           
19 inherits Root from Prs3d
20          
21
22         ---Purpose: A framework to provide display of U and V
23         -- isoparameters of faces, while allowing you to impose
24         -- a deflection on them.
25       -- Computes the wireframe presentation of faces with
26       -- restrictions by displaying a given number of U and/or
27       -- V isoparametric curves. The isoparametric curves are
28       -- drawn with respect to a maximal chordial deviation.
29       -- The presentation includes the restriction curves.
30
31 uses
32     Box                  from Bnd,
33     HSurface             from BRepAdaptor,
34     Presentation         from Prs3d,
35     Drawer               from Prs3d,
36     Length               from Quantity, 
37     NListOfSequenceOfPnt from Prs3d
38
39 is
40     Add(myclass; aPresentation: Presentation from Prs3d; 
41                  aFace        : HSurface     from BRepAdaptor;
42                  aDrawer      : Drawer       from Prs3d);
43         ---Purpose: Defines a display featuring U and V isoparameters.
44         -- Adds the surface aFace to the
45         -- StdPrs_WFRestrictedFace algorithm. This face is
46         -- found in a shape in the presentation object
47         -- aPresentation, and its display attributes - in
48         -- particular, the number of U and V isoparameters - are
49         -- set in the attribute manager aDrawer.
50         -- aFace is BRepAdaptor_HSurface surface created
51         -- from a face in a topological shape.   which is passed
52         -- as an argument through the
53         -- BRepAdaptor_HSurface surface created from it.
54         -- This is what allows the topological face to be treated
55         -- as a geometric surface.       
56     
57     AddUIso(myclass; aPresentation: Presentation from Prs3d; 
58                      aFace        : HSurface     from BRepAdaptor;
59                      aDrawer      : Drawer       from Prs3d);
60         ---Purpose:     Defines a display featuring U isoparameters
61         -- respectively. Add the surface aFace to the
62         -- StdPrs_WFRestrictedFace algorithm. This face
63         -- is found in a shape in the presentation object
64         -- aPresentation, and its display attributes - in
65         -- particular, the number of U isoparameters -
66         -- are set in the attribute manager aDrawer.
67         -- aFace is BRepAdaptor_HSurface surface
68         -- created from a face in a topological shape.   which
69         -- is passed to the function as an argument through
70         -- the BRepAdaptor_HSurface surface created from
71         -- it. This is what allows the topological face to be
72         -- treated as a geometric surface.
73         
74     AddVIso(myclass; aPresentation: Presentation from Prs3d; 
75                      aFace        : HSurface     from BRepAdaptor;
76                      aDrawer      : Drawer       from Prs3d);
77         ---Purpose:     Defines a display featuring V isoparameters
78         -- respectively. Add the surface aFace to the
79         -- StdPrs_WFRestrictedFace algorithm. This face
80         -- is found in a shape in the presentation object
81         -- aPresentation, and its display attributes - in
82         -- particular, the number of V isoparameters -
83         -- are set in the attribute manager aDrawer.
84         -- aFace is BRepAdaptor_HSurface surface
85         -- created from a face in a topological shape.   which
86         -- is passed to the function as an argument through
87         -- the BRepAdaptor_HSurface surface created from
88         -- it. This is what allows the topological face to be
89         -- treated as a geometric surface.
90     
91     Add(myclass;  aPresentation: Presentation from Prs3d; 
92                   aFace        : HSurface     from BRepAdaptor;
93                   DrawUIso, DrawVIso: Boolean from Standard;
94                   Deflection   : Length       from Quantity;
95                   NBUiso,NBViso: Integer      from Standard;
96                   aDrawer      : Drawer       from Prs3d; 
97                   Curves       : out NListOfSequenceOfPnt from Prs3d);
98         ---Purpose: Defines a display of a delection-specified face. The
99         -- display will feature U and V isoparameters.
100         -- Adds the topology aShape to the
101         -- StdPrs_WFRestrictedFace algorithm. This shape is
102         -- found in the presentation object aPresentation, and
103         -- its display attributes - except the number of U and V
104         -- isoparameters - are set in the attribute manager aDrawer.
105         -- The function sets the number of U and V
106         -- isoparameters, NBUiso and NBViso, in the shape. To
107         -- do this, the arguments DrawUIso and DrawVIso must be true.
108         -- aFace is BRepAdaptor_HSurface surface created
109         -- from a face in a topological shape.   which is passed
110         -- as an argument through the
111         -- BRepAdaptor_HSurface surface created from it.
112         -- This is what allows the topological face to be treated
113         -- as a geometric surface.  
114         -- Curves give a sequence of face curves, it is used if the PrimitiveArray  
115         -- visualization approach is activated (it is activated by default).
116
117     AddBox (myclass;
118             thePrs    : Presentation from Prs3d;
119             theBndBox : Box          from Bnd;
120             theDrawer : Drawer       from Prs3d);
121     ---Purpose: Adds box as polyline to the presentation object
122
123     Match(myclass; X,Y,Z    : Length   from Quantity;
124                    aDistance: Length   from Quantity;
125                    aFace    : HSurface from BRepAdaptor;
126                    aDrawer  : Drawer   from Prs3d)
127     returns Boolean from Standard;
128                  
129     MatchUIso(myclass; X,Y,Z    : Length   from Quantity;
130                        aDistance: Length   from Quantity;
131                        aFace    : HSurface from BRepAdaptor;
132                        aDrawer  : Drawer   from Prs3d)
133     returns Boolean from Standard;
134                  
135     MatchVIso(myclass; X,Y,Z    : Length   from Quantity;
136                        aDistance: Length   from Quantity;
137                        aFace    : HSurface from BRepAdaptor;
138                        aDrawer  : Drawer   from Prs3d)
139     returns Boolean from Standard;
140                  
141
142     Match(myclass;X,Y,Z        : Length       from Quantity;
143                   aDistance    : Length       from Quantity;
144                   aFace        : HSurface     from BRepAdaptor; 
145                   aDrawer      : Drawer       from Prs3d;
146                   DrawUIso, DrawVIso: Boolean from Standard;
147                   aDeflection  : Length       from Quantity;
148                   NBUiso,NBViso: Integer      from Standard)
149
150     returns Boolean from Standard;        
151                    
152 end WFDeflectionRestrictedFace;
153