Android Open Source - TinyVoxel Grid Utils






From Project

Back to project page TinyVoxel.

License

The source code is released under:

GNU General Public License

If you think the Android project TinyVoxel 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 com.toet.TinyVoxel.Renderer.Tools;
/* w  w w .j  ava2s  .c  o  m*/
import com.toet.TinyVoxel.Config;
import com.toet.TinyVoxel.Renderer.Bundles.Bundle;
import com.toet.TinyVoxel.Renderer.Manager;

/**
 * Created by Kajos on 9/13/2014.
 */
public class GridUtils {
    private static GridUtils INSTANCE = null;

    public Bundle selected = null;
    private boolean isCopy = false;

    public static GridUtils get() {
        if (INSTANCE == null)
            INSTANCE = new GridUtils();

        return INSTANCE;
    }

    public void select(Bundle bundle, Manager manager) {
        removeSelection(manager);

        isCopy = false;

        selected = bundle;

        selected.updateMatrix();
        selected.solid = true;
        selected.visible = true;
        selected.ableToCollide = false;

        manager.transparentBundleArray.removeValue(bundle, true);
        manager.bundleArray.removeValue(bundle, true);

        if (Config.get().getTransparentTools()) {
            manager.transparentBundleArray.add(selected);
            manager.transparentBundleArray.sort();
        } else {
            manager.bundleArray.add(selected);
            manager.bundleArray.sort();
        }
    }

    public void selectCopy(Bundle bundle, Manager manager) {
        removeSelection(manager);

        isCopy = true;

        selected = bundle.copy();
        selected.solid = true;
        selected.visible = true;
        selected.ableToCollide = false;

        if (Config.get().getTransparentTools()) {
            manager.transparentBundleArray.add(selected);
            manager.transparentBundleArray.sort();
        } else {
            manager.bundleArray.add(selected);
            manager.bundleArray.sort();
        }

    }

    public void removeSelection(Manager manager) {
        if (selected != null) {
            if (isCopy) {
                removeSelectionCopy(manager);
                return;
            }

            if (Config.get().getTransparentTools())
                manager.transparentBundleArray.removeValue(selected, true);
            else
                manager.bundleArray.removeValue(selected, true);

            selected.solid = true;
            selected.visible = true;
            selected.ableToCollide = true;

            manager.bundleArray.add(selected);
            manager.bundleArray.sort();

            selected = null;
        }
    }

    private void removeSelectionCopy(Manager manager) {
        if (selected != null) {
            if (Config.get().getTransparentTools()) {
                manager.transparentBundleArray.removeValue(selected, true);
                manager.transparentBundleArray.sort();
            } else {
                manager.bundleArray.removeValue(selected, true);
                manager.bundleArray.sort();
            }

            selected.dispose();

            selected = null;
        }
    }

    public void place(Manager manager) {
        if (selected == null)
            return;

        Bundle newBundle = selected;
        newBundle.solid = true;
        newBundle.visible = true;
        newBundle.ableToCollide = true;
        newBundle.updateMatrix();

        if (Config.get().getTransparentTools()) {
            manager.transparentBundleArray.removeValue(selected, true);
            manager.transparentBundleArray.sort();
        } else {
            manager.bundleArray.removeValue(selected, true);
            manager.bundleArray.sort();
        }

        manager.bundleArray.add(newBundle);

        selected = null;
    }

    public void placeCopy(Manager manager) {
        if (selected == null)
            return;

        if (Config.get().getTransparentTools()) {
            manager.transparentBundleArray.removeValue(selected, true);
            manager.transparentBundleArray.sort();
        } else {
            manager.bundleArray.removeValue(selected, true);
            manager.bundleArray.sort();
        }

        Bundle newBundle = selected;
        newBundle.solid = true;
        newBundle.visible = true;
        newBundle.ableToCollide = true;
        newBundle.updateMatrix();
        manager.bundleArray.add(newBundle);

        selected = null;
    }
}




Java Source Code List

com.badlogic.gdx.backends.gwt.GwtApplicationConfiguration.java
com.badlogic.gdx.backends.gwt.GwtApplication.java
com.badlogic.gdx.backends.gwt.GwtGL20.java
com.badlogic.gdx.backends.gwt.GwtInput.java
com.badlogic.gdx.backends.gwt.GwtNet.java
com.badlogic.gdx.graphics.Pixmap.java
com.toet.TinyVoxel.Config.java
com.toet.TinyVoxel.Game.java
com.toet.TinyVoxel.IOSConfig.java
com.toet.TinyVoxel.IOSLauncher.java
com.toet.TinyVoxel.OuyaController.java
com.toet.TinyVoxel.Time.java
com.toet.TinyVoxel.Character.Character.java
com.toet.TinyVoxel.Debug.LogHandler.java
com.toet.TinyVoxel.GameControllers.CharacterController.java
com.toet.TinyVoxel.GameControllers.CustomTouchPad.java
com.toet.TinyVoxel.GameControllers.KeyBoardController.java
com.toet.TinyVoxel.GameControllers.TouchPadController.java
com.toet.TinyVoxel.Importer.BinvoxImporter.java
com.toet.TinyVoxel.Importer.DataInputStream.java
com.toet.TinyVoxel.Importer.MeshImporter.java
com.toet.TinyVoxel.Renderer.BlockBuilder.java
com.toet.TinyVoxel.Renderer.Floor.java
com.toet.TinyVoxel.Renderer.Manager.java
com.toet.TinyVoxel.Renderer.Bundles.ArrayBundle.java
com.toet.TinyVoxel.Renderer.Bundles.Bundle.java
com.toet.TinyVoxel.Renderer.Bundles.GridBundle.java
com.toet.TinyVoxel.Renderer.Bundles.GridInterface.java
com.toet.TinyVoxel.Renderer.Bundles.Grid.java
com.toet.TinyVoxel.Renderer.Bundles.GroundBundle.java
com.toet.TinyVoxel.Renderer.Bundles.SingleBundle.java
com.toet.TinyVoxel.Renderer.Bundles.TinyGrid.java
com.toet.TinyVoxel.Renderer.Tools.BrushUtils.java
com.toet.TinyVoxel.Renderer.Tools.GridUtils.java
com.toet.TinyVoxel.Renderer.Wrapped.WrappedBoolean.java
com.toet.TinyVoxel.Renderer.Wrapped.WrappedInteger.java
com.toet.TinyVoxel.Screens.GUI.java
com.toet.TinyVoxel.Screens.Menu.java
com.toet.TinyVoxel.Shaders.ShaderManager.java
com.toet.TinyVoxel.Shadow.ShadowManager.java
com.toet.TinyVoxel.Util.Box.java
com.toet.TinyVoxel.Util.FullscreenQuad.java
com.toet.TinyVoxel.Util.JobManager.java
com.toet.TinyVoxel.Util.NonBackedTexture.java
com.toet.TinyVoxel.Util.Position.java
com.toet.TinyVoxel.Util.RLEInputStream.java
com.toet.TinyVoxel.Util.RLEOutputStream.java
com.toet.TinyVoxel.Util.SimpleMath.java
com.toet.TinyVoxel.Util.StreamUtil.java
com.toet.TinyVoxel.android.AndroidConfig.java
com.toet.TinyVoxel.android.AndroidConfig.java
com.toet.TinyVoxel.android.AndroidLauncher.java
com.toet.TinyVoxel.android.AndroidLauncher.java
com.toet.TinyVoxel.client.GwtConfig.java
com.toet.TinyVoxel.client.HtmlLauncher.java
com.toet.TinyVoxel.desktop.DesktopConfig.java
com.toet.TinyVoxel.desktop.DesktopLauncher.java