// Copyright (C) 2001 Leena L�hteenm�ki, Finland // Copyright (C) 2012 PatternMaker Software // 2011/11/04 double x[200], y[200]; object group_obj[300]; object current_object; point current_point; selection current_selection; double round_abdomen; double index, done, version; double ease, model, skit, waist,zipper; double language; double curvefrom,sv, slit; object marker_array[40]; double marker_count, loop; double result; main() { double vy,yly,aly,ylk,alk; double emlk,emls, tml,sml,pit; double f_vy[3],f_yly[3],f_aly[3]; double vekki; double halkiok,halkiol,tasku; double eleveys,tleveys, epaikkak,epaikkas,tpaikka; double siirtox, siirtoy; double ang,ang2,ang3,rotaatio; double f_sv[2]; double laskos_v, laskos_y, laskos_l, laskosvara_v, laskosvara_y, laskosvara_l; double kerr1, kerr2,kerr3; double f_vy[3],f_yly[3],f_aly[3]; language=get_language(); if ( language != 0 ) { language = 0; } if (language == 0) { check_reg(0, "Leena","L2macros", "This macro needs to be properly installed before running it."); } vy=78; yly=95; aly=102; ylk=9; alk=19; zipper=20; halkiok=18; sv=1; rotaatio=8; pit=60; halkiol=5; //Start Options while (!done) { if (index==0) { dialog_ease(); } if (index==1) { dialog_model(); } if (index==2) { dialog_vents(); } if (index==3) { dialog_waistband(); } if (index==4) { dialog_abdomen(); } if (index==5) { dialog_curve(); } } //End Options if(model==1) { if (language == 0) { dialog_box("AMOUNT OF FLARE (Degrees)","Rotation angle",rotaatio); } } vekki=1; double metric; if (is_function("unit_mode")==1) { metric = unit_mode(); if (!metric) { vy=vy/2.54; yly=yly/2.54; aly=aly/2.54; ylk=ylk/2.54; alk=alk/2.54; pit=pit/2.54; zipper=zipper/2.54; halkiok=halkiok/2.54; sv=sv/2.54; } } else { if (language == 0) { metric=2*pop_up("UNITS","Inches","Centimeters"); } if (metric<1) { vy=vy/2.54; yly=yly/2.54; aly=aly/2.54; ylk=ylk/2.54; alk=alk/2.54; pit=pit/2.54; zipper=zipper/2.54; halkiok=halkiok/2.54; sv=sv/2.54; } } if(metric==0) { sv=0.39; } double read; read = 0; if (is_function("measure_table")==1) { if (measure_table("default_women")==1) { read = 1; } } if (read==0) { if (is_function("start_picture_input")) { if (language == 0) { start_picture_input("LADIES' SKIRT"); } if (language == 0) { add_picture_input("Abdomen circumference",yly, "w_meas_abdmcirc"); } if (language == 0) { add_picture_input("Hip circumference",aly, "w_meas_hipcirc"); } if (language == 0) { add_picture_input("Waist - Abdomen",ylk, "w_meas_waist-abdm"); } if (language == 0) { add_picture_input("Waist - Hip",alk, "w_meas_waist-hip"); } run_picture_input(); } else { if (language == 0) { dialog_box( "LADIES' SKIRT, 1 of 1", "Waist circumference", vy, "Abdomen circumference",yly, "Hip circumference",aly, "Waist - Abdomen",ylk, "Waist - Hip",alk); } } } if (is_function("start_picture_input")) { if (language == 0) { start_picture_input("CUSTOM MEASUREMENTS"); } if (language == 0) { add_picture_input("Length from waist",pit, "w_meas_skirt_dress_length"); } if (language == 0) { add_picture_input("Zipper length",zipper,"w_meas_zipper"); } if (language == 0) { add_picture_input("Seam Allowance", sv, "meas_seamallow"); } run_picture_input(); } else { if (language == 0) { dialog_box( "CUSTOM MEASUREMENTS", "Length from waist",pit, "Zipper length",zipper, "Seam Allowance",sv); } } if (is_function("unit_mode")==1) { metric = unit_mode(); if (!metric) { vy=vy*2.54; yly=yly*2.54; aly=aly*2.54; ylk=ylk*2.54; alk=alk*2.54; pit=pit*2.54; zipper=zipper*2.54; halkiok=halkiok*2.54; } } else { if (metric<1) { vy=vy*2.54; yly=yly*2.54; aly=aly*2.54; ylk=ylk*2.54; alk=alk*2.54; pit=pit*2.54; zipper=zipper*2.54; halkiok=halkiok*2.54; } } if(metric==2) { sv=sv/2.54; } f_vy[0]=vy+2; f_yly[0]=yly+4; f_aly[0]=aly+4; f_vy[1]=vy+1; f_yly[1]=yly+2; f_aly[1]=aly+2; f_vy[2]=vy+3; f_yly[2]=yly+6; f_aly[2]=aly+6; vy=f_vy[ease]; yly=f_yly[ease]; aly=f_aly[ease]; if(waist==1) { yly=yly+2; aly=aly+2; } eleveys=aly/4+1.5; tleveys=aly/4-1.5; if(waist==1) { vy=aly; } double test; test=aly-vy; if (test < 32) { emlk=0; emls=2; tml=2.5; sml=(aly/2-vy/2-emlk-emls-tml); epaikkas=eleveys-sml/2-vy/10-4; tpaikka=(tleveys-sml/2)/2+tml/2; } else { emlk=2; emls=2; tml=2.5; sml=(aly/2-vy/2-emlk-emls-tml); epaikkas=eleveys-sml/2-4; epaikkak=eleveys-sml/2-4-emls; tpaikka=(tleveys-sml/2)/2+tml/2; } if(model==1) { emlk=0; emls=3; tml=3; sml=(aly/2-vy/2-6); epaikkas=eleveys/2+emls-2; tpaikka=tleveys/2-tml; } if(waist==1) { emlk=0; emls=0; tml=0; sml=0; } if(model==2) { vy=aly; pit=pit-alk; } x[0]=0; y[0]=0; coord(0,1,0,0); coord(1,2,0,-ylk); coord(1,3,0,-alk); coord(1,4,0,-pit); coord(4,5,eleveys-1,0); coord(3,6,eleveys,0); x[7]=x[6]; y[7]=y[2]; coord(1,8,eleveys-sml/2,1); coord(8,9,sml,0); x[10]=x[6]; y[10]=y[2]; coord(6,11,0,0); coord(11,12,+1,-(pit-alk)); coord(12,13,tleveys-1,0); coord(11,14,tleveys,0); coord(14,15,0,alk-ylk); coord(14,16,0,alk); coord(16,17,-tpaikka,0); coord(17,18,-tml/2,-ylk-(alk-ylk)/2); coord(17,19,-tml,0); coord(1,20,epaikkas,0); coord(20,21,-emls/2,-ylk); coord(20,22,-emls,0); coord(22,23,-4,0); coord(23,24,-emlk/2,-ylk); coord(23,25,-emlk,0); coord(13,26,halkiol,0); coord(26,27,0,halkiok); coord(27,28,-halkiol,0); coord(16,29,0,-zipper); coord(29,30,3,0); coord(16,31,3,0); cont(11,12,32,-halkiok); coord(32,33,-halkiol,0); coord(12,34,-halkiol,0); cont(6,5,35,-halkiok); coord(35,36,halkiol,0); coord(5,37,halkiol,0); cont(3,4,38,-halkiok); coord(38,39,-halkiol,0); coord(4,40,-halkiol,0); cont(4,3,81,-20); cont(5,6,82,-20); cont(12,11,83,-20); cont(13,14,84,-20); cont(4,3,85,-10); cont(5,6,86,-10); cont(12,11,87,-10); cont(13,14,88,-10); x[89]=x[21]; y[89]=y[81]; x[90]=x[21]; y[90]=y[85]; x[91]=x[18]; y[91]=y[83]; x[92]=x[18]; y[92]=y[87]; x[93]=x[21]; y[93]=y[4]; x[94]=x[18]; y[94]=y[12]; x[95]=x[21]; y[95]=y[3]; x[96]=x[18]; y[96]=y[3]; center(4,93,97); center(5,93,98); center(12,94,99); center(13,94,100); line_intersect(10,15,18,19,101); line_intersect(10,15,18,17,102); if(round_abdomen==1) { y[8]=y[8]-1; y[1]=y[1]+2; y[25]=y[25]+1.5; y[23]=y[23]+1.5; y[9]=y[9]-1; if(test>32) { y[22]=y[22]+1; y[20]=y[20]+1; if(waist==1) { y[20]=y[20]+0.5; } } else { y[22]=y[22]+2; y[20]=y[20]+2; if(waist==1) { y[20]=y[20]+0.5; } } } laskos_v=vy/14; laskos_y=yly/14; laskos_l=aly/14; laskosvara_v=(280-vy-4)/14; laskosvara_y=(280-yly-4)/14; laskosvara_l=(280-aly-4)/14; if(vekki==2) { laskos_v=(vy-20)/12; laskos_y=(yly-20)/12; laskos_l=(aly-20)/12; laskosvara_v=(280-vy-4-20)/12; laskosvara_y=(280-yly-4-20)/12; laskosvara_l=(280-aly-4-20)/12; } coord(0,102,0,0); coord(103,104,0,-ylk); coord(103,105,0,-alk); coord(103,106,0,-pit); if(waist==0) { current_object=newobject("poly"); addpoint((1+siirtox)/2.54, (1+15)/2.54, "line"); addpoint((1+vy/2+siirtox+4)/2.54, (1+15)/2.54, "line"); addpoint((1+vy/2+siirtox+4)/2.54, (1+15-7)/2.54, "line"); addpoint((1+siirtox)/2.54, (1+15-7)/2.54, "line"); group_obj[1]=current_object; current_object=newobject("poly"); addpoint((1+4+siirtox)/2.54, (1+15)/2.54, "line"); current_point=addpoint((1+4+siirtox)/2.54, (1+15-3.5)/2.54, "line"); notch_type(current_point,"BTN",1); addpoint((1+4+siirtox)/2.54, (1+15-7)/2.54, "open"); group_obj[2]=current_object; if (language == 0) { current_object=newobject("text","CB",0.0,0.2,0.2,"SIMP.CHR"); } addpoint((1+4+siirtox+1)/2.54, (1+15-3.5)/2.54, "line"); group_obj[3]=current_object; if (language == 0) { current_object=newobject("text","Waist Band, Cut 1 on fold, CF",0.0,0.2,0.2,"SIMP.CHR"); } addpoint((1+vy/2+siirtox-12+7)/2.54, (1+15-3)/2.54, "line"); group_obj[103]=current_object; if(sv>0) { offset_mark(1); select(current_selection,group_obj[2]); select(current_selection,group_obj[3]); select(current_selection,group_obj[103]); group(current_selection); deselect(current_selection); } else { mark(1); current_selection=newselection("OBJECT"); select(current_selection,group_obj[1]); select(current_selection,group_obj[2]); select(current_selection,group_obj[3]); select(current_selection,group_obj[103]); group(current_selection); deselect(current_selection); } siirtox=0; } if(waist==1) { current_object=newobject("poly"); addpoint((1+siirtox)/2.54, (1+15)/2.54, "line"); addpoint((1+aly/2+siirtox)/2.54, (1+15)/2.54, "line"); addpoint((1+aly/2+siirtox)/2.54, (1+15-7)/2.54, "line"); addpoint((1+siirtox)/2.54, (1+15-7)/2.54, "line"); group_obj[1]=current_object; if (language == 0) { current_object=newobject("text","CB",0.0,0.2,0.2,"SIMP.CHR"); } addpoint((1+siirtox+1)/2.54, (1+15-3.5)/2.54, "line"); group_obj[3]=current_object; if (language == 0) { current_object=newobject("text","Waist band, Cut 1 on fold, CF",0.0,0.2,0.2,"SIMP.CHR"); } addpoint((1-3+aly/2+siirtox-10)/2.54, (1+15-3)/2.54, "line"); group_obj[103]=current_object; if(sv>0) { offset_mark(1); select(current_selection,group_obj[3]); select(current_selection,group_obj[103]); group(current_selection); deselect(current_selection); } else { mark(1); current_selection=newselection("OBJECT"); select(current_selection,group_obj[1]); select(current_selection,group_obj[3]); select(current_selection,group_obj[103]); group(current_selection); deselect(current_selection); } siirtox=0; } if(model==0) { if(slit==2) { current_object=newobject("poly"); addpoint((x[4]+siirtox)/2.54, (y[4]+siirtoy)/2.54, "line"); addpoint((x[40]+siirtox)/2.54, (y[40]+siirtoy)/2.54, "line"); addpoint((x[39]+siirtox)/2.54, (y[39]+siirtoy)/2.54, "line"); addpoint((x[38]+siirtox)/2.54, (y[38]+siirtoy)/2.54, "open"); group_obj[101]=current_object; if(sv>0) { offset_mark(101); group(current_selection); deselect(current_selection); } else { mark(101); } } } if(slit==3) { current_object=newobject("poly"); addpoint((x[5]+siirtox)/2.54, (y[5]+siirtoy)/2.54, "line"); addpoint((x[37]+siirtox)/2.54, (y[37]+siirtoy)/2.54, "line"); addpoint((x[36]+siirtox)/2.54, (y[36]+siirtoy)/2.54, "line"); addpoint((x[35]+siirtox)/2.54, (y[35]+siirtoy)/2.54, "open"); group_obj[102]=current_object; if (language == 0) { current_object=newobject("text","When cutting pieces on fold",0.0,0.2,0.2,"SIMP.CHR"); } addpoint((x[2]+siirtox)/2.54, (y[2]+siirtoy)/2.54, "line"); group_obj[225]=current_object; if (language == 0) { current_object=newobject("text","remove fold seam allowance",0.0,0.2,0.2,"SIMP.CHR"); } addpoint((x[2]+siirtox)/2.54, (y[2]-1+siirtoy)/2.54, "line"); group_obj[226]=current_object; if(sv>0) { offset_mark(102); select(current_selection,group_obj[225]); select(current_selection,group_obj[226]); group(current_selection); deselect(current_selection); } else { mark(102); current_selection=newselection("OBJECT"); select(current_selection,group_obj[102]); select(current_selection,group_obj[225]); select(current_selection,group_obj[226]); group(current_selection); deselect(current_selection); } } if(model==0) { current_object=newobject("poly"); addpoint((x[1]+siirtox)/2.54, (y[1]+siirtoy)/2.54, "line"); addpoint((x[2]+siirtox)/2.54, (y[2]+siirtoy)/2.54, "line"); addpoint((x[3]+siirtox)/2.54, (y[3]+siirtoy)/2.54, "line"); addpoint((x[4]+siirtox)/2.54, (y[4]+siirtoy)/2.54, "line"); addpoint((x[5]+siirtox)/2.54, (y[5]+siirtoy)/2.54, "line"); current_point=addpoint((x[6]+siirtox)/2.54, (y[6]+siirtoy)/2.54, "xarc_start"); notch_type(current_point,"NOTCH",1); addpoint((x[7]+siirtox)/2.54, (y[7]+siirtoy)/2.54, "xarc_corner"); if(waist==0) { addpoint((x[8]+siirtox)/2.54, (y[8]+siirtoy)/2.54, "line"); addpoint((x[20]+siirtox)/2.54, (y[20]+siirtoy)/2.54, "line"); addpoint((x[21]+siirtox)/2.54, (y[21]+siirtoy)/2.54, "line"); addpoint((x[22]+siirtox)/2.54, (y[22]+siirtoy)/2.54, "line"); } else { addpoint((x[8]+siirtox)/2.54, (y[8]+siirtoy)/2.54, "xarc_start"); addpoint((x[22]+siirtox)/2.54, (y[22]+siirtoy)/2.54, "xarc_corner"); } if(test>32) { addpoint((x[23]+siirtox)/2.54, (y[23]+siirtoy)/2.54, "line"); addpoint((x[24]+siirtox)/2.54, (y[24]+siirtoy)/2.54, "line"); addpoint((x[25]+siirtox)/2.54, (y[25]+siirtoy)/2.54, "line"); } group_obj[79]=current_object; if (language == 0) { current_object=newobject("text","Front piece, cut 1 on fold",0.0,0.2,0.2,"SIMP.CHR"); } addpoint((x[1]+1+siirtox)/2.54,(y[1]-1-0.5+siirtoy)/2.54,"line"); group_obj[81]=current_object; if (language == 0) { current_object=newobject("text","Center front",0.0,0.2,0.2,"SIMP.CHR"); } addpoint((x[1]+1+siirtox)/2.54,(y[1]-2-0.5+siirtoy)/2.54,"line"); group_obj[82]=current_object; if(sv>0) { offset_mark(79); select(current_selection,group_obj[81]); select(current_selection,group_obj[82]); /* if(model==0) { if(slit==2) { select(current_selection,group_obj[101]); } if(slit==3) { select(current_selection,group_obj[102]); } } */ group(current_selection); deselect(current_selection); } else { mark(79); current_selection=newselection("OBJECT"); select(current_selection,group_obj[79]); select(current_selection,group_obj[81]); select(current_selection,group_obj[82]); if(model==0) { /* if(slit==2) { select(current_selection,group_obj[101]); } if(slit==3) { select(current_selection,group_obj[102]); } */ } group(current_selection); deselect(current_selection); } } if(model==1) { siirtox=-4; ang=rotaatio*3.14159/180; if(curvefrom==0) { rotate (2,1,-ang); rotate (3,1,-ang); rotate (85,1,-ang); rotate (81,1,-ang); rotate (4,1,-ang); rotate (93,22,ang); rotate (89,22,ang); rotate (90,22,ang); rotate (95,22,ang); rotate (21,22,ang); } if(curvefrom==1) { rotate (85,3,-ang); rotate (81,3,-ang); rotate (4,3,-ang); rotate (93,95,ang); rotate (89,95,ang); rotate (90,95,ang); } if(curvefrom==2) { rotate (81,85,-ang); rotate (4,85,-ang); rotate (93,90,ang); rotate (89,90,ang); } if(curvefrom==3) { rotate (4,81,-ang); rotate (93,89,ang); } current_object=newobject("poly"); addpoint((x[1]+siirtox)/2.54, (y[1]+siirtoy)/2.54, "line"); addpoint((x[2]+siirtox)/2.54, (y[2]+siirtoy)/2.54, "line"); addpoint((x[3]+siirtox)/2.54, (y[3]+siirtoy)/2.54, "line"); addpoint((x[85]+siirtox)/2.54, (y[85]+siirtoy)/2.54, "line"); addpoint((x[81]+siirtox)/2.54, (y[81]+siirtoy)/2.54, "line"); addpoint((x[4]+siirtox)/2.54, (y[4]+siirtoy)/2.54, "xarc_start"); addpoint((x[97]+siirtox)/2.54, (y[97]+siirtoy)/2.54, "xarc_corner"); addpoint((x[93]+siirtox)/2.54, (y[93]+siirtoy)/2.54, "line"); addpoint((x[89]+siirtox)/2.54, (y[89]+siirtoy)/2.54, "line"); addpoint((x[90]+siirtox)/2.54, (y[90]+siirtoy)/2.54, "line"); addpoint((x[95]+siirtox)/2.54, (y[95]+siirtoy)/2.54, "line"); addpoint((x[21]+siirtox)/2.54, (y[21]+siirtoy)/2.54, "line"); addpoint((x[22]+siirtox)/2.54, (y[22]+siirtoy)/2.54, "line"); group_obj[7]=current_object; if (language == 0) { current_object=newobject("text","CF",0.0,0.3,0.2,"SIMP.CHR"); } addpoint((x[2]+1+siirtox)/2.54, (y[2]+3+siirtoy)/2.54, "line"); group_obj[8]=current_object; if(sv>0) { if (language == 0) { current_object=newobject("text","Check hem seam allowance",0.0,0.4,0.2,"SIMP.CHR"); } addpoint((x[97]+siirtox)/2.54, (y[4]+0.2+siirtoy)/2.54, "line"); group_obj[107]=current_object; offset_mark(7); select(current_selection,group_obj[8]); select(current_selection,group_obj[107]); group(current_selection); deselect(current_selection); } else { mark(7); current_selection=newselection("object"); select(current_selection,group_obj[7]); select(current_selection,group_obj[8]); group(current_selection); deselect(current_selection); } siirtox=0; if(curvefrom==0) { rotate (93,22,-2*ang); rotate (89,22,-2*ang); rotate (90,22,-2*ang); rotate (95,22,-2*ang); rotate (21,22,-2*ang); rotate (7,8,ang); rotate (6,8,ang); rotate (86,8,ang); rotate (82,8,ang); rotate (5,8,ang); } if(curvefrom==1) { rotate (93,95,-2*ang); rotate (89,95,-2*ang); rotate (90,95,-2*ang); rotate (86,6,ang); rotate (82,6,ang); rotate (5,6,ang); } if(curvefrom==2) { rotate (93,90,-2*ang); rotate (89,90,-2*ang); rotate (82,86,ang); rotate (5,86,ang); } if(curvefrom==3) { rotate (93,89,-2*ang); rotate (5,82,ang); } current_object=newobject("poly"); addpoint((x[8]+siirtox)/2.54, (y[8]+siirtoy)/2.54, "line"); addpoint((x[20]+siirtox)/2.54, (y[20]+siirtoy)/2.54, "line"); addpoint((x[21]+siirtox)/2.54, (y[21]+siirtoy)/2.54, "line"); addpoint((x[95]+siirtox)/2.54, (y[95]+siirtoy)/2.54, "line"); addpoint((x[90]+siirtox)/2.54, (y[90]+siirtoy)/2.54, "line"); addpoint((x[89]+siirtox)/2.54, (y[89]+siirtoy)/2.54, "line"); addpoint((x[93]+siirtox)/2.54, (y[93]+siirtoy)/2.54, "xarc_start"); addpoint((x[98]+siirtox)/2.54, (y[98]+siirtoy)/2.54, "xarc_corner"); addpoint((x[5]+siirtox)/2.54, (y[5]+siirtoy)/2.54, "line"); addpoint((x[82]+siirtox)/2.54, (y[82]+siirtoy)/2.54, "line"); addpoint((x[86]+siirtox)/2.54, (y[86]+siirtoy)/2.54, "line"); current_point=addpoint((x[6]+siirtox)/2.54, (y[6]+siirtoy)/2.54, "xarc_start"); notch_type(current_point,"NOTCH",1); addpoint((x[7]+siirtox)/2.54, (y[7]+siirtoy)/2.54, "xarc_corner"); group_obj[9]=current_object; if (language == 0) { current_object=newobject("text","Front Side piece",0.0,0.3,0.2,"SIMP.CHR"); } addpoint((x[20]+1+siirtox)/2.54, (y[2]+3+siirtoy)/2.54, "line"); group_obj[10]=current_object; current_object=newobject("poly"); addpoint((x[98]+siirtox)/2.54, (y[98]+10+siirtoy)/2.54, "line"); addpoint((x[98]+siirtox)/2.54, (y[98]+40+siirtoy)/2.54, "open"); group_obj[11]=current_object; if(sv>0) { if (language == 0) { current_object=newobject("text","Check hem seam allowance",0.0,0.4,0.2,"SIMP.CHR"); } addpoint((x[98]+siirtox)/2.54, (y[4]+0.2+siirtox)/2.54, "line"); group_obj[109]=current_object; offset_mark(9); select(current_selection,group_obj[10]); select(current_selection,group_obj[11]); select(current_selection,group_obj[109]); group(current_selection); deselect(current_selection); } else { mark(9); current_selection=newselection("object"); select(current_selection,group_obj[9]); select(current_selection,group_obj[10]); select(current_selection,group_obj[11]); group(current_selection); deselect(current_selection); } ang=rotaatio*3.14159/180; siirtox=4; if(curvefrom==0) { rotate (10,9,-ang); rotate (11,9,-ang); rotate (87,9,-ang); rotate (83,9,-ang); rotate (12,9,-ang); rotate (94,19,ang); rotate (91,19,ang); rotate (92,19,ang); rotate (96,19,ang); rotate (18,19,ang); } if(curvefrom==1) { rotate (87,11,-ang); rotate (83,11,-ang); rotate (12,11,-ang); rotate (94,96,ang); rotate (91,96,ang); rotate (92,96,ang); } if(curvefrom==2) { rotate (83,87,-ang); rotate (12,87,-ang); rotate (94,92,ang); rotate (91,92,ang); } if(curvefrom==3) { rotate (12,83,-ang); rotate (94,91,ang); } current_object=newobject("poly"); addpoint((x[9]+siirtox)/2.54, (y[9]+siirtoy)/2.54, "xarc_start"); addpoint((x[10]+siirtox)/2.54, (y[10]+siirtoy)/2.54, "xarc_corner"); addpoint((x[11]+siirtox)/2.54, (y[11]+siirtoy)/2.54, "line"); addpoint((x[87]+siirtox)/2.54, (y[87]+siirtoy)/2.54, "line"); addpoint((x[83]+siirtox)/2.54, (y[83]+siirtoy)/2.54, "line"); addpoint((x[12]+siirtox)/2.54, (y[12]+siirtoy)/2.54, "xarc_start"); addpoint((x[99]+siirtox)/2.54, (y[99]+siirtoy)/2.54, "xarc_corner"); addpoint((x[94]+siirtox)/2.54, (y[94]+siirtoy)/2.54, "line"); addpoint((x[91]+siirtox)/2.54, (y[91]+siirtoy)/2.54, "line"); addpoint((x[92]+siirtox)/2.54, (y[92]+siirtoy)/2.54, "line"); addpoint((x[96]+siirtox)/2.54, (y[96]+siirtoy)/2.54, "line"); addpoint((x[18]+siirtox)/2.54, (y[18]+siirtoy)/2.54, "line"); addpoint((x[19]+siirtox)/2.54, (y[19]+siirtoy)/2.54, "line"); group_obj[92]=current_object; if (language == 0) { current_object=newobject("text","Back side piece",0.0,0.3,0.2,"SIMP.CHR"); } addpoint((x[10]+5+siirtox)/2.54, (y[2]+3+siirtoy)/2.54, "line"); group_obj[93]=current_object; current_object=newobject("poly"); addpoint((x[99]+siirtox)/2.54, (y[99]+10+siirtoy)/2.54, "line"); addpoint((x[99]+siirtox)/2.54, (y[99]+40+siirtoy)/2.54, "open"); group_obj[94]=current_object; if(sv>0) { if (language == 0) { current_object=newobject("text","Check hem seam allowance",0.0,0.4,0.2,"SIMP.CHR"); } addpoint((x[99]+siirtox)/2.54, (y[12]+0.2+siirtoy)/2.54, "line"); group_obj[108]=current_object; offset_mark(92); select(current_selection,group_obj[93]); select(current_selection,group_obj[94]); select(current_selection,group_obj[108]); group(current_selection); deselect(current_selection); } else { mark(92); current_selection=newselection("object"); select(current_selection,group_obj[92]); select(current_selection,group_obj[93]); select(current_selection,group_obj[94]); group(current_selection); deselect(current_selection); } siirtox=8; if(curvefrom==0) { rotate (18,17,-2*ang); rotate (96,17,-2*ang); rotate (92,17,-2*ang); rotate (91,17,-2*ang); rotate (94,17,-2*ang); rotate (13,16,ang); rotate (84,16,ang); rotate (88,16,ang); rotate (14,16,ang); rotate (15,16,ang); } if(curvefrom==1) { rotate (92,96,-2*ang); rotate (91,96,-2*ang); rotate (94,96,-2*ang); rotate (13,14,ang); rotate (84,14,ang); rotate (88,14,ang); } if(curvefrom==2) { rotate (91,92,-2*ang); rotate (94,92,-2*ang); rotate (13,88,ang); rotate (84,88,ang); } if(curvefrom==3) { rotate (94,91,-2*ang); rotate (13,84,ang); } if(curvefrom==0) { rotate(29,16,ang); rotate(30,16,ang); rotate(31,16,ang); } if(waist==0) { siirtox=8; current_object=newobject("poly"); addpoint((x[29]+siirtox)/2.54, (y[29]+siirtoy)/2.54, "line"); addpoint((x[30]+siirtox)/2.54, (y[30]+siirtoy)/2.54, "line"); addpoint((x[31]+siirtox)/2.54, (y[31]+siirtoy)/2.54, "line"); addpoint((x[16]+siirtox)/2.54, (y[16]+siirtoy)/2.54, "open"); group_obj[97]=current_object; siirtox=0; if(sv>0) { if (language == 0) { current_object=newobject("text","Check hem seam allowance",0.0,0.4,0.2,"SIMP.CHR"); } addpoint((x[100]+siirtox)/2.54, (y[12]+0.2+siirtoy)/2.54, "line"); group_obj[110]=current_object; offset_mark(97); select(current_selection,group_obj[110]); group(current_selection); deselect(current_selection); } else { mark(97); } } siirtox=8; current_object=newobject("poly"); addpoint((x[17]+siirtox)/2.54, (y[17]+siirtoy)/2.54, "line"); addpoint((x[18]+siirtox)/2.54, (y[18]+siirtoy)/2.54, "line"); addpoint((x[96]+siirtox)/2.54, (y[96]+siirtoy)/2.54, "line"); addpoint((x[92]+siirtox)/2.54, (y[92]+siirtoy)/2.54, "line"); addpoint((x[91]+siirtox)/2.54, (y[91]+siirtoy)/2.54, "line"); addpoint((x[94]+siirtox)/2.54, (y[94]+siirtoy)/2.54, "xarc_start"); addpoint((x[100]+siirtox)/2.54, (y[100]+siirtoy)/2.54, "xarc_corner"); addpoint((x[13]+siirtox)/2.54, (y[13]+siirtoy)/2.54, "line"); addpoint((x[84]+siirtox)/2.54, (y[84]+siirtoy)/2.54, "line"); addpoint((x[88]+siirtox)/2.54, (y[88]+siirtoy)/2.54, "line"); addpoint((x[14]+siirtox)/2.54, (y[14]+siirtoy)/2.54, "line"); addpoint((x[15]+siirtox)/2.54, (y[15]+siirtoy)/2.54, "line"); addpoint((x[16]+siirtox)/2.54, (y[16]+siirtoy)/2.54, "line"); group_obj[95]=current_object; if (language == 0) { current_object=newobject("text","CB",0.0,0.3,0.2,"SIMP.CHR"); } addpoint((x[17]+4+siirtox)/2.54, (y[2]+3+siirtoy)/2.54, "line"); group_obj[96]=current_object; siirtox=0; if(sv>0) { offset_mark(95); select(current_selection,group_obj[96]); // if(waist==0) // { // select(current_selection,group_obj[97]); // } group(current_selection); deselect(current_selection); } else { mark(95); current_selection=newselection("OBJECT"); select(current_selection,group_obj[95]); select(current_selection,group_obj[96]); // if(waist==0) // { // select(current_selection,group_obj[97]); // } group(current_selection); deselect(current_selection); } } if(MODEL==2) { double kerr1, kerr2,kerr3; ang=angle(x[21],y[21],x[22],y[22])-angle(x[21],y[21],x[20],y[20]); rotate(8,21,ang); rotate(7,21,ang); rotate(20,21,ang); if(test>32) { ang2=angle(x[24],y[24],x[25],y[25])-angle(x[24],y[24],x[23],y[23]); rotate(8,24,ang2); rotate(7,24,ang2); rotate(20,24,ang2); rotate(22,24,ang2); rotate(21,24,ang2); rotate(23,24,ang2); } current_object=newobject("poly"); siirtoy=alk+4; addpoint((x[8]+siirtox)/2.54, (y[8]+siirtoy)/2.54, "xarc_start"); addpoint((x[7]+siirtox)/2.54, (y[7]+siirtoy)/2.54, "XARC_corner"); addpoint((x[7]+siirtox)/2.54, (y[7]-(alk-ylk)+siirtoy)/2.54, "xarc_start"); addpoint((x[21]+siirtox)/2.54, (y[21]-(alk-ylk)+siirtoy)/2.54, "XARC_corner"); addpoint((x[24]+siirtox)/2.54, (y[24]-(alk-ylk)+siirtoy)/2.54, "line"); addpoint((x[3]+siirtox)/2.54, (y[3]+siirtoy)/2.54, "line"); addpoint((x[1]+siirtox)/2.54, (y[1]+siirtoy)/2.54, "line"); addpoint((x[25]+siirtox)/2.54, (y[25]+siirtoy)/2.54, "XARC_START"); addpoint((x[22]+siirtox)/2.54, (y[22]+siirtoy)/2.54, "XARC_corner"); group_obj[17]=current_object; if (language == 0) { current_object=newobject("text","CF",0.0,0.4,0.2,"SIMP.CHR"); } addpoint((x[1]+0.2+siirtox)/2.54,(y[1]-2-1+siirtoy)/2.54,"line"); group_obj[18]=current_object; if(sv>0) { offset_mark(17); select(current_selection,group_obj[18]); group(current_selection); deselect(current_selection); } else { mark(17); current_selection=newselection("OBJECT"); select(current_selection,group_obj[17]); select(current_selection,group_obj[18]); group(current_selection); deselect(current_selection); } ang3=angle(x[101],y[101],x[19],y[19])-angle(x[102],y[102],x[17],y[17]); shift(9,dist(17,19),0); shift(10,dist(17,19),0); shift(101,dist(17,19),0); shift(19,dist(17,19),0); rotate(9,17,-ang); rotate(10,17,-ang); rotate(101,17,-ang); siirtox=2*sv+2*halkiol; current_object=newobject("poly"); addpoint((x[9]+siirtox)/2.54, (y[9]+siirtoy)/2.54, "XARC_START"); addpoint((x[17]+siirtox)/2.54, (y[17]+siirtoy)/2.54, "XARC_CORNER"); addpoint((x[16]+siirtox)/2.54, (y[16]+siirtoy)/2.54, "line"); if(waist==0) { addpoint((x[31]+siirtox)/2.54, (y[31]+siirtoy)/2.54, "line"); addpoint((x[31]+siirtox)/2.54, (y[15]+siirtoy)/2.54, "line"); addpoint((x[31]+siirtox)/2.54, (y[14]+siirtoy)/2.54, "xarc_start"); } else { addpoint((x[16]+siirtox)/2.54, (y[15]+siirtoy)/2.54, "line"); addpoint((x[16]+siirtox)/2.54, (y[14]+siirtoy)/2.54, "xarc_start"); } addpoint((x[101]+siirtox)/2.54, (y[101]-(alk-ylk)+siirtoy)/2.54, "xarc_corner"); addpoint((x[10]+siirtox)/2.54, (y[10]-(alk-ylk)+siirtoy)/2.54, "xarc_start"); addpoint((x[10]+0.5+siirtox)/2.54, (y[10]+siirtoy)/2.54, "xarc_corner"); group_obj[19]=current_object; if (language == 0) { current_object=newobject("text","CB",0.0,0.4,0.2,"SIMP.CHR"); } addpoint((x[16]-5+siirtox)/2.54,(y[16]-2-1+siirtoy)/2.54,"line"); group_obj[20]=current_object; if(waist==0) { current_object=newobject("poly"); addpoint((x[29]+siirtox)/2.54, (y[29]+siirtoy)/2.54, "line"); addpoint((x[16]+siirtox)/2.54, (y[16]+siirtoy)/2.54, "open"); group_obj[125]=current_object; } siirtoy=0; siirtox=0; if(sv>0) { offset_mark(19); select(current_selection,group_obj[20]); if(waist==0) { select(current_selection,group_obj[125]); } group(current_selection); deselect(current_selection); } else { mark(19); current_selection=newselection("OBJECT"); select(current_selection,group_obj[19]); select(current_selection,group_obj[20]); if(waist==0) { select(current_selection,group_obj[125]); } group(current_selection); deselect(current_selection); } current_object=newobject("poly"); addpoint((x[103]+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+14*laskosvara_l+14*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+14*laskosvara_l+14*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+14*laskosvara_y+14*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+14*laskosvara_v+14*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[21]=current_object; siirtox=0; current_object=newobject("poly"); addpoint((x[106]+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+0.5*laskosvara_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[22]=current_object; current_object=newobject("poly"); addpoint((x[106]+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+0.5*laskosvara_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[23]=current_object; kerr1=0.5; kerr2=0; kerr3=1; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[24]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[25]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[26]=current_object; kerr1=1.5; kerr2=1; kerr3=2; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[27]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[28]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[29]=current_object; kerr1=2.5; kerr2=2; kerr3=3; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[30]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[31]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[32]=current_object; kerr1=3.5; kerr2=3; kerr3=4; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[33]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[34]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[35]=current_object; kerr1=4.5; kerr2=4; kerr3=5; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[36]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[37]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[38]=current_object; kerr1=5.5; kerr2=5; kerr3=6; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[39]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[40]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[41]=current_object; kerr1=6.5; kerr2=6; kerr3=7; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[44]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[45]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[46]=current_object; kerr1=7.5; kerr2=7; kerr3=8; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[47]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[48]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[49]=current_object; kerr1=8.5; kerr2=8; kerr3=9; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[80]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[81]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[82]=current_object; kerr1=9.5; kerr2=9; kerr3=10; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[83]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[84]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[85]=current_object; kerr1=10.5; kerr2=10; kerr3=11; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[86]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[87]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[88]=current_object; kerr1=11.5; kerr2=11; kerr3=12; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[89]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[60]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[61]=current_object; kerr1=12.5; kerr2=12; kerr3=13; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[62]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "open"); group_obj[63]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+1)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "open"); group_obj[64]=current_object; kerr1=13.5; kerr2=13; kerr3=14; current_object=newobject("poly"); addpoint((x[103]+kerr1*laskosvara_v+kerr2*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr2*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr2*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[105]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[105]+siirtoy)/2.54, "line"); addpoint((x[104]+kerr1*laskosvara_y+kerr3*laskos_y+siirtox)/2.54, (y[104]+siirtoy)/2.54, "line"); addpoint((x[103]+kerr1*laskosvara_v+kerr3*laskos_v+siirtox)/2.54, (y[103]+siirtoy)/2.54, "line"); group_obj[65]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+5+siirtoy)/2.54, "open"); group_obj[66]=current_object; current_object=newobject("poly"); addpoint((x[106]+kerr1*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+2+siirtoy)/2.54, "line"); addpoint((x[106]+(kerr1+0.5)*laskosvara_l+kerr3*laskos_l+siirtox)/2.54, (y[106]+7+siirtoy)/2.54, "open"); group_obj[67]=current_object; if (language == 0) { current_object=newobject("text","CF",0.0,0.4,0.2,"SIMP.CHR"); } addpoint((x[1]+0.2+siirtox)/2.54,(y[103]-1+siirtoy)/2.54,"line"); group_obj[120]=current_object; if(sv>0) { if (language == 0) { current_object=newobject("text","If cut on fold remove",0.0,0.4,0.2,"SIMP.CHR"); } addpoint((x[1]+0.2+siirtox)/2.54,(y[103]-2+siirtoy)/2.54,"line"); group_obj[121]=current_object; if (language == 0) { current_object=newobject("text","CF seam allowance",0.0,0.4,0.2,"SIMP.CHR"); } addpoint((x[1]+0.2+siirtox)/2.54,(y[103]-3-1+siirtoy)/2.54,"line"); group_obj[122]=current_object; } if(sv>0) { offset_mark(21); select(current_selection,group_obj[22]); select(current_selection,group_obj[23]); select(current_selection,group_obj[24]); select(current_selection,group_obj[25]); select(current_selection,group_obj[26]); select(current_selection,group_obj[27]); select(current_selection,group_obj[28]); select(current_selection,group_obj[29]); select(current_selection,group_obj[30]); select(current_selection,group_obj[31]); select(current_selection,group_obj[32]); select(current_selection,group_obj[33]); select(current_selection,group_obj[34]); select(current_selection,group_obj[35]); select(current_selection,group_obj[36]); select(current_selection,group_obj[37]); select(current_selection,group_obj[38]); select(current_selection,group_obj[39]); select(current_selection,group_obj[40]); select(current_selection,group_obj[41]); select(current_selection,group_obj[44]); select(current_selection,group_obj[45]); select(current_selection,group_obj[46]); select(current_selection,group_obj[47]); select(current_selection,group_obj[48]); select(current_selection,group_obj[49]); select(current_selection,group_obj[80]); select(current_selection,group_obj[81]); select(current_selection,group_obj[82]); select(current_selection,group_obj[83]); select(current_selection,group_obj[84]); select(current_selection,group_obj[85]); select(current_selection,group_obj[86]); select(current_selection,group_obj[87]); select(current_selection,group_obj[88]); select(current_selection,group_obj[89]); select(current_selection,group_obj[60]); select(current_selection,group_obj[61]); select(current_selection,group_obj[62]); select(current_selection,group_obj[63]); select(current_selection,group_obj[64]); select(current_selection,group_obj[65]); select(current_selection,group_obj[66]); select(current_selection,group_obj[67]); select(current_selection,group_obj[120]); select(current_selection,group_obj[121]); select(current_selection,group_obj[122]); group(current_selection); deselect(current_selection); } else { mark(21); current_selection=newselection("OBJECT"); select(current_selection,group_obj[21]); select(current_selection,group_obj[22]); select(current_selection,group_obj[23]); select(current_selection,group_obj[24]); select(current_selection,group_obj[25]); select(current_selection,group_obj[26]); select(current_selection,group_obj[27]); select(current_selection,group_obj[28]); select(current_selection,group_obj[29]); select(current_selection,group_obj[30]); select(current_selection,group_obj[31]); select(current_selection,group_obj[32]); select(current_selection,group_obj[33]); select(current_selection,group_obj[34]); select(current_selection,group_obj[35]); select(current_selection,group_obj[36]); select(current_selection,group_obj[37]); select(current_selection,group_obj[38]); select(current_selection,group_obj[39]); select(current_selection,group_obj[40]); select(current_selection,group_obj[41]); select(current_selection,group_obj[44]); select(current_selection,group_obj[45]); select(current_selection,group_obj[46]); select(current_selection,group_obj[47]); select(current_selection,group_obj[48]); select(current_selection,group_obj[49]); select(current_selection,group_obj[80]); select(current_selection,group_obj[81]); select(current_selection,group_obj[82]); select(current_selection,group_obj[83]); select(current_selection,group_obj[84]); select(current_selection,group_obj[85]); select(current_selection,group_obj[86]); select(current_selection,group_obj[87]); select(current_selection,group_obj[88]); select(current_selection,group_obj[89]); select(current_selection,group_obj[60]); select(current_selection,group_obj[61]); select(current_selection,group_obj[62]); select(current_selection,group_obj[63]); select(current_selection,group_obj[64]); select(current_selection,group_obj[65]); select(current_selection,group_obj[66]); select(current_selection,group_obj[67]); select(current_selection,group_obj[120]); group(current_selection); deselect(current_selection); } } if(model==0) { if(slit==3) { siirtox=2*sv+2*halkiol; siirtoy=0; current_object=newobject("poly"); addpoint((x[12]+siirtox)/2.54, (y[12]+siirtoy)/2.54, "line"); addpoint((x[34]+siirtox)/2.54, (y[34]+siirtoy)/2.54, "line"); addpoint((x[33]+siirtox)/2.54, (y[33]+siirtoy)/2.54, "line"); addpoint((x[32]+siirtox)/2.54, (y[32]+siirtoy)/2.54, "open"); group_obj[203]=current_object; if(sv>0) { offset_mark(203); group(current_selection); deselect(current_selection); } else { mark(203); } siirtox=0; siirtoy=0; } if(slit==1) { siirtox=2*sv+2*halkiol; siirtoy=0; current_object=newobject("poly"); addpoint((x[13]+siirtox)/2.54, (y[13]+siirtoy)/2.54, "line"); addpoint((x[26]+siirtox)/2.54, (y[26]+siirtoy)/2.54, "line"); addpoint((x[27]+siirtox)/2.54, (y[27]+siirtoy)/2.54, "line"); addpoint((x[28]+siirtox)/2.54, (y[28]+siirtoy)/2.54, "open"); group_obj[204]=current_object; if(sv>0) { offset_mark(204); group(current_selection); deselect(current_selection); } else { mark(204); } siirtox=0; siirtoy=0; } siirtox=2*sv+2*halkiol; current_object=newobject("poly"); addpoint((x[9]+siirtox)/2.54, (y[9]+siirtoy)/2.54, "xarc_start"); addpoint((x[10]+siirtox)/2.54, (y[10]+siirtoy)/2.54, "xarc_corner"); current_point=addpoint((x[11]+siirtox)/2.54, (y[11]+siirtoy)/2.54, "line"); notch_type(current_point,"NOTCH",1); addpoint((x[12]+siirtox)/2.54, (y[12]+siirtoy)/2.54, "line"); addpoint((x[13]+siirtox)/2.54, (y[13]+siirtoy)/2.54, "line"); if(waist==0) { addpoint((x[29]+siirtox)/2.54, (y[29]+siirtoy)/2.54, "line"); addpoint((x[30]+siirtox)/2.54, (y[30]+siirtoy)/2.54, "line"); addpoint((x[31]+siirtox)/2.54, (y[31]+siirtoy)/2.54, "line"); notch_type(current_point,"NOTCH",1); } else { addpoint((x[14]+siirtox)/2.54, (y[14]+siirtoy)/2.54, "line"); addpoint((x[15]+siirtox)/2.54, (y[15]+siirtoy)/2.54, "line"); } addpoint((x[16]+siirtox)/2.54, (y[16]+siirtoy)/2.54, "line"); notch_type(current_point,"NOTCH",1); addpoint((x[17]+siirtox)/2.54, (y[17]+siirtoy)/2.54, "line"); notch_type(current_point,"NOTCH",1); addpoint((x[18]+siirtox)/2.54, (y[18]+siirtoy)/2.54, "line"); addpoint((x[19]+siirtox)/2.54, (y[19]+siirtoy)/2.54, "line"); notch_type(current_point,"NOTCH",1); group_obj[210]=current_object; if(waist==0) { current_object=newobject("poly"); addpoint((x[16]+siirtox)/2.54, (y[16]+siirtoy)/2.54, "line"); notch_type(current_point,"NOTCH",1); addpoint((x[14]+siirtox)/2.54, (y[14]+siirtoy)/2.54, "OPEN"); group_obj[124]=current_object; } if(waist==0) { if (language == 0) { current_object=newobject("text","Zipper",-1.570796,0.2,0.2,"SIMP.CHR"); } addpoint((x[31]-1+siirtox)/2.54, (y[31]-1+siirtoy)/2.54, "line"); group_obj[215]=current_object; } if(waist==1) { if (language == 0) { current_object=newobject("text","Back piece, cut 1 on fold",-1.570796,0.2,0.2,"SIMP.CHR"); } addpoint((x[16]-1+siirtox)/2.54,(y[16]-1+siirtoy)/2.54,"line"); group_obj[177]=current_object; } else { if (language == 0) { current_object=newobject("text","Back piece, cut 2",-1.570796,0.2,0.2,"SIMP.CHR"); } addpoint((x[16]-1+siirtox)/2.54,(y[16]-1+siirtoy)/2.54,"line"); group_obj[234]=current_object; } if(sv>0) { offset_mark(210); if(waist==1) { select(current_selection,group_obj[177]); } else { select(current_selection,group_obj[234]); } if(waist==0) { select(current_selection,group_obj[215]); select(current_selection,group_obj[124]); } /* if(slit==3) { select(current_selection,group_obj[203]); } if(slit==1) { select(current_selection,group_obj[204]); } */ group(current_selection); deselect(current_selection); } else { mark(210); current_selection=newselection("OBJECT"); select(current_selection,group_obj[210]); if(waist==1) { select(current_selection,group_obj[177]); } else { select(current_selection,group_obj[234]); } if(waist==0) { select(current_selection,group_obj[215]); select(current_selection,group_obj[124]); } /* if(slit==3) { select(current_selection,group_obj[203]); } if(slit==1) { select(current_selection,group_obj[204]); } */ group(current_selection); deselect(current_selection); } siirtox=0; siirtoy=0; } current_selection=newselection("OBJECT"); for (loop = 0; loop < 20; loop = loop + 1) { if (marker_array[loop] != 0) { select(current_selection, marker_array[loop]); } } check_overlap(current_selection); if (is_function("origin_arrange")==1) { origin_arrange(current_selection); } deselect(current_selection); if (is_function("set_marker")==1) { for (loop = 0; loop < 20; loop = loop + 1) { if (marker_array[loop] != 0) { set_marker(marker_array[loop], 0); } } } run_command("zoomall"); } newobj_dot(double x, double y) { object temp; line("CENTER_LINE"); temp = newobject("poly"); addpoint(x, y, "line"); line("SOLID_LINE"); return temp; } shift(double orig, double xxx, double yyy) { x[orig]=x[orig]+xxx; y[orig]=y[orig]+yyy; } coord(double orig, double dest, double xxx, double yyy) { x[dest]=x[orig]+xxx; y[dest]=y[orig]+yyy; } center(double one, double two, double result) { x[result]=(x[one]+x[two])/2; y[result]=(y[one]+y[two])/2; } dist(double p1, double p2) { return distance(x[p1],y[p1],x[p2],y[p2]); } line_intersect(double start1, double end1, double start2, double end2, double dest) { double tempx; double tempy; intersect(x[start1],y[start1],x[end1],y[end1],x[start2],y[start2],x[end2],y[end2],0); x[dest]=getresultx(); y[dest]=getresulty(); } cont(double cstart, double cend, double cdest, double cvdistanceance) { double ang; ang=angle(x[cstart], y[cstart], x[cend], y[cend]); polar(x[cend], y[cend], ang, cvdistanceance); x[cdest]=getresultx(); y[cdest]=getresulty(); } right_ang(double start, double end, double to_point, double dest) { double m,b; if (x[start]==x[end]) { x[dest]=x[end]; y[dest]=y[to_point]; } else { if (y[start]==y[end]) { x[dest]=x[to_point]; y[dest]=y[end]; } else { m=(y[start]-y[end])/(x[start]-x[end]); m=-1/m; b=y[to_point]-m*x[to_point]; intersect(x[start],y[start],x[end],y[end],x[to_point],y[to_point],0,b,0); x[dest]=getresultx(); y[dest]=getresulty(); } } } rect (double x1, double y1, double x2, double y2) { current_object=newobject("poly"); addpoint( x1/2.54,y1/2.54,"LINE"); addpoint( x2/2.54,y1/2.54,"LINE"); addpoint( x2/2.54,y2/2.54,"LINE"); addpoint( x1/2.54,y2/2.54,"LINE"); } dot (double x, double y) { current_object=newobject("poly"); addpoint( x/2.54,y/2.54,"LINE"); } rotate(double rpoint,double rcenter, double rangle) { double vdistance, vang; vdistance=dist(rpoint, rcenter); vang=angle(x[rcenter],y[rcenter],x[rpoint],y[rpoint]); polar(x[rcenter],y[rcenter],vang+rangle,vdistance); x[rpoint]=getresultx(); y[rpoint]=getresulty(); } linecirc(double PA,double PB,double PC,double dradius,double which, double PD) { double mslope, dist0, dist1, dist2, xtemp; double tx, ty; xtemp = (x[PB]-x[PC])*(x[PB]-x[PC]); if (xtemp > 0) { xtemp = (y[PB]-y[PC])*(y[PB]-y[PC]); if ( xtemp > 0) { mslope = (y[PC] - y[PB])/(x[PC] - x[PB]); tx = x[PA] + 1; ty = y[PA] - 1/mslope; intersect(x[PA], y[PA], tx, ty, x[PB], y[PB], x[PC], y[PC], 0); tx = getresultx(); ty = getresulty(); dist1 = distance(x[PA], y[PA], tx, ty); dist2 = interceptline(0, dist1, dradius); dist0 = sqrt(1+mslope*mslope); xtemp = dist2/dist0; if (which) { x[PD] = tx+xtemp; y[PD] = ty+ xtemp*mslope; } else { x[PD] = tx-xtemp; y[PD] = ty- xtemp*mslope; } } else { x[PD] = x[PB]; if (which) { y[PD] = y[PA] + interceptline(x[PA], x[PB], dradius); } else { y[PD] = y[PA] - interceptline(x[PA], x[PB], dradius); } } } else { y[PD] = y[PB]; if (which) { x[PD] = x[PA] + interceptline(y[PA], y[PB], dradius); } else { x[PD] = x[PA] - interceptline(y[PA], y[PB], dradius); } } } double xar[13], yar[13]; double save_rx, save_ry; arclength(double start, double corner, double end) { double ct, last_x, last_y; double a_dist; last_x = x[start]; last_y = y[start]; a_dist=0; for (ct=1; ct < 12; ct = ct + 1) { fts(start, corner, end, ct); a_dist = a_dist + distance(save_rx, save_ry, last_x, last_y); last_x=save_rx; last_y=save_ry; } return a_dist; } double A1, A2, B1, B2; double sx, sy, cx, cy, ex, ey; double t0[2], t1[2]; double ftc[2]; fts(double start, double corner, double end, double pos) { if (pos<1) { save_rx=x[start]; save_ry=y[start]; } else { if (pos<2) { sx = x[start]; sy = y[start]; cx = x[corner]; cy = y[corner]; ex = x[end]; ey = y[end]; A1=cx - sx; A2=cy - sy; B1=cx - ex; B2=cy - ey; A1=-A1; B1=-B1; A2=-A2; B2=-B2; t0[0]=A1; t0[1]=B1; t1[0]=A2; t1[1]=B2; ftc[0]= cx + (t0[0] + t0[1]); ftc[1]= cy + (t1[0] + t1[1]); save_rx = t0[0]*(xar[pos])+t0[1]*(yar[pos])+ ftc[0]; save_ry = t1[0]*(xar[pos])+t1[1]*(yar[pos])+ ftc[1]; } else { if (pos>10) { save_rx=x[end]; save_ry=y[end]; } else { save_rx = t0[0]*(xar[pos])+t0[1]*(yar[pos])+ ftc[0]; save_ry = t1[0]*(xar[pos])+t1[1]*(yar[pos])+ ftc[1]; } } } } init_xarc_array() { double ang_start, ang_end, step, theta, ct; double XARC_PIECES; XARC_PIECES = 12; ang_start = -3.14159/2; ang_end= -3.14159; ct=0; step= (ang_end - ang_start)/(XARC_PIECES-1); for (theta=ang_start; ct < XARC_PIECES; theta = theta + step) { xar[ct] = cos(theta); yar[ct] = sin(theta); ct=ct+1; } } max(double aa, double bb) { if (aa > bb) { return aa; } else { return bb; } } min(double aa, double bb) { if (aa < bb) { return aa; } else { return bb; } } normalizeangle(double aa) { double loop; loop=aa; for(; (0 > aa); aa = aa + 2*3.14159) { ; } for (; (2*3.14159 < aa); aa = aa - 2*3.14159) { ; } return(aa); } dialog_ease() { if (language == 0) { start_pict_dialog("HIP EASE"); add_pict_item("Normal (+1.5in/+4cm)"," "); add_pict_item("Minimum (+0.75in/+2 cm)"," "); add_pict_item("Maximum (+2.5in/+6 cm)"," "); run_pict("Next"); ease=get_pict_result(); Forward(); } } dialog_model() { if (language == 0) { start_pict_dialog("SKIRT STYLE"); add_pict_item("Basic skirt (straight)","skirt_straight.jpg"); add_pict_item("8-gore skirt","skirt_8-gore.jpg"); add_pict_item("Pleated skirt","skirt_pleated.jpg"); if (run_pict("Back","Next")) { model=get_pict_result(); Forward(); } else { model=0; Backward(); } } } dialog_vents() { if (language == 0) { start_pict_dialog("SKIRT VENTS"); add_pict_item("No vents","skirt_vent_none.jpg"); add_pict_item("Back vent","skirt_vent_back.jpg"); add_pict_item("Front vent","skirt_vent_front.jpg"); add_pict_item("Side vent","skirt_vent_sides.jpg"); if (run_pict("Back","Next")) { slit=get_pict_result(); Forward(); } else { slit=0; Backward(); } } } dialog_waistband() { if (language == 0) { start_pict_dialog("WAISTBAND STYLE"); add_pict_item("Normal waistband","skirt_waist_normal.jpg"); add_pict_item("Elastic waistband","skirt_waist_elastic.jpg"); if (run_pict("Back","Next")) { waist=get_pict_result(); Forward(); } else { waist=0; Backward(); } } } dialog_abdomen() { if (language == 0) { start_pict_dialog("WAISTLINE CUT"); add_pict_item("Normal","skirt_waist_normal.jpg"); add_pict_item("Round abdomen","skirt_abdm_round.jpg"); if (run_pict("Back","Next")) { round_abdomen=get_pict_result(); Forward(); } else { round_abdomen=0; Backward(); } } } dialog_curve() { if (language == 0) { start_pict_dialog("8-GORE: BEGIN FLARE"); add_pict_item("From waist"," "); add_pict_item("From hip"," "); add_pict_item("4 in (10 cm) below hip"," "); add_pict_item("8 in (20 cm) below hip"," "); if (run_pict("Back","Next")) { curvefrom=get_pict_result(); Forward(); } else { curvefrom=0; Backward(); } } } Forward() { index = index + 1; if ((index == 2) && (model!=0)) { index = index + 1; } if ((index == 5) && (model != 1)) { index = index + 1; } if (index == 6) { done = 1; } } Backward() { index = index - 1; if ((index == 5) && (model != 1)) { index = index - 1; } if ((index == 2) && (model!=0)) { index = index - 1; } } mark(double pass_index) { group_obj[pass_index]=marker_piece(group_obj[pass_index],1); marker_array[marker_count] = group_obj[pass_index]; marker_count = marker_count + 1; } offset_mark(double pass_index) { point pnt, test; double save_x, save_y; current_selection=newselection("OBJECT"); select(current_selection,group_obj[pass_index]); sel_push(current_selection); var_push(sv); run_command("OFFSET"); deselect(current_selection); current_object=last_obj(); marker_array[marker_count] = marker_piece(current_object,1); current_selection=newselection("OBJECT"); select(current_selection, marker_array[marker_count]); select(current_selection, group_obj[pass_index]); marker_count = marker_count + 1; }