Subversion Repositories wimsdev

Rev

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
    if(n1>256) n1=256; if(n2>256) n2=256;
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
    if(dd<3) dd=3; if(dd>MAX_SIZE) dd=MAX_SIZE;
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
    if(dd<1) return; if(dd>16) dd=16;
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>0) c1=c; if(c<0) c2=-c; c=c1+c2;
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) {