@@ -191,61 +191,71 @@ class cFormulaClino
191191
192192 std::vector<std::string> VNamesUnknowns () const
193193 {
194+ // vector for correction of angular
194195 std::vector<std::string> aVCor;
195196 for (int aD=mD0Corr ; aD<=mD1Corr ; aD++)
196197 if (aD!=1 )
197198 aVCor.push_back (" DCorrAng_" +ToStr (aD));
198199
199200 return Append
200201 (
201- NamesPose (" Du" ," Dv" ) ,
202+ NamesP3 (" Omega" ),
203+ NamesP2 (" DuDv" ) ,
202204 aVCor
203205 );
204206 ;
205207 }
206208
207209 std::vector<std::string> VNamesObs () const
208210 {
211+ // observation is made : 3 point for coding normalized verctor +
212+ // matrix for rotation linearization + value of the angle
209213 return Append
210214 (
211- Append
212- (
213- NamesP3 (" PNom" ),
214- NamesP3 (" DirU" ),
215- NamesP3 (" DirV" )
216- ),
217215 NamesMatr (" m1" ,cPt2di (3 ,3 )),
218- {" VTeta" }
216+ Append (NamesP3 (" PNom" ),NamesP3 (" DirU" ),NamesP3 (" DirV" )),
217+ {" ValueTeta" }
219218 );
220219 };
221- /*
222- template <typename tUk>
220+
221+ template <typename tUk>
223222 std::vector<tUk> formula
224223 (
225224 const std::vector<tUk> & aVUk,
226225 const std::vector<tUk> & aVObs
227226 ) const
228227 {
229- cPoseF<tUk> aPoseA(aVUk,0,aVObs,0,true);
230- cPoseF<tUk> aPose1(aVObs,9,aVObs,12,false);
228+ cRot3dF<tUk> aRotC2M (aVUk,0 ,aVObs,0 );
229+ cP3dNorm<tUk> aClinoC (aVUk,3 ,aVObs,9 ); //
230+ cP3dNorm<tUk> aClinoM = aRotC2M.Value (aClinoC);
231+
232+
233+ // return std::abs(aDirLoc.z() - std::sin(mSetClino.KthMeasure(aKClino).Angle()) );
234+
231235
236+
237+ // cRot3dF(const std::vector<Type> & aVecUk,size_t aK0Uk,const std::vector<Type> & aVecObs,size_t aK0Obs) :
238+ // cP3dNorm(const std::vector<Type> & aVecUk,size_t aK0Uk,const std::vector<Type> & aVecObs,size_t aK0Obs) :
239+
240+ // cPoseF<tUk> aPoseA(aVUk,0,aVObs,0,true);
241+ return aVUk[0 ];
242+ }
243+ /*
232244 cPtxd<tUk,3> aDeltaC = aPoseA.mCenter - aPose1.mCenter;
233245 cMatF<tUk> aDeltaR = aPoseA.IJK()- aPose1.IJK();
234-
246+ */
235247 // ...
236248 // extract PoseA,PoseB,pose1, pose2
237249
238250 // compute pose rel B to A, pose rel 2 to 1
239251 // compute the difference
240252
241253
242- return Append(ToVect(aDeltaC),aDeltaR.ToVect());
243254
244255 // cPoseF<tUk> aPose1(aVUk,2*NbUk,aVObs,2*NbObs);
245256 // cPoseF<tUk> aRelAB = aPoseA.PoseRel(aPoseB);
246257 // (ToVect(aDeltaC),aDeltaM.ToVect()
247- }
248- */
258+
249259
250260 int mD0Corr ;
251261 int mD1Corr ;
0 commit comments