Ejemplo n.º 1
0
def main():

  from render.render import Animate
  from differentialLine import DifferentialLine
  from modules.helpers import get_exporter

  # from modules.show import show_closed
  # from modules.show import show_detail
  from modules.show import show


  DF = DifferentialLine(NMAX, FARL*2, NEARL, FARL, PROCS)

  angles = sorted(random(INIT_NUM)*TWOPI)
  DF.init_circle_segment(MID,MID,INIT_RAD, angles)

  from fn import Fn
  fn = Fn(prefix='./res/')

  exporter = get_exporter(
    NMAX,
    {
      'nearl': NEARL,
      'farl': FARL,
      'stp': STP,
      'size': SIZE,
      'procs': PROCS
    }
  )

  def wrap(render):

    global i

    # animation stops when res is False
    res = steps(DF)

    ## if fn is a path each image will be saved to that path

    ## render outline
    num = DF.np_get_edges_coordinates(np_edges)
    if not i % 100:
      show(render,np_edges[:num,:], None, r=1.3*ONE)
      # render.write_to_png(fn.name())
      exporter(
        DF,
        fn.name()+'.2obj'
      )

    ## render solid
    # num = DF.get_sorted_vert_coordinates(np_verts)
    #show_closed(render,np_verts[:num,:],fn)

    i += 1

    return res

  render = Animate(SIZE, BACK, FRONT, wrap)
  render.start()
Ejemplo n.º 2
0
def main():

  from iutils.render import Animate
  from differentialLine import DifferentialLine
  from modules.helpers import get_exporter

  # from modules.show import show_closed
  # from modules.show import show_detail
  from modules.show import show


  DF = DifferentialLine(NMAX, FARL*2, NEARL, FARL, PROCS)

  angles = sorted(random(INIT_NUM)*TWOPI)
  DF.init_circle_segment(MID,MID,INIT_RAD, angles)

  from fn import Fn
  fn = Fn(prefix='./res/')

  exporter = get_exporter(
    NMAX,
    {
      'nearl': NEARL,
      'farl': FARL,
      'stp': STP,
      'size': SIZE,
      'procs': PROCS
    }
  )

  def wrap(render):

    global i

    # animation stops when res is False
    res = steps(DF)

    ## if fn is a path each image will be saved to that path

    ## render outline
    num = DF.np_get_edges_coordinates(np_edges)
    if not i % 100:
      show(render,np_edges[:num,:], None, r=1.3*ONE)
      # render.write_to_png(fn.name())
      exporter(
        DF,
        fn.name()+'.2obj'
      )

    ## render solid
    # num = DF.get_sorted_vert_coordinates(np_verts)
    #show_closed(render,np_verts[:num,:],fn)

    i += 1

    return res

  render = Animate(SIZE, BACK, FRONT, wrap)
  render.start()
Ejemplo n.º 3
0
def main():

    from time import time
    from itertools import count

    from differentialLine import DifferentialLine

    from modules.helpers import print_stats
    from modules.helpers import get_exporter

    from modules.show import sandstroke
    from modules.show import show
    from modules.show import dots

    DF = DifferentialLine(NMAX, FARL * 2, NEARL, FARL, PROCS)
    exporter = get_exporter(NMAX)

    orderd_verts = zeros((NMAX, 2), 'double')

    ## arc

    # angles = sorted(random(INIT_NUM)*pi*1.5)
    # xys = []
    # for a in angles:
    # x = 0.5 + cos(a)*0.2
    # y = 0.5 + sin(a)*0.2
    # xys.append((x,y))

    # DF.init_line_segment(xys, lock_edges=1)

    angles = sorted(random(INIT_NUM) * TWOPI)
    DF.init_circle_segment(MID, MID, 0.2, angles)

    for i in count():

        t_start = time()

        DF.optimize_position(STP)
        spawn_curl(DF, NEARL, 0.016)

        if i % EXPORT_ITT == 0:

            exporter(
                DF,
                {
                    'nearl': NEARL,
                    'farl': FARL,
                    'stp': STP,
                    'size': SIZE,
                    'procs': PROCS,
                    'prefix': PREFIX
                },
                i,
            )

        t_stop = time()

        print_stats(i, t_stop - t_start, DF)
Ejemplo n.º 4
0
def main():

  from time import time
  from itertools import count

  from render.render import Render
  from modules.helpers import print_stats
  from modules.show import show
  # from modules.show import show_closed

  from differentialLine import DifferentialLine
  from modules.helpers import get_exporter

  from numpy.random import random

  from fn import Fn

  DF = DifferentialLine(NMAX, FARL*2, NEARL, FARL, PROCS)

  fn = Fn(prefix='./res/')

  exporter = get_exporter(
    NMAX,
    {
      'nearl': NEARL,
      'farl': FARL,
      'stp': STP,
      'size': SIZE,
      'procs': PROCS
    }
  )

  render = Render(SIZE, BACK, FRONT)

  render.ctx.set_source_rgba(*FRONT)
  render.ctx.set_line_width(LINEWIDTH)

  angles = sorted(random(INIT_NUM)*TWOPI)

  DF.init_circle_segment(MID,MID,INIT_RAD, angles)

  t_start = time()


  for i in count():

    DF.optimize_position(STP)
    # spawn_curl(DF,NEARL)
    spawn(DF, NEARL, 0.03)

    if i % STAT_ITT == 0:

      print_stats(i,time()-t_start,DF)

    if i % EXPORT_ITT == 0:

      name = fn.name()

      num = DF.np_get_edges_coordinates(np_edges)
      show(render,np_edges[:num,:],name+'.png')

      exporter(
        DF,
        name+'.2obj'
      )
Ejemplo n.º 5
0
def main():

  from time import time
  from itertools import count

  from iutils.render import Render
  from modules.helpers import print_stats
  from modules.show import show
  # from modules.show import show_closed

  from differentialLine import DifferentialLine
  from modules.helpers import get_exporter

  from numpy.random import random

  from fn import Fn

  DF = DifferentialLine(NMAX, FARL*2, NEARL, FARL, PROCS)

  fn = Fn(prefix='./res/')

  exporter = get_exporter(
    NMAX,
    {
      'nearl': NEARL,
      'farl': FARL,
      'stp': STP,
      'size': SIZE,
      'procs': PROCS
    }
  )

  render = Render(SIZE, BACK, FRONT)

  render.ctx.set_source_rgba(*FRONT)
  render.ctx.set_line_width(LINEWIDTH)

  angles = sorted(random(INIT_NUM)*TWOPI)

  DF.init_circle_segment(MID,MID,INIT_RAD, angles)

  t_start = time()


  for i in count():

    DF.optimize_position(STP)
    # spawn_curl(DF,NEARL)
    spawn(DF, NEARL, 0.03)

    if i % STAT_ITT == 0:

      print_stats(i,time()-t_start,DF)

    if i % EXPORT_ITT == 0:

      name = fn.name()

      num = DF.np_get_edges_coordinates(np_edges)
      show(render,np_edges[:num,:],name+'.png')

      exporter(
        DF,
        name+'.2obj'
      )
def main():

  from time import time
  from itertools import count

  from differentialLine import DifferentialLine

  from modules.helpers import print_stats
  from modules.helpers import get_exporter

  from modules.show import sandstroke
  from modules.show import show
  from modules.show import dots


  DF = DifferentialLine(NMAX, FARL*2, NEARL, FARL, PROCS)
  exporter = get_exporter(NMAX)

  orderd_verts = zeros((NMAX,2), 'double')


  ## arc

  # angles = sorted(random(INIT_NUM)*pi*1.5)
  # xys = []
  # for a in angles:
    # x = 0.5 + cos(a)*0.2
    # y = 0.5 + sin(a)*0.2
    # xys.append((x,y))

  # DF.init_line_segment(xys, lock_edges=1)

  angles = sorted(random(INIT_NUM)*TWOPI)
  DF.init_circle_segment(MID,MID,0.2, angles)


  for i in count():

    t_start = time()

    DF.optimize_position(STP)
    spawn_curl(DF,NEARL,0.016)

    if i % EXPORT_ITT == 0:

      exporter(
        DF, 
        {
          'nearl': NEARL,
          'farl': FARL,
          'stp': STP,
          'size': SIZE,
          'procs': PROCS,
          'prefix': PREFIX
        },
        i,
      )


    t_stop = time()

    print_stats(i,t_stop-t_start,DF)