List<Integer> commands(Coordinate[] cs,boolean closePathAtEnd){
  return commands(cs,closePathAtEnd,false);
}

List < Integer > commands ( Coordinate [ ] cs , boolean closePathAtEnd ) { return commands ( cs , closePathAtEnd , false ) ; }
/ / / / / / ex . : moveto ( 3 , 6 ) , lineto ( 8 , 12 ) , lineto ( 20 , 34 ) , closepath / / encoded as : [ 9 3 6 18 5 6 12 22 15 ] / / = = command type 7 ( closepath ) , length 1 / / = = = = = relative lineto ( + 12 , + 22 ) = = lineto ( 20 , 34 ) / / = = = relative lineto ( + 5 , + 6 ) = = lineto ( 8 , 12 ) / / = = [ 00010 010 ] = command type 2 ( lineto ) , length 2 / / = = = relative moveto ( + 3 , + 6 ) / / = = [ 00001 001 ] = command type 1 ( moveto ) , length 1 / / commands are encoded as uint32 varints , vertex parameters are / / encoded as sint32 varints ( zigzag ) . vertex parameters are / / also encoded as deltas to the previous position . the original / / position is ( 0 , 0 )
