Moka controlers
 All Classes Namespaces Files Functions Variables Typedefs Enumerator Friends Macros
parameter-object-ponderation.cc
Go to the documentation of this file.
1 /*
2  * lib-controler-gmap : Le contrôleur de 3-G-cartes, surcouche de lib-controler.
3  * Copyright (C) 2004, Moka Team, Université de Poitiers, Laboratoire SIC
4  * http://www.sic.sp2mi.univ-poitiers.fr/
5  * Copyright (C) 2009, Guillaume Damiand, CNRS, LIRIS,
6  * guillaume.damiand@liris.cnrs.fr, http://liris.cnrs.fr/
7  *
8  * This file is part of lib-controler-gmap
9  *
10  * This program is free software: you can redistribute it and/or modify
11  * it under the terms of the GNU Lesser General Public License as published by
12  * the Free Software Foundation, either version 3 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Lesser General Public License for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * along with this program. If not, see <http://www.gnu.org/licenses/>.
22  */
23 
24 //******************************************************************************
25 #include "controler-gmap-types.hh"
27 #include "transformation-matrix.hh"
28 #include "geometry.hh"
29 using namespace std;
30 using namespace GMap3d;
31 //******************************************************************************
32 CParameterObjectPonderation::CParameterObjectPonderation(int ANbRef) :
33  CParameter (ANbRef),
34  FPonderationType (PONDERATION_POINT),
35  FPonderationCenter (ORIGIN),
36  FPonderationVector (OZ),
37  FPonderationStretchIn (false),
38  FPonderationStretchInMin (0.0),
39  FPonderationStretchInMax (1.0),
40  FPonderationFunctionType (FUNCTION_LIN),
41  FPonderationStretchOut (false),
42  FPonderationStretchOutMin(0.75),
43  FPonderationStretchOutMax(1.50)
44 {}
45 //******************************************************************************
48  CParameter (AParam),
49  FPonderationType (AParam.FPonderationType),
50  FPonderationCenter (AParam.FPonderationCenter),
51  FPonderationVector (AParam.FPonderationVector),
52  FPonderationStretchIn (AParam.FPonderationStretchIn),
53  FPonderationStretchInMin (AParam.FPonderationStretchInMin),
54  FPonderationStretchInMax (AParam.FPonderationStretchInMax),
55  FPonderationFunctionType (AParam.FPonderationFunctionType),
56  FPonderationStretchOut (AParam.FPonderationStretchOut),
57  FPonderationStretchOutMin(AParam.FPonderationStretchOutMin),
58  FPonderationStretchOutMax(AParam.FPonderationStretchOutMax)
59 {}
60 //******************************************************************************
62 {}
63 //******************************************************************************
65 { return new CParameterObjectPonderation(*this); }
66 //******************************************************************************
67 void CParameterObjectPonderation::load(istream& /*AStream*/)
68 {}
69 //------------------------------------------------------------------------------
70 void CParameterObjectPonderation::save(ostream& /*AStream*/)
71 {}
72 //------------------------------------------------------------------------------
74 {}
75 //******************************************************************************
77 {
79 }
80 //******************************************************************************
82  APonderationType)
83 {
84  if (FPonderationType != APonderationType)
85  {
87  FPonderationType = APonderationType;
88  }
89 }
90 
92 {
93  return FPonderationType;
94 }
95 //******************************************************************************
97  APonderationCenter)
98 {
99  if (FPonderationCenter != APonderationCenter)
100  {
102  FPonderationCenter = APonderationCenter;
103  }
104 }
105 
107 {
108  return FPonderationCenter;
109 }
110 //******************************************************************************
112  APonderationVector)
113 {
114  if (FPonderationVector != APonderationVector)
115  {
117  FPonderationVector = APonderationVector;
118  }
119 }
120 
122 {
123  return FPonderationVector;
124 }
125 //******************************************************************************
127 {
128  FPonderationStretchIn = AActive;
129 }
130 
132 {
133  return FPonderationStretchIn;
134 }
135 //******************************************************************************
137 {
138  FPonderationStretchInMin = AMin;
139 }
140 
142 {
143  return FPonderationStretchInMin;
144 }
145 //******************************************************************************
147 {
148  FPonderationStretchInMax = AMax;
149 }
150 
152 {
153  return FPonderationStretchInMax;
154 }
155 //******************************************************************************
157 ::setPonderationFunctionType(TFunctionType AFunctionType)
158 {
159  FPonderationFunctionType = AFunctionType;
160 }
161 
162 TFunctionType
164 {
165  return FPonderationFunctionType;
166 }
167 //******************************************************************************
169 {
170  FPonderationStretchOut = AActive;
171 }
172 
174 {
175  return FPonderationStretchOut;
176 }
177 //******************************************************************************
179 {
180  FPonderationStretchOutMin = AMin;
181 }
182 
184 {
185  return FPonderationStretchOutMin;
186 }
187 //******************************************************************************
189 {
190  FPonderationStretchOutMax = AMax;
191 }
192 
194 {
195  return FPonderationStretchOutMax;
196 }
197 //******************************************************************************