亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? matrix.h

?? 攝影測(cè)量專業(yè)。實(shí)現(xiàn)單像后方交會(huì)以及立體像對(duì)的前方交會(huì)。以文件形式讀取控制點(diǎn)和像點(diǎn)坐標(biāo)。
?? H
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
    \endcode

    In this case '[' donates the start of a matrix and ']' denotes the end. \n
    Row vectors [1 2 3] and [4 5 6] are separated by ';'.  \n
    Commas can delimit row vector data but are not needed. \n
    Complex input: e.g. 
    
    \code
    Matrix A;
    A.SetFromMatrixString( "[1+1i 2+3j 1-2i; 4 5 6]" ); // or
    A.SetFromMatrixString( "[1+1i, 2+3j, 1-2i; 4, 5, 6]" );
    \endcode
    
    (2) Free form delimited matrix. e.g. \n

    \code
    Matrix A; 
    A.SetFromMatrixString( "1 2 3 \\n 4 5 6 \\n" );
    \endcode

    In this case, the newline delimits different rows of the matrix. (\\r\\n also works). \n
    Row vectors can still be delimited by ';' as well. \n
    
    \code
    A.SetFromMatrixString( "1 2 3; 4 5 6; \\n 7 8 9" );
    \endcode 
    
    will set a 3x3 matrix == [1 2 3; 4 5 6; 7 8 9]. \n

    Commas can delimit row vector data but are not needed. \n
    Complex input: e.g. 
    
    \code
    Matrix A;
    A.SetFromMatrixString( "[1+1i 2+3j 1-2i\\n 4 5 6]" );   // or
    A.SetFromMatrixString( "1+1i, 2+3j, 1-2i\\n 4, 5, 6" ); // or
    A.SetFromMatrixString( "1+1i 2+3j 1-2i; 4, 5, 6" );   
    \endcode 

    All result in A = [1+1i 2+3i 1-2i; 4 5 6]; \n
   
    \return true if successful, false otherwise.
    */
    bool SetFromMatrixString(const char* strMatrix);


    /**    
    \brief  Copy the src data in column col to dst matrix, resize dst if possible and necessary.
    
    \code
    Matrix A;
    A = "[1 -1; 2 -2; 3 -3]".
    Matrix B;
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.CopyColumn(0,B); // Copy the first column of A into B.
    result = B.PrintStdout();   // Print Matrix B. B = [1;2;3];
    \endcode
    
    \return true if successful, false otherwise.    
    */
    bool CopyColumn( const unsigned src_col, Matrix &dst );

    /**
    \brief  Insert a submatrix (src) into dst, starting at indices dst(row,col).
    
    \code
    Matrix A(4,4); // A 4x4 matrix of zeros.
    Matrix B(2,2); // A 2x2 matrix that we will fill with sevens.
    B.Fill(7.0);
    bool result;
    result = A.PrintStdout();           // Print Matrix A.
    result = A.InsertSubMatrix(B,1,1);  // Put B in the middle of A.
    result = A.PrintStdout();           // Print Matrix A. A = [0 0 0 0; 0 7 7 0; 0 7 7 0; 0 0 0 0].
    \endcode
    
    \return true if successful, false otherwise.    
    */
    bool InsertSubMatrix( const Matrix &src, const unsigned dst_row, const unsigned dst_col );


    /**
    \brief  Extract a submatrix (dst) from this matrix from (inclusive) 
            the rows and columns specified.
    \code 
    Matrix A = "[1 2 3; 4 5 6; 7 8 9]";
    Matrix B;
    bool result = A.ExtractSubMatrix( B, 1, 0, 2, 2 );
    // B == [4 5 6; 7 8 9]
    \endcode

    \return true if successful, false otherwise.
    */
    bool ExtractSubMatrix( 
      Matrix &dst,             //!< The destination matrix to contain the submatrix.
      const unsigned from_row, //!< The zero-based index for the from row.
      const unsigned from_col, //!< The zero-based index for the from column.
      const unsigned to_row,   //!< The zero-based index for the to row.
      const unsigned to_col    //!< The zero-based index for the to column.
      );

    /**
    \brief  Zero the entire matrix.
    
    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.Zero();          // Set A back to zeros.
    result = A.PrintStdout();   // Print Matrix A. A = [0 0 0; 0 0 0; 0 0 0].
    \endcode
    
    \return true if successful, false otherwise.  
    */
    bool Zero();

    /**
    \brief  Zero all elements in a specified column.
    
    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.ZeroColumn(1);   // Set the second column of A back to zeros.
    result = A.PrintStdout();   // Print Matrix A. A = [1 0 3; 4 0 6; 7 0 9].
    \endcode
       
    \return true if successful, false otherwise.    
    */
    bool ZeroColumn( const unsigned col );

    /**
    \brief  Zero all elements in a specified row.
    
    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.ZeroRow(1);      // Set the second row of A back to zeros.
    result = A.PrintStdout();   // Print Matrix A. A = [1 2 3; 0 0 0; 7 8 9].
    \endcode
       
    \return true if successful, false otherwise.    
    */
    bool ZeroRow( const unsigned row );


    /**
    \brief  Efficiently swaps the contents of this matrix with matrix M.
    The contents are exhanged without the need to copy matrix data.

    \code
    Matrix A = "[1 2 3; 4 5 6; 7 8 9]";
    Matrix B = "[1 2; 3 4]";        
    bool result;
    result = A.Swap(B);    
    result = A.PrintStdout();   // Print Matrix A. A = [1 2; 3 4]
    result = B.PrintStdout();   // Print Matrix B. B = [1 2 3; 4 5 6; 7 8 9]
    \endcode

    \return true if successful, false otherwise.    
    */
    bool Swap( Matrix &M );

    /**
    \brief  Fill the matrix with the given value.

    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.Fill(7);         // Fill the matrix with 7.0.
    result = A.PrintStdout();   // Print Matrix A. A = [7 7 7; 7 7 7; 7 7 7].
    \endcode

    \return true if successful, false otherwise.    
    */
    bool Fill( const double value );

    /**
    \brief  Fill the matrix column with the given value.
    
    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.FillColumn(1,7); // Fill the second column with 7.0.
    cout << endl;
    result = A.PrintStdout();   // Print Matrix A. A = [1 7 3; 4 7 6; 7 7 9].
    \endcode
    
    \return true if successful, false otherwise.    
    */
    bool FillColumn( const unsigned col, const double value );

    /**
    \brief  Fills the matrix row with the given value.
    
    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.FillRow(1,7);    // Fill the second row with 7.0.
    cout << endl;
    result = A.PrintStdout();   // Print Matrix A. A = [1 2 3; 7 7 7; 7 8 9].
    \endcode
    
    \return true if successful, false otherwise.    
    */
    bool FillRow( const unsigned row, const double value );

    /**
    \brief  Reverse the order of elements of a column.
    
    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.FlipColumn(1);   // Flip the second column.
    cout << endl;
    result = A.PrintStdout();   // Print Matrix A. A = [1 8 3; 4 5 6; 7 2 9].
    \endcode
       
    \return true if successful, false otherwise.    
    */
    bool FlipColumn( const unsigned col );

    /**
    \brief  Reverse the order of elements of a row.
    
    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.FlipRow(1);      // Flip the second row.
    cout << endl;
    result = A.PrintStdout();   // Print Matrix A. A = [1 2 3; 6 5 4; 7 8 9].
    \endcode    
    
    \return true if successful, false otherwise.    
    */
    bool FlipRow( const unsigned row );

    /**
    \brief  Set the matrix to identity using the current dimensions.
    
    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();   // Print Matrix A.
    result = A.Identity();      // Set A to identity.
    cout << endl;
    result = A.PrintStdout();   // Print Matrix A. A = [1 0 0; 0 1 0; 0 0 1].
    \endcode    
    
    \return true if successful, false otherwise.    
    */
    bool Identity();

    /**   
    \brief  Set the matrix to identity using the specified dimension (nxn).
    
    \code
    Matrix A;
    bool result;
    result = A.Identity(3);     // Set A to identity, 3x3.
    cout << endl;
    result = A.PrintStdout();   // Print Matrix A. A = [1 0 0; 0 1 0; 0 0 1].
    \endcode    
    
    \return true if successful, false otherwise.        
    */
    bool Identity(const unsigned dimension);



  public: // Inplace Operations

    /**
    \brief  Transpose the matrix as an inplace operation.
    
    \code
    Matrix A;
    A = "[1 2 3; 4 5 6; 7 8 9]";
    bool result;
    result = A.PrintStdout();         // Print Matrix A.
    result = A.Inplace_Transpose();   // Make A = transpose(A).
    cout << endl;
    result = A.PrintStdout();         // Print Matrix A. A = [1 4 7; 2 5 8; 3 6 9].
    \endcode    
    
    \return true if successful, false otherwise.    
    */
    bool Inplace_Transpose();
    bool Inplace_transpose() { return this->Inplace_Transpose(); }

    /**
    \brief  Round the matrix elements to the specified presision. \n
    e.g. precision = 0    1.8    -> 2     (default)\n
    e.g. precision = 1,   1.45   -> 1.5   \n
    e.g. precision = 2    1.456  -> 1.46  \n
    e.g. precision = 3,   1.4566 -> 1.457 \n
    *
    \code
    Matrix A;
    A = "[1.09 2.08 3.07; 4.06 5.05 6.04; 7.03 8.02 9.01]";
    bool result;
    result = A.PrintStdout();     // Print Matrix A.
    result = A.Inplace_Round(1);  // Make A = round(A) to the 1st decimal place.
    cout << endl;
    result = A.PrintStdout();     // Print Matrix A. A = "[1.1 2.1 3.1; 4.1 5.1 6.0; 7.0 8.0 9.0]";
    \endcode    
    
    \return true if successful, false otherwise.    
    */
    bool Inplace_Round( const unsigned precision = 0 );
    bool Inplace_round( const unsigned precision = 0 ) { return this->Inplace_Round( precision ); }

    /**
    \brief  Round the matrix elements to the nearest integers towards minus infinity.
    
    \code
    Matrix A;
    A = "[1.9 2.8 3.7; -4.6 -5.5 -6.4; 7.3 8.2 9.1]";
    bool result;
    result = A.PrintStdout();     // Print Matrix A.
    result = A.Inplace_Floor();   // Make A = floor(A).
    cout << endl;
    result = A.PrintStdout();     // Print Matrix A. A = "[1 2 3; -5 -6 -7; 7 8 9]";
    \endcode    
       
    \return true if successful, false otherwise.    
    */
    bool Inplace_Floor();
    bool Inplace_floor() { return this->Inplace_Floor(); }

    /**
    \brief  Round the matrix elements to the nearest integers towards infinity.
    
    \code
    Matrix A;
    A = "[1.9 2.8 3.7; -4.6 -5.5 -6.4; 7.3 8.2 9.1]";
    bool result;
    result = A.PrintStdout();     // Print Matrix A.
    result = A.Inplace_Ceil();    // Make A = ceil(A).
    cout << endl;
    result = A.PrintStdout();     // Print Matrix A. A = "[2 3 4; -4 -5 -6; 8 9 10]";
    \endcode    
           
    \return true if successful, false otherwise.    
    */
    bool Inplace_Ceil();
    bool Inplace_ceil() { return this->Inplace_Ceil(); }


    /**
    \brief  Compute the error function (erf) for all values in the matrix inplace. \n
    erf(x) = 2/sqrt(pi) * [integral from 0 to x of]( e^(-t^2) )dt.

    \code
    Matrix A;
    A = "[-1 -0.5 0 0.5 1]";
    bool result;
    result = A.PrintStdout();     // Print Matrix A. A = "[-1 -0.5 0 0.5 1]";
    result = A.Inplace_erf();     // Make A = erf(A).
    cout << endl;
    result = A.PrintStdout();     // Print Matrix A. A = "[-0.842700792949715 -0.520499877813047  0 0.520499877813047 0.842700792949715]";
    \endcode    
           
    \return true if successful, false otherwise.    
    */
    bool Inplace_erf();

    /**
    \brief  Compute the inverse error function (erfinv) for all values in the matrix inplace. \n
    y = erf(x) = 2/sqrt(pi) * [integral from 0 to x of]( e^(-t^2) )dt.
    x = erfinv(y);

    \code
    Matrix A;
    A = "[-0.842700792949715 -0.520499877813047  0 0.520499877813047 0.842700792949715]"; 
    bool result;
    result = A.PrintStdout();     // Print Matrix A. A = "[-0.842700792949715 -0.520499877813047  0 0.520499877813047 0.842700792949715]"; 
    result = A.Inplace_erfinv();  // Make A = erfinv(A).
    cout << endl;
    result = A.PrintStdout();     // Print Matrix A. A = "[-1 -0.5 0 0.5 1]";
    \endcode    
           
    \return true if successful, false otherwise.    
    */
    bool Inplace_erfinv();

    /**
    \brief  Compute the complementary error function (erfc) for all values in the matrix inplace. \n
    erfc(x) = 1 - erf(x) =  2/sqrt(pi) * [integral from x to inf of]( e^(-t^2) )dt.    

    \code
    Matrix A;
    A = "[-1 -0.5 0 0.5 1]";
    bool result;
    result = A.PrintStdout();     // Print Matrix A. A = "[-1 -0.5 0 0.5 1]";
    result = A.Inplace_erfc();    // Make A = erfc(A).
    cout << endl;
    result = A.PrintStdout();     // Print Matrix A. A = "[1.84270079294971  1.52049987781305   1 0.479500122186953 0.157299207050285]";
    \endcode    
           
    \return true if successful, false otherwise.    
    */
    bool Inplace_erfc();

    /**
    \brief  Compute the complementary error function (erfc) for all values in the matrix inplace. \n
    erfc(x) = 1 - erf(x) =  2/sqrt(pi) * [integral from x to inf of]( e^(-t^2) )dt.    

    \code
    Matrix A;
    A = "[1.84270079294971  1.52049987781305   1 0.479500122186953 0.157299207050285]";
    bool result;
    result = A.PrintStdout();     // Print Matrix A. A = "[1.84270079294971  1.52049987781305   1 0.479500122186953 0.157299207050285]";
    result = A.Inplace_erfcinv(); // Make A = erfcinv(A).
    cout << endl;
    result = A.PrintStdout();     // Print Matrix A. A = "[-1 -0.5 0 0.5 1]";
    \endcode    
           
    \return true if successful, false otherwise.    
    */
    bool Inplace_erfcinv();


    /**
    \brief  Rounds the matrix elements of X to the nearest integers towards zero.
    
    \code
    Matrix A;
    A = "[1.9 2.8 3.7; -4.6 -5.5 -6.4; 7.3 8.2 9.1]";
    bool result;
    result = A.PrintStdout();     // Print Matrix A.
    result = A.Inplace_Fix();     // Make A = fix(A).
    cout << endl;
    result = A.PrintStdout();     // Print Matrix A. A = "[1 2 3; -4 -5 -6; 7 8 9]";
    \endcode    
    
    \return true if successful, false otherwise.    
    */
    bool Inplace_Fix();

    /** \brief  Add a scaler double (ie: M += 5).

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国内精品久久久久影院薰衣草| 国产精品理伦片| 国产亚洲综合在线| 中文字幕一区免费在线观看| 亚洲小说欧美激情另类| 久草热8精品视频在线观看| 粉嫩一区二区三区性色av| 99久久久久久99| 在线观看91av| 国产日韩综合av| 亚洲国产一区二区三区青草影视| 麻豆国产欧美日韩综合精品二区| 成人午夜av影视| 欧美一区二区在线观看| 国产视频一区在线播放| 午夜精品国产更新| 成人一二三区视频| 91精品国产综合久久婷婷香蕉| 国产欧美精品一区| 婷婷国产在线综合| zzijzzij亚洲日本少妇熟睡| 欧美一级生活片| 一区在线播放视频| 国内精品伊人久久久久av一坑 | 国产女主播一区| 亚洲成精国产精品女| 国产成人h网站| 777a∨成人精品桃花网| 国产精品护士白丝一区av| 另类调教123区| 91福利在线观看| 国产清纯白嫩初高生在线观看91| 亚洲成年人影院| 91小视频免费看| 久久久综合精品| 丝瓜av网站精品一区二区| 97aⅴ精品视频一二三区| 精品对白一区国产伦| 亚洲国产精品一区二区久久| 国产成人aaa| 日韩一区二区视频在线观看| 亚洲一区二区视频在线| 成人动漫一区二区在线| 精品少妇一区二区三区在线播放| 亚洲一二三四在线观看| 91丝袜国产在线播放| 国产欧美一区在线| 国产米奇在线777精品观看| 欧美一区日本一区韩国一区| 亚洲大尺度视频在线观看| 99精品黄色片免费大全| 欧美国产欧美综合| 国产美女一区二区| 欧美mv日韩mv国产网站app| 亚洲18影院在线观看| 欧美性做爰猛烈叫床潮| 亚洲视频一区二区在线观看| 国产精品一二三四区| 亚洲精品一区二区在线观看| 蜜桃av噜噜一区| 欧美精品在线一区二区三区| 亚洲综合色噜噜狠狠| 91免费在线视频观看| 中文字幕一区日韩精品欧美| www.色综合.com| 中文字幕日韩一区| 99国产精品久久久久| 国产精品不卡一区| av资源网一区| 亚洲丝袜另类动漫二区| 色综合天天狠狠| 亚洲乱码国产乱码精品精的特点| 99在线视频精品| 一区在线观看视频| 色94色欧美sute亚洲13| 亚洲一区二区中文在线| 欧美视频在线播放| 日韩专区在线视频| 日韩欧美亚洲国产精品字幕久久久| 日本视频中文字幕一区二区三区| 欧美一区二区美女| 久久精品国产成人一区二区三区 | 亚洲一二三专区| 欧美日韩一本到| 日本中文在线一区| 精品免费日韩av| 成人中文字幕合集| 日韩伦理免费电影| 欧美色电影在线| 日本亚洲免费观看| 欧美精品一区二区不卡| 国产aⅴ综合色| 亚洲欧洲综合另类| 欧美午夜寂寞影院| 免费人成精品欧美精品| www精品美女久久久tv| 高清日韩电视剧大全免费| 综合精品久久久| 欧美日韩一区二区三区四区五区| 日韩黄色免费电影| www久久久久| 91在线视频官网| 五月综合激情日本mⅴ| 久久综合给合久久狠狠狠97色69| 国产精品99久| 亚洲女爱视频在线| 69堂精品视频| 国产成人免费视频精品含羞草妖精| 国产精品进线69影院| 欧美日韩三级在线| 国产最新精品精品你懂的| 国产精品久久久久久久岛一牛影视 | 波多野结衣中文字幕一区| 亚洲精品水蜜桃| 日韩精品一区二区三区四区 | 亚洲天堂av老司机| 7777女厕盗摄久久久| 国产成人a级片| 午夜影视日本亚洲欧洲精品| 久久色.com| 91国偷自产一区二区三区观看| 久久精品国产一区二区三 | 日本高清不卡在线观看| 蜜臀av一区二区| 亚洲欧洲日产国码二区| 制服丝袜亚洲色图| a4yy欧美一区二区三区| 免费人成精品欧美精品| 亚洲日本va午夜在线影院| 欧美一级免费观看| av中文字幕亚洲| 九九久久精品视频| 一区二区三区毛片| 国产亚洲视频系列| 欧美一区二区三区白人| 99国产精品国产精品久久| 狠狠狠色丁香婷婷综合激情| 亚洲一区二区三区三| 中文字幕巨乱亚洲| 日韩三级免费观看| 欧美在线短视频| 懂色中文一区二区在线播放| 青草国产精品久久久久久| 亚洲精选视频在线| 中文乱码免费一区二区| 欧美videos中文字幕| 欧美三级在线视频| 99视频精品免费视频| 精品一区二区三区视频| 午夜一区二区三区视频| 亚洲欧洲国产日本综合| 久久亚洲免费视频| 日韩一区二区在线看| 在线亚洲一区二区| www.视频一区| 国产v日产∨综合v精品视频| 裸体歌舞表演一区二区| 五月婷婷激情综合| 亚洲午夜国产一区99re久久| 综合av第一页| 中文字幕一区三区| 中文字幕免费观看一区| 国产午夜亚洲精品羞羞网站| 欧美大片在线观看一区二区| 欧美日韩成人综合| 欧美主播一区二区三区| 色婷婷亚洲婷婷| 色综合婷婷久久| 91在线看国产| av不卡一区二区三区| jizzjizzjizz欧美| 国产成人在线影院| 国产suv一区二区三区88区| 狠狠色丁香久久婷婷综合_中| 麻豆精品在线看| 美女在线观看视频一区二区| 人人精品人人爱| 视频在线在亚洲| 日本三级韩国三级欧美三级| 三级影片在线观看欧美日韩一区二区| 亚洲综合偷拍欧美一区色| 亚洲综合在线视频| 亚洲午夜激情网站| 调教+趴+乳夹+国产+精品| 午夜精品影院在线观看| 天天色综合天天| 日韩av一区二区三区四区| 视频在线观看国产精品| 免费成人在线影院| 精久久久久久久久久久| 九九国产精品视频| 精品一区二区三区欧美| 国产精品91xxx| 成人a免费在线看| 97se亚洲国产综合自在线| 色素色在线综合| 7777精品伊人久久久大香线蕉 | 亚洲第一主播视频| 日本视频一区二区| 国产综合久久久久久鬼色|