Changeset 4485 for trunk/MagicSoft/AMC


Ignore:
Timestamp:
08/04/04 16:40:21 (20 years ago)
Author:
merck
Message:
MMerck: Handel laser positions as doubles.
Location:
trunk/MagicSoft/AMC/activemirrorcontrol/activemirrorcontrol
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/AMC/activemirrorcontrol/activemirrorcontrol/calibratelasermovementdialog.cpp

    r3401 r4485  
    145145                                double dMaxX, dMaxY;
    146146                                m_pXLinearRegression->reset();
    147                                 for( int j= -2700; j<=2700; j+=300)
     147                                for( int j= -1200; j<=1200; j+=300)
    148148                                {
    149149                                        checkStop();
    150150                                        processSpot( j, 0 );
    151                                         m_pXLinearRegression->addPoint( m_iSpotX, m_iSpotY );
    152                                         if( m_iSpotX != -1 )
     151                                        m_pXLinearRegression->addPoint( m_dSpotX, m_dSpotY );
     152                                        if( m_dSpotX != -1. )
    153153                                        {
    154154                                                if ( iMinJ < -3000 )
    155155                                                {
    156156                                                        iMinJ = j;
    157                                                         dMinX = m_iSpotX;
    158                                                         dMinY = m_iSpotY;
     157                                                        dMinX = m_dSpotX;
     158                                                        dMinY = m_dSpotY;
    159159                                                }
    160160                                                else
    161161                                                {
    162162                                                        iMaxJ = j;
    163                                                         dMaxX = m_iSpotX;
    164                                                         dMaxY = m_iSpotY;
     163                                                        dMaxX = m_dSpotX;
     164                                                        dMaxY = m_dSpotY;
    165165                                                }
    166166                                        }
    167                                         m_qtsStream << j << " " << 0 << " " << m_iSpotX << " " << m_iSpotY << " ";
     167                                        m_qtsStream << j << " " << 0 << " " << m_dSpotX << " " << m_dSpotY << " ";
    168168                                        m_qtsStream << m_pXLinearRegression->getAxis() << " " << m_pXLinearRegression->getSlope() << endl;
    169169                                        QCustomEvent* pEvent = new QCustomEvent( X_SPOT_EVENT );
     
    192192                                iMaxJ = -4000;
    193193                                m_pYLinearRegression->reset();
    194                                 for( int j= -2700; j<=2700; j+=300)
     194                                for( int j= -1200; j<=1200; j+=300)
    195195                                {
    196196                                        checkStop();
    197197                                        processSpot( 0, j );
    198                                         m_pYLinearRegression->addPoint( m_iSpotX, m_iSpotY );
    199                                         if( m_iSpotX != -1 )
     198                                        m_pYLinearRegression->addPoint( m_dSpotX, m_dSpotY );
     199                                        if( m_dSpotX != -1. )
    200200                                        {
    201201                                                if ( iMinJ < -3000 )
    202202                                                {
    203203                                                        iMinJ = j;
    204                                                         dMinX = m_iSpotX;
    205                                                         dMinY = m_iSpotY;
     204                                                        dMinX = m_dSpotX;
     205                                                        dMinY = m_dSpotY;
    206206                                                }
    207207                                                else
    208208                                                {
    209209                                                        iMaxJ = j;
    210                                                         dMaxX = m_iSpotX;
    211                                                         dMaxY = m_iSpotY;
     210                                                        dMaxX = m_dSpotX;
     211                                                        dMaxY = m_dSpotY;
    212212                                                }
    213213                                        }
    214                                         m_qtsStream << 0 << " " << j << " " << m_iSpotX << " " << m_iSpotY << " ";
     214                                        m_qtsStream << 0 << " " << j << " " << m_dSpotX << " " << m_dSpotY << " ";
    215215                                        m_qtsStream << m_pYLinearRegression->getAxis() << " " << m_pYLinearRegression->getSlope() << endl;
    216216                                        QCustomEvent* pEvent = new QCustomEvent( Y_SPOT_EVENT );
     
    357357
    358358/** Find the Laser spot */
    359 void CalibrateLaserMovementDialog::findSpot( int& p_iX, int& p_iY )
     359void CalibrateLaserMovementDialog::findSpot( double& p_dX, double& p_dY )
    360360{
    361361  int threshold = getThreshold();
     
    399399        {
    400400                VideoSpot* pSpot = m_qlSpotList.first();
    401                 p_iX = pSpot->getX();
    402                 p_iY = pSpot->getY();
     401                p_dX = pSpot->getX();
     402                p_dY = pSpot->getY();
    403403        }
    404404        else
    405405        {
    406                 p_iX = -1;
    407                 p_iY = -1;
     406                p_dX = -1.;
     407                p_dY = -1.;
    408408        }
    409409}
     
    468468
    469469        substractDark();
    470         findSpot( m_iSpotX, m_iSpotY );
    471         qsMsg.sprintf("Spot at: (%d,%d)", m_iSpotX, m_iSpotY );
     470        findSpot( m_dSpotX, m_dSpotY );
     471        qsMsg.sprintf("Spot at: (%6.1f,%6.1f)", m_dSpotX, m_dSpotY );
    472472        outputProgress( qsMsg );
    473473
  • trunk/MagicSoft/AMC/activemirrorcontrol/activemirrorcontrol/calibratelasermovementdialog.h

    r3401 r4485  
    3131private:
    3232        void processSpot( int p_iX, int p_iY );
    33         void findSpot( int& p_iY, int& p_iY );
     33        void findSpot( double& p_dY, double& p_dY );
    3434        int getThreshold();
    3535        void checkStop();
     
    4848        uchar*                                          m_pDark;
    4949        bool                                                    m_zRun;
    50         int                                                             m_iSpotX;
    51         int                                                             m_iSpotY;
     50        double                                          m_dSpotX;
     51        double                                          m_dSpotY;
    5252        QFile                                                   m_qfFile;
    5353        QTextStream                             m_qtsStream;
Note: See TracChangeset for help on using the changeset viewer.