Loading change_log.txt +8 −0 Original line number Original line Diff line number Diff line Loading @@ -5,6 +5,14 @@ Please add newer entries at the top, list the date and your name with email address. email address. 2007-Aug-24 UPDATE Geoff Harland <gharlandau@yahoo.com.au> ================================================================================ + pcbnew A new option has now been provided which permits Gerber files to be generated in which the contents of the Edges Pcb layer are not also included with the contents of each other layer. 2007-Aug-23 UPDATE Dick Hollenbeck <dick@softplc.com> 2007-Aug-23 UPDATE Dick Hollenbeck <dick@softplc.com> ================================================================================ ================================================================================ + eeschema & pcbnew + eeschema & pcbnew Loading pcbnew/pcbplot.cpp +178 −153 Original line number Original line Diff line number Diff line Loading @@ -16,12 +16,12 @@ #define PLOT_DEFAULT_MARGE 300 // mils #define PLOT_DEFAULT_MARGE 300 // mils /* variables locale : */ // variables locale : static long s_SelectedLayers = CUIVRE_LAYER | CMP_LAYER | static long s_SelectedLayers = CUIVRE_LAYER | CMP_LAYER | SILKSCREEN_LAYER_CMP | SILKSCREEN_LAYER_CU; SILKSCREEN_LAYER_CMP | SILKSCREEN_LAYER_CU; static bool s_PlotOriginIsAuxAxis = FALSE; static bool s_PlotOriginIsAuxAxis = FALSE; /* Routines Locales */ // Routines Locales enum id_plotps enum id_plotps { { Loading @@ -37,6 +37,7 @@ enum id_plotps ID_SEL_PLOT_FORMAT, ID_SEL_PLOT_FORMAT, ID_SEL_GERBER_FORMAT, ID_SEL_GERBER_FORMAT, ID_SAVE_OPT_PLOT, ID_SAVE_OPT_PLOT, ID_EXCLUDE_EDGES_PCB, ID_PRINT_REF, ID_PRINT_REF, ID_PRINT_VALUE, ID_PRINT_VALUE, ID_PRINT_MODULE_TEXTS, ID_PRINT_MODULE_TEXTS, Loading Loading @@ -66,6 +67,7 @@ public: wxCheckBox * m_PlotMirorOpt; wxCheckBox * m_PlotMirorOpt; wxCheckBox * m_PlotNoViaOnMaskOpt; wxCheckBox * m_PlotNoViaOnMaskOpt; wxCheckBox * m_HPGL_PlotCenter_Opt; wxCheckBox * m_HPGL_PlotCenter_Opt; wxCheckBox * m_Exclude_Edges_Pcb; wxCheckBox * m_Plot_Sheet_Ref; wxCheckBox * m_Plot_Sheet_Ref; wxCheckBox * m_Plot_Invisible_Text; wxCheckBox * m_Plot_Invisible_Text; wxCheckBox * m_Plot_Text_Value; wxCheckBox * m_Plot_Text_Value; Loading Loading @@ -105,10 +107,11 @@ BEGIN_EVENT_TABLE(WinEDA_PlotFrame, wxDialog) END_EVENT_TABLE() END_EVENT_TABLE() const int UNITS_MILS = 1000; const int H_SIZE = 640; const int V_SIZE = 430; #define UNITS_MILS 1000 #define H_SIZE 640 #define V_SIZE 430 /********************************************************************/ /********************************************************************/ WinEDA_PlotFrame::WinEDA_PlotFrame(WinEDA_BasePcbFrame * parent): WinEDA_PlotFrame::WinEDA_PlotFrame(WinEDA_BasePcbFrame * parent): wxDialog(parent, -1, _("Plot"), wxDialog(parent, -1, _("Plot"), Loading Loading @@ -166,15 +169,15 @@ wxString fmtmsg[4] = { wxT("HPGL"), wxT("Gerber"), wxT("Postscript"), wxT("Posts break; break; } } /* Creation des menus d'option du format GERBER */ // Creation des menus d'option du format GERBER m_GerbSpotSizeMinOpt = new WinEDA_ValueCtrl(this, _("Spot min"), m_GerbSpotSizeMinOpt = new WinEDA_ValueCtrl(this, _("Spot min"), spot_mini, g_UnitMetric, MidRightBoxSizer, UNITS_MILS); spot_mini, g_UnitMetric, MidRightBoxSizer, UNITS_MILS); /* Creation des menus d'option du format HPGL */ // Creation des menus d'option du format HPGL m_HPGLPenSizeOpt = new WinEDA_ValueCtrl(this, _("Pen Size"), m_HPGLPenSizeOpt = new WinEDA_ValueCtrl(this, _("Pen Size"), g_HPGL_Pen_Diam, g_UnitMetric, MidRightBoxSizer, UNITS_MILS); g_HPGL_Pen_Diam, g_UnitMetric, MidRightBoxSizer, UNITS_MILS); /* unites standards = cm pour vitesse plume en HPLG */ // unites standards = cm pour vitesse plume en HPGL m_HPGLPenSpeedOpt = new WinEDA_ValueCtrl(this, _("Pen Speed (cm/s)"), m_HPGLPenSpeedOpt = new WinEDA_ValueCtrl(this, _("Pen Speed (cm/s)"), g_HPGL_Pen_Speed, CENTIMETRE, MidRightBoxSizer, 1); g_HPGL_Pen_Speed, CENTIMETRE, MidRightBoxSizer, 1); m_HPGLPenSpeedOpt->SetToolTip(_("Set pen speed in cm/s")); m_HPGLPenSpeedOpt->SetToolTip(_("Set pen speed in cm/s")); Loading @@ -187,14 +190,15 @@ wxString fmtmsg[4] = { wxT("HPGL"), wxT("Gerber"), wxT("Postscript"), wxT("Posts g_PlotLine_Width, g_UnitMetric, MidRightBoxSizer, PCB_INTERNAL_UNIT); g_PlotLine_Width, g_UnitMetric, MidRightBoxSizer, PCB_INTERNAL_UNIT); m_LinesWidth->SetToolTip(_("Set width for lines in Line plot mode")); m_LinesWidth->SetToolTip(_("Set width for lines in Line plot mode")); /* Create the right column commands */ // Create the right column commands wxString choice_plot_offset_msg[] = wxString choice_plot_offset_msg[] = {_("Absolute"), _("Auxiliary axis")}; {_("Absolute"), _("Auxiliary axis")}; m_Choice_Plot_Offset = new wxRadioBox(this, ID_SEL_PLOT_OFFSET_OPTION, m_Choice_Plot_Offset = new wxRadioBox(this, ID_SEL_PLOT_OFFSET_OPTION, _("Plot Origin"), _("Plot Origin"), wxDefaultPosition,wxSize(-1,-1), wxDefaultPosition,wxSize(-1,-1), 2,choice_plot_offset_msg,1,wxRA_SPECIFY_COLS); 2,choice_plot_offset_msg,1,wxRA_SPECIFY_COLS); if ( s_PlotOriginIsAuxAxis ) m_Choice_Plot_Offset->SetSelection(1); if( s_PlotOriginIsAuxAxis ) m_Choice_Plot_Offset->SetSelection(1); RightBoxSizer->Add(m_Choice_Plot_Offset, 0, wxGROW|wxALL, 5); RightBoxSizer->Add(m_Choice_Plot_Offset, 0, wxGROW|wxALL, 5); /* Add a spacer for a better look */ /* Add a spacer for a better look */ RightBoxSizer->Add(5, 5, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 20); RightBoxSizer->Add(5, 5, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 20); Loading @@ -216,7 +220,6 @@ wxString choice_plot_offset_msg[] = Button->SetForegroundColour(wxColour(0,80,80) ); Button->SetForegroundColour(wxColour(0,80,80) ); RightBoxSizer->Add(Button, 0, wxGROW|wxALL, 5); RightBoxSizer->Add(Button, 0, wxGROW|wxALL, 5); // Create scale adjust option // Create scale adjust option m_XScaleAdjust = m_YScaleAdjust = 1.0; m_XScaleAdjust = m_YScaleAdjust = 1.0; if( m_Parent->m_Parent->m_EDA_Config ) if( m_Parent->m_Parent->m_EDA_Config ) Loading @@ -233,7 +236,7 @@ wxString choice_plot_offset_msg[] = m_Plot_PS_Negative->SetValue(g_Plot_PS_Negative); m_Plot_PS_Negative->SetValue(g_Plot_PS_Negative); RightBoxSizer->Add(m_Plot_PS_Negative, 0, wxGROW|wxALL, 5); RightBoxSizer->Add(m_Plot_PS_Negative, 0, wxGROW|wxALL, 5); /* Creation de la liste des layers */ // Creation de la liste des layers int mask = 1; int mask = 1; wxBoxSizer * OneColonLayerBoxSizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer * OneColonLayerBoxSizer = new wxBoxSizer(wxVERTICAL); LayersBoxSizer->Add(OneColonLayerBoxSizer, 0, wxGROW|wxALL, 5); LayersBoxSizer->Add(OneColonLayerBoxSizer, 0, wxGROW|wxALL, 5); Loading @@ -245,12 +248,20 @@ wxString choice_plot_offset_msg[] = LayersBoxSizer->Add(OneColonLayerBoxSizer, 0, wxGROW|wxALL, 5); LayersBoxSizer->Add(OneColonLayerBoxSizer, 0, wxGROW|wxALL, 5); } } m_BoxSelecLayer[ii] = new wxCheckBox(this, -1, m_BoxSelecLayer[ii] = new wxCheckBox(this, -1, ReturnPcbLayerName(ii)); ReturnPcbLayerName(ii)); if( mask & s_SelectedLayers ) if ( mask & s_SelectedLayers) m_BoxSelecLayer[ii]->SetValue(true); m_BoxSelecLayer[ii]->SetValue(true); OneColonLayerBoxSizer->Add(m_BoxSelecLayer[ii], 0, wxGROW|wxALL, 1); OneColonLayerBoxSizer->Add(m_BoxSelecLayer[ii], 0, wxGROW|wxALL, 1); } } // Option for excluding contents of "Edges Pcb" layer m_Exclude_Edges_Pcb = new wxCheckBox(this, ID_EXCLUDE_EDGES_PCB, _("Exclude Edges Pcb layer") ); m_Exclude_Edges_Pcb->SetValue(Exclude_Edges_Pcb); m_Exclude_Edges_Pcb->SetToolTip( _("Exclude contents of Edges Pcb layer from all other layers") ); LeftBoxSizer->Add(m_Exclude_Edges_Pcb, 0, wxGROW|wxALL, 1); // Option d'impression du cartouche: // Option d'impression du cartouche: if( m_Parent->m_Print_Sheet_Ref ) if( m_Parent->m_Print_Sheet_Ref ) { { Loading @@ -258,7 +269,8 @@ wxString choice_plot_offset_msg[] = m_Plot_Sheet_Ref->SetValue(Plot_Sheet_Ref); m_Plot_Sheet_Ref->SetValue(Plot_Sheet_Ref); LeftBoxSizer->Add(m_Plot_Sheet_Ref, 0, wxGROW|wxALL, 1); LeftBoxSizer->Add(m_Plot_Sheet_Ref, 0, wxGROW|wxALL, 1); } } else Plot_Sheet_Ref = false; else Plot_Sheet_Ref = false; // Option d'impression des pads sur toutes les couches // Option d'impression des pads sur toutes les couches m_Plot_Pads_on_Silkscreen = new wxCheckBox(this, m_Plot_Pads_on_Silkscreen = new wxCheckBox(this, Loading Loading @@ -349,19 +361,23 @@ wxCommandEvent event; GetSizer()->SetSizeHints(this); GetSizer()->SetSizeHints(this); } } /***************************************************************/ /***************************************************************/ void WinEDA_PlotFrame::OnQuit(wxCommandEvent& WXUNUSED(event)) void WinEDA_PlotFrame::OnQuit(wxCommandEvent& WXUNUSED(event)) /***************************************************************/ /***************************************************************/ /* Called by the close button /* Called by the close button */ */ { { Close(true); // true is to force the frame to close Close(true); // true is to force the frame to close } } /****************************************************/ /****************************************************/ void WinEDA_PlotFrame::OnClose(wxCloseEvent & event) void WinEDA_PlotFrame::OnClose(wxCloseEvent & event) /****************************************************/ /****************************************************/ /* called when WinEDA_PlotFrame is closed /* Called when WinEDA_PlotFrame is closed */ */ { { EndModal(0); EndModal(0); Loading @@ -371,15 +387,18 @@ void WinEDA_PlotFrame::OnClose(wxCloseEvent & event) /*********************************************************/ /*********************************************************/ void WinEDA_PlotFrame::CreateDrillFile(wxCommandEvent & event) void WinEDA_PlotFrame::CreateDrillFile(wxCommandEvent & event) /*********************************************************/ /*********************************************************/ /* Create the board drill file used with gerber documents /* Create the board drill file used with gerber documents */ */ { { ((WinEDA_PcbFrame * )m_Parent)->InstallDrillFrame(event); ((WinEDA_PcbFrame * )m_Parent)->InstallDrillFrame(event); } } /*********************************************************/ /*********************************************************/ void WinEDA_PlotFrame::SetCommands(wxCommandEvent & event) void WinEDA_PlotFrame::SetCommands(wxCommandEvent & event) /*********************************************************/ /*********************************************************/ /* active ou dsactive les diffrents menus d'option selon le standard choisi /* active ou dsactive les diffrents menus d'option selon le standard choisi */ */ { { Loading @@ -394,6 +413,7 @@ int format_list[] = { { case PLOT_FORMAT_POST_A4: case PLOT_FORMAT_POST_A4: case PLOT_FORMAT_POST: case PLOT_FORMAT_POST: default: m_Drill_Shape_Opt->Enable(true); m_Drill_Shape_Opt->Enable(true); m_PlotModeOpt->Enable(true); m_PlotModeOpt->Enable(true); m_PlotMirorOpt->Enable(true); m_PlotMirorOpt->Enable(true); Loading @@ -404,13 +424,13 @@ int format_list[] = m_HPGLPenSpeedOpt->Enable(false); m_HPGLPenSpeedOpt->Enable(false); m_HPGLPenOverlayOpt->Enable(false); m_HPGLPenOverlayOpt->Enable(false); m_HPGL_PlotCenter_Opt->Enable(false); m_HPGL_PlotCenter_Opt->Enable(false); m_Exclude_Edges_Pcb->Enable(false); m_Plot_Sheet_Ref->Enable(true); m_Plot_Sheet_Ref->Enable(true); m_Scale_Opt->Enable(true); m_Scale_Opt->Enable(true); m_FineAdjustXscaleOpt->Enable(true); m_FineAdjustXscaleOpt->Enable(true); m_FineAdjustYscaleOpt->Enable(true); m_FineAdjustYscaleOpt->Enable(true); m_PlotFormat = PLOT_FORMAT_POST; m_PlotFormat = PLOT_FORMAT_POST; if ( format == PLOT_FORMAT_POST_A4 ) g_ForcePlotPS_On_A4 = true; g_ForcePlotPS_On_A4 = (format == PLOT_FORMAT_POST_A4); else g_ForcePlotPS_On_A4 = false; m_Plot_PS_Negative->Enable(true); m_Plot_PS_Negative->Enable(true); break; break; Loading @@ -425,6 +445,7 @@ int format_list[] = m_HPGLPenSpeedOpt->Enable(false); m_HPGLPenSpeedOpt->Enable(false); m_HPGLPenOverlayOpt->Enable(false); m_HPGLPenOverlayOpt->Enable(false); m_HPGL_PlotCenter_Opt->Enable(false); m_HPGL_PlotCenter_Opt->Enable(false); m_Exclude_Edges_Pcb->Enable(true); m_Plot_Sheet_Ref->Enable(false); m_Plot_Sheet_Ref->Enable(false); m_Scale_Opt->Enable(false); m_Scale_Opt->Enable(false); m_FineAdjustXscaleOpt->Enable(false); m_FineAdjustXscaleOpt->Enable(false); Loading @@ -444,6 +465,7 @@ int format_list[] = m_HPGLPenSpeedOpt->Enable(true); m_HPGLPenSpeedOpt->Enable(true); m_HPGLPenOverlayOpt->Enable(true); m_HPGLPenOverlayOpt->Enable(true); m_HPGL_PlotCenter_Opt->Enable(true); m_HPGL_PlotCenter_Opt->Enable(true); m_Exclude_Edges_Pcb->Enable(false); m_Plot_Sheet_Ref->Enable(true); m_Plot_Sheet_Ref->Enable(true); m_Scale_Opt->Enable(true); m_Scale_Opt->Enable(true); m_FineAdjustXscaleOpt->Enable(false); m_FineAdjustXscaleOpt->Enable(false); Loading @@ -455,10 +477,13 @@ int format_list[] = format_plot = m_PlotFormat; format_plot = m_PlotFormat; } } /*********************************************************/ /*********************************************************/ void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) /*********************************************************/ /*********************************************************/ { { Exclude_Edges_Pcb = m_Exclude_Edges_Pcb->GetValue(); if( m_Plot_Sheet_Ref ) if( m_Plot_Sheet_Ref ) Plot_Sheet_Ref = m_Plot_Sheet_Ref->GetValue(); Plot_Sheet_Ref = m_Plot_Sheet_Ref->GetValue(); Loading @@ -475,8 +500,10 @@ void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) g_PlotScaleOpt = m_Scale_Opt->GetSelection(); g_PlotScaleOpt = m_Scale_Opt->GetSelection(); g_DrillShapeOpt = m_Drill_Shape_Opt->GetSelection(); g_DrillShapeOpt = m_Drill_Shape_Opt->GetSelection(); Plot_Set_MIROIR = m_PlotMirorOpt->GetValue(); Plot_Set_MIROIR = m_PlotMirorOpt->GetValue(); if ( Plot_Set_MIROIR ) g_PlotOrient = PLOT_MIROIR; if( Plot_Set_MIROIR ) else g_PlotOrient = 0; g_PlotOrient = PLOT_MIROIR; else g_PlotOrient = 0; Plot_Mode = m_PlotModeOpt->GetSelection(); Plot_Mode = m_PlotModeOpt->GetSelection(); g_DrawViaOnMaskLayer = m_PlotNoViaOnMaskOpt->GetValue(); g_DrawViaOnMaskLayer = m_PlotNoViaOnMaskOpt->GetValue(); spot_mini = m_GerbSpotSizeMinOpt->GetValue(); spot_mini = m_GerbSpotSizeMinOpt->GetValue(); Loading @@ -488,6 +515,7 @@ void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) m_XScaleAdjust = m_FineAdjustXscaleOpt->GetValue(); m_XScaleAdjust = m_FineAdjustXscaleOpt->GetValue(); m_YScaleAdjust = m_FineAdjustYscaleOpt->GetValue(); m_YScaleAdjust = m_FineAdjustYscaleOpt->GetValue(); if( m_Parent->m_Parent->m_EDA_Config ) if( m_Parent->m_Parent->m_EDA_Config ) { { m_Parent->m_Parent->m_EDA_Config->Write(wxT("PlotXFineScaleAdj"), m_XScaleAdjust); m_Parent->m_Parent->m_EDA_Config->Write(wxT("PlotXFineScaleAdj"), m_XScaleAdjust); Loading @@ -497,6 +525,7 @@ void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) g_Plot_PS_Negative = m_Plot_PS_Negative->GetValue(); g_Plot_PS_Negative = m_Plot_PS_Negative->GetValue(); } } /***************************************************/ /***************************************************/ void WinEDA_PlotFrame::Plot(wxCommandEvent & event) void WinEDA_PlotFrame::Plot(wxCommandEvent & event) /***************************************************/ /***************************************************/ Loading Loading @@ -524,7 +553,6 @@ wxString ext; case 4: case 4: Scale_X = Scale_Y = 3; Scale_X = Scale_Y = 3; break; break; } } Scale_X *= m_XScaleAdjust; Scale_X *= m_XScaleAdjust; Loading Loading @@ -556,7 +584,7 @@ wxString ext; if( m_BoxSelecLayer[layer_to_plot]->GetValue() ) if( m_BoxSelecLayer[layer_to_plot]->GetValue() ) { { s_SelectedLayers |= mask; s_SelectedLayers |= mask; /* Calcul du nom du fichier */ // Calcul du nom du fichier FullFileName = BaseFileName + ReturnPcbLayerName(layer_to_plot, true) + ext; FullFileName = BaseFileName + ReturnPcbLayerName(layer_to_plot, true) + ext; switch ( m_PlotFormat) switch ( m_PlotFormat) { { Loading @@ -571,11 +599,9 @@ wxString ext; case PLOT_FORMAT_HPGL: case PLOT_FORMAT_HPGL: m_Parent->Genere_HPGL(FullFileName, layer_to_plot); m_Parent->Genere_HPGL(FullFileName, layer_to_plot); break; break; } } } } } } // Close(true); // Close(true); } } Loading @@ -588,4 +614,3 @@ void WinEDA_BasePcbFrame::ToPlotter(wxCommandEvent& event) frame->ShowModal(); frame->Destroy(); frame->ShowModal(); frame->Destroy(); } } pcbnew/pcbplot.h +6 −0 Original line number Original line Diff line number Diff line Loading @@ -18,6 +18,11 @@ #define SCALE_HPGL 0.102041 #define SCALE_HPGL 0.102041 /* Options : */ /* Options : */ eda_global bool Exclude_Edges_Pcb // True to exclude contents of Edges Pcb layer #ifdef MAIN = TRUE #endif ; eda_global bool Plot_Sheet_Ref; eda_global bool Plot_Sheet_Ref; eda_global bool g_DrawViaOnMaskLayer; // True if vias are drawn on Mask layer (ie protected by mask) eda_global bool g_DrawViaOnMaskLayer; // True if vias are drawn on Mask layer (ie protected by mask) eda_global int Plot_Mode // = FILAIRE, FILL ou SKETCH eda_global int Plot_Mode // = FILAIRE, FILL ou SKETCH Loading Loading @@ -190,3 +195,4 @@ void trace_1_pad_TRAPEZE_POST(wxPoint centre, wxSize size, wxSize delta, #endif /* #define PCBPLOT_H */ #endif /* #define PCBPLOT_H */ pcbnew/plot_rtn.cpp +13 −10 Original line number Original line Diff line number Diff line Loading @@ -47,23 +47,24 @@ wxString msg; switch( PtStruct->m_StructType ) switch( PtStruct->m_StructType ) { { case TYPEDRAWSEGMENT: case TYPEDRAWSEGMENT: PlotDrawSegment( (DRAWSEGMENT*) PtStruct, format_plot, PlotDrawSegment( (DRAWSEGMENT*) PtStruct, format_plot, masque_layer ); EDGE_LAYER | masque_layer ); // (Following line has been superceded by new commands elsewhere.) // EDGE_LAYER | masque_layer ); break; break; case TYPETEXTE: case TYPETEXTE: PlotTextePcb((TEXTE_PCB*) PtStruct,format_plot, PlotTextePcb( (TEXTE_PCB*) PtStruct,format_plot, masque_layer ); EDGE_LAYER | masque_layer); // EDGE_LAYER | masque_layer ); break; break; case TYPECOTATION: case TYPECOTATION: PlotCotation((COTATION*) PtStruct, format_plot, PlotCotation( (COTATION*) PtStruct, format_plot, masque_layer ); EDGE_LAYER | masque_layer); // EDGE_LAYER | masque_layer ); break; break; case TYPEMIRE: case TYPEMIRE: PlotMirePcb((MIREPCB*) PtStruct, format_plot, PlotMirePcb( (MIREPCB*) PtStruct, format_plot, masque_layer ); EDGE_LAYER | masque_layer); // EDGE_LAYER | masque_layer ); break; break; case TYPEMARQUEUR: case TYPEMARQUEUR: Loading Loading @@ -285,7 +286,8 @@ DRAWSEGMENT *DrawTmp; DrawTmp = new DRAWSEGMENT(NULL); DrawTmp = new DRAWSEGMENT(NULL); masque_layer |= EDGE_LAYER; // (Following command has been superceded by new commands elsewhere.) // masque_layer |= EDGE_LAYER; DrawTmp->m_Width = Cotation->m_Width; DrawTmp->m_Width = Cotation->m_Width; DrawTmp->SetLayer( Cotation->GetLayer() ); DrawTmp->SetLayer( Cotation->GetLayer() ); Loading Loading @@ -334,7 +336,8 @@ int dx1,dx2, dy1, dy2, rayon; DrawTmp = new DRAWSEGMENT(NULL); DrawTmp = new DRAWSEGMENT(NULL); masque_layer |= EDGE_LAYER; // (Following command has been superceded by new commands elsewhere.) // masque_layer |= EDGE_LAYER; DrawTmp->m_Width = Mire->m_Width; DrawTmp->m_Width = Mire->m_Width; DrawTmp->SetLayer( Mire->GetLayer() ); DrawTmp->SetLayer( Mire->GetLayer() ); Loading pcbnew/plotgerb.cpp +16 −10 Original line number Original line Diff line number Diff line Loading @@ -87,6 +87,11 @@ int tracevia = 1; nb_plot_erreur = 0 ; nb_plot_erreur = 0 ; int layer_mask = g_TabOneLayerMask[Layer]; int layer_mask = g_TabOneLayerMask[Layer]; // Specify that the contents of the "Edges Pcb" layer are also to be // plotted, unless the option of excluding that layer has been selected. if( ! Exclude_Edges_Pcb ) layer_mask |= EDGE_LAYER; switch(Layer) switch(Layer) { { case CUIVRE_N : case CUIVRE_N : Loading Loading @@ -145,7 +150,8 @@ TRACK * track ; EDA_BaseStruct * PtStruct; EDA_BaseStruct * PtStruct; wxString msg; wxString msg; masque_layer |= EDGE_LAYER; /* Les elements de la couche EDGE sont tj traces */ // (Following command has been superceded by new command on lines 92 and 93.) // masque_layer |= EDGE_LAYER; /* Les elements de la couche EDGE sont tj traces */ /* trace des elements type Drawings Pcb : */ /* trace des elements type Drawings Pcb : */ PtStruct = m_Pcb->m_Drawings; PtStruct = m_Pcb->m_Drawings; Loading Loading
change_log.txt +8 −0 Original line number Original line Diff line number Diff line Loading @@ -5,6 +5,14 @@ Please add newer entries at the top, list the date and your name with email address. email address. 2007-Aug-24 UPDATE Geoff Harland <gharlandau@yahoo.com.au> ================================================================================ + pcbnew A new option has now been provided which permits Gerber files to be generated in which the contents of the Edges Pcb layer are not also included with the contents of each other layer. 2007-Aug-23 UPDATE Dick Hollenbeck <dick@softplc.com> 2007-Aug-23 UPDATE Dick Hollenbeck <dick@softplc.com> ================================================================================ ================================================================================ + eeschema & pcbnew + eeschema & pcbnew Loading
pcbnew/pcbplot.cpp +178 −153 Original line number Original line Diff line number Diff line Loading @@ -16,12 +16,12 @@ #define PLOT_DEFAULT_MARGE 300 // mils #define PLOT_DEFAULT_MARGE 300 // mils /* variables locale : */ // variables locale : static long s_SelectedLayers = CUIVRE_LAYER | CMP_LAYER | static long s_SelectedLayers = CUIVRE_LAYER | CMP_LAYER | SILKSCREEN_LAYER_CMP | SILKSCREEN_LAYER_CU; SILKSCREEN_LAYER_CMP | SILKSCREEN_LAYER_CU; static bool s_PlotOriginIsAuxAxis = FALSE; static bool s_PlotOriginIsAuxAxis = FALSE; /* Routines Locales */ // Routines Locales enum id_plotps enum id_plotps { { Loading @@ -37,6 +37,7 @@ enum id_plotps ID_SEL_PLOT_FORMAT, ID_SEL_PLOT_FORMAT, ID_SEL_GERBER_FORMAT, ID_SEL_GERBER_FORMAT, ID_SAVE_OPT_PLOT, ID_SAVE_OPT_PLOT, ID_EXCLUDE_EDGES_PCB, ID_PRINT_REF, ID_PRINT_REF, ID_PRINT_VALUE, ID_PRINT_VALUE, ID_PRINT_MODULE_TEXTS, ID_PRINT_MODULE_TEXTS, Loading Loading @@ -66,6 +67,7 @@ public: wxCheckBox * m_PlotMirorOpt; wxCheckBox * m_PlotMirorOpt; wxCheckBox * m_PlotNoViaOnMaskOpt; wxCheckBox * m_PlotNoViaOnMaskOpt; wxCheckBox * m_HPGL_PlotCenter_Opt; wxCheckBox * m_HPGL_PlotCenter_Opt; wxCheckBox * m_Exclude_Edges_Pcb; wxCheckBox * m_Plot_Sheet_Ref; wxCheckBox * m_Plot_Sheet_Ref; wxCheckBox * m_Plot_Invisible_Text; wxCheckBox * m_Plot_Invisible_Text; wxCheckBox * m_Plot_Text_Value; wxCheckBox * m_Plot_Text_Value; Loading Loading @@ -105,10 +107,11 @@ BEGIN_EVENT_TABLE(WinEDA_PlotFrame, wxDialog) END_EVENT_TABLE() END_EVENT_TABLE() const int UNITS_MILS = 1000; const int H_SIZE = 640; const int V_SIZE = 430; #define UNITS_MILS 1000 #define H_SIZE 640 #define V_SIZE 430 /********************************************************************/ /********************************************************************/ WinEDA_PlotFrame::WinEDA_PlotFrame(WinEDA_BasePcbFrame * parent): WinEDA_PlotFrame::WinEDA_PlotFrame(WinEDA_BasePcbFrame * parent): wxDialog(parent, -1, _("Plot"), wxDialog(parent, -1, _("Plot"), Loading Loading @@ -166,15 +169,15 @@ wxString fmtmsg[4] = { wxT("HPGL"), wxT("Gerber"), wxT("Postscript"), wxT("Posts break; break; } } /* Creation des menus d'option du format GERBER */ // Creation des menus d'option du format GERBER m_GerbSpotSizeMinOpt = new WinEDA_ValueCtrl(this, _("Spot min"), m_GerbSpotSizeMinOpt = new WinEDA_ValueCtrl(this, _("Spot min"), spot_mini, g_UnitMetric, MidRightBoxSizer, UNITS_MILS); spot_mini, g_UnitMetric, MidRightBoxSizer, UNITS_MILS); /* Creation des menus d'option du format HPGL */ // Creation des menus d'option du format HPGL m_HPGLPenSizeOpt = new WinEDA_ValueCtrl(this, _("Pen Size"), m_HPGLPenSizeOpt = new WinEDA_ValueCtrl(this, _("Pen Size"), g_HPGL_Pen_Diam, g_UnitMetric, MidRightBoxSizer, UNITS_MILS); g_HPGL_Pen_Diam, g_UnitMetric, MidRightBoxSizer, UNITS_MILS); /* unites standards = cm pour vitesse plume en HPLG */ // unites standards = cm pour vitesse plume en HPGL m_HPGLPenSpeedOpt = new WinEDA_ValueCtrl(this, _("Pen Speed (cm/s)"), m_HPGLPenSpeedOpt = new WinEDA_ValueCtrl(this, _("Pen Speed (cm/s)"), g_HPGL_Pen_Speed, CENTIMETRE, MidRightBoxSizer, 1); g_HPGL_Pen_Speed, CENTIMETRE, MidRightBoxSizer, 1); m_HPGLPenSpeedOpt->SetToolTip(_("Set pen speed in cm/s")); m_HPGLPenSpeedOpt->SetToolTip(_("Set pen speed in cm/s")); Loading @@ -187,14 +190,15 @@ wxString fmtmsg[4] = { wxT("HPGL"), wxT("Gerber"), wxT("Postscript"), wxT("Posts g_PlotLine_Width, g_UnitMetric, MidRightBoxSizer, PCB_INTERNAL_UNIT); g_PlotLine_Width, g_UnitMetric, MidRightBoxSizer, PCB_INTERNAL_UNIT); m_LinesWidth->SetToolTip(_("Set width for lines in Line plot mode")); m_LinesWidth->SetToolTip(_("Set width for lines in Line plot mode")); /* Create the right column commands */ // Create the right column commands wxString choice_plot_offset_msg[] = wxString choice_plot_offset_msg[] = {_("Absolute"), _("Auxiliary axis")}; {_("Absolute"), _("Auxiliary axis")}; m_Choice_Plot_Offset = new wxRadioBox(this, ID_SEL_PLOT_OFFSET_OPTION, m_Choice_Plot_Offset = new wxRadioBox(this, ID_SEL_PLOT_OFFSET_OPTION, _("Plot Origin"), _("Plot Origin"), wxDefaultPosition,wxSize(-1,-1), wxDefaultPosition,wxSize(-1,-1), 2,choice_plot_offset_msg,1,wxRA_SPECIFY_COLS); 2,choice_plot_offset_msg,1,wxRA_SPECIFY_COLS); if ( s_PlotOriginIsAuxAxis ) m_Choice_Plot_Offset->SetSelection(1); if( s_PlotOriginIsAuxAxis ) m_Choice_Plot_Offset->SetSelection(1); RightBoxSizer->Add(m_Choice_Plot_Offset, 0, wxGROW|wxALL, 5); RightBoxSizer->Add(m_Choice_Plot_Offset, 0, wxGROW|wxALL, 5); /* Add a spacer for a better look */ /* Add a spacer for a better look */ RightBoxSizer->Add(5, 5, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 20); RightBoxSizer->Add(5, 5, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 20); Loading @@ -216,7 +220,6 @@ wxString choice_plot_offset_msg[] = Button->SetForegroundColour(wxColour(0,80,80) ); Button->SetForegroundColour(wxColour(0,80,80) ); RightBoxSizer->Add(Button, 0, wxGROW|wxALL, 5); RightBoxSizer->Add(Button, 0, wxGROW|wxALL, 5); // Create scale adjust option // Create scale adjust option m_XScaleAdjust = m_YScaleAdjust = 1.0; m_XScaleAdjust = m_YScaleAdjust = 1.0; if( m_Parent->m_Parent->m_EDA_Config ) if( m_Parent->m_Parent->m_EDA_Config ) Loading @@ -233,7 +236,7 @@ wxString choice_plot_offset_msg[] = m_Plot_PS_Negative->SetValue(g_Plot_PS_Negative); m_Plot_PS_Negative->SetValue(g_Plot_PS_Negative); RightBoxSizer->Add(m_Plot_PS_Negative, 0, wxGROW|wxALL, 5); RightBoxSizer->Add(m_Plot_PS_Negative, 0, wxGROW|wxALL, 5); /* Creation de la liste des layers */ // Creation de la liste des layers int mask = 1; int mask = 1; wxBoxSizer * OneColonLayerBoxSizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer * OneColonLayerBoxSizer = new wxBoxSizer(wxVERTICAL); LayersBoxSizer->Add(OneColonLayerBoxSizer, 0, wxGROW|wxALL, 5); LayersBoxSizer->Add(OneColonLayerBoxSizer, 0, wxGROW|wxALL, 5); Loading @@ -245,12 +248,20 @@ wxString choice_plot_offset_msg[] = LayersBoxSizer->Add(OneColonLayerBoxSizer, 0, wxGROW|wxALL, 5); LayersBoxSizer->Add(OneColonLayerBoxSizer, 0, wxGROW|wxALL, 5); } } m_BoxSelecLayer[ii] = new wxCheckBox(this, -1, m_BoxSelecLayer[ii] = new wxCheckBox(this, -1, ReturnPcbLayerName(ii)); ReturnPcbLayerName(ii)); if( mask & s_SelectedLayers ) if ( mask & s_SelectedLayers) m_BoxSelecLayer[ii]->SetValue(true); m_BoxSelecLayer[ii]->SetValue(true); OneColonLayerBoxSizer->Add(m_BoxSelecLayer[ii], 0, wxGROW|wxALL, 1); OneColonLayerBoxSizer->Add(m_BoxSelecLayer[ii], 0, wxGROW|wxALL, 1); } } // Option for excluding contents of "Edges Pcb" layer m_Exclude_Edges_Pcb = new wxCheckBox(this, ID_EXCLUDE_EDGES_PCB, _("Exclude Edges Pcb layer") ); m_Exclude_Edges_Pcb->SetValue(Exclude_Edges_Pcb); m_Exclude_Edges_Pcb->SetToolTip( _("Exclude contents of Edges Pcb layer from all other layers") ); LeftBoxSizer->Add(m_Exclude_Edges_Pcb, 0, wxGROW|wxALL, 1); // Option d'impression du cartouche: // Option d'impression du cartouche: if( m_Parent->m_Print_Sheet_Ref ) if( m_Parent->m_Print_Sheet_Ref ) { { Loading @@ -258,7 +269,8 @@ wxString choice_plot_offset_msg[] = m_Plot_Sheet_Ref->SetValue(Plot_Sheet_Ref); m_Plot_Sheet_Ref->SetValue(Plot_Sheet_Ref); LeftBoxSizer->Add(m_Plot_Sheet_Ref, 0, wxGROW|wxALL, 1); LeftBoxSizer->Add(m_Plot_Sheet_Ref, 0, wxGROW|wxALL, 1); } } else Plot_Sheet_Ref = false; else Plot_Sheet_Ref = false; // Option d'impression des pads sur toutes les couches // Option d'impression des pads sur toutes les couches m_Plot_Pads_on_Silkscreen = new wxCheckBox(this, m_Plot_Pads_on_Silkscreen = new wxCheckBox(this, Loading Loading @@ -349,19 +361,23 @@ wxCommandEvent event; GetSizer()->SetSizeHints(this); GetSizer()->SetSizeHints(this); } } /***************************************************************/ /***************************************************************/ void WinEDA_PlotFrame::OnQuit(wxCommandEvent& WXUNUSED(event)) void WinEDA_PlotFrame::OnQuit(wxCommandEvent& WXUNUSED(event)) /***************************************************************/ /***************************************************************/ /* Called by the close button /* Called by the close button */ */ { { Close(true); // true is to force the frame to close Close(true); // true is to force the frame to close } } /****************************************************/ /****************************************************/ void WinEDA_PlotFrame::OnClose(wxCloseEvent & event) void WinEDA_PlotFrame::OnClose(wxCloseEvent & event) /****************************************************/ /****************************************************/ /* called when WinEDA_PlotFrame is closed /* Called when WinEDA_PlotFrame is closed */ */ { { EndModal(0); EndModal(0); Loading @@ -371,15 +387,18 @@ void WinEDA_PlotFrame::OnClose(wxCloseEvent & event) /*********************************************************/ /*********************************************************/ void WinEDA_PlotFrame::CreateDrillFile(wxCommandEvent & event) void WinEDA_PlotFrame::CreateDrillFile(wxCommandEvent & event) /*********************************************************/ /*********************************************************/ /* Create the board drill file used with gerber documents /* Create the board drill file used with gerber documents */ */ { { ((WinEDA_PcbFrame * )m_Parent)->InstallDrillFrame(event); ((WinEDA_PcbFrame * )m_Parent)->InstallDrillFrame(event); } } /*********************************************************/ /*********************************************************/ void WinEDA_PlotFrame::SetCommands(wxCommandEvent & event) void WinEDA_PlotFrame::SetCommands(wxCommandEvent & event) /*********************************************************/ /*********************************************************/ /* active ou dsactive les diffrents menus d'option selon le standard choisi /* active ou dsactive les diffrents menus d'option selon le standard choisi */ */ { { Loading @@ -394,6 +413,7 @@ int format_list[] = { { case PLOT_FORMAT_POST_A4: case PLOT_FORMAT_POST_A4: case PLOT_FORMAT_POST: case PLOT_FORMAT_POST: default: m_Drill_Shape_Opt->Enable(true); m_Drill_Shape_Opt->Enable(true); m_PlotModeOpt->Enable(true); m_PlotModeOpt->Enable(true); m_PlotMirorOpt->Enable(true); m_PlotMirorOpt->Enable(true); Loading @@ -404,13 +424,13 @@ int format_list[] = m_HPGLPenSpeedOpt->Enable(false); m_HPGLPenSpeedOpt->Enable(false); m_HPGLPenOverlayOpt->Enable(false); m_HPGLPenOverlayOpt->Enable(false); m_HPGL_PlotCenter_Opt->Enable(false); m_HPGL_PlotCenter_Opt->Enable(false); m_Exclude_Edges_Pcb->Enable(false); m_Plot_Sheet_Ref->Enable(true); m_Plot_Sheet_Ref->Enable(true); m_Scale_Opt->Enable(true); m_Scale_Opt->Enable(true); m_FineAdjustXscaleOpt->Enable(true); m_FineAdjustXscaleOpt->Enable(true); m_FineAdjustYscaleOpt->Enable(true); m_FineAdjustYscaleOpt->Enable(true); m_PlotFormat = PLOT_FORMAT_POST; m_PlotFormat = PLOT_FORMAT_POST; if ( format == PLOT_FORMAT_POST_A4 ) g_ForcePlotPS_On_A4 = true; g_ForcePlotPS_On_A4 = (format == PLOT_FORMAT_POST_A4); else g_ForcePlotPS_On_A4 = false; m_Plot_PS_Negative->Enable(true); m_Plot_PS_Negative->Enable(true); break; break; Loading @@ -425,6 +445,7 @@ int format_list[] = m_HPGLPenSpeedOpt->Enable(false); m_HPGLPenSpeedOpt->Enable(false); m_HPGLPenOverlayOpt->Enable(false); m_HPGLPenOverlayOpt->Enable(false); m_HPGL_PlotCenter_Opt->Enable(false); m_HPGL_PlotCenter_Opt->Enable(false); m_Exclude_Edges_Pcb->Enable(true); m_Plot_Sheet_Ref->Enable(false); m_Plot_Sheet_Ref->Enable(false); m_Scale_Opt->Enable(false); m_Scale_Opt->Enable(false); m_FineAdjustXscaleOpt->Enable(false); m_FineAdjustXscaleOpt->Enable(false); Loading @@ -444,6 +465,7 @@ int format_list[] = m_HPGLPenSpeedOpt->Enable(true); m_HPGLPenSpeedOpt->Enable(true); m_HPGLPenOverlayOpt->Enable(true); m_HPGLPenOverlayOpt->Enable(true); m_HPGL_PlotCenter_Opt->Enable(true); m_HPGL_PlotCenter_Opt->Enable(true); m_Exclude_Edges_Pcb->Enable(false); m_Plot_Sheet_Ref->Enable(true); m_Plot_Sheet_Ref->Enable(true); m_Scale_Opt->Enable(true); m_Scale_Opt->Enable(true); m_FineAdjustXscaleOpt->Enable(false); m_FineAdjustXscaleOpt->Enable(false); Loading @@ -455,10 +477,13 @@ int format_list[] = format_plot = m_PlotFormat; format_plot = m_PlotFormat; } } /*********************************************************/ /*********************************************************/ void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) /*********************************************************/ /*********************************************************/ { { Exclude_Edges_Pcb = m_Exclude_Edges_Pcb->GetValue(); if( m_Plot_Sheet_Ref ) if( m_Plot_Sheet_Ref ) Plot_Sheet_Ref = m_Plot_Sheet_Ref->GetValue(); Plot_Sheet_Ref = m_Plot_Sheet_Ref->GetValue(); Loading @@ -475,8 +500,10 @@ void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) g_PlotScaleOpt = m_Scale_Opt->GetSelection(); g_PlotScaleOpt = m_Scale_Opt->GetSelection(); g_DrillShapeOpt = m_Drill_Shape_Opt->GetSelection(); g_DrillShapeOpt = m_Drill_Shape_Opt->GetSelection(); Plot_Set_MIROIR = m_PlotMirorOpt->GetValue(); Plot_Set_MIROIR = m_PlotMirorOpt->GetValue(); if ( Plot_Set_MIROIR ) g_PlotOrient = PLOT_MIROIR; if( Plot_Set_MIROIR ) else g_PlotOrient = 0; g_PlotOrient = PLOT_MIROIR; else g_PlotOrient = 0; Plot_Mode = m_PlotModeOpt->GetSelection(); Plot_Mode = m_PlotModeOpt->GetSelection(); g_DrawViaOnMaskLayer = m_PlotNoViaOnMaskOpt->GetValue(); g_DrawViaOnMaskLayer = m_PlotNoViaOnMaskOpt->GetValue(); spot_mini = m_GerbSpotSizeMinOpt->GetValue(); spot_mini = m_GerbSpotSizeMinOpt->GetValue(); Loading @@ -488,6 +515,7 @@ void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) m_XScaleAdjust = m_FineAdjustXscaleOpt->GetValue(); m_XScaleAdjust = m_FineAdjustXscaleOpt->GetValue(); m_YScaleAdjust = m_FineAdjustYscaleOpt->GetValue(); m_YScaleAdjust = m_FineAdjustYscaleOpt->GetValue(); if( m_Parent->m_Parent->m_EDA_Config ) if( m_Parent->m_Parent->m_EDA_Config ) { { m_Parent->m_Parent->m_EDA_Config->Write(wxT("PlotXFineScaleAdj"), m_XScaleAdjust); m_Parent->m_Parent->m_EDA_Config->Write(wxT("PlotXFineScaleAdj"), m_XScaleAdjust); Loading @@ -497,6 +525,7 @@ void WinEDA_PlotFrame::SaveOptPlot(wxCommandEvent & event) g_Plot_PS_Negative = m_Plot_PS_Negative->GetValue(); g_Plot_PS_Negative = m_Plot_PS_Negative->GetValue(); } } /***************************************************/ /***************************************************/ void WinEDA_PlotFrame::Plot(wxCommandEvent & event) void WinEDA_PlotFrame::Plot(wxCommandEvent & event) /***************************************************/ /***************************************************/ Loading Loading @@ -524,7 +553,6 @@ wxString ext; case 4: case 4: Scale_X = Scale_Y = 3; Scale_X = Scale_Y = 3; break; break; } } Scale_X *= m_XScaleAdjust; Scale_X *= m_XScaleAdjust; Loading Loading @@ -556,7 +584,7 @@ wxString ext; if( m_BoxSelecLayer[layer_to_plot]->GetValue() ) if( m_BoxSelecLayer[layer_to_plot]->GetValue() ) { { s_SelectedLayers |= mask; s_SelectedLayers |= mask; /* Calcul du nom du fichier */ // Calcul du nom du fichier FullFileName = BaseFileName + ReturnPcbLayerName(layer_to_plot, true) + ext; FullFileName = BaseFileName + ReturnPcbLayerName(layer_to_plot, true) + ext; switch ( m_PlotFormat) switch ( m_PlotFormat) { { Loading @@ -571,11 +599,9 @@ wxString ext; case PLOT_FORMAT_HPGL: case PLOT_FORMAT_HPGL: m_Parent->Genere_HPGL(FullFileName, layer_to_plot); m_Parent->Genere_HPGL(FullFileName, layer_to_plot); break; break; } } } } } } // Close(true); // Close(true); } } Loading @@ -588,4 +614,3 @@ void WinEDA_BasePcbFrame::ToPlotter(wxCommandEvent& event) frame->ShowModal(); frame->Destroy(); frame->ShowModal(); frame->Destroy(); } }
pcbnew/pcbplot.h +6 −0 Original line number Original line Diff line number Diff line Loading @@ -18,6 +18,11 @@ #define SCALE_HPGL 0.102041 #define SCALE_HPGL 0.102041 /* Options : */ /* Options : */ eda_global bool Exclude_Edges_Pcb // True to exclude contents of Edges Pcb layer #ifdef MAIN = TRUE #endif ; eda_global bool Plot_Sheet_Ref; eda_global bool Plot_Sheet_Ref; eda_global bool g_DrawViaOnMaskLayer; // True if vias are drawn on Mask layer (ie protected by mask) eda_global bool g_DrawViaOnMaskLayer; // True if vias are drawn on Mask layer (ie protected by mask) eda_global int Plot_Mode // = FILAIRE, FILL ou SKETCH eda_global int Plot_Mode // = FILAIRE, FILL ou SKETCH Loading Loading @@ -190,3 +195,4 @@ void trace_1_pad_TRAPEZE_POST(wxPoint centre, wxSize size, wxSize delta, #endif /* #define PCBPLOT_H */ #endif /* #define PCBPLOT_H */
pcbnew/plot_rtn.cpp +13 −10 Original line number Original line Diff line number Diff line Loading @@ -47,23 +47,24 @@ wxString msg; switch( PtStruct->m_StructType ) switch( PtStruct->m_StructType ) { { case TYPEDRAWSEGMENT: case TYPEDRAWSEGMENT: PlotDrawSegment( (DRAWSEGMENT*) PtStruct, format_plot, PlotDrawSegment( (DRAWSEGMENT*) PtStruct, format_plot, masque_layer ); EDGE_LAYER | masque_layer ); // (Following line has been superceded by new commands elsewhere.) // EDGE_LAYER | masque_layer ); break; break; case TYPETEXTE: case TYPETEXTE: PlotTextePcb((TEXTE_PCB*) PtStruct,format_plot, PlotTextePcb( (TEXTE_PCB*) PtStruct,format_plot, masque_layer ); EDGE_LAYER | masque_layer); // EDGE_LAYER | masque_layer ); break; break; case TYPECOTATION: case TYPECOTATION: PlotCotation((COTATION*) PtStruct, format_plot, PlotCotation( (COTATION*) PtStruct, format_plot, masque_layer ); EDGE_LAYER | masque_layer); // EDGE_LAYER | masque_layer ); break; break; case TYPEMIRE: case TYPEMIRE: PlotMirePcb((MIREPCB*) PtStruct, format_plot, PlotMirePcb( (MIREPCB*) PtStruct, format_plot, masque_layer ); EDGE_LAYER | masque_layer); // EDGE_LAYER | masque_layer ); break; break; case TYPEMARQUEUR: case TYPEMARQUEUR: Loading Loading @@ -285,7 +286,8 @@ DRAWSEGMENT *DrawTmp; DrawTmp = new DRAWSEGMENT(NULL); DrawTmp = new DRAWSEGMENT(NULL); masque_layer |= EDGE_LAYER; // (Following command has been superceded by new commands elsewhere.) // masque_layer |= EDGE_LAYER; DrawTmp->m_Width = Cotation->m_Width; DrawTmp->m_Width = Cotation->m_Width; DrawTmp->SetLayer( Cotation->GetLayer() ); DrawTmp->SetLayer( Cotation->GetLayer() ); Loading Loading @@ -334,7 +336,8 @@ int dx1,dx2, dy1, dy2, rayon; DrawTmp = new DRAWSEGMENT(NULL); DrawTmp = new DRAWSEGMENT(NULL); masque_layer |= EDGE_LAYER; // (Following command has been superceded by new commands elsewhere.) // masque_layer |= EDGE_LAYER; DrawTmp->m_Width = Mire->m_Width; DrawTmp->m_Width = Mire->m_Width; DrawTmp->SetLayer( Mire->GetLayer() ); DrawTmp->SetLayer( Mire->GetLayer() ); Loading
pcbnew/plotgerb.cpp +16 −10 Original line number Original line Diff line number Diff line Loading @@ -87,6 +87,11 @@ int tracevia = 1; nb_plot_erreur = 0 ; nb_plot_erreur = 0 ; int layer_mask = g_TabOneLayerMask[Layer]; int layer_mask = g_TabOneLayerMask[Layer]; // Specify that the contents of the "Edges Pcb" layer are also to be // plotted, unless the option of excluding that layer has been selected. if( ! Exclude_Edges_Pcb ) layer_mask |= EDGE_LAYER; switch(Layer) switch(Layer) { { case CUIVRE_N : case CUIVRE_N : Loading Loading @@ -145,7 +150,8 @@ TRACK * track ; EDA_BaseStruct * PtStruct; EDA_BaseStruct * PtStruct; wxString msg; wxString msg; masque_layer |= EDGE_LAYER; /* Les elements de la couche EDGE sont tj traces */ // (Following command has been superceded by new command on lines 92 and 93.) // masque_layer |= EDGE_LAYER; /* Les elements de la couche EDGE sont tj traces */ /* trace des elements type Drawings Pcb : */ /* trace des elements type Drawings Pcb : */ PtStruct = m_Pcb->m_Drawings; PtStruct = m_Pcb->m_Drawings; Loading