b3113854fe5a09c472d61d3d86ebb2b60d98790e
[occt.git] / src / AIS / AIS_Drawer.cdl
1 -- Created on: 1992-09-18
2 -- Created by: Odile Olivier
3 -- Copyright (c) 1992-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21
22
23 class Drawer from AIS inherits Drawer from Prs3d
24
25         ---Purpose: 
26         -- A framework to manage display attributes of interactive objects.
27         -- An interactive object can have a certain number of
28         -- display attributes specific to it. These include
29         -- visualization mode, color, material
30         -- and so on. To deal with this information, the
31         -- interactive context has a Drawer attribute manager
32         -- which is valid by default for the objects it
33         -- controls.   When an interactive object is visualized, the
34         -- required graphic display attributes are first taken from
35         -- its own Drawer if it has the ones required, or from the
36         -- context drawer for those it does not have them.
37         -- The set of display attributes of an interactive object is
38         -- stocked in an AIS_Drawer, which is, in fact, a
39         -- Prs3d_Drawer with the possibility of a link to another
40         -- display attribute manager. This drawer then manages
41         -- the stocked graphic display attributes by specifying
42         -- how the presentation algorithms compute the
43         -- presentation of a specific kind of object. These
44         -- factors involved include color, width and type of line,
45         -- and maximal chordal deviation. The Drawer includes
46         -- instances of the aspect classes providing the default
47         -- values for them.
48         -- Prs3d_Drawer completes   AIS_Drawer by adding
49         -- functions for setting deviation angle and deviation
50         -- coefficient in presentations using hidden line removal.
51         
52 uses
53     Drawer from Prs3d,
54     DatumAspect from Prs3d,
55     LineAspect from Prs3d,
56     TextAspect from Prs3d,
57     PointAspect from Prs3d,
58     ShadingAspect from Prs3d,
59     IsoAspect from Prs3d,
60     LengthAspect from Prs3d,
61     AngleAspect from Prs3d,
62     PlaneAspect from Prs3d,
63     RadiusAspect from Prs3d,
64     ArrowAspect from Prs3d,
65     TypeOfDeflection from Aspect,
66     NameOfColor from Quantity,
67     PlaneAngle from Quantity,
68     Length from Quantity
69
70 is
71     Create returns mutable Drawer from AIS;
72          ---Purpose:
73          -- Constructs an empty attribute management framework.   
74     TypeOfDeflection(me) returns TypeOfDeflection from Aspect
75     is redefined static;
76          --- Purpose:
77          -- Returns the type of chordal deflection: relative to the
78          -- size of the object or absolute.  
79     
80     MaximalChordialDeviation (me) returns Length from Quantity
81          ---Purpose: Returns the maximal chordal deviation. The default
82          -- value is 0.1. Drawings of curves or patches are
83          -- made with respect to an absolute maximal chordal deviation.
84     is redefined static;
85             
86
87 ------------------------------------------------------------                                                               
88     SetDeviationCoefficient(me: mutable) ;
89          ---Purpose: Sets the hasOwnDeviationCoefficient flag to Standard_False 
90          ---C++: inline
91
92     SetHLRDeviationCoefficient(me: mutable) ;
93          ---Purpose: Sets the deviation coefficient aCoefficient for
94          -- removal of hidden lines created by different
95          -- viewpoints in different presentations. The Default value is 0.02.
96          ---C++: inline
97          
98     SetDeviationAngle(me: mutable) ;
99          ---Purpose: Sets the hasOwnDeviationAngle flag to Standard_False 
100          ---C++: inline
101
102     SetHLRAngle(me: mutable) ;
103          ---Purpose: Sets the angle of maximum chordal deviation for
104          -- removal of hidden lines created by different viewpoints 
105          -- in different presentations. The default value is 20*PI/180.
106          ---C++: inline
107                     
108     SetDeviationCoefficient(me: mutable; aCoefficient: Real from Standard )   
109          ---Purpose: Sets the hasOwnDeviationCoefficient flag to Standard_True,
110          --          sets myOwnDeviationCoefficient and  myPreviousDeviationCoefficient
111     is redefined static;
112     
113     SetHLRDeviationCoefficient(me: mutable; aCoefficient: Real from Standard )   
114          ---Purpose: Sets the hasOwnHLRDeviationCoefficient flag to Standard_True,
115          --          sets myOwnHLRDeviationCoefficient and  myPreviousHLRDeviationCoefficient
116     is redefined static;
117         
118     SetDeviationAngle(me: mutable; anAngle: Real from Standard )  is redefined ;
119          ---Purpose: Sets the hasOwnDeviationAngle flag to Standard_True,
120          --          sets myOwnDeviationAngle and  myPreviousDeviationAngle
121         
122     SetHLRAngle(me: mutable; anAngle: Real from Standard )   
123          ---Purpose: Sets the hasOwnHLRDeviationAngle flag to Standard_True,
124          --          sets myOwnHLRDeviationAngle and  myPreviousHLRDeviationAngle
125     is redefined static;
126
127     
128         
129     DeviationCoefficient(me) returns Real from Standard
130          ---Purpose: Drawings of curves or patches are made with respect
131          -- to a maximal chordal deviation. A Deviation coefficient
132          -- is used in the shading display mode. The shape is
133          -- seen decomposed into triangles. These are used to
134          -- calculate reflection of light from the surface of the
135          -- object. The triangles are formed from chords of the
136          -- curves in the shape. The deviation coefficient gives
137          -- the highest value of the angle with which a chord can
138          -- deviate from a tangent to a   curve. If this limit is
139          -- reached, a new triangle is begun.
140          -- This deviation is absolute and is set through the
141          -- method: SetMaximalChordialDeviation. The default value is 0.001.
142          -- In drawing shapes, however, you are allowed to ask
143          -- for a relative deviation. This deviation will be:
144          -- SizeOfObject * DeviationCoefficient.
145     is redefined static;
146     
147     HLRDeviationCoefficient(me) returns Real from Standard
148         ---Purpose: Returns the real number value of the HLR deviation
149         -- coefficient in this framework, if the flag
150         -- hasOwnHLRDeviationCoefficient is true.
151         -- If hasOwnHLRDeviationCoefficient is false, the
152         -- shape's HLR deviation coefficient is used.
153         -- A Deviation coefficient is used in the shading display
154         -- mode. The shape is seen decomposed into triangles.
155         -- These are used to calculate reflection of light from the
156         -- surface of the object.
157         -- The triangles are formed from chords of the curves in
158         -- the shape. The deviation coefficient give the highest
159         -- value of the angle with which a chord can deviate
160         -- from a tangent to a curve. If this limit is reached, a
161         -- new triangle is begun.
162         -- To find the hidden lines, hidden line display mode
163         -- entails recalculation of the view at each different
164         -- projector perspective.
165         -- Since hidden lines entail calculations of more than
166         -- usual complexity to decompose them into these
167         -- triangles, a deviation coefficient allowing greater
168         -- tolerance is used. This increases efficiency in calculation.
169         -- The Default value is 0.02.
170     is redefined static;   
171     
172     
173     DeviationAngle(me) returns Real from Standard
174         ---Purpose: Returns myOwnDeviationAngle if hasOwnDeviationAngle is True
175         --          else gets myDeviationAngle field from Prs3d_Drawer 
176     is redefined;
177                 
178     HLRAngle(me) returns Real from Standard
179         ---Purpose: Returns the real number value of the deviation angle
180         -- in hidden line removal views. The default value is 20*PI/180.
181         is redefined static;              
182     
183     
184     PreviousDeviationCoefficient(me) returns Real from Standard
185         ---Purpose: Saves the previous value used for the chordal
186         -- deviation coefficient. The default value is 0.1.
187         ---C++: inline
188     is static;          
189   
190     PreviousHLRDeviationCoefficient(me) returns Real from Standard
191         ---Purpose: returns myPreviousHLRDeviationCoefficient
192         ---C++: inline
193     is static;
194
195     PreviousDeviationAngle(me) returns Real from Standard
196         ---Purpose: returns myPreviousDeviationAngle
197         ---C++: inline
198     is  static;
199
200     PreviousHLRDeviationAngle(me) returns Real from Standard
201         ---Purpose: returns myPreviousHLRDeviationAngle
202         ---C++: inline 
203     is  static;
204     
205     IsOwnDeviationCoefficient(me) returns Boolean from Standard;
206         ---Purpose: Returns true if the there is a local setting for deviation
207         -- coefficient in this framework for a specific interactive object.
208         ---C++: inline
209              
210     IsOwnHLRDeviationCoefficient(me) returns Boolean from Standard;
211         ---Purpose: Returns true if the there is a setting for HLR deviation
212         -- coefficient in this framework for a specific interactive object.
213         ---C++: inline
214                                                                
215     IsOwnDeviationAngle(me) returns Boolean from Standard;
216         ---Purpose: Returns true if the there is a local setting for deviation
217         -- angle in this framework for a specific interactive object.
218         ---C++: inline
219
220     IsOwnHLRDeviationAngle(me) returns Boolean from Standard;
221         ---Purpose: Returns true if the there is a setting for HLR deviation
222         -- angle in this framework for a specific interactive object.
223         ---C++: inline
224
225     Discretisation(me) returns Integer from Standard
226     is redefined static;
227         ---Purpose: Draws algorithms using discretisation, a default
228         -- number of points has been set to 17. You can use the
229         -- method Prs3d_Drawer_SetDiscretisation to change this value. 
230     
231     MaximalParameterValue(me) returns Real from Standard
232     is redefined static;
233         ---Purpose:
234         -- Sets the maximum value allowed for the first and last
235         -- parameters of an infinite curve. By default, this value is 500000.
236     
237     IsoOnPlane(me) returns Boolean from Standard 
238         ---Purpose: returns True if the drawing of isos on planes is enabled.
239     is redefined static;
240
241
242 -- 
243 -- Attributes for the U Isoparametric lines of patches.
244 --    
245     UIsoAspect (me:mutable) returns mutable IsoAspect from Prs3d
246          ---Purpose: Defines the attributes which are used when drawing an 
247          --          U isoparametric curve of a face. Defines the number
248          --          of U isoparametric curves to be drawn for a single face.
249          --          The LineAspect for U isoparametric lines can be edited
250          --          (methods SetColor, SetTypeOfLine, SetWidth, SetNumber)
251          --          The default values are:
252          --          COLOR       : Quantity_NOC_GRAY75
253          --          TYPE OF LINE: Aspect_TOL_SOLID
254          --          WIDTH       : 0.5
255          -- These attributes are used by the following algorithms:
256          --          Prs3d_WFDeflectionSurface 
257          --          Prs3d_WFDeflectionRestrictedFace
258
259
260     is redefined static;    
261     
262
263 -- Attributes for the V Isoparametric line of patches.
264
265
266     VIsoAspect (me:mutable) returns mutable IsoAspect from Prs3d
267          ---Purpose: Defines the attributes which are used when drawing an 
268          --          V isoparametric curve of a face. Defines the number
269          --          of V isoparametric curves to be drawn for a single face.
270          --          The LineAspect for V isoparametric lines can be edited
271          --          (methods SetColor, SetTypeOfLine, SetWidth, SetNumber)
272          --          The default values are:
273          --          COLOR       : Quantity_NOC_GRAY82
274          --          TYPE OF LINE: Aspect_TOL_SOLID
275          --          WIDTH       : 0.5
276          --          These attributes are used by the following algorithms:
277          --          Prs3d_WFDeflectionSurface 
278          --          Prs3d_WFDeflectionRestrictedFace
279     is redefined static;    
280     
281
282 -- Attributes for the free boundaries
283
284     FreeBoundaryAspect (me:mutable) returns mutable LineAspect from Prs3d
285          ---Purpose: Returns a link with
286          -- Prs3d_Drawer_FreeBoundaryAspect. Stores the
287          -- values for presentation of free boundaries, in other
288          -- words, boundaries which are not shared . The
289          -- LineAspect for the free boundaries can be edited. The
290          -- default values are: Color: Quantity_NOC_GREEN
291          -- Type of line: Aspect_TOL_SOLID Width: 1.
292          -- These attributes are used by Prs3d_WFShape.
293     is redefined static;
294     
295         
296     FreeBoundaryDraw(me) returns Boolean from Standard 
297          ---Purpose: returns True if the drawing of the free boundaries is enabled.
298     is redefined static;
299     
300
301 -- Attributes for the wires
302
303     WireAspect (me:mutable) returns mutable LineAspect from Prs3d
304          ---Purpose: Returns a link with Prs3d_Drawer_WireAspect.
305          -- This method provides wire aspect settings.
306          -- The LineAspect for wires can be edited. The default values are:
307          --          Color: Quantity_NOC_RED
308          --          Type of line: Aspect_TOL_SOLID
309          --          Width: 1.
310          --          These attributes are used by the following algorithms:
311          --          Prs3d_WFShape
312     is redefined static;    
313
314     HasLineAspect (me) returns Boolean from Standard 
315          ---Purpose: Returns true if the Interactive Object has a line
316          -- visualization aspect.
317          ---C++: inline 
318   is static;      
319
320     HasWireAspect (me) returns Boolean from Standard 
321          ---Purpose: Returns true if the Drawer has a wire aspect setting active.
322          ---C++: inline 
323     is static;      
324
325     WireDraw(me) returns Boolean from Standard 
326          ---Purpose: Returns a link   with Prs3d_Drawer_WireDraw. This
327          -- method returns true if drawing of wires is enabled.
328          -- The default setting is true.
329     is redefined static;
330     
331
332 -- Attributes for the unfree boundaries
333
334     UnFreeBoundaryAspect (me:mutable) returns mutable LineAspect from Prs3d
335          ---Purpose: Returns a link with
336          -- Prs3d_Drawer_UnFreeBoundaryAspect, which
337          -- provides settings for shared boundary line aspects.
338          -- The LineAspect for shared boundaries can be edited.
339          -- The default values are:
340          --          Color: Quantity_NOC_YELLOW
341          --          Type of line: Aspect_TOL_SOLID
342          --          Width: 1.
343          --          These attributes are used by the following algorithms:
344          --          Prs3d_WFShape
345     is redefined static;
346
347         
348     UnFreeBoundaryDraw(me) returns Boolean from Standard 
349          ---Purpose: Returns True if the drawing of the shared boundaries
350          -- is enabled. True is the default setting.
351     is redefined static;
352     
353
354 -- 
355 --  Attributes for the lines.
356 -- 
357
358     LineAspect(me:mutable) returns mutable LineAspect from Prs3d
359         ---Purpose:  Returns a link with Prs3d_Drawer_LineAspect,
360         -- which provides settings for line aspects. These
361         -- settings can be edited. The default values are:         
362         --          Color: Quantity_NOC_YELLOW
363         --          Type of line: Aspect_TOL_SOLID
364         --          Width: 1.
365         -- These attributes are used by the following algorithms:
366         --          Prs3d_Curve
367         --          Prs3d_Line
368         --          Prs3d_HLRShape
369
370     is redefined static;
371     
372   
373
374     HasTextAspect(me) returns Boolean from Standard
375     is static;      
376         ---C++: inline     
377     TextAspect(me:mutable) returns mutable TextAspect from Prs3d
378     --          
379     --          Color: Quantity_NOC_YELLOW
380     is redefined static;                            
381
382     LineArrowDraw(me) returns Boolean from Standard 
383         ---Purpose: Returns True if the drawing of an arrow at the end of
384         -- each line is enabled. The default setting is False.
385     is redefined static;
386     
387     ArrowAspect(me:mutable) returns mutable ArrowAspect from Prs3d 
388     is redefined static;
389     
390     
391 -- -- 
392 --  Attributes for the points
393 -- 
394     PointAspect(me:mutable) returns mutable PointAspect from Prs3d
395         ---Purpose:  Returns the point aspect setting. The default values
396         -- are:        Color: Quantity_NOC_YELLOW
397         --          Type of marker: Aspect_TOM_PLUS
398         --          Scale: 1.
399         --          These attributes are used by the following algorithms:
400         --          Prs3d_Point
401     is redefined static;
402
403     HasPointAspect (me) returns Boolean from Standard 
404         ---Purpose: Returns true if the Drawer has a point aspect setting active. 
405     is static;      
406         ---C++: inline 
407     
408     
409 --  Attributes for the faces:
410 --  
411     ShadingAspect (me:mutable) returns mutable ShadingAspect from Prs3d
412         ---Purpose:
413         -- Returns a link with Prs3d_Drawer_ShadingAspect,
414         -- which provides settings for shading aspects.
415         -- These settings can be edited. The default values are:
416         --    Color: Quantity_NOC_YELLOW
417         --          Material: Graphic3d_NOM_BRASS
418         -- hading aspect is obtained through decomposition of
419         -- 3D faces into triangles, each side of each triangle
420         -- being a chord of the corresponding curved edge in
421         -- the face. Reflection of light in each projector
422         -- perspective is then calculated for each of the
423         -- resultant triangular planes.
424     is redefined static;
425
426     HasShadingAspect (me) returns Boolean from Standard 
427         ---C++: inline 
428         ---Purpose: Returns True if the   Drawer has shading aspect active.
429     is static;      
430         
431     ShadingAspectGlobal(me) returns Boolean from Standard
432     is redefined static;  
433         ---Purpose: Provides the attributes for hidden line removal.
434
435
436     DrawHiddenLine(me) returns Boolean from Standard 
437         ---Purpose: Returns Standard_True if the hidden lines are to be drawn.
438         --          By default the hidden lines are not drawn.
439     is redefined static;
440     
441     HiddenLineAspect(me:mutable) returns mutable LineAspect from Prs3d
442         ---Purpose: Returns a link with
443         -- Prs3d_Drawer_HiddenLineAspect, which provides
444         -- settings for hidden line aspects.
445         -- These settings can be edited. The default values are:
446         --          Color: Quantity_NOC_YELLOW
447         --          Type of line: Aspect_TOL_DASH
448         --          Width: 1.
449     is redefined static;
450
451     
452     SeenLineAspect(me:mutable) returns mutable LineAspect from Prs3d
453         ---Purpose: Returns a link with
454         -- Prs3d_Drawer_SeenLineAspect, which provides
455         -- settings for seen line aspects.
456         -- These settings can be edited. The default values are:
457         --          Color: Quantity_NOC_YELLOW
458         --          Type of line: Aspect_TOL_SOLID
459         --          Width: 1.
460     is redefined static;
461     
462   
463     HasPlaneAspect(me) returns Boolean from Standard;
464         ---C++: inline
465
466     PlaneAspect(me:mutable) returns mutable PlaneAspect from Prs3d
467     is redefined static;
468         ---Purpose:
469         -- Returns a link with Prs3d_Drawer_PlaneAspect.
470         -- This method provides settings for the appearance of planes.
471
472
473     VectorAspect(me:mutable) returns mutable LineAspect from Prs3d
474         ---Purpose: Returns a link with Prs3d_Drawer_VectorAspect,
475         -- which provides settings for the appearance of vectors.
476         -- These settings can be edited. The default values are:
477         --          Color: Quantity_NOC_SKYBLUE
478         --          Type of line: Aspect_TOL_SOLID Width: 1.
479     is redefined static;
480     
481     SetFaceBoundaryDraw (me           : mutable;
482                          theIsEnabled : Boolean from Standard)
483     is redefined static;
484         ---Purpose: Enables or disables drawing of face boundaries for shading presentations.
485         -- The method sets drawing flag owned by the drawer that will be used during
486         -- visualization instead of the one set in link.
487         -- theIsEnabled is a boolean flag indicating whether the face boundaries should be
488         -- drawn or not.
489
490     IsFaceBoundaryDraw (me) returns Boolean from Standard
491     is redefined static;
492         ---Purpose: Checks whether the drawing of face boundaries is enabled or not.
493
494     SetFaceBoundaryAspect (me        : mutable;
495                            theAspect : LineAspect from Prs3d)
496     is redefined static;
497         ---Purpose: Sets line aspect for face boundaries.
498         -- The method sets line aspect owned by the drawer that will be used during
499         -- visualization instead of the one set in link.
500         -- theAspect is the line aspect that determines the look of the face boundaries.
501
502     FaceBoundaryAspect (me : mutable) returns mutable LineAspect from Prs3d
503     is redefined static;
504         ---Purpose: Returns line aspect of face boundaries.
505
506     IsOwnFaceBoundaryDraw (me) returns Boolean from Standard
507     is static;
508         ---Purpose: Returns true if the drawer has its own attribute for 
509         -- "draw face boundaries" flag that overrides the one in the link.
510         ---C++: inline
511
512     IsOwnFaceBoundaryAspect (me) returns Boolean from Standard
513     is static;
514         ---Purpose: Returns true if the drawer has its own attribute for 
515         -- face boundaries aspect that overrides the one in the link.
516         ---C++: inline
517 --
518 --  Attributes for the presentation of a Datum.
519 --  
520
521     HasDatumAspect(me) returns Boolean from Standard;
522         ---C++: inline 
523
524     DatumAspect(me:mutable) returns mutable DatumAspect from Prs3d
525         ---Purpose: Returns a link with Prs3d_Drawer_DatumAspect,
526         -- which provides settings for the appearance of datums.
527         -- These settings can be edited. The default values for
528         -- the three axes are:
529         --          Color: Quantity_NOC_PEACHPUFF
530         --          Type of line: Aspect_TOL_SOLID Width: 1.
531     is redefined static;
532
533 --
534 --  Attributes for the presentation of a Length.
535 --  
536
537     LengthAspect(me:mutable) returns mutable LengthAspect from Prs3d
538     ---Purpose: Returns a link with Prs3d_Drawer_LengthAspect,
539 -- which provides settings for the appearance of lengths.
540     is redefined static;
541
542     HasLengthAspect (me) returns Boolean from Standard 
543         ---C++: inline 
544         ---Purpose: Returns true if the Drawer has a length aspect setting active.
545     is static;      
546      
547 --
548 --  Attributes for the presentation of a Angle.
549 --  
550
551     AngleAspect(me:mutable) returns mutable AngleAspect from Prs3d
552         ---Purpose: Returns a link with Prs3d_Drawer_AngleAspect,
553         -- which provides settings for lines used to display angles.
554     is redefined static;
555
556     HasAngleAspect (me) returns Boolean from Standard 
557         ---C++: inline 
558         ---Purpose: Returns true if the Drawer has an angle aspect
559         -- setting active.
560     is static;      
561
562 --
563 --  Attributes for the presentation of a Radius.
564 --  
565
566     RadiusAspect(me) returns mutable RadiusAspect from Prs3d
567         ---Purpose: Returns a link with Prs3d_Drawer_RadiusAspect,
568         -- which provides settings for lines which serve to display radii.
569     is redefined static;
570     
571 -- Attributes for the sections
572
573     SectionAspect (me:mutable) returns mutable LineAspect from Prs3d
574         ---Purpose: Returns a link with Prs3d_Drawer_SectionAspect,
575         -- which provides settings for wires which highlight sections.
576         -- The LineAspect for the wire can be edited.
577         -- The default values are:
578         -- Color: Quantity_NOC_ORANGE
579         -- Type of line: Aspect_TOL_SOLID
580         -- Width: 1.
581         -- These attributes are used by the following algorithms:
582         -- Prs3d_WFShape
583     is redefined static;    
584
585     Link(me:mutable) returns any Drawer from Prs3d
586     is static;
587         ---C++: return const&
588
589     HasLink(me) returns Boolean from Standard
590     is static;
591         ---C++: inline
592
593     Link (me:mutable; aDrawer: Drawer from Prs3d)     
594     is static;
595         ---C++: inline
596
597     
598     ClearLocalAttributes(me:mutable) is virtual;    
599         ---Purpose: Removes attributes stored in a Local Context.    
600     
601     WasLastLocal(me) returns Boolean from Standard;
602         ---C++: inline
603         ---Purpose: Returns true if the last called attribute was local; false if it was global.
604     
605     HasLocalAttributes(me) returns Boolean from Standard;
606         ---C++: inline
607         ---Purpose:
608         -- Returns true if a Local Context has stored attributes
609         -- for Interactive Objects.
610
611 fields
612     myLink                           : Drawer from Prs3d;
613     hasLocalAttributes               : Boolean from Standard;           
614     
615     myhasOwnDeviationCoefficient     : Boolean from Standard;
616     myOwnDeviationCoefficient        : Real from Standard;
617     myPreviousDeviationCoefficient   : Real from Standard;
618     
619     myhasOwnHLRDeviationCoefficient  : Boolean from Standard;
620     myOwnHLRDeviationCoefficient     : Real from Standard;
621     myPreviousHLRDeviationCoefficient: Real from Standard;
622     
623     myhasOwnDeviationAngle           : Boolean from Standard;
624     myOwnDeviationAngle              : Real from Standard;
625     myPreviousDeviationAngle         : Real from Standard;
626     
627     myhasOwnHLRDeviationAngle        : Boolean from Standard;
628     myOwnHLRDeviationAngle           : Real from Standard; 
629     myPreviousHLRDeviationAngle      : Real from Standard;              
630
631         myHasOwnFaceBoundaryDraw         : Boolean from Standard;
632 end Drawer;
633  
634