Package ar.renderers

Examples of ar.renderers.ParallelRenderer


    assertThat(String.format("Failed at (%d, %d)", 8,8), rslt.get(8,8), is(0));
  }
 
  @Test
  public void testUnitCircle() {
    Renderer r = new ParallelRenderer();
    Aggregator<Integer,Integer> combiner = new Numbers.Count<>();
    Aggregates<Integer> aggs = new RefFlatAggregates<Integer>(9,9,0);
    aggs.set(4, 4, 1);
   
    Spreader<Integer> spread2 = new General.Spread.UnitCircle<>(4);
    General.Spread<Integer> transfer2 = new General.Spread<Integer>(spread2, combiner);
    Specialized<Integer,Integer> s2 = transfer2.specialize(aggs);
    Aggregates<Integer> rslt = r.transfer(aggs, s2);
   
    assertThat(String.format("Failed at (%d, %d)", 0,0), rslt.get(0,0), is(0));
    assertThat(String.format("Failed at (%d, %d)", 1,1), rslt.get(1,1), is(0));
    assertThat(String.format("Failed at (%d, %d)", 3,3), rslt.get(3,3), is(1));
    assertThat(String.format("Failed at (%d, %d)", 3,5), rslt.get(3,5), is(1));
View Full Code Here


    assertThat(String.format("Failed at (%d, %d)", 8,8), rslt.get(8,8), is(0));
  }
 
  @Test
  public void testValueCircle4() {
    Renderer r = new ParallelRenderer();
    Aggregator<Integer,Integer> combiner = new Numbers.Count<>();
    Aggregates<Integer> aggs = new RefFlatAggregates<Integer>(9,9,0);
    aggs.set(4, 4, 4);
   
    Spreader<Integer> spread2 = new General.Spread.ValueCircle<>();
    General.Spread<Integer> transfer2 = new General.Spread<Integer>(spread2, combiner);
    Specialized<Integer,Integer> s2 = transfer2.specialize(aggs);
    Aggregates<Integer> rslt = r.transfer(aggs, s2);
   
    assertThat(String.format("Failed at (%d, %d)", 0,0), rslt.get(0,0), is(0));
    assertThat(String.format("Failed at (%d, %d)", 1,1), rslt.get(1,1), is(0));
    assertThat(String.format("Failed at (%d, %d)", 3,3), rslt.get(3,3), is(4));
    assertThat(String.format("Failed at (%d, %d)", 3,5), rslt.get(3,5), is(4));
View Full Code Here

    assertThat(String.format("Failed at (%d, %d)", 8,8), rslt.get(8,8), is(0));
  }
 
  @Test
  public void testValueCircle2() {
    Renderer r = new ParallelRenderer();
    Aggregator<Integer,Integer> combiner = new Numbers.Count<>();
    Aggregates<Integer> aggs = new RefFlatAggregates<Integer>(9,9,0);
    aggs.set(4, 4, 2);
   
    Spreader<Integer> spread2 = new General.Spread.ValueCircle<>();
    General.Spread<Integer> transfer2 = new General.Spread<Integer>(spread2, combiner);
    Specialized<Integer,Integer> s2 = transfer2.specialize(aggs);
    Aggregates<Integer> rslt = r.transfer(aggs, s2);
   
    assertThat(String.format("Failed at (%d, %d)", 0,0), rslt.get(0,0), is(0));
    assertThat(String.format("Failed at (%d, %d)", 1,1), rslt.get(1,1), is(0));
    assertThat(String.format("Failed at (%d, %d)", 2,2), rslt.get(2,2), is(0));
    assertThat(String.format("Failed at (%d, %d)", 3,3), rslt.get(3,3), is(2));
View Full Code Here

        if ((x+y)%2 == 0) {a.set(x, y, false);}
      }
    }
   
    Transfer.Specialized<Boolean,Color> t = new If<>(new Valuer.Constant<Boolean, Boolean>(true), new General.Const<>(Color.red, true), new General.Const<>(Color.black, true)).specialize(a);
    Aggregates<Color> rslt = new ParallelRenderer().transfer(a, t);
   
    for (int x=a.lowX(); x < a.highX(); x++) {
      for (int y=a.lowY(); y < a.lowY(); y++) {
        Color ref = a.get(x,y) ? Color.red : Color.black;
        assertThat(String.format("Error at (%d,%d)", x,y), rslt.get(x,y), is(ref));
View Full Code Here

   
    Transfer<Integer,Integer> t1 = new General.ValuerTransfer<>(new MathValuers.AddInt<Integer>(1),0);
    Valuer<Aggregates<? extends Integer>, Boolean> p = new Predicates.All<>(new MathValuers.GT<Integer>(10d));
    Transfer.Specialized<Integer,Integer> t = new While<>(p, t1).specialize(a);
   
    Aggregates<Integer> rslt = new ParallelRenderer().transfer(a, t);
   
    assertTrue("Bluk test", p.value(rslt));
    for (int x=a.lowX(); x < a.highX(); x++) {
      for (int y=a.lowY(); y < a.lowY(); y++) {
        assertThat(String.format("Error at (%d,%d)", x,y), rslt.get(x,y), is(11));
View Full Code Here

   
    Aggregates<Integer> a = AggregateUtils.make(11, 31, 0);
   
       
    Transfer.Specialized<Integer, Integer> t = new Fan<>(new Numbers.Count<>(), ts).specialize(a);
    Aggregates<Integer> rslt = new ParallelRenderer().transfer(a, t);
   
    Valuer<Aggregates<? extends Integer>, Boolean> p = new Predicates.All<>(new MathValuers.EQ<Integer>(45d));
    assertTrue("Bluk test", p.value(rslt));
  }
View Full Code Here

   
    Transfer<Integer,Integer> t1 = new General.ValuerTransfer<>(new MathValuers.AddInt<Integer>(1),0);
    Transfer<Integer,Integer> t2 = new General.ValuerTransfer<>(new MathValuers.AddInt<Integer>(2),0);
    Transfer.Specialized<Integer, Integer> t = new Seq<>(t1,t2).specialize(a);
   
    Aggregates<Integer> rslt = new ParallelRenderer().transfer(a, t);
   
    Valuer<Aggregates<? extends Integer>, Boolean> p = new Predicates.All<>(new MathValuers.EQ<Integer>(3d));
    assertTrue("Bluk test", p.value(rslt));
  }
View Full Code Here

      for (int y=input.lowY(); y<input.highY(); y++) {
        input.set(x, y, (double) y);
      }
    }
   
    Renderer r = new ParallelRenderer();
    Aggregates<Double> rslt = r.transfer(input, carver);
   
    if (d == Direction.H) {
      assertThat("Incorrect number of rows.", rslt.highY()-rslt.lowY(), is(input.highY()-input.lowY()-seams));
    } else {
      assertThat("Incorrect number of cols.", rslt.highX()-rslt.lowX(), is(input.highX()-input.lowX()-seams));
View Full Code Here

          energy.set(x, y, (double) y+1);
        }
      }
     
      Transfer<Double, Double> t = new SeamCarving.CumulativeEnergy();
      Aggregates<Double> cumEng = new ParallelRenderer().transfer(energy, t.specialize(energy));
     
      double val =0;
      for (int y=energy.lowY(); y<energy.highY(); y++) {
        val= val + y+1;
        for (int x=energy.lowX(); x<energy.highX(); x++) {
View Full Code Here

  /**Execute the passed aggregator and list of transfers.
   * This is inherently not statically type-safe, so it may produce type errors at runtime. 
   */
  @SuppressWarnings({ "rawtypes", "unchecked" })
  public Aggregates<?> execute(Glyphset<?,?> glyphs, Aggregator agg, List<Transfer<?,?>> transfers, AffineTransform view, int width, int height) {
    Renderer r = new ParallelRenderer();
    Selector s = TouchesPixel.make(glyphs);
    Aggregates aggs = r.aggregate(glyphs, s, agg, view, width, height);

    Transfer transfer;
    if (transfers.size() >= 2) {
      Seq t = new Seq(transfers.get(0), transfers.get(1));
      for (int i=2; i< transfers.size(); i++) {t.then(transfers.get(i));}
      transfer = t;
    } else {
      transfer = transfers.get(0);
    }
   
    Transfer.Specialized ts = transfer.specialize(aggs);
    Aggregates<?> rslt = r.transfer(aggs, ts);
    return rslt;
  }
View Full Code Here

TOP

Related Classes of ar.renderers.ParallelRenderer

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.