1 -- Created on: 1993-01-09
2 -- Created by: CKY / Contract Toubro-Larsen ( TCD )
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 DrawingWithRotation from IGESDraw inherits IGESEntity
19 ---Purpose: defines IGESDrawingWithRotation, Type <404> Form <1>
20 -- in package IGESDraw
22 -- Permits rotation, in addition to transformation and
23 -- scaling, between the view and drawing coordinate systems
27 HArray1OfIGESEntity from IGESData,
28 HArray1OfReal from TColStd,
29 ViewKindEntity from IGESData,
30 HArray1OfViewKindEntity from IGESDraw,
34 HArray1OfXY from TColgp
36 raises DimensionMismatch, OutOfRange
40 Create returns DrawingWithRotation;
42 -- Specific Methods pertaining to the class
45 allViews : HArray1OfViewKindEntity;
46 allViewOrigins : HArray1OfXY;
47 allOrientationAngles : HArray1OfReal;
48 allAnnotations : HArray1OfIGESEntity)
49 raises DimensionMismatch;
50 ---Purpose : This method is used to set the fields of the class
51 -- DrawingWithRotation
52 -- - allViews : Pointers to View entities
53 -- - allViewOrigins : Origin coords of transformed views
54 -- - allOrientationAngles : Orientation angles of transformed views
55 -- - allAnnotations : Pointers to Annotation entities
56 -- raises exception if Lengths of allViews, allViewOrigins and
57 -- allOrientationAngles are not same.
59 NbViews (me) returns Integer;
60 ---Purpose : returns the number of view pointers in <me>
62 ViewItem (me; Index : Integer) returns ViewKindEntity
64 ---Purpose : returns the View entity indicated by Index
65 -- raises an exception if Index <= 0 or Index > NbViews().
67 ViewOrigin (me; Index : Integer) returns Pnt2d
69 ---Purpose : returns the Drawing space coordinates of the origin of the
70 -- Transformed view indicated by Index
71 -- raises an exception if Index <= 0 or Index > NbViews().
73 OrientationAngle (me; Index : Integer) returns Real
75 ---Purpose : returns the Orientation angle for the Transformed view
77 -- raises an exception if Index <= 0 or Index > NbViews().
79 NbAnnotations (me) returns Integer;
80 ---Purpose : returns the number of Annotation entities in <me>
82 Annotation (me; Index : Integer) returns IGESEntity
84 ---Purpose : returns the Annotation entity in this Drawing, indicated by Index
85 -- raises an exception if Index <= 0 or Index > NbAnnotations().
87 -- infered informations
89 ViewToDrawing(me; NumView : Integer; ViewCoords : XYZ)
91 -- returns the Transformation of a View from View space to Drawing
94 DrawingUnit (me; value : out Real) returns Boolean;
95 ---Purpose : Returns the Drawing Unit Value if it is specified (by a
96 -- specific property entity)
97 -- If not specified, returns False, and val as zero :
98 -- unit to consider is then the model unit in GlobalSection
100 DrawingSize (me; X,Y : out Real) returns Boolean;
101 ---Purpose : Returns the Drawing Size if it is specified (by a
102 -- specific property entity)
103 -- If not specified, returns False, and X,Y as zero :
104 -- unit to consider is then the model unit in GlobalSection
109 -- Class : IGESDraw_DrawingWithRotation
111 -- Purpose : Declaration of the variables specific to a
112 -- DrawingWithRotation Entity.
114 -- Reminder : A DrawingWithRotation Entity is defined by :
115 -- - Pointers to View entities
116 -- - Origin coordinates of transformed views
117 -- - Orientation angles of transformed views
118 -- - Pointers to Annotation entities
121 theViews : HArray1OfViewKindEntity;
123 theViewOrigins : HArray1OfXY;
125 theOrientationAngles : HArray1OfReal;
127 theAnnotations : HArray1OfIGESEntity;
129 end DrawingWithRotation;