Commit | Line | Data |
---|---|---|

b311480e | 1 | -- Created on: 1992-08-11 |

2 | -- Created by: Remi LEQUETTE | |

3 | -- Copyright (c) 1992-1999 Matra Datavision | |

973c2be1 | 4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |

b311480e | 5 | -- |

973c2be1 | 6 | -- This file is part of Open CASCADE Technology software library. |

b311480e | 7 | -- |

d5f74e42 | 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 | |

973c2be1 | 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. | |

b311480e | 13 | -- |

973c2be1 | 14 | -- Alternatively, this file may be used under the terms of Open CASCADE |

15 | -- commercial license or contractual agreement. | |

7fd59977 | 16 | |

17 | class EdgeFaceTransition from TopCnx | |

18 | ||

19 | ---Purpose: TheEdgeFaceTransition is an algorithm to compute | |

20 | -- the cumulated transition for interferences on an | |

21 | -- edge. | |

22 | ||

23 | uses | |

24 | ||

25 | Boolean from Standard, | |

26 | Real from Standard, | |

27 | Integer from Standard, | |

28 | ||

29 | Pnt from gp, | |

30 | Dir from gp, | |

31 | ||

32 | State from TopAbs, | |

33 | Orientation from TopAbs, | |

34 | ||

35 | CurveTransition from TopTrans | |

36 | ||

37 | is | |

38 | Create returns EdgeFaceTransition from TopCnx; | |

39 | ---Purpose: Creates an empty algorithm. | |

40 | ||

41 | Reset( me : in out; | |

42 | Tgt : Dir from gp; -- Tangent at this point | |

43 | Norm : Dir from gp; -- Normal vector at this point | |

44 | Curv : Real from Standard) -- Curvature at this point | |

45 | ---Purpose: Initialize the algorithm with the local | |

46 | -- description of the edge. | |

47 | is static; | |

48 | ||

49 | Reset( me : in out; | |

50 | Tgt : in Dir from gp) -- Tangent at this point | |

51 | ---Purpose: Initialize the algorithm with a linear Edge. | |

52 | is static; | |

53 | ||

54 | AddInterference(me : in out; | |

55 | Tole : Real from Standard; -- Cosine tolerance | |

56 | Tang : Dir from gp; -- Tangent on curve for this point | |

57 | Norm : Dir from gp; -- Normal vector at this point | |

58 | Curv : Real from Standard; -- Curvature at this point | |

59 | Or : Orientation from TopAbs; -- Orientation on the curve | |

60 | Tr : Orientation from TopAbs; -- Transition | |

61 | BTr : Orientation from TopAbs) -- Boundary transition | |

62 | ---Purpose: Add a curve element to the boundary. Or is the | |

63 | -- orientation of the interference on the boundary | |

64 | -- curve. Tr is the transition of the interference. | |

65 | -- BTr is the boundary transition of the | |

66 | -- interference. | |

67 | is static; | |

68 | ||

69 | Transition(me) returns Orientation from TopAbs | |

70 | ---Purpose: Returns the current cumulated transition. | |

71 | is static; | |

72 | ||

73 | BoundaryTransition(me) returns Orientation from TopAbs | |

74 | ---Purpose: Returns the current cumulated BoundaryTransition. | |

75 | is static; | |

76 | ||

77 | fields | |

78 | myCurveTransition : CurveTransition from TopTrans; | |

79 | nbBoundForward : Integer from Standard; | |

80 | nbBoundReversed : Integer from Standard; | |

81 | ||

82 | end EdgeFaceTransition; |