Project

General

Profile

Download (3.83 KB) Statistics
| Branch: | Revision:

distorted-objectlib / src / main / java / org / distorted / objectlib / helpers / ObjectVertexEffects.java @ a0ef8a1d

1
///////////////////////////////////////////////////////////////////////////////////////////////////
2
// Copyright 2021 Leszek Koltunski                                                               //
3
//                                                                                               //
4
// This file is part of Magic Cube.                                                              //
5
//                                                                                               //
6
// Magic Cube is proprietary software licensed under an EULA which you should have received      //
7
// along with the code. If not, check https://distorted.org/magic/License-Magic-Cube.html        //
8
///////////////////////////////////////////////////////////////////////////////////////////////////
9

    
10
package org.distorted.objectlib.helpers;
11

    
12
///////////////////////////////////////////////////////////////////////////////////////////////////
13

    
14
public class ObjectVertexEffects
15
  {
16
  private final String[] mEffectName;
17
  private final float[][] mEffectVariable;
18
  private final float[][] mEffectCenter;
19
  private final float[][] mEffectRegion;
20
  private final boolean[] mUseIfMeshFast;
21

    
22
///////////////////////////////////////////////////////////////////////////////////////////////////
23

    
24
  public ObjectVertexEffects(String[] names, float[][] variables, float[][] centers, float[][] regions, boolean[] use)
25
    {
26
    mEffectName     = names;
27
    mEffectVariable = variables;
28
    mEffectCenter   = centers;
29
    mEffectRegion   = regions;
30
    mUseIfMeshFast  = use;
31
    }
32

    
33
///////////////////////////////////////////////////////////////////////////////////////////////////
34

    
35
  public void debug()
36
    {
37
    StringBuilder sb = new StringBuilder();
38

    
39
    int numEffects = mEffectName.length;
40

    
41
    for(int e=0; e<numEffects; e++)
42
      {
43
      if( mEffectName[e]==null ) continue;
44

    
45
      float[] c = mEffectCenter[e];
46
      float[] r = mEffectRegion[e];
47
      float[] v = mEffectVariable[e];
48

    
49
      sb.append("Effect ");
50
      sb.append(e);
51
      sb.append(" : ");
52
      sb.append(mEffectName[e]);
53
      sb.append(' ');
54
      sb.append(mUseIfMeshFast[e]);
55
      sb.append(' ');
56
      sb.append("cent: ");
57
      sb.append(c[0]);
58
      sb.append(' ');
59
      sb.append(c[1]);
60
      sb.append(' ');
61
      sb.append(c[2]);
62

    
63
      sb.append(" reg: ");
64

    
65
      if( r!=null )
66
        {
67
        sb.append(r[0]);
68
        sb.append(' ');
69
        sb.append(r[1]);
70
        sb.append(' ');
71
        sb.append(r[2]);
72
        sb.append(' ');
73
        sb.append(r[3]);
74
        }
75
      else
76
        {
77
        sb.append("null");
78
        }
79

    
80
      sb.append(" var: ");
81

    
82
      if( v!=null )
83
        {
84
        sb.append(v[0]);
85
        sb.append(' ');
86
        sb.append(v[1]);
87
        sb.append(' ');
88
        sb.append(v[2]);
89
        sb.append(' ');
90
        sb.append(v[3]);
91
        sb.append(' ');
92
        sb.append(v[4]);
93
        }
94
      else
95
        {
96
        sb.append("null");
97
        }
98

    
99
      sb.append("\n");
100
      }
101

    
102
    android.util.Log.e("D", "ObjectVertexEffects: \n"+sb);
103
    }
104

    
105
///////////////////////////////////////////////////////////////////////////////////////////////////
106

    
107
  public String[] getNames()
108
    {
109
    return mEffectName;
110
    }
111

    
112
///////////////////////////////////////////////////////////////////////////////////////////////////
113

    
114
  public float[][] getVariables()
115
    {
116
    return mEffectVariable;
117
    }
118

    
119
///////////////////////////////////////////////////////////////////////////////////////////////////
120

    
121
  public float[][] getCenters()
122
    {
123
    return mEffectCenter;
124
    }
125

    
126
///////////////////////////////////////////////////////////////////////////////////////////////////
127

    
128
  public float[][] getRegions()
129
    {
130
    return mEffectRegion;
131
    }
132

    
133
///////////////////////////////////////////////////////////////////////////////////////////////////
134

    
135
  public boolean[] getUses()
136
    {
137
    return mUseIfMeshFast;
138
    }
139
  }
(11-11/13)