class NDATA2KNOT
****

-----------NData[]_-->_Knot[]_---------------------


Flattened version is here



Public


Readonly Shareds
shared dir0:INT;
**** current dir= -1/ 1
shared dir1:INT;
****
shared ofs:INT;
**** slope
shared v0,v1,v2,p0,scale:VERTEXK;
shared pos0: INT;
**** current pos.
shared v0,v1,v2,p0,scale:VERTEXK;
shared str0:CARD;
****current str.
shared str1: CARD;
****
shared v0,v1,v2,p0,scale:VERTEXK;
shared v0,v1,v2,p0,scale:VERTEXK;
shared v0,v1,v2,p0,scale:VERTEXK;

Writable Shareds
shared dir0:INT;
**** current dir= -1/ 1
shared dir1:INT;
****
shared ofs:INT;
**** slope
shared v0,v1,v2,p0,scale:VERTEXK;
shared pos0: INT;
**** current pos.
shared v0,v1,v2,p0,scale:VERTEXK;
shared str0:CARD;
****current str.
shared str1: CARD;
****
shared v0,v1,v2,p0,scale:VERTEXK;
shared v0,v1,v2,p0,scale:VERTEXK;
shared v0,v1,v2,p0,scale:VERTEXK;

Features
NData2Knot(ndata:NDATA, inout Knot:KNOT):BOOL
PointInCr(inout Knot:KNOT,inout tp:CARD, OverSw:BOOL)
PointInPt2(NData:NDATA,inout Knot:KNOT,wi1:CARD,dir0:INT,str1:CARD,pos0,ofs:INT,v:VERTEXK, inout pt:CARD,inout needPt0:BOOL)
**** check the condition of the next code, then set (x1,y1) to Knot[] if needed and set "needPt0" be true if (x0,y0) of the next code is needed.
__-->_needPt0.
errMsg(n:CARD)
findStart(NData:NDATA, KTbl:ARRAY{BOOL}, out wi:CARD):BOOL
**** search start point of a component -->wi
searchNext(NData:NDATA, inout wi:CARD, dir0:INT, str0:CARD):BOOL
**** search next code
setPts(NData:NDATA,wi:INT)
****
__x0:=px0+(pos0*2+1-dir0)*xscale;
__y0:=py0+(str0*2_-index_)*yscale;_
__x1:=px0+(pos0*2+1+dir0)*xscale;
__y1:=py0+((str0+ofs)*2_-index_)*yscale;_
__x2:=(x0+x1)_DIV_2;
__y2:=(y0+y1)_DIV_2;_
setStr1(NData:NDATA, wi:CARD, dir0:INT, inout str0:CARD, inout dir1:INT, inout str1:CARD, inout ofs:INT)
**** wi,dir0,str0 ---> str0,dir1,str1,ofs

The Sather Home Page