Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
K
kicad-source-mirror
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
Elphel
kicad-source-mirror
Commits
36dac0c1
Commit
36dac0c1
authored
Apr 11, 2012
by
jean-pierre charras
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Pcbnew nanometer: fix hatch lines issue in polyline.cpp
Some minor code cleaning.
parent
e730219b
Changes
19
Show whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
109 additions
and
81 deletions
+109
-81
convert_to_biu.h
include/convert_to_biu.h
+38
-0
class_board.cpp
pcbnew/class_board.cpp
+0
-7
class_board.h
pcbnew/class_board.h
+8
-0
class_dimension.cpp
pcbnew/class_dimension.cpp
+1
-2
class_drawsegment.cpp
pcbnew/class_drawsegment.cpp
+1
-1
class_mire.cpp
pcbnew/class_mire.cpp
+1
-1
class_module_transform_functions.cpp
pcbnew/class_module_transform_functions.cpp
+11
-8
class_pcb_text.cpp
pcbnew/class_pcb_text.cpp
+1
-1
class_track.cpp
pcbnew/class_track.cpp
+1
-1
class_zone.cpp
pcbnew/class_zone.cpp
+3
-2
class_zone_settings.cpp
pcbnew/class_zone_settings.cpp
+1
-1
item_io.cpp
pcbnew/item_io.cpp
+1
-1
legacy_plugin.cpp
pcbnew/legacy_plugin.cpp
+4
-3
modules.cpp
pcbnew/modules.cpp
+2
-0
pcbnew.h
pcbnew/pcbnew.h
+1
-14
protos.h
pcbnew/protos.h
+0
-13
zone_filling_algorithm.cpp
pcbnew/zone_filling_algorithm.cpp
+0
-1
PolyLine.cpp
polygon/PolyLine.cpp
+12
-17
PolyLine.h
polygon/PolyLine.h
+23
-8
No files found.
include/convert_to_biu.h
0 → 100644
View file @
36dac0c1
#ifndef CONVERT_TO_BIU_H
#define CONVERT_TO_BIU_H
#include <config.h> // USE_PCBNEW_NANOMETRES is defined here
/**
* @file convert_to_biu.h
*/
/**
* @brief inline convert functions to convert a value in decimils (or mils)
* to the internal unit used in pcbnew or cvpcb(nanometer or decimil)
* depending on compil option
*/
/// Convert mils to PCBNEW internal units (iu).
inline
int
Mils2iu
(
int
mils
)
{
#if defined( USE_PCBNEW_NANOMETRES )
return
int
(
mils
*
25.4e3
+
0
.
5
);
#else
return
mils
*
10
;
#endif
}
/// Convert deci-mils to PCBNEW internal units (iu).
inline
int
DMils2iu
(
int
dmils
)
{
#if defined( USE_PCBNEW_NANOMETRES )
return
int
(
dmils
*
25.4e2
+
0
.
5
);
#else
return
dmils
;
#endif
}
#endif // #define CONVERT_TO_BIU_H
pcbnew/class_board.cpp
View file @
36dac0c1
...
...
@@ -71,13 +71,6 @@ BOARD::BOARD() :
BOARD
::~
BOARD
()
{
/* @todo
NO! this has nothing to do with a BOARD
Do this in the UI, not in the storage container please.
if( m_PcbFrame && m_PcbFrame->GetScreen() )
m_PcbFrame->GetScreen()->ClearUndoRedoList();
*/
while
(
m_ZoneDescriptorList
.
size
()
)
{
ZONE_CONTAINER
*
area_to_remove
=
m_ZoneDescriptorList
[
0
];
...
...
pcbnew/class_board.h
View file @
36dac0c1
...
...
@@ -272,6 +272,14 @@ public:
*/
static
wxString
GetDefaultLayerName
(
int
aLayerNumber
);
/**
* Function ReturnFlippedLayerNumber
* @return the layer number after flipping an item
* some (not all) layers: external copper, Mask, Paste, and solder
* are swapped between front and back sides
*/
static
int
ReturnFlippedLayerNumber
(
int
oldlayer
);
/**
* Function Add
* adds the given item to this BOARD and takes ownership of its memory.
...
...
pcbnew/class_dimension.cpp
View file @
36dac0c1
...
...
@@ -36,7 +36,6 @@
#include <class_drawpanel.h>
#include <colors_selection.h>
#include <kicad_string.h>
#include <protos.h>
#include <richio.h>
#include <class_board.h>
...
...
@@ -200,7 +199,7 @@ void DIMENSION::Rotate( const wxPoint& aRotCentre, double aAngle )
void
DIMENSION
::
Flip
(
const
wxPoint
&
aCentre
)
{
Mirror
(
aCentre
);
SetLayer
(
ChangeSideNumLay
er
(
GetLayer
()
)
);
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
GetLayer
()
)
);
}
...
...
pcbnew/class_drawsegment.cpp
View file @
36dac0c1
...
...
@@ -107,7 +107,7 @@ void DRAWSEGMENT::Flip( const wxPoint& aCentre )
NEGATE
(
m_Angle
);
}
SetLayer
(
ChangeSideNumLay
er
(
GetLayer
()
)
);
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
GetLayer
()
)
);
}
...
...
pcbnew/class_mire.cpp
View file @
36dac0c1
...
...
@@ -189,7 +189,7 @@ void PCB_TARGET::Rotate(const wxPoint& aRotCentre, double aAngle)
void
PCB_TARGET
::
Flip
(
const
wxPoint
&
aCentre
)
{
m_Pos
.
y
=
aCentre
.
y
-
(
m_Pos
.
y
-
aCentre
.
y
);
SetLayer
(
ChangeSideNumLay
er
(
GetLayer
()
)
);
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
GetLayer
()
)
);
}
...
...
pcbnew/class_module_transform_functions.cpp
View file @
36dac0c1
...
...
@@ -11,15 +11,18 @@
#include <macros.h>
#include <protos.h>
#include <class_board.h>
#include <class_pad.h>
#include <class_edge_mod.h>
#include <class_module.h>
/* Calculate the layer number for changing cu / cmp layers for Cu / CMP
* (Copper, Mask, Paste, solder)
/* Returns the layer number after flipping an item
* some layers: external copper, Mask, Paste, and solder
* are swapped between front and back sides
*/
int
ChangeSideNumLay
er
(
int
oldlayer
)
int
BOARD
::
ReturnFlippedLayerNumb
er
(
int
oldlayer
)
{
int
newlayer
;
...
...
@@ -155,7 +158,7 @@ void MODULE::Flip( const wxPoint& aCentre )
SetPosition
(
finalPos
);
// Flip layer
SetLayer
(
ChangeSideNumLay
er
(
GetLayer
()
)
);
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
GetLayer
()
)
);
// Reverse mirror orientation.
NEGATE
(
m_Orient
);
...
...
@@ -174,7 +177,7 @@ void MODULE::Flip( const wxPoint& aCentre )
pt_texte
->
m_Mirror
=
false
;
NEGATE_AND_NORMALIZE_ANGLE_POS
(
pt_texte
->
m_Orient
);
pt_texte
->
SetLayer
(
GetLayer
()
);
pt_texte
->
SetLayer
(
ChangeSideNumLay
er
(
pt_texte
->
GetLayer
()
)
);
pt_texte
->
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
pt_texte
->
GetLayer
()
)
);
if
(
GetLayer
()
==
LAYER_N_BACK
)
pt_texte
->
SetLayer
(
SILKSCREEN_N_BACK
);
...
...
@@ -195,7 +198,7 @@ void MODULE::Flip( const wxPoint& aCentre )
pt_texte
->
m_Mirror
=
false
;
NEGATE_AND_NORMALIZE_ANGLE_POS
(
pt_texte
->
m_Orient
);
pt_texte
->
SetLayer
(
GetLayer
()
);
pt_texte
->
SetLayer
(
ChangeSideNumLay
er
(
pt_texte
->
GetLayer
()
)
);
pt_texte
->
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
pt_texte
->
GetLayer
()
)
);
if
(
GetLayer
()
==
LAYER_N_BACK
)
pt_texte
->
SetLayer
(
SILKSCREEN_N_BACK
);
...
...
@@ -236,7 +239,7 @@ void MODULE::Flip( const wxPoint& aCentre )
em
->
SetAngle
(
-
em
->
GetAngle
()
);
}
em
->
SetLayer
(
ChangeSideNumLay
er
(
em
->
GetLayer
()
)
);
em
->
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
em
->
GetLayer
()
)
);
}
break
;
...
...
@@ -251,7 +254,7 @@ void MODULE::Flip( const wxPoint& aCentre )
NEGATE_AND_NORMALIZE_ANGLE_POS
(
pt_texte
->
m_Orient
);
pt_texte
->
SetLayer
(
GetLayer
()
);
pt_texte
->
SetLayer
(
ChangeSideNumLay
er
(
pt_texte
->
GetLayer
()
)
);
pt_texte
->
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
pt_texte
->
GetLayer
()
)
);
if
(
GetLayer
()
==
LAYER_N_BACK
)
pt_texte
->
SetLayer
(
SILKSCREEN_N_BACK
);
...
...
pcbnew/class_pcb_text.cpp
View file @
36dac0c1
...
...
@@ -165,7 +165,7 @@ void TEXTE_PCB::Flip(const wxPoint& aCentre )
{
m_Mirror
=
not
m_Mirror
;
/* inverse mirror */
}
SetLayer
(
ChangeSideNumLay
er
(
GetLayer
()
)
);
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
GetLayer
()
)
);
}
...
...
pcbnew/class_track.cpp
View file @
36dac0c1
...
...
@@ -392,7 +392,7 @@ void TRACK::Flip( const wxPoint& aCentre )
}
else
{
SetLayer
(
ChangeSideNumLay
er
(
GetLayer
()
)
);
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
GetLayer
()
)
);
}
}
...
...
pcbnew/class_zone.cpp
View file @
36dac0c1
...
...
@@ -824,7 +824,7 @@ void ZONE_CONTAINER::Rotate( const wxPoint& centre, double angle )
void
ZONE_CONTAINER
::
Flip
(
const
wxPoint
&
aCentre
)
{
Mirror
(
aCentre
);
SetLayer
(
ChangeSideNumLay
er
(
GetLayer
()
)
);
SetLayer
(
BOARD
::
ReturnFlippedLayerNumb
er
(
GetLayer
()
)
);
}
...
...
@@ -876,7 +876,8 @@ void ZONE_CONTAINER::Copy( ZONE_CONTAINER* src )
m_PadConnection
=
src
->
m_PadConnection
;
m_ThermalReliefGap
=
src
->
m_ThermalReliefGap
;
m_ThermalReliefCopperBridge
=
src
->
m_ThermalReliefCopperBridge
;
m_Poly
->
m_HatchStyle
=
src
->
m_Poly
->
GetHatchStyle
();
m_Poly
->
SetHatchStyle
(
src
->
m_Poly
->
GetHatchStyle
()
);
m_Poly
->
SetHatchPitch
(
src
->
m_Poly
->
GetHatchPitch
()
);
m_Poly
->
m_HatchLines
=
src
->
m_Poly
->
m_HatchLines
;
// Copy vector <CSegment>
m_FilledPolysList
.
clear
();
m_FilledPolysList
=
src
->
m_FilledPolysList
;
...
...
pcbnew/class_zone_settings.cpp
View file @
36dac0c1
...
...
@@ -73,7 +73,7 @@ void ZONE_SETTINGS::ExportSetting( ZONE_CONTAINER& aTarget, bool aFullExport ) c
aTarget
.
m_FillMode
=
m_FillMode
;
aTarget
.
m_ZoneClearance
=
m_ZoneClearance
;
aTarget
.
m_ZoneMinThickness
=
m_ZoneMinThickness
;
aTarget
.
m_Poly
->
SetHatch
(
m_Zone_HatchingStyle
);
aTarget
.
m_Poly
->
SetHatch
(
m_Zone_HatchingStyle
,
Mils2iu
(
20
)
);
aTarget
.
m_ArcToSegmentsCount
=
m_ArcToSegmentsCount
;
aTarget
.
m_ThermalReliefGap
=
m_ThermalReliefGap
;
aTarget
.
m_ThermalReliefCopperBridge
=
m_ThermalReliefCopperBridge
;
...
...
pcbnew/item_io.cpp
View file @
36dac0c1
...
...
@@ -1980,7 +1980,7 @@ int ZONE_CONTAINER::ReadDescr( LINE_READER* aReader )
}
// Set hatch here, when outlines corners are read
m_Poly
->
SetHatch
(
outline_hatch
);
m_Poly
->
SetHatch
(
outline_hatch
,
Mils2iu
(
m_Poly
->
GetDefaultHatchPitchMils
()
)
);
return
error
?
0
:
1
;
}
...
...
pcbnew/legacy_plugin.cpp
View file @
36dac0c1
...
...
@@ -3,7 +3,7 @@
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2007-2011 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com>
* Copyright (C) 2004 Jean-Pierre Charras, j
aen-pierre.charras@gipsa-lab.inpg.com
* Copyright (C) 2004 Jean-Pierre Charras, j
ean-pierre.charras@gipsa-lab.inpg.fr
* Copyright (C) 1992-2011 KiCad Developers, see change_log.txt for contributors.
*
...
...
@@ -82,7 +82,7 @@
#include <3d_struct.h>
#include <pcb_plot_params.h>
#include <drawtxt.h>
#include <convert_to_biu.h>
#include <trigo.h>
#include <wx/ffile.h>
...
...
@@ -2286,7 +2286,8 @@ void LEGACY_PLUGIN::loadZONE_CONTAINER()
}
// Set hatch here, after outlines corners are read
zc
->
m_Poly
->
SetHatch
(
outline_hatch
);
zc
->
m_Poly
->
SetHatch
(
outline_hatch
,
Mils2iu
(
zc
->
m_Poly
->
GetDefaultHatchPitchMils
()
)
);
m_board
->
Add
(
zc
.
release
()
);
}
...
...
pcbnew/modules.cpp
View file @
36dac0c1
...
...
@@ -44,6 +44,8 @@
#include <drag.h>
static
void
MoveFootprint
(
EDA_DRAW_PANEL
*
aPanel
,
wxDC
*
aDC
,
const
wxPoint
&
aPosition
,
bool
aErase
);
static
void
Abort_MoveOrCopyModule
(
EDA_DRAW_PANEL
*
Panel
,
wxDC
*
DC
);
...
...
pcbnew/pcbnew.h
View file @
36dac0c1
...
...
@@ -8,7 +8,7 @@
#include <fctsys.h> // PCB_INTERNAL_UNIT and EESCHEMA_INTERNAL_UNIT definitions.
#include <base_struct.h> // IS_DRAGGED and IN_EDIT definitions.
#include <convert_to_biu.h> // to define DMils2iu() conversion function
#define U_PCB (PCB_INTERNAL_UNIT / EESCHEMA_INTERNAL_UNIT)
...
...
@@ -34,19 +34,6 @@
#define DIM_ANCRE_TEXTE 2
/* Anchor size (Text center) */
#if defined(PCBNEW)
/// Convert deci-mils to PCBNEW internal units (iu).
inline
int
DMils2iu
(
int
dmils
)
{
#if defined( USE_PCBNEW_NANOMETRES )
return
int
(
dmils
*
25.4e2
+
0
.
5
);
#else
return
dmils
;
#endif
}
#endif
#define TEXTS_MIN_SIZE DMils2iu( 50 ) ///< Minimum text size in Pcbnew units value (50 * 0.0001 mils)
#define TEXTS_MAX_SIZE DMils2iu( 10000 ) ///< Maximum text size in Pcbnew units value (1 inch) )
#define TEXTS_MAX_WIDTH DMils2iu( 5000 ) ///< Maximum text width in Pcbnew units value (0.5 inches)
...
...
pcbnew/protos.h
View file @
36dac0c1
...
...
@@ -6,18 +6,13 @@
#define PROTO_H
#include <vector>
class
wxDC
;
class
wxPoint
;
class
EDA_DRAW_PANEL
;
class
BOARD_ITEM
;
class
D_PAD
;
class
TRACK
;
class
MODULE
;
/**
* Function SwapData
* Used in undo / redo command:
...
...
@@ -63,15 +58,7 @@ void DrawTraces( EDA_DRAW_PANEL* panel,
*/
int
ChangeSideMaskLayer
(
int
aMask
);
/**
* Function ChangeSideNumLayer
* calculates the layer number for changing cu / cmp layers for Cu / CMP.
* (Copper, Mask, Paste, solder)
*/
int
ChangeSideNumLayer
(
int
oldlayer
);
void
DrawModuleOutlines
(
EDA_DRAW_PANEL
*
panel
,
wxDC
*
DC
,
MODULE
*
module
);
void
MoveFootprint
(
EDA_DRAW_PANEL
*
aPanel
,
wxDC
*
aDC
,
const
wxPoint
&
aPosition
,
bool
aErase
);
/****************/
...
...
pcbnew/zone_filling_algorithm.cpp
View file @
36dac0c1
...
...
@@ -14,7 +14,6 @@
#include <pcbnew.h>
#include <zones.h>
#include <protos.h>
/* Local functions */
...
...
polygon/PolyLine.cpp
View file @
36dac0c1
...
...
@@ -8,18 +8,11 @@
#include <algorithm>
#include <fctsys.h>
#include <config.h> // to define KICAD_NANOMETRE
#include <PolyLine.h>
#include <bezier_curves.h>
#include <polygon_test_point_inside.h>
#if defined(KICAD_NANOMETRE)
#define PCBU_PER_MIL (1000.0*25.4)
#else
#define PCBU_PER_MIL 10
#endif
#define to_int( x ) wxRound( (x) )
...
...
@@ -34,7 +27,8 @@
CPolyLine
::
CPolyLine
()
{
m_HatchStyle
=
0
;
m_hatchStyle
=
NO_HATCH
;
m_hatchPitch
=
0
;
m_Width
=
0
;
utility
=
0
;
m_Kbool_Poly_Engine
=
NULL
;
...
...
@@ -794,7 +788,7 @@ int CPolyLine::RestoreArcs( std::vector<CArc> * arc_array, std::vector<CPolyLine
void
CPolyLine
::
Start
(
int
layer
,
int
x
,
int
y
,
int
hatch
)
{
m_layer
=
layer
;
m_HatchStyle
=
hatch
;
SetHatchStyle
(
(
enum
hatch_style
)
hatch
)
;
CPolyPt
poly_pt
(
x
,
y
);
poly_pt
.
end_contour
=
false
;
...
...
@@ -1379,7 +1373,7 @@ void CPolyLine::Hatch()
{
m_HatchLines
.
clear
();
if
(
m_
HatchStyle
==
NO_HATCH
)
if
(
m_
hatchStyle
==
NO_HATCH
||
m_hatchPitch
==
0
)
return
;
if
(
!
GetClosed
()
)
// If not closed, the poly is beeing created and not finalised. Not not hatch
...
...
@@ -1404,13 +1398,13 @@ void CPolyLine::Hatch()
// Calculate spacing betwwen 2 hatch lines
int
spacing
;
if
(
m_
H
atchStyle
==
DIAGONAL_EDGE
)
spacing
=
20
*
PCBU_PER_MIL
;
if
(
m_
h
atchStyle
==
DIAGONAL_EDGE
)
spacing
=
m_hatchPitch
;
else
spacing
=
50
*
PCBU_PER_MIL
;
spacing
=
m_hatchPitch
*
2
;
// set the "lenght" of hatch lines (the lenght on horizontal axis)
double
hatch_line_len
=
20
*
PCBU_PER_MIL
;
double
hatch_line_len
=
m_hatchPitch
;
// To have a better look, give a slope depending on the layer
int
layer
=
GetLayer
();
...
...
@@ -1438,7 +1432,7 @@ void CPolyLine::Hatch()
int
nc
=
corner
.
size
();
// loop through hatch lines
#define MAXPTS 200 // Usually we store only few values
#define MAXPTS 200 // Usually we store only few values
per one hatch line
// depending on the compexity of the zone outline
static
std
::
vector
<
CPoint
>
pointbuffer
;
...
...
@@ -1514,7 +1508,7 @@ void CPolyLine::Hatch()
// Push only one line for diagonal hatch,
// or for small lines < twice the line len
// else push 2 small lines
if
(
m_
H
atchStyle
==
DIAGONAL_FULL
||
fabs
(
dx
)
<
2
*
hatch_line_len
)
if
(
m_
h
atchStyle
==
DIAGONAL_FULL
||
fabs
(
dx
)
<
2
*
hatch_line_len
)
{
m_HatchLines
.
push_back
(
CSegment
(
pointbuffer
[
ip
].
x
,
pointbuffer
[
ip
].
y
,
...
...
@@ -1583,7 +1577,8 @@ bool CPolyLine::TestPointInside( int px, int py )
void
CPolyLine
::
Copy
(
CPolyLine
*
src
)
{
UnHatch
();
m_HatchStyle
=
src
->
m_HatchStyle
;
m_hatchStyle
=
src
->
m_hatchStyle
;
m_hatchPitch
=
src
->
m_hatchPitch
;
// copy corners, using vector copy
corner
=
src
->
corner
;
// copy side styles, using vector copy
...
...
polygon/PolyLine.h
View file @
36dac0c1
...
...
@@ -108,8 +108,8 @@ public:
class
CPolyLine
{
public
:
enum
{
STRAIGHT
,
ARC_CW
,
ARC_CCW
};
// side styles
enum
{
NO_HATCH
,
DIAGONAL_FULL
,
DIAGONAL_EDGE
};
// hatch styles
enum
side_style
{
STRAIGHT
,
ARC_CW
,
ARC_CCW
};
// side styles
enum
hatch_style
{
NO_HATCH
,
DIAGONAL_FULL
,
DIAGONAL_EDGE
};
// hatch styles
// constructors/destructor
CPolyLine
();
...
...
@@ -180,13 +180,25 @@ public:
int
GetUtility
(
int
ic
)
{
return
corner
[
ic
].
utility
;
};
void
SetUtility
(
int
ic
,
int
utility
)
{
corner
[
ic
].
utility
=
utility
;
};
int
GetSideStyle
(
int
is
);
int
GetHatchPitch
()
{
return
m_hatchPitch
;
}
int
GetDefaultHatchPitchMils
()
{
return
20
;
}
// default hatch pitch value in mils
int
GetHatchStyle
()
{
return
m_HatchStyle
;
}
void
SetHatch
(
int
hatch
)
{
m_HatchStyle
=
hatch
;
Hatch
();
};
enum
hatch_style
GetHatchStyle
()
{
return
m_hatchStyle
;
}
void
SetHatch
(
int
hatch
,
int
pitch
)
{
SetHatchPitch
(
pitch
);
m_hatchStyle
=
(
enum
hatch_style
)
hatch
;
Hatch
();
}
void
SetX
(
int
ic
,
int
x
);
void
SetY
(
int
ic
,
int
y
);
void
SetEndContour
(
int
ic
,
bool
end_contour
);
void
SetSideStyle
(
int
is
,
int
style
);
void
SetHatchStyle
(
enum
hatch_style
style
)
{
m_hatchStyle
=
style
;
}
void
SetHatchPitch
(
int
pitch
)
{
m_hatchPitch
=
pitch
;
}
int
RestoreArcs
(
std
::
vector
<
CArc
>
*
arc_array
,
std
::
vector
<
CPolyLine
*>
*
pa
=
NULL
);
...
...
@@ -262,13 +274,16 @@ public:
private
:
int
m_layer
;
// layer to draw on
int
m_Width
;
// lines width when drawing. Provided but not really used
enum
hatch_style
m_hatchStyle
;
// hatch style, see enum above
int
m_hatchPitch
;
// for DIAGONAL_EDGE hatched outlines, basic distance between 2 hatch lines
// and the len of eacvh segment
// for DIAGONAL_FULL, the pitch is twice this value
int
utility
;
Bool_Engine
*
m_Kbool_Poly_Engine
;
// polygons set in kbool engine data
public
:
std
::
vector
<
CPolyPt
>
corner
;
// array of points for corners
std
::
vector
<
int
>
side_style
;
// array of styles for sides
int
m_HatchStyle
;
// hatch style, see enum above
std
::
vector
<
CSegment
>
m_HatchLines
;
// hatch lines
};
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment