Commit 611c2208 authored by CHARRAS's avatar CHARRAS
Browse files

Minor bug in drill map : inaccurate via shapes (trunk and tag)

parent d09c91cd
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -4,6 +4,11 @@ Started 2007-June-11
Please add newer entries at the top, list the date and your name with
Please add newer entries at the top, list the date and your name with
email address.
email address.


2007-Dec-07 UPDATE  Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================
+pcbnew
	Very minor bug in drill map : inaccurate via shapes (I believe EXCELLON drill file has no problems)



    
    
2007-Dec-06 UPDATE  Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
2007-Dec-06 UPDATE  Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+9 −9
Original line number Original line Diff line number Diff line
@@ -611,14 +611,14 @@ int WinEDA_DrillFrame::Gen_Drill_File_EXCELLON( FORET* buffer )
                else
                else
                    Gen_Line_EXCELLON( line, xt * 10, yt * 10 );
                    Gen_Line_EXCELLON( line, xt * 10, yt * 10 );
                to_point( line );
                to_point( line );
                /* remove the '\n' from end of line: */
                /* remove the '\n' from end of line, because we must add the "G85" command to the line: */
                for( int kk = 0; line[kk] != 0; kk++ )
                for( int kk = 0; line[kk] != 0; kk++ )
                    if( line[kk] == '\n' || line[kk] =='\r' )
                    if( line[kk] == '\n' || line[kk] =='\r' )
                        line[kk] = 0;
                        line[kk] = 0;


                fputs( line, dest );
                fputs( line, dest );


                fputs( "G85", dest );
                fputs( "G85", dest );	// add the "G85" command


                xt = float (xf) * conv_unit; yt = float (yf) * conv_unit;
                xt = float (xf) * conv_unit; yt = float (yf) * conv_unit;
                if( Unit_Drill_is_Inch )
                if( Unit_Drill_is_Inch )
@@ -1309,7 +1309,7 @@ int WinEDA_DrillFrame::Plot_Drill_PcbMap( FORET* buffer, int format )
    TRACK*  pt_piste;
    TRACK*  pt_piste;
    D_PAD*  pt_pad;
    D_PAD*  pt_pad;
    MODULE* Module;
    MODULE* Module;
    int     ii, diam, nb_trous;
    int     shape_id, diam, nb_trous;
    wxPoint pos;
    wxPoint pos;
    wxSize  size;
    wxSize  size;


@@ -1324,7 +1324,8 @@ int WinEDA_DrillFrame::Plot_Drill_PcbMap( FORET* buffer, int format )
                     10 );
                     10 );
    }
    }


    for( ii = 0, foret = (FORET*) buffer; ii < DrillToolsCount; ii++, foret++ )
	// Plot the drill map:
    for( shape_id = 0, foret = (FORET*) buffer; shape_id < DrillToolsCount; shape_id++, foret++ )
    {
    {
        /* create the via drill map */
        /* create the via drill map */
        {
        {
@@ -1333,14 +1334,13 @@ int WinEDA_DrillFrame::Plot_Drill_PcbMap( FORET* buffer, int format )
            {
            {
                if( pt_piste->Type() != TYPEVIA )
                if( pt_piste->Type() != TYPEVIA )
                    continue;
                    continue;
                if( pt_piste->m_Drill == 0 )
                    continue;

                int via_drill = g_DesignSettings.m_ViaDrill;
                int via_drill = g_DesignSettings.m_ViaDrill;
                if( pt_piste->m_Drill >= 0 )
                if( pt_piste->m_Drill >= 0 )
                    via_drill = pt_piste->m_Drill;
                    via_drill = pt_piste->m_Drill;
				if( via_drill != foret->m_Diameter )
					continue;
                pos = pt_piste->m_Start;
                pos = pt_piste->m_Start;
                PlotDrillSymbol( pos, via_drill, ii, format );
                PlotDrillSymbol( pos, via_drill, shape_id, format );


                nb_trous++;
                nb_trous++;
            }
            }
@@ -1357,7 +1357,7 @@ int WinEDA_DrillFrame::Plot_Drill_PcbMap( FORET* buffer, int format )
                    diam = pt_pad->m_Drill.x;
                    diam = pt_pad->m_Drill.x;
                    if( diam != foret->m_Diameter )
                    if( diam != foret->m_Diameter )
                        continue;
                        continue;
                    PlotDrillSymbol( pt_pad->m_Pos, diam, ii, format );
                    PlotDrillSymbol( pt_pad->m_Pos, diam, shape_id, format );
                    break;
                    break;


                case OVALE:
                case OVALE: