KiCad PCB EDA Suite
Loading...
Searching...
No Matches
create_layer_items.cpp File Reference
#include "board_adapter.h"
#include "../3d_rendering/raytracing/shapes2D/filled_circle_2d.h"
#include "raytracing/shapes2D/triangle_2d.h"
#include <board_design_settings.h>
#include <board.h>
#include <layer_range.h>
#include <lset.h>
#include <convert_basic_shapes_to_polygon.h>
#include <trigo.h>
#include <vector>
#include <thread>
#include <algorithm>
#include <atomic>
#include <wx/log.h>

Go to the source code of this file.

Macros

#define DELETE_AND_FREE(ptr)
 
#define DELETE_AND_FREE_MAP(map)
 

Functions

void buildPadOutlineAsPolygon (const PAD *aPad, PCB_LAYER_ID aLayer, SHAPE_POLY_SET &aBuffer, int aWidth, int aMaxError, ERROR_LOC aErrorLoc)
 
void transformFPShapesToPolySet (const FOOTPRINT *aFootprint, PCB_LAYER_ID aLayer, SHAPE_POLY_SET &aBuffer, int aMaxError, ERROR_LOC aErrorLoc)
 
void transformFPTextToPolySet (const FOOTPRINT *aFootprint, PCB_LAYER_ID aLayer, const std::bitset< LAYER_3D_END > &aFlags, SHAPE_POLY_SET &aBuffer, int aMaxError, ERROR_LOC aErrorLoc)
 

Macro Definition Documentation

◆ DELETE_AND_FREE

#define DELETE_AND_FREE ( ptr)
Value:
{ \
delete ptr; \
ptr = nullptr; \
} \

Referenced by BOARD_ADAPTER::destroyLayers(), and RENDER_3D_OPENGL::freeAllLists().

◆ DELETE_AND_FREE_MAP

#define DELETE_AND_FREE_MAP ( map)
Value:
{ \
for( auto& [ layer, poly ] : map ) \
delete poly; \
\
map.clear(); \
}

Referenced by BOARD_ADAPTER::destroyLayers(), and RENDER_3D_OPENGL::freeAllLists().

Function Documentation

◆ buildPadOutlineAsPolygon()

void buildPadOutlineAsPolygon ( const PAD * aPad,
PCB_LAYER_ID aLayer,
SHAPE_POLY_SET & aBuffer,
int aWidth,
int aMaxError,
ERROR_LOC aErrorLoc )

◆ transformFPShapesToPolySet()

void transformFPShapesToPolySet ( const FOOTPRINT * aFootprint,
PCB_LAYER_ID aLayer,
SHAPE_POLY_SET & aBuffer,
int aMaxError,
ERROR_LOC aErrorLoc )

◆ transformFPTextToPolySet()