1
0
mirror of git://projects.qi-hardware.com/cae-tools.git synced 2025-04-21 12:27:27 +03:00

cameo/: new commands "remove" and "keep" for path filtering (untested)

This commit is contained in:
Werner Almesberger
2012-06-12 12:32:08 -03:00
parent 3ee5b1aa31
commit e69fa24133
7 changed files with 95 additions and 6 deletions

View File

@@ -187,8 +187,9 @@ static struct path **classify(struct path **anchor, struct path *path)
};
%token TOK_ALIGN TOK_ARRAY TOK_CLEAR TOK_DRILL TOK_EMPTY TOK_AREA
%token TOK_MILL TOK_OFFSET TOK_OPTIMIZE TOK_REMAINDER TOK_RESET
%token TOK_ALIGN TOK_AREA TOK_ARRAY TOK_CLEAR TOK_DRILL TOK_EMPTY
%token TOK_KEEP TOK_MILL TOK_OFFSET TOK_OPTIMIZE TOK_REMAINDER
%token TOK_REMOVE TOK_RESET
%token TOK_REVERSE TOK_ROTATE TOK_STATS TOK_TRANSLATE TOK_Z
%token TOK_APPEND TOK_GERBER TOK_GNUPLOT TOK_EXCELLON TOK_WRITE
%token TOK_DOG TOK_INSIDE TOK_ANY
@@ -366,6 +367,22 @@ command:
if (paths)
yyerror("path list is not empty");
}
| TOK_KEEP dimen dimen dimen dimen
{
struct path *tmp;
tmp = select_paths(paths, $2, $3, $4, $5, 1);
clear_paths();
paths = tmp;
}
| TOK_REMOVE dimen dimen dimen dimen
{
struct path *tmp;
tmp = select_paths(paths, $2, $3, $4, $5, 0);
clear_paths();
paths = tmp;
}
;
opt_filename: