KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PCB_IO_EASYEDA_PARSER Class Reference

#include <pcb_io_easyeda_parser.h>

Inheritance diagram for PCB_IO_EASYEDA_PARSER:
EASYEDA_PARSER_BASE

Public Member Functions

 PCB_IO_EASYEDA_PARSER (PROGRESS_REPORTER *aProgressReporter)
 
 ~PCB_IO_EASYEDA_PARSER ()
 
PCB_LAYER_ID LayerToKi (const wxString &aLayer)
 
double ScaleSize (double aValue) override
 
void ParseBoard (BOARD *aBoard, const VECTOR2D &aOrigin, std::map< wxString, std::unique_ptr< FOOTPRINT > > &aFootprintMap, wxArrayString aShapes)
 
FOOTPRINTParseFootprint (const VECTOR2D &aOrigin, const EDA_ANGLE &aOrientation, int aLayer, BOARD *aParent, std::map< wxString, wxString > aParams, std::map< wxString, std::unique_ptr< FOOTPRINT > > &aFootprintMap, wxArrayString aShapes)
 
void ParseToBoardItemContainer (BOARD_ITEM_CONTAINER *aContainer, BOARD *aParent, std::map< wxString, wxString > paramMap, std::map< wxString, std::unique_ptr< FOOTPRINT > > &aFootprintMap, wxArrayString shapes)
 
double ConvertSize (const wxString &aValue)
 
double ScaleSize (const wxString &aValue)
 
template<typename T >
VECTOR2< T > ScalePos (const VECTOR2< T > &aValue)
 
double RelPosX (double aValue)
 
double RelPosX (const wxString &aValue)
 
double RelPosY (double aValue)
 
double RelPosY (const wxString &aValue)
 
template<typename T >
VECTOR2< T > RelPos (const VECTOR2< T > &aVec)
 
void TransformTextToBaseline (EDA_TEXT *textItem, const wxString &baselineAlign)
 
std::vector< SHAPE_LINE_CHAINParseLineChains (const wxString &aData, int aArcMinSegLen, bool aForceClosed)
 

Static Public Member Functions

static double Convert (const wxString &aValue)
 

Protected Attributes

VECTOR2D m_relOrigin
 

Detailed Description

Definition at line 46 of file pcb_io_easyeda_parser.h.

Constructor & Destructor Documentation

◆ PCB_IO_EASYEDA_PARSER()

PCB_IO_EASYEDA_PARSER::PCB_IO_EASYEDA_PARSER ( PROGRESS_REPORTER aProgressReporter)
explicit

Definition at line 59 of file pcb_io_easyeda_parser.cpp.

◆ ~PCB_IO_EASYEDA_PARSER()

PCB_IO_EASYEDA_PARSER::~PCB_IO_EASYEDA_PARSER ( )

Definition at line 63 of file pcb_io_easyeda_parser.cpp.

Member Function Documentation

◆ Convert()

◆ ConvertSize()

double EASYEDA_PARSER_BASE::ConvertSize ( const wxString &  aValue)
inlineinherited

◆ LayerToKi()

◆ ParseBoard()

void PCB_IO_EASYEDA_PARSER::ParseBoard ( BOARD aBoard,
const VECTOR2D aOrigin,
std::map< wxString, std::unique_ptr< FOOTPRINT > > &  aFootprintMap,
wxArrayString  aShapes 
)

◆ ParseFootprint()

FOOTPRINT * PCB_IO_EASYEDA_PARSER::ParseFootprint ( const VECTOR2D aOrigin,
const EDA_ANGLE aOrientation,
int  aLayer,
BOARD aParent,
std::map< wxString, wxString >  aParams,
std::map< wxString, std::unique_ptr< FOOTPRINT > > &  aFootprintMap,
wxArrayString  aShapes 
)

◆ ParseLineChains()

◆ ParseToBoardItemContainer()

void PCB_IO_EASYEDA_PARSER::ParseToBoardItemContainer ( BOARD_ITEM_CONTAINER aContainer,
BOARD aParent,
std::map< wxString, wxString >  paramMap,
std::map< wxString, std::unique_ptr< FOOTPRINT > > &  aFootprintMap,
wxArrayString  shapes 
)

Definition at line 146 of file pcb_io_easyeda_parser.cpp.

References _, SEG::A, BOARD::Add(), FOOTPRINT::Add(), BOARD_ITEM_CONTAINER::Add(), FOOTPRINT::AddField(), SHAPE_POLY_SET::AddHole(), PADSTACK::ALL_LAYERS, ANGLE_0, ANGLE_180, SHAPE_LINE_CHAIN::Append(), SHAPE_POLY_SET::Append(), SEG::B, B_Cu, Cmts_User, EASYEDA_PARSER_BASE::Convert(), EASYEDA_PARSER_BASE::ConvertSize(), SHAPE_POLY_SET::COutline(), SHAPE_POLY_SET::CPolygons(), DEGREES_T, delta, DIRECT_MODEL_UUID_KEY, EasyEdaToKiCadLibID(), Edge_Cuts, EscapeString(), F_Cu, BOARD::FindNet(), Flip(), SHAPE_POLY_SET::Fracture(), get_opt(), FOOTPRINT::GetField(), FOOTPRINT::GetFieldCount(), KIFONT::FONT::GetFont(), FOOTPRINT::GetLayer(), BOARD::GetNetCount(), FOOTPRINT::GetOrientation(), FOOTPRINT::GetOrientationDegrees(), GR_TEXT_H_ALIGN_LEFT, GR_TEXT_V_ALIGN_TOP, group, HIDDEN_TEXT_SIZE(), IsBackLayer(), IsCopperLayer(), EDA_IU_SCALE::IUTomm(), KiROUND(), LayerToKi(), FP_3DMODEL::m_Filename, FP_3DMODEL::m_Offset, EASYEDA_PARSER_BASE::m_relOrigin, FP_3DMODEL::m_Rotation, EDA_IU_SCALE::mmToIU(), MODEL_SIZE_KEY, FOOTPRINT::Models(), FOOTPRINT::Move(), SHAPE_LINE_CHAIN::Move(), name, SHAPE_POLY_SET::OutlineCount(), pad, ParseFootprint(), EASYEDA_PARSER_BASE::ParseLineChains(), pcbIUScale, SHAPE_POLY_SET::PM_STRICTLY_SIMPLE, PAD::PTHMask(), SHAPE_POLY_SET::RebuildHolesFromContours(), REFERENCE_FIELD, EASYEDA_PARSER_BASE::RelPos(), EASYEDA_PARSER_BASE::RelPosX(), EASYEDA_PARSER_BASE::RelPosY(), SHAPE_LINE_CHAIN::Rotate(), RotatePoint(), ScaleSize(), SHAPE_LINE_CHAIN::SetClosed(), FOOTPRINT::SetFPID(), BOARD_ITEM::SetLayer(), EDA_TEXT::SetText(), EDA_TEXT::SetVisible(), PAD::SMDMask(), text, THROW_IO_ERROR, EASYEDA_PARSER_BASE::TransformTextToBaseline(), UnescapeHTML(), unknown, PAD::UnplatedHoleMask(), VALUE_FIELD, via, VECTOR2< T >::x, VECTOR3< T >::x, VECTOR2< T >::y, VECTOR3< T >::y, and VECTOR3< T >::z.

Referenced by ParseBoard(), and ParseFootprint().

◆ RelPos()

template<typename T >
VECTOR2< T > EASYEDA_PARSER_BASE::RelPos ( const VECTOR2< T > &  aVec)
inlineinherited

◆ RelPosX() [1/2]

double EASYEDA_PARSER_BASE::RelPosX ( const wxString &  aValue)
inherited

◆ RelPosX() [2/2]

◆ RelPosY() [1/2]

double EASYEDA_PARSER_BASE::RelPosY ( const wxString &  aValue)
inherited

◆ RelPosY() [2/2]

◆ ScalePos()

template<typename T >
VECTOR2< T > EASYEDA_PARSER_BASE::ScalePos ( const VECTOR2< T > &  aValue)
inlineinherited

◆ ScaleSize() [1/2]

double EASYEDA_PARSER_BASE::ScaleSize ( const wxString &  aValue)
inlineinherited

◆ ScaleSize() [2/2]

double PCB_IO_EASYEDA_PARSER::ScaleSize ( double  aValue)
inlineoverridevirtual

Implements EASYEDA_PARSER_BASE.

Definition at line 54 of file pcb_io_easyeda_parser.h.

References KiROUND().

Referenced by PCB_IO_EASYEDA::LoadBoard(), and ParseToBoardItemContainer().

◆ TransformTextToBaseline()

void EASYEDA_PARSER_BASE::TransformTextToBaseline ( EDA_TEXT textItem,
const wxString &  baselineAlign 
)
inherited

Member Data Documentation

◆ m_relOrigin


The documentation for this class was generated from the following files: