chiark
/
gitweb
/
~ian
/
moebius2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
wip make output (STL generator) compile
[moebius2.git]
/
mgraph.h
diff --git
a/mgraph.h
b/mgraph.h
index 85f1a3c8d0ef621e8417a2715c1af014df187e91..4ab020585b8e57609cbff0808aedbc2f1dc54d27 100644
(file)
--- a/
mgraph.h
+++ b/
mgraph.h
@@
-92,7
+92,7
@@
#define FOR_VERTEX(v) \
for ((v)=0; (v)<N; (v)++)
#define FOR_VERTEX(v) \
for ((v)=0; (v)<N; (v)++)
-#define FOR_VPEDGE(
v,
e) \
+#define FOR_VPEDGE(e) \
for ((e)=0; (e)<V6; (e)++)
int edge_end2(unsigned v1, int e);
for ((e)=0; (e)<V6; (e)++)
int edge_end2(unsigned v1, int e);
@@
-107,7
+107,7
@@
int edge_reverse(int v1, int e);
#define RIM_VERTEX_P(v) (((v) & ~XMASK) == 0 || ((v) & ~XMASK) == (Y-1)*Y1)
#define FOR_VEDGE_X(v1,e,v2,init,otherwise) \
#define RIM_VERTEX_P(v) (((v) & ~XMASK) == 0 || ((v) & ~XMASK) == (Y-1)*Y1)
#define FOR_VEDGE_X(v1,e,v2,init,otherwise) \
- FOR_VPEDGE((
v1),(e))
\
+ FOR_VPEDGE((
e))
\
if (((v2)= EDGE_END2((v1),(e)), \
(init), \
(v2)) < 0) { otherwise; } else
if (((v2)= EDGE_END2((v1),(e)), \
(init), \
(v2)) < 0) { otherwise; } else
@@
-125,6
+125,10
@@
int edge_reverse(int v1, int e);
for ((vy)=0; (vy)<Y; (vy)+=Y-1) \
for ((vx)=0; (v)= (vy)<<YSHIFT | (vx), (vx)<X; (vx)++)
for ((vy)=0; (vy)<Y; (vy)+=Y-1) \
for ((vx)=0; (v)= (vy)<<YSHIFT | (vx), (vx)<X; (vx)++)
+#define VERTICES_SPAN_JOIN_P(v0,v1) \
+ /* v0 and v1 must be (nearly) adjacent */ \
+ (!!((v0) ^ (v1) ^ (1<<(XBITS-1))))
+
typedef double Vertices[N][D3];
struct Vertices { Vertices a; };
typedef double Vertices[N][D3];
struct Vertices { Vertices a; };