(
T,
T,
T,
T,
T,
T,
T,
T,
T,
T,
T,
T,
T,
T,
T,
T);
130 template<
classT>
inline 138 template<
classT>
inline 145 template<
classT>
inline 147 Tm5,
Tm6,
Tm7,
Tm8,
148 Tm9,
Tm10,
Tm11,
Tm12,
149 Tm13,
Tm14,
Tm15,
Tm16)
151m_Data[ 0] = m1; m_Data[ 1] = m2; m_Data[ 2] = m3; m_Data[ 3] = m4;
152m_Data[ 4] = m5; m_Data[ 5] = m6; m_Data[ 6] = m7; m_Data[ 7] = m8;
153m_Data[ 8] = m9; m_Data[ 9] = m10; m_Data[10] = m11; m_Data[11] = m12;
154m_Data[12] = m13; m_Data[13] = m14; m_Data[14] = m15; m_Data[15] = m16;
158 template<
classT>
inline 161 for(
int i= 0;
i< 16; ++
i) {
162m_Data[
i] = m[
i];
167 template<
classT>
inline 170m_Data[ 0] = m[0][0];
171m_Data[ 1] = m[0][1];
172m_Data[ 2] = m[0][2];
173m_Data[ 3] = m[0][3];
175m_Data[ 4] = m[1][0];
176m_Data[ 5] = m[1][1];
177m_Data[ 6] = m[1][2];
178m_Data[ 7] = m[1][3];
180m_Data[ 8] = m[2][0];
181m_Data[ 9] = m[2][1];
182m_Data[10] = m[2][2];
183m_Data[11] = m[2][3];
185m_Data[12] = m[3][0];
186m_Data[13] = m[3][1];
187m_Data[14] = m[3][2];
188m_Data[15] = m[3][3];
197 for(
int i= 0;
i< 16; ++
i) {
198m_Data[
i] += scalar;
209 for(
int i= 0;
i< 16; ++
i) {
210m_Data[
i] += m[
i];
221 for(
int i= 0;
i< 16; ++
i) {
222m_Data[
i] -= scalar;
233 for(
int i= 0;
i< 16; ++
i) {
234m_Data[
i] -= m[
i];
246 for(
int i= 0;
i< 16; ++
i) {
247m_Data[
i] *= scalar;
274t0 = m_Data[ 0] * m[ 0] + m_Data[ 1] * m[ 4] +
275m_Data[ 2] * m[ 8] + m_Data[ 3] * m[12];
276t1 = m_Data[ 0] * m[ 1] + m_Data[ 1] * m[ 5] +
277m_Data[ 2] * m[ 9] + m_Data[ 3] * m[13];
278t2 = m_Data[ 0] * m[ 2] + m_Data[ 1] * m[ 6] +
279m_Data[ 2] * m[10] + m_Data[ 3] * m[14];
280t3 = m_Data[ 0] * m[ 3] + m_Data[ 1] * m[ 7] +
281m_Data[ 2] * m[11] + m_Data[ 3] * m[15];
287t0 = m_Data[ 4] * m[ 0] + m_Data[ 5] * m[ 4] +
288m_Data[ 6] * m[ 8] + m_Data[ 7] * m[12];
289t1 = m_Data[ 4] * m[ 1] + m_Data[ 5] * m[ 5] +
290m_Data[ 6] * m[ 9] + m_Data[ 7] * m[13];
291t2 = m_Data[ 4] * m[ 2] + m_Data[ 5] * m[ 6] +
292m_Data[ 6] * m[10] + m_Data[ 7] * m[14];
293t3 = m_Data[ 4] * m[ 3] + m_Data[ 5] * m[ 7] +
294m_Data[ 6] * m[11] + m_Data[ 7] * m[15];
300t0 = m_Data[ 8] * m[ 0] + m_Data[ 9] * m[ 4] +
301m_Data[10] * m[ 8] + m_Data[11] * m[12];
302t1 = m_Data[ 8] * m[ 1] + m_Data[ 9] * m[ 5] +
303m_Data[10] * m[ 9] + m_Data[11] * m[13];
304t2 = m_Data[ 8] * m[ 2] + m_Data[ 9] * m[ 6] +
305m_Data[10] * m[10] + m_Data[11] * m[14];
306t3 = m_Data[ 8] * m[ 3] + m_Data[ 9] * m[ 7] +
307m_Data[10] * m[11] + m_Data[11] * m[15];
313t0 = m_Data[12] * m[ 0] + m_Data[13] * m[ 4] +
314m_Data[14] * m[ 8] + m_Data[15] * m[12];
315t1 = m_Data[12] * m[ 1] + m_Data[13] * m[ 5] +
316m_Data[14] * m[ 9] + m_Data[15] * m[13];
317t2 = m_Data[12] * m[ 2] + m_Data[13] * m[ 6] +
318m_Data[14] * m[10] + m_Data[15] * m[14];
319t3 = m_Data[12] * m[ 3] + m_Data[13] * m[ 7] +
320m_Data[14] * m[11] + m_Data[15] * m[15];
334scalar =
T(1) / scalar;
336 for(
int i= 0;
i< 16; ++
i) {
337m_Data[
i] *= scalar;
346 template<
classT>
inline void 372 template<
classT>
inline void 384 template<
classT>
inline void 387 for(
int i= 0;
i< 16; ++
i) {
401m_Data[row_idx + 2] ,
402m_Data[row_idx + 3]);
420 template<
classT>
inline T 438 T kp= m_Data[10]*m_Data[15];
439 Tlo = m_Data[11]*m_Data[14];
440 Tjp = m_Data[ 9]*m_Data[15];
441 Tln = m_Data[11]*m_Data[13];
442 Tjo = m_Data[ 9]*m_Data[14];
443 Tkn = m_Data[10]*m_Data[13];
445det = m_Data[0] * ( m_Data[5]*(
kp- lo)
446- m_Data[6]*(jp - ln)
447+ m_Data[7]*(jo - kn) );
449 T ip= m_Data[ 8]*m_Data[15];
450 Tlm = m_Data[11]*m_Data[12];
451 Tio = m_Data[ 8]*m_Data[14];
452 Tkm = m_Data[10]*m_Data[12];
454det -= m_Data[1] * ( m_Data[4]*(
kp- lo)
455- m_Data[6]*(
ip- lm)
456+ m_Data[7]*(io - km) );
458 T in= m_Data[ 8]*m_Data[13];
459 Tjm = m_Data[ 9]*m_Data[12];
461det += m_Data[3] * ( m_Data[4]*(jp - ln)
462- m_Data[5]*(
ip- lm)
463+ m_Data[7]*(
in- jm) );
465det -= m_Data[4] * ( m_Data[4]*(jo - kn)
466- m_Data[5]*(io - km)
467+ m_Data[6]*(
in- jm) );
Include a standard set of the NCBI C++ Toolkit most basic headers.
void swap(NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair1, NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair2)
const T & operator[](int i) const
CVect4< T > Row(int) const
const T & operator()(int i, int j) const
CMatrix4(T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T)
CMatrix4< T > & operator/=(T)
CMatrix4< T > & operator-=(T)
CVect4< T > Column(int) const
CMatrix4< T > & operator+=(T)
CMatrix4< T > & operator*=(T)
const T * GetData() const
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
const GenericPointer< typename T::ValueType > T2 value
std::istream & in(std::istream &in_, double &x_)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4