def draw_strokes( data, factor = 10, svg_filename = 'sample.svg' ):
min_x, max_x, min_y, max_y = get_bounds( data, factor )
dims = ( 50 + max_x - min_x, 50 + max_y - min_y )
dwg = svgwrite.Drawing( svg_filename, size = dims )
dwg.add( dwg.rect( insert = ( 0, 0 ), size = dims, fill = 'white' ) )
lift_pen = 1
abs_x = 25 - min_x
abs_y = 25 - min_y
p = "M%s, %s " % ( abs_x, abs_y )
command = "m"
for i in range( len( data ) ):
if ( lift_pen == 1 ):
command = "m"
elif ( command != "l" ):
command = "l"
else:
command = ""
x = float( data[ i, 0 ] )/factor
y = float( data[ i, 1 ] )/factor
lift_pen = data[ i, 2 ]
p += command+str( x )+", "+str( y )+" "
the_color = "black"
stroke_width = 1
dwg.add( dwg.path( p ).stroke( the_color, stroke_width ).fill( "none" ) )
dwg.save( )
display( SVG( dwg.tostring( ) ) )
utils.py 文件源码
python
阅读 17
收藏 0
点赞 0
评论 0
评论列表
文章目录