mirror of
git://projects.qi-hardware.com/eda-tools.git
synced 2024-11-23 08:57:10 +02:00
sch2fig/: make *_line accept color and layer from dwg
This commit is contained in:
parent
4267efae0d
commit
3b18e8b604
@ -385,6 +385,19 @@ void dwg_noconn(int x, int y)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* ----- Lines ------------------------------------------------------------- */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* We can't use gfx_poly because lines are dashed and we don't have that
|
||||||
|
* property at the gfx_poly API.
|
||||||
|
*/
|
||||||
|
|
||||||
|
void dwg_line(int sx, int sy, int ex, int ey)
|
||||||
|
{
|
||||||
|
gfx_line(sx, sy, ex, ey, COLOR_SHEET_DWG, LAYER_LINES);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* ----- Wires and busses -------------------------------------------------- */
|
/* ----- Wires and busses -------------------------------------------------- */
|
||||||
|
|
||||||
|
|
||||||
|
@ -36,6 +36,8 @@ void dwg_glabel(int x, int y, const char *s, int dir, int dim,
|
|||||||
void dwg_junction(int x, int y);
|
void dwg_junction(int x, int y);
|
||||||
void dwg_noconn(int x, int y);
|
void dwg_noconn(int x, int y);
|
||||||
|
|
||||||
|
void dwg_line(int sx, int sy, int ex, int ey);
|
||||||
|
|
||||||
void dwg_wire(int sx, int sy, int ex, int ey);
|
void dwg_wire(int sx, int sy, int ex, int ey);
|
||||||
void dwg_bus(int sx, int sy, int ex, int ey);
|
void dwg_bus(int sx, int sy, int ex, int ey);
|
||||||
|
|
||||||
|
@ -51,13 +51,14 @@ static inline float pt(int x)
|
|||||||
/* ----- Schematics items -------------------------------------------------- */
|
/* ----- Schematics items -------------------------------------------------- */
|
||||||
|
|
||||||
|
|
||||||
void fig_line(void *ctx, int sx, int sy, int ex, int ey)
|
void fig_line(void *ctx, int sx, int sy, int ex, int ey,
|
||||||
|
int color, unsigned layer)
|
||||||
{
|
{
|
||||||
// TypeStyle FillCol AreaFil Cap FwdAr
|
// TypeStyle FillCol AreaFil Cap FwdAr
|
||||||
// SubTy Color Pen StyleV Rad BwdAr
|
// SubTy Color Pen StyleV Rad BwdAr
|
||||||
// Thick Depth Join Points
|
// Thick Depth Join Points
|
||||||
printf("2 1 2 %d %d 7 %d -1 -1 3.0 1 1 -1 0 0 2\n",
|
printf("2 1 2 %d %d 7 %d -1 -1 3.0 1 1 -1 0 0 2\n",
|
||||||
WIDTH_LINE, COLOR_SHEET_DWG, LAYER_LINES);
|
WIDTH_LINE, color, layer);
|
||||||
printf("\t%d %d %d %d\n", cx(sx), cy(sy), cx(ex), cy(ey));
|
printf("\t%d %d %d %d\n", cx(sx), cy(sy), cx(ex), cy(ey));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,9 +19,9 @@ static const struct gfx_ops *gfx_ops;
|
|||||||
static void *gfx_ctx;
|
static void *gfx_ctx;
|
||||||
|
|
||||||
|
|
||||||
void gfx_line(int sx, int sy, int ex, int ey)
|
void gfx_line(int sx, int sy, int ex, int ey, int color, unsigned layer)
|
||||||
{
|
{
|
||||||
gfx_ops->line(gfx_ctx, sx, sy, ex, ey);
|
gfx_ops->line(gfx_ctx, sx, sy, ex, ey, color, layer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -18,7 +18,8 @@
|
|||||||
|
|
||||||
|
|
||||||
struct gfx_ops {
|
struct gfx_ops {
|
||||||
void (*line)(void *ctx, int sx, int sy, int ex, int ey);
|
void (*line)(void *ctx, int sx, int sy, int ex, int ey,
|
||||||
|
int color, unsigned layer);
|
||||||
void (*rect)(void *ctx, int sx, int sy, int ex, int ey,
|
void (*rect)(void *ctx, int sx, int sy, int ex, int ey,
|
||||||
int color, int fill_color, unsigned layer);
|
int color, int fill_color, unsigned layer);
|
||||||
void (*poly)(void *ctx, int points, int x[points], int y[points],
|
void (*poly)(void *ctx, int points, int x[points], int y[points],
|
||||||
@ -35,7 +36,7 @@ struct gfx_ops {
|
|||||||
|
|
||||||
/* wrappers */
|
/* wrappers */
|
||||||
|
|
||||||
void gfx_line(int sx, int sy, int ex, int ey);
|
void gfx_line(int sx, int sy, int ex, int ey, int color, unsigned layer);
|
||||||
void gfx_rect(int sx, int sy, int ex, int ey,
|
void gfx_rect(int sx, int sy, int ex, int ey,
|
||||||
int color, int fill_color, unsigned layer);
|
int color, int fill_color, unsigned layer);
|
||||||
void gfx_poly(int points, int x[points], int y[points],
|
void gfx_poly(int points, int x[points], int y[points],
|
||||||
|
@ -479,7 +479,7 @@ bool sch_parse(struct sch_ctx *ctx, const char *line)
|
|||||||
}
|
}
|
||||||
if (sscanf(line, "Wire Notes Line%n", &n) == 0 && n) {
|
if (sscanf(line, "Wire Notes Line%n", &n) == 0 && n) {
|
||||||
ctx->state = sch_wire;
|
ctx->state = sch_wire;
|
||||||
ctx->wire = gfx_line;
|
ctx->wire = dwg_line;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user