0024428: Implementation of LGPL license
[occt.git] / src / Geom2d / Geom2d.cdl
1 -- Created on: 1993-03-24
2 -- Created by: JCV
3 -- Copyright (c) 1993-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
9 -- under the terms of the GNU Lesser General Public 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 package Geom2d
18
19         --- Purpose :
20         --  This package contains the definition of the geometric objects 
21         --  such as point, vector, axis placement, curves and the
22         --  description of the geometric transformations available 
23         --  for these objects.
24         --  All these entities are defined in 2D space.
25         --  This package gives the possibility :
26         --     . to create geometric objects,
27         --     . to have information about them,
28         --     . to modify these objects.
29         --  This package uses the services of the package gp (Geometric
30         --  processor) which describes non-persistent objects for algebraic
31         --  calculus and basic analytic geometry. The purpose of this package
32         --  is to create persistent geometric objects and to read geometric
33         --  information about these objects. Complexes geometric algorithmes
34         --  are not described in this package.     At construction time,
35         --  elementary verifications are done to verify that the objects
36         --  are coherents, but some verifications which require complex
37         --  algorithmes (for example to check that a curve has not null
38         --  length or does not self-intersect) must be done before the 
39         --  construction of the geometric objects. 
40
41
42 uses MMgt, GeomAbs, TColStd, gp, TColgp
43
44 is
45
46 exception UndefinedDerivative inherits DomainError  from  Standard;
47 exception UndefinedValue inherits DomainError   from  Standard ;
48
49
50
51   class Transformation;
52
53
54   deferred class Geometry;
55
56
57      deferred class Point;
58               class  CartesianPoint;
59
60
61      deferred class Vector;
62               class Direction;
63               class VectorWithMagnitude;
64      
65
66      class AxisPlacement;
67
68
69      deferred class Curve;
70
71               class Line;
72
73               deferred class Conic;
74                        class Circle;
75                        class Ellipse;
76                        class Hyperbola;
77                        class Parabola;
78
79               deferred class BoundedCurve;
80                        class BezierCurve;
81                        class BSplineCurve;
82                        class TrimmedCurve;
83
84               class  OffsetCurve;
85
86
87 end Geom2d;
88
89
90
91