From a8f2c5bca1b1d5ba07af65b07f7b09a59a8701c9 Mon Sep 17 00:00:00 2001 From: megacz Date: Sat, 28 Feb 2009 15:09:16 -0800 Subject: [PATCH] add SampledField and VoxelData classes --- src/edu/berkeley/qfat/voxel/SampledField.java | 13 +++++++++++++ src/edu/berkeley/qfat/voxel/VoxelData.java | 21 +++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 src/edu/berkeley/qfat/voxel/SampledField.java create mode 100644 src/edu/berkeley/qfat/voxel/VoxelData.java diff --git a/src/edu/berkeley/qfat/voxel/SampledField.java b/src/edu/berkeley/qfat/voxel/SampledField.java new file mode 100644 index 0000000..64c51f4 --- /dev/null +++ b/src/edu/berkeley/qfat/voxel/SampledField.java @@ -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 + * interior 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 index 0000000..3781de6 --- /dev/null +++ b/src/edu/berkeley/qfat/voxel/VoxelData.java @@ -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 -- 1.7.10.4