Android Open Source - Sketcher-Tab Circles Style






From Project

Back to project page Sketcher-Tab.

License

The source code is released under:

Apache License

If you think the Android project Sketcher-Tab listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package org.sketchertab.style;
//  w  w  w  . j  a v  a  2  s  .  c o m
import android.graphics.Canvas;
import android.graphics.Paint;

import java.util.Map;

class CirclesStyle extends StyleBrush {
    private float prevX;
    private float prevY;
    private float density;

    {
        paint.setAntiAlias(true);
        paint.setStyle(Paint.Style.STROKE);
    }

    CirclesStyle(float density) {
        this.density = density;
    }

    public void stroke(Canvas c, float x, float y) {
        float dx = x - prevX;
        float dy = y - prevY;

        int dxy = (int) (Math.sqrt(dx * dx + dy * dy) * 2);

        float gridStep = 70 * density;
        int gridx = (int) (Math.floor(x / gridStep) * gridStep + gridStep / 2);
        int gridy = (int) (Math.floor(y / gridStep) * gridStep + gridStep / 2);

        int rand = (int) (Math.floor(Math.random() * 9) + 1);
        int radius = dxy / rand;

        for (int i = 0; i < rand; i++) {
            c.drawCircle(gridx, gridy, (rand - i) * radius, paint);
        }

        prevX = x;
        prevY = y;
    }

    public void strokeStart(float x, float y) {
        prevX = x;
        prevY = y;
    }

    public void draw(Canvas c) {
    }

    public void saveState(Map<StylesFactory.BrushType, Object> state) {
    }

    public void restoreState(Map<StylesFactory.BrushType, Object> state) {
    }
}




Java Source Code List

org.sketchertab.AboutDialog.java
org.sketchertab.BrushProperties.java
org.sketchertab.DocumentHistory.java
org.sketchertab.DrawController.java
org.sketchertab.FileHelper.java
org.sketchertab.HistoryItem.java
org.sketchertab.Sketcher.java
org.sketchertab.Style.java
org.sketchertab.SurfaceDiff.java
org.sketchertab.Surface.java
org.sketchertab.colorpicker.HuePicker.java
org.sketchertab.colorpicker.PickerDialog.java
org.sketchertab.colorpicker.Picker.java
org.sketchertab.colorpicker.PreviewView.java
org.sketchertab.colorpicker.SatValPicker.java
org.sketchertab.colorpicker.Utils.java
org.sketchertab.style.CirclesStyle.java
org.sketchertab.style.FurStyle.java
org.sketchertab.style.RibbonStyle.java
org.sketchertab.style.ShadedStyle.java
org.sketchertab.style.SimpleStyle.java
org.sketchertab.style.SketchyStyle.java
org.sketchertab.style.StyleBrush.java
org.sketchertab.style.StylesFactory.java
org.sketchertab.style.WebStyle.java