add SampledField and VoxelData classes
authormegacz <adam@megacz.com>
Sat, 28 Feb 2009 23:09:16 +0000 (15:09 -0800)
committermegacz <adam@megacz.com>
Sat, 28 Feb 2009 23:09:16 +0000 (15:09 -0800)
src/edu/berkeley/qfat/voxel/SampledField.java [new file with mode: 0644]
src/edu/berkeley/qfat/voxel/VoxelData.java [new file with mode: 0644]

diff --git a/src/edu/berkeley/qfat/voxel/SampledField.java b/src/edu/berkeley/qfat/voxel/SampledField.java
new file mode 100644 (file)
index 0000000..64c51f4
--- /dev/null
@@ -0,0 +1,13 @@
+package edu.berkeley.qfat.voxel;
+import edu.berkeley.qfat.*;
+import edu.berkeley.qfat.geom.*;
+
+/**
+ * A sampled field in 3-space; positive values indicate the
+ * <b>interior</b> of the object.
+ */
+public interface SampledField {
+
+    public float getSample(Point p);
+
+}
\ No newline at end of file
diff --git a/src/edu/berkeley/qfat/voxel/VoxelData.java b/src/edu/berkeley/qfat/voxel/VoxelData.java
new file mode 100644 (file)
index 0000000..3781de6
--- /dev/null
@@ -0,0 +1,21 @@
+package edu.berkeley.qfat.voxel;
+import edu.berkeley.qfat.*;
+import edu.berkeley.qfat.geom.*;
+
+public abstract class VoxelData implements SampledField, HasBoundingBox {
+
+    public abstract float getSample(Point p);
+
+    public abstract float getMaxX();
+    public abstract float getMinX();
+    public abstract int   getNumSamplesX();
+
+    public abstract float getMaxY();
+    public abstract float getMinY();
+    public abstract int   getNumSamplesY();
+
+    public abstract float getMaxZ();
+    public abstract float getMinZ();
+    public abstract int   getNumSamplesZ();
+
+}
\ No newline at end of file