 					var pathplen:int = plen / 2;
 					//line
 					if (isDrawline&&pathplen>=2){
-						nump += pathplen * 4;
 						if (isClosePath){
+							nump += pathplen * 8;
 							numi += pathplen * 6;
 						}else{
+							nump += (pathplen-1) * 8;
 							numi += (pathplen-1) * 6;
 						}
 					}

									index[ii++] = b;
									index[ii++] = d;
									index[ii++] = c;
								}
							}
							offset += j * 4;
						}
					}
					

						var plendiv2:int = plen / 2;
						if(plendiv2>=2){
							for (var j:int = 0; j < plendiv2; j++ ){
								if (j != 0 || isClosePath){
									var x0:Number = poly.array[2 * j] as Number;
									var y0:Number = poly.array[2 * j + 1] as Number;
									if (j==0){
										var x1:Number = poly.array[plen - 2];
										var y1:Number = poly.array[plen - 1];
									}else{
										x1 = poly.array[2 * j - 2];
										y1 = poly.array[2 * j - 1];
									}
									
									/////////////////////
									var dy:Number = x1 - x0;
									var dx:Number = y1 - y0;
									var distance:Number = Math.sqrt(dx * dx + dy * dy);
									dx *= hw/distance;
									dy *= -hw/distance;
									
									/////////////////////
									
									color[pi/2] = lcolorv;
									pos[pi++] = x0+dx;
									pos[pi++] = y0+dy;
									color[pi/2] = lcolorv;
									pos[pi++] = x0-dx;
									pos[pi++] = y0 - dy;
									color[pi/2] = lcolorv;
									pos[pi++] = x1+dx;
									pos[pi++] = y1+dy;
									color[pi/2] = lcolorv;
									pos[pi++] = x1-dx;
									pos[pi++] = y1 - dy;
									
									var a:int = offset;
									var b:int = offset + 1;
									//if (j==0){
									//	var c:int = offset + plen - 2;
									//	var d:int = offset + plen - 1;
									//}else{
										var c:int = offset + 2;
										var d:int = offset+ 3;
									//}
									
									
									index[ii++] = a;
