1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
-- File: LProp.cdl
-- Created: Wed Mar 27 16:40:20 1991
-- Author: Michel CHAUVAT
-- <mca@topsn3>
---Copyright: Matra Datavision 1991, 1992
package LProp
---Purpose: Handles local properties of curves and surfaces.
-- Given a curve and a parameter value the following computations
-- are available :
-- - point,
-- - derivatives,
-- - tangent,
-- - normal,
-- - curvature,
-- - centre of curvature,
-- - Locals curvature's extremas,
-- - Points of inflection,
-- Given a surface and 2 parameters the following computations
-- are available :
-- - for each parameter:
-- - derivatives,
-- - tangent line,
-- - centre of curvature,
-- - point,
-- - normal line,
-- - maximum and minimum curvatures,
-- - principal directions of curvature,
-- - mean curvature,
-- - Gaussian curvature.
---Level : Public.
-- All methods of all classes will be public.
uses Standard, gp, math, TCollection, TColStd, GeomAbs
is
enumeration Status is Undecided , Undefined, Defined, Computed;
enumeration CIType is Inflection, MinCur , MaxCur;
---Purpose:
-- Identifies the type of a particular point on a curve:
-- - LProp_Inflection: a point of inflection
-- - LProp_MinCur: a minimum of curvature
-- - LProp_MaxCur: a maximum of curvature.
exception BadContinuity inherits Failure;
exception NotDefined inherits Failure;
deferred generic class CurveTool;
---Purpose: The template class used in CLProps.
deferred generic class SurfaceTool;
---Purpose: The template class used in SLProps.
generic class CLProps;
---Purpose: Computation of local properties of a curve.
generic class SLProps;
---Purpose: Computation of local properties of a surface.
class CurAndInf;
---Purpose: Stores the parameters of a curve 2d or 3d corresponding
-- to the curvature's extremas and the inflection's points.
class AnalyticCurInf;
---Purpose: Computes the locals extremas of curvature of a gp curve.
private generic class FuncCurExt;
private generic class FuncCurNul;
generic class NumericCurInf, FCurExt, FCurNul;
---Purpose: Computes the locals extremas of curvature and the
-- inflections of a bounded curve in 2d.
private class SequenceOfCIType instantiates Sequence from TCollection
(CIType from LProp);
end LProp;
|