mirror of
git://projects.qi-hardware.com/cae-tools.git
synced 2024-12-23 13:16:47 +02:00
46c8f8653c
The only functions that care about this at the moment are from CGAL, and there we can determine from context what to do.
77 lines
1.3 KiB
Bash
Executable File
77 lines
1.3 KiB
Bash
Executable File
#!/bin/sh
|
|
. ./Common
|
|
|
|
###############################################################################
|
|
|
|
tst "outer offset" <<EOF
|
|
struct p2d *p = p2d_new();
|
|
struct p2d *q;
|
|
|
|
p2d_append(p, v2d_new(0, 0));
|
|
p2d_append(p, v2d_new(2, 0));
|
|
p2d_append(p, v2d_new(2, 1));
|
|
p2d_append(p, v2d_new(0, 1));
|
|
p2d_close(p);
|
|
q = p2d_offset(p, 0.5);
|
|
p2d_write_gnuplot(stdout, p2d_reverse(q->next));
|
|
EOF
|
|
|
|
expect <<EOF
|
|
-0.5 -0.5
|
|
2.5 -0.5
|
|
2.5 1.5
|
|
-0.5 1.5
|
|
-0.5 -0.5
|
|
|
|
EOF
|
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
tst "inner offset" <<EOF
|
|
struct p2d *p = p2d_new();
|
|
struct p2d *q;
|
|
|
|
p2d_append(p, v2d_new(0, 0));
|
|
p2d_append(p, v2d_new(2, 0));
|
|
p2d_append(p, v2d_new(2, 1));
|
|
p2d_append(p, v2d_new(0, 1));
|
|
p2d_close(p);
|
|
q = p2d_offset(p, -0.1);
|
|
p2d_write_gnuplot(stdout, q);
|
|
EOF
|
|
|
|
expect <<EOF
|
|
0.1 0.1
|
|
1.9 0.1
|
|
1.9 0.9
|
|
0.1 0.9
|
|
0.1 0.1
|
|
|
|
EOF
|
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
tst "inner offset, polygon cw" <<EOF
|
|
struct p2d *p = p2d_new();
|
|
struct p2d *q;
|
|
|
|
p2d_append(p, v2d_new(0, 0));
|
|
p2d_append(p, v2d_new(0, 1));
|
|
p2d_append(p, v2d_new(2, 1));
|
|
p2d_append(p, v2d_new(2, 0));
|
|
p2d_close(p);
|
|
q = p2d_offset(p, -0.1);
|
|
p2d_write_gnuplot(stdout, q);
|
|
EOF
|
|
|
|
expect <<EOF
|
|
0.1 0.1
|
|
1.9 0.1
|
|
1.9 0.9
|
|
0.1 0.9
|
|
0.1 0.1
|
|
|
|
EOF
|
|
|
|
###############################################################################
|