b311480e |
1 | // Created on: 1993-03-30 |
2 | // Created by: Laurent BUCHARD |
3 | // Copyright (c) 1993-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 | #include TheMultiLine_hxx |
18 | |
19 | #include <TColgp_Array1OfPnt.hxx> |
20 | #include <TColgp_Array1OfPnt2d.hxx> |
21 | #include <TColgp_Array1OfVec.hxx> |
22 | #include <TColgp_Array1OfVec2d.hxx> |
23 | |
24 | #include <Approx_Status.hxx> |
25 | |
26 | //================================================================================ |
27 | inline Standard_Integer ApproxInt_MultiLineTool::NbP2d(const TheMultiLine& ML) { |
28 | return(ML.NbP2d()); |
29 | } |
30 | //-------------------------------------------------------------------------------- |
31 | inline Standard_Integer ApproxInt_MultiLineTool::NbP3d(const TheMultiLine& ML) { |
32 | return(ML.NbP3d()); |
33 | } |
34 | //-------------------------------------------------------------------------------- |
35 | inline Standard_Integer ApproxInt_MultiLineTool::FirstPoint(const TheMultiLine& ML) { |
36 | return(ML.FirstPoint()); |
37 | } |
38 | //-------------------------------------------------------------------------------- |
39 | inline Standard_Integer ApproxInt_MultiLineTool::LastPoint(const TheMultiLine& ML) { |
40 | return(ML.LastPoint()); |
41 | } |
42 | //-------------------------------------------------------------------------------- |
43 | inline void ApproxInt_MultiLineTool::Value( const TheMultiLine& ML |
44 | ,const Standard_Integer Index |
45 | ,TColgp_Array1OfPnt& TabPnt) { |
46 | ML.Value(Index,TabPnt); |
47 | } |
48 | //-------------------------------------------------------------------------------- |
49 | inline void ApproxInt_MultiLineTool::Value( const TheMultiLine& ML |
50 | ,const Standard_Integer Index |
51 | ,TColgp_Array1OfPnt2d& TabPnt2d) { |
52 | ML.Value(Index,TabPnt2d); |
53 | } |
54 | //-------------------------------------------------------------------------------- |
55 | inline void ApproxInt_MultiLineTool::Value( const TheMultiLine& ML |
56 | ,const Standard_Integer Index |
57 | ,TColgp_Array1OfPnt& TabPnt |
58 | ,TColgp_Array1OfPnt2d& TabPnt2d) { |
59 | ML.Value(Index,TabPnt,TabPnt2d); |
60 | } |
61 | //-------------------------------------------------------------------------------- |
62 | inline Standard_Boolean ApproxInt_MultiLineTool::Tangency( const TheMultiLine& ML |
63 | ,const Standard_Integer Index |
64 | ,TColgp_Array1OfVec& TabVec) { |
65 | return(ML.Tangency(Index,TabVec)); |
66 | } |
67 | //-------------------------------------------------------------------------------- |
68 | inline Standard_Boolean ApproxInt_MultiLineTool::Tangency( const TheMultiLine& ML |
69 | ,const Standard_Integer Index |
70 | ,TColgp_Array1OfVec2d& TabVec2d) { |
71 | return(ML.Tangency(Index,TabVec2d)); |
72 | } |
73 | //-------------------------------------------------------------------------------- |
74 | inline Standard_Boolean ApproxInt_MultiLineTool::Tangency( const TheMultiLine& ML |
75 | ,const Standard_Integer Index |
76 | ,TColgp_Array1OfVec& TabVec |
77 | ,TColgp_Array1OfVec2d& TabVec2d) { |
78 | return(ML.Tangency(Index,TabVec,TabVec2d)); |
79 | } |
80 | |
81 | //-------------------------------------------------------------------------------- |
82 | inline Standard_Boolean ApproxInt_MultiLineTool::Curvature( const TheMultiLine& //ML |
83 | ,const Standard_Integer //Index |
84 | ,TColgp_Array1OfVec& ) { //TabVec |
85 | return Standard_False; |
86 | } |
87 | //-------------------------------------------------------------------------------- |
88 | inline Standard_Boolean ApproxInt_MultiLineTool::Curvature( const TheMultiLine& //ML |
89 | ,const Standard_Integer //Index |
90 | ,TColgp_Array1OfVec2d& ) { //TabVec2d |
91 | return Standard_False; |
92 | } |
93 | //-------------------------------------------------------------------------------- |
94 | inline Standard_Boolean ApproxInt_MultiLineTool::Curvature( const TheMultiLine& //ML |
95 | ,const Standard_Integer //Index |
96 | ,TColgp_Array1OfVec& //TabVec |
97 | ,TColgp_Array1OfVec2d& ) { //TabVec2d |
98 | return Standard_False; |
99 | } |
100 | //-------------------------------------------------------------------------------- |
101 | inline Approx_Status ApproxInt_MultiLineTool::WhatStatus(const TheMultiLine& ML |
102 | ,const Standard_Integer |
103 | ,const Standard_Integer) { |
104 | //-- PointsAdded, |
105 | //-- NoPointsAdded, |
106 | //-- NoApproximation |
107 | //-- Approx_PointsAdded |
108 | return(ML.WhatStatus()); |
109 | } |
110 | //-------------------------------------------------------------------------------- |
111 | inline TheMultiLine ApproxInt_MultiLineTool::MakeMLBetween(const TheMultiLine& ML, |
112 | const Standard_Integer I1, |
113 | const Standard_Integer I2, |
114 | const Standard_Integer NbPMin) { |
115 | |
116 | return(ML.MakeMLBetween(I1,I2,NbPMin)); |
117 | } |
7c32c7c4 |
118 | |
119 | inline void ApproxInt_MultiLineTool::Dump(const TheMultiLine& ML) |
120 | { |
121 | ML.Dump(); |
122 | } |
7fd59977 |
123 | //================================================================================ |