Pcbnew bug solved: Horizontal Oblong pads holes have a bad T Code size in the drill file

This commit is contained in:
charras 2008-08-18 15:18:35 +00:00
parent f3230893c4
commit 1e9a65f5ec
11 changed files with 71 additions and 32 deletions

View File

@ -125,7 +125,6 @@ GLuint Pcb3D_GLCanvas::CreateDrawGL_List()
g_Parm_3D_Visu.m_LayerZcoord[ii] = g_Parm_3D_Visu.m_Epoxy_Width; g_Parm_3D_Visu.m_LayerZcoord[ii] = g_Parm_3D_Visu.m_Epoxy_Width;
} }
//GLfloat zpos_cu = 500 * g_Parm_3D_Visu.m_BoardScale;
GLfloat zpos_cu = 10 * g_Parm_3D_Visu.m_BoardScale; GLfloat zpos_cu = 10 * g_Parm_3D_Visu.m_BoardScale;
GLfloat zpos_cmp = g_Parm_3D_Visu.m_Epoxy_Width + zpos_cu; GLfloat zpos_cmp = g_Parm_3D_Visu.m_Epoxy_Width + zpos_cu;
g_Parm_3D_Visu.m_LayerZcoord[ADHESIVE_N_CU] = -zpos_cu * 2; g_Parm_3D_Visu.m_LayerZcoord[ADHESIVE_N_CU] = -zpos_cu * 2;
@ -406,7 +405,8 @@ void Pcb3D_GLCanvas::Draw3D_DrawText( TEXTE_PCB* text )
double x, y, xf, yf; double x, y, xf, yf;
double zpos, w; double zpos, w;
int color = g_Parm_3D_Visu.m_BoardSettings->m_LayerColor[layer]; int color = g_Parm_3D_Visu.m_BoardSettings->m_LayerColor[layer];
int coord[104]; #define BUFFSIZE 50
int coord[(BUFFSIZE+2)*2];
int ii, jj, kk, ll, nbpoints; int ii, jj, kk, ll, nbpoints;
@ -415,13 +415,12 @@ void Pcb3D_GLCanvas::Draw3D_DrawText( TEXTE_PCB* text )
zpos = g_Parm_3D_Visu.m_LayerZcoord[layer]; zpos = g_Parm_3D_Visu.m_LayerZcoord[layer];
glNormal3f( 0.0, 0.0, Get3DLayerSide( layer ) ); glNormal3f( 0.0, 0.0, Get3DLayerSide( layer ) );
text->CreateDrawData();
jj = 5; ii = jj + 1; jj = 5; ii = jj + 1;
while( ii < text->m_TextDrawingsSize ) while( ii < text->m_TextDrawingsSize )
{ {
nbpoints = text->m_TextDrawings[jj]; nbpoints = text->m_TextDrawings[jj];
if( nbpoints > 50 ) if( nbpoints > BUFFSIZE )
nbpoints = 50; nbpoints = BUFFSIZE;
for( kk = 0, ll = 0; (kk < nbpoints) && (ii < text->m_TextDrawingsSize); kk++ ) for( kk = 0, ll = 0; (kk < nbpoints) && (ii < text->m_TextDrawingsSize); kk++ )
{ {
@ -440,7 +439,6 @@ void Pcb3D_GLCanvas::Draw3D_DrawText( TEXTE_PCB* text )
xf = coord[ll + 2] * g_Parm_3D_Visu.m_BoardScale; xf = coord[ll + 2] * g_Parm_3D_Visu.m_BoardScale;
yf = coord[ll + 3] * g_Parm_3D_Visu.m_BoardScale; yf = coord[ll + 3] * g_Parm_3D_Visu.m_BoardScale;
//printf("text koordinata x=%d, y=%d, x2=%d, y2=%d\n",x,y,xf,yf);
Draw3D_FilledSegment( x, -y, xf, -yf, w, zpos ); Draw3D_FilledSegment( x, -y, xf, -yf, w, zpos );
} }
} }

View File

@ -132,7 +132,7 @@ bool full_options = true;
if ( full_options ) if ( full_options )
{ {
ADD_MENUITEM( referencesMenu, ID_MENU3D_MODULE_ONOFF, ADD_MENUITEM( referencesMenu, ID_MENU3D_MODULE_ONOFF,
_( "3D Footprints Shapes On/Off" ), add_component_xpm ); _( "3D Footprints Shapes On/Off" ), shape_3d_xpm );
#if 0 #if 0
ADD_MENUITEM( referencesMenu, ID_MENU3D_PLACE_ONOFF, ADD_MENUITEM( referencesMenu, ID_MENU3D_PLACE_ONOFF,

View File

@ -249,6 +249,7 @@ OBJECTS = \
showtrack.o\ showtrack.o\
Show_Zone.o\ Show_Zone.o\
Swap_Layer.o\ Swap_Layer.o\
shape_3d.o\
Text_Sketch.o\ Text_Sketch.o\
tool_ratsnet.o\ tool_ratsnet.o\
tools.o\ tools.o\

33
bitmaps/shape_3d.xpm Normal file
View File

@ -0,0 +1,33 @@
/* XPM */
const char *shape_3d_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 11 1",
" c none",
"$ c #ACAEAC",
"% c #3C3E3C",
"+ c #535553",
"X c #B40204",
"@ c #2C2A2C",
"# c #CCCECC",
"& c #044A04",
". c #6B6A6B",
"o c #6C6E6C",
"O c #353335",
/* pixels */
" .X ",
" ..o..o.. X ",
" O..oo......o. ",
" O..........o...",
" .o.O.......o...",
" o..O...oo.o.oo.",
" ...Oo..oo.o.oo.",
" .+++...oo.o.oo.",
" ....o......o...",
" .......oo......",
" @@@@o........o.",
" ### ###@+##@@",
" $$$ $$$ $$$ ",
" ++$ O$$ %$$ ",
" &XX &X %X ",
" "
};

View File

@ -5,6 +5,12 @@ 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.
2008-Aug-18 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================
+pcbnew:
bug solved: Horizontal Oblong pads holes have a bad T Code size.
2008-Aug-15 UPDATE Jerry Jacobs <jerkejacobs@gmail.com> 2008-Aug-15 UPDATE Jerry Jacobs <jerkejacobs@gmail.com>
================================================================================ ================================================================================
+About dialog +About dialog

View File

@ -7,6 +7,7 @@
// Please keep list sorted alphabetically, ignoring case. // Please keep list sorted alphabetically, ignoring case.
extern const char* shape_3d_xpm[];
extern const char* add_arc_xpm[]; extern const char* add_arc_xpm[];
extern const char* add_bus2bus_xpm[]; extern const char* add_bus2bus_xpm[];
extern const char* add_bus_xpm[]; extern const char* add_bus_xpm[];

View File

@ -9,7 +9,7 @@ COMMON_GLOBL wxString g_BuildVersion
# include "config.h" # include "config.h"
(wxT(KICAD_SVN_VERSION)) (wxT(KICAD_SVN_VERSION))
# else # else
(wxT("(20080811.r1188)")) (wxT("(20080818.r1197)"))
# endif # endif
#endif #endif
; ;

Binary file not shown.

View File

@ -3,7 +3,7 @@ msgstr ""
"Project-Id-Version: kicad\n" "Project-Id-Version: kicad\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-08-17 18:59+0100\n" "POT-Creation-Date: 2008-08-17 18:59+0100\n"
"PO-Revision-Date: 2008-08-17 19:02+0100\n" "PO-Revision-Date: 2008-08-17 21:41+0100\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: kicad team <jean-pierre.charras@ujf-grenoble.fr>\n" "Language-Team: kicad team <jean-pierre.charras@ujf-grenoble.fr>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -2591,7 +2591,7 @@ msgstr "Selection couleurs et affichage des éléments du C.I."
#: pcbnew/menubarpcb.cpp:184 #: pcbnew/menubarpcb.cpp:184
msgid "&General Options" msgid "&General Options"
msgstr "Options &générales" msgstr "Options &Générales"
#: pcbnew/menubarpcb.cpp:185 #: pcbnew/menubarpcb.cpp:185
msgid "Select general options for pcbnew" msgid "Select general options for pcbnew"
@ -3658,7 +3658,7 @@ msgstr "Tracé en Negatif"
#: pcbnew/pcbplot.cpp:276 #: pcbnew/pcbplot.cpp:276
msgid "Save Options" msgid "Save Options"
msgstr "Sauver options" msgstr "Sauver Options"
#: pcbnew/pcbplot.cpp:280 #: pcbnew/pcbplot.cpp:280
msgid "Create Drill File" msgid "Create Drill File"
@ -3738,7 +3738,7 @@ msgstr "Perçage réel"
#: pcbnew/pcbplot.cpp:399 #: pcbnew/pcbplot.cpp:399
msgid "Pads Drill Opt" msgid "Pads Drill Opt"
msgstr "Options perçage" msgstr "Options Perçage Pads"
#: pcbnew/pcbplot.cpp:406 #: pcbnew/pcbplot.cpp:406
msgid "Auto scale" msgid "Auto scale"
@ -5484,7 +5484,7 @@ msgstr "Parts par omposant"
#: eeschema/dialog_create_component.cpp:246 #: eeschema/dialog_create_component.cpp:246
msgid "Draw options" msgid "Draw options"
msgstr "Options affichage" msgstr "Options de Tracé"
#: eeschema/dialog_create_component.cpp:250 #: eeschema/dialog_create_component.cpp:250
msgid "Show Pin Number" msgid "Show Pin Number"
@ -5891,7 +5891,7 @@ msgstr "Incrément Y"
#: eeschema/dialog_options.cpp:227 #: eeschema/dialog_options.cpp:227
msgid "Draw Options:" msgid "Draw Options:"
msgstr "Options de tracé:" msgstr "Options de Tracé:"
#: eeschema/dialog_options.cpp:231 #: eeschema/dialog_options.cpp:231
msgid "Show grid" msgid "Show grid"
@ -6497,7 +6497,7 @@ msgstr "Déplacer arc"
#: eeschema/libedit_onrightclick.cpp:81 #: eeschema/libedit_onrightclick.cpp:81
msgid "Arc Options" msgid "Arc Options"
msgstr "Options" msgstr "Options pour l'Arc"
#: eeschema/libedit_onrightclick.cpp:84 #: eeschema/libedit_onrightclick.cpp:84
msgid "Delete Arc " msgid "Delete Arc "
@ -6509,7 +6509,7 @@ msgstr "Déplacer Cercle"
#: eeschema/libedit_onrightclick.cpp:96 #: eeschema/libedit_onrightclick.cpp:96
msgid "Circle Options" msgid "Circle Options"
msgstr "Options" msgstr "Options pour le Cercle"
#: eeschema/libedit_onrightclick.cpp:99 #: eeschema/libedit_onrightclick.cpp:99
msgid "Delete Circle " msgid "Delete Circle "
@ -6521,7 +6521,7 @@ msgstr "Déplacer Rect"
#: eeschema/libedit_onrightclick.cpp:111 #: eeschema/libedit_onrightclick.cpp:111
msgid "Rect Options" msgid "Rect Options"
msgstr "Options" msgstr "Options pour le Rectangle"
#: eeschema/libedit_onrightclick.cpp:114 #: eeschema/libedit_onrightclick.cpp:114
msgid "Delete Rect " msgid "Delete Rect "
@ -6662,7 +6662,7 @@ msgstr "Addition de \"pins\""
#: eeschema/libframe.cpp:483 #: eeschema/libframe.cpp:483
msgid "Set Pin Options" msgid "Set Pin Options"
msgstr "Choix Options des pins" msgstr "Choix Options des Pins"
#: eeschema/libframe.cpp:505 #: eeschema/libframe.cpp:505
msgid "Add Rectangle" msgid "Add Rectangle"
@ -7089,7 +7089,7 @@ msgstr "Utiliser numéro de net"
#: eeschema/netlist_control.cpp:245 #: eeschema/netlist_control.cpp:245
msgid "Netlist Options:" msgid "Netlist Options:"
msgstr "Options de netliste:" msgstr "Options de Netliste:"
#: eeschema/netlist_control.cpp:254 #: eeschema/netlist_control.cpp:254
msgid "Simulator command:" msgid "Simulator command:"
@ -7490,7 +7490,7 @@ msgstr "Format de la feuille:"
#: eeschema/plotps.cpp:209 #: eeschema/plotps.cpp:209
msgid "Plot Options:" msgid "Plot Options:"
msgstr "Options de tracé:" msgstr "Options de Tracé:"
#: eeschema/plotps.cpp:218 #: eeschema/plotps.cpp:218
msgid "B/W" msgid "B/W"
@ -7655,7 +7655,7 @@ msgstr "Taille:"
#: eeschema/symbtext.cpp:158 #: eeschema/symbtext.cpp:158
msgid " Text Options : " msgid " Text Options : "
msgstr "Options du texte:" msgstr "Options du Texte: "
#: eeschema/tool_lib.cpp:45 #: eeschema/tool_lib.cpp:45
msgid "deselect current tool" msgid "deselect current tool"
@ -7993,7 +7993,7 @@ msgstr "Num de la pin :"
#: eeschema/pinedit-dialog.cpp:174 #: eeschema/pinedit-dialog.cpp:174
msgid " Pin Options :" msgid " Pin Options :"
msgstr "Options pin :" msgstr "Options Pin :"
#: eeschema/pinedit-dialog.cpp:190 #: eeschema/pinedit-dialog.cpp:190
msgid "Pin Lenght" msgid "Pin Lenght"
@ -8170,7 +8170,7 @@ msgstr "Cvpcb est est cours d'exécution. Continuer ?"
#: cvpcb/displayframe.cpp:118 #: cvpcb/displayframe.cpp:118
msgid "Display Options" msgid "Display Options"
msgstr "Options d'affichage" msgstr "Options d'Affichage"
#: cvpcb/genorcad.cpp:134 #: cvpcb/genorcad.cpp:134
#, c-format #, c-format
@ -8953,7 +8953,7 @@ msgstr "Format 3.4"
#: gerbview/options.cpp:273 #: gerbview/options.cpp:273
msgid "Gerbview Draw Options" msgid "Gerbview Draw Options"
msgstr "Options d'affichage" msgstr "Options d'Affichage"
#: gerbview/options.cpp:299 #: gerbview/options.cpp:299
msgid "Lines:" msgid "Lines:"
@ -9979,7 +9979,7 @@ msgstr "grille user"
#: pcbnew/cleaningoptions_dialog.h:48 #: pcbnew/cleaningoptions_dialog.h:48
msgid "Cleaning options" msgid "Cleaning options"
msgstr "Options de nettoyage" msgstr "Options de Nettoyage"
#: pcbnew/dialog_drc.h:63 #: pcbnew/dialog_drc.h:63
msgid "DRC Control" msgid "DRC Control"
@ -9995,7 +9995,7 @@ msgstr "dialog_freeroute_exchange"
#: pcbnew/dialog_general_options.h:60 #: pcbnew/dialog_general_options.h:60
msgid "General Options" msgid "General Options"
msgstr "Options générales" msgstr "Options Générales"
#: pcbnew/dialog_initpcb.h:38 #: pcbnew/dialog_initpcb.h:38
msgid "Global Delete" msgid "Global Delete"
@ -10019,7 +10019,7 @@ msgstr "Dims Pistes et Vias"
#: pcbnew/dialog_zones_by_polygon.h:53 #: pcbnew/dialog_zones_by_polygon.h:53
msgid "Fill Zones Options" msgid "Fill Zones Options"
msgstr "Options de remplissage de Zone" msgstr "Options de Remplissage de Zone"
#: pcbnew/drc_stuff.h:147 #: pcbnew/drc_stuff.h:147
#, c-format #, c-format

View File

@ -1019,8 +1019,8 @@ void D_PAD::Display_Infos( WinEDA_DrawFrame* frame )
{ {
valeur_param( (unsigned) m_Drill.x, Line ); valeur_param( (unsigned) m_Drill.x, Line );
wxString msg; wxString msg;
valeur_param( (unsigned) m_Drill.x, msg ); valeur_param( (unsigned) m_Drill.y, msg );
Line += wxT( " " ) + msg; Line += wxT( " / " ) + msg;
Affiche_1_Parametre( frame, pos, _( "Drill X / Y" ), Line, RED ); Affiche_1_Parametre( frame, pos, _( "Drill X / Y" ), Line, RED );
} }

View File

@ -109,7 +109,7 @@ void Build_Holes_List( BOARD* aPcb,
new_hole.m_Tool_Reference = -1; // Flag is: Not initialized new_hole.m_Tool_Reference = -1; // Flag is: Not initialized
new_hole.m_Hole_Orient = pad->m_Orient; new_hole.m_Hole_Orient = pad->m_Orient;
new_hole.m_Hole_Shape = 0; // hole shape: round new_hole.m_Hole_Shape = 0; // hole shape: round
new_hole.m_Hole_Diameter = min( pad->m_Drill.x, pad->m_Drill.x ); new_hole.m_Hole_Diameter = min( pad->m_Drill.x, pad->m_Drill.y );
new_hole.m_Hole_SizeX = new_hole.m_Hole_SizeY = new_hole.m_Hole_Diameter; new_hole.m_Hole_SizeX = new_hole.m_Hole_SizeY = new_hole.m_Hole_Diameter;
if( pad->m_DrillShape != PAD_CIRCLE ) if( pad->m_DrillShape != PAD_CIRCLE )
new_hole.m_Hole_Shape = 1; // oval flag set new_hole.m_Hole_Shape = 1; // oval flag set