Rev 9652 | Rev 11132 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 9652 | Rev 11120 | ||
---|---|---|---|
Line 386... | Line 386... | ||
386 | void obj_lattice(objparm *pm) |
386 | void obj_lattice(objparm *pm) |
387 | { |
387 | { |
388 | int n1,n2,i1,i2,xi1,yi1,xi2,yi2; |
388 | int n1,n2,i1,i2,xi1,yi1,xi2,yi2; |
389 | double xv1,xv2,yv1,yv2; |
389 | double xv1,xv2,yv1,yv2; |
390 | n1=pm->pd[6];n2=pm->pd[7]; if(n1<0 || n2<0) return; |
390 | n1=pm->pd[6];n2=pm->pd[7]; if(n1<0 || n2<0) return; |
- | 391 | if(n1>256) n1=256; |
|
391 |
|
392 | if(n2>256) n2=256; |
392 | scale(pm->pd,pm->p,1); |
393 | scale(pm->pd,pm->p,1); |
393 | scale2(pm->pd[2],pm->pd[3],&xv1,&yv1); |
394 | scale2(pm->pd[2],pm->pd[3],&xv1,&yv1); |
394 | scale2(pm->pd[4],pm->pd[5],&xv2,&yv2); |
395 | scale2(pm->pd[4],pm->pd[5],&xv2,&yv2); |
395 | for(i1=0;i1<n1;i1++) { |
396 | for(i1=0;i1<n1;i1++) { |
396 | xi1=rint(i1*xv1)+pm->p[0]; yi1=rint(i1*yv1)+pm->p[1]; |
397 | xi1=rint(i1*xv1)+pm->p[0]; yi1=rint(i1*yv1)+pm->p[1]; |
Line 799... | Line 800... | ||
799 | /* set plotjump (plot jump break threashold) */ |
800 | /* set plotjump (plot jump break threashold) */ |
800 | void obj_plotjump(objparm *pm) |
801 | void obj_plotjump(objparm *pm) |
801 | { |
802 | { |
802 | int dd; |
803 | int dd; |
803 | dd=pm->pd[0]; |
804 | dd=pm->pd[0]; |
- | 805 | if(dd<3) dd=3; |
|
804 |
|
806 | if(dd>MAX_SIZE) dd=MAX_SIZE; |
805 | plotjump=dd; |
807 | plotjump=dd; |
806 | } |
808 | } |
807 | 809 | ||
808 | /* plot a curve, either parametric or explicit */ |
810 | /* plot a curve, either parametric or explicit */ |
809 | void _obj_plot(objparm *pm,int dash) |
811 | void _obj_plot(objparm *pm,int dash) |
Line 874... | Line 876... | ||
874 | /* set levelcurve granularity */ |
876 | /* set levelcurve granularity */ |
875 | void obj_levelstep(objparm *pm) |
877 | void obj_levelstep(objparm *pm) |
876 | { |
878 | { |
877 | int dd; |
879 | int dd; |
878 | dd=pm->pd[0]; |
880 | dd=pm->pd[0]; |
- | 881 | if(dd<1) return; |
|
879 |
|
882 | if(dd>16) dd=16; |
880 | lstep=dd; |
883 | lstep=dd; |
881 | } |
884 | } |
882 | 885 | ||
883 | /* level curve */ |
886 | /* level curve */ |
884 | void obj_levelcurve(objparm *pm) |
887 | void obj_levelcurve(objparm *pm) |
Line 1272... | Line 1275... | ||
1272 | char *p1, *p2; |
1275 | char *p1, *p2; |
1273 | int j,t,c,c1,c2; |
1276 | int j,t,c,c1,c2; |
1274 | 1277 | ||
1275 | c=o->color_pos;c1=c2=0; |
1278 | c=o->color_pos;c1=c2=0; |
1276 | pm->color[0]=pm->color[1]=0; |
1279 | pm->color[0]=pm->color[1]=0; |
- | 1280 | if(c>0) c1=c; |
|
1277 | if(c |
1281 | if(c<0) c2=-c; |
- | 1282 | c=c1+c2; |
|
1278 | t=itemnum(p);if(t<o->required_parms+3*c) return -1; |
1283 | t=itemnum(p);if(t<o->required_parms+3*c) return -1; |
1279 | if(c1>0 && t>o->required_parms+3*c) t=o->required_parms+3*c; |
1284 | if(c1>0 && t>o->required_parms+3*c) t=o->required_parms+3*c; |
1280 | pm->pcnt=t-3*c; |
1285 | pm->pcnt=t-3*c; |
1281 | if(pm->pcnt>MAX_PARMS) pm->pcnt=MAX_PARMS; |
1286 | if(pm->pcnt>MAX_PARMS) pm->pcnt=MAX_PARMS; |
1282 | if(c2>0) { |
1287 | if(c2>0) { |