steve@0: package org.qmul.eecs.c4dm.sia.model; steve@0: stevenh@17: import java.util.Vector; stevenh@17: stevenh@17: import org.qmul.eecs.c4dm.sia.exceptions.DimensionException; stevenh@17: import org.qmul.eecs.c4dm.sia.rdf.Namespaces; steve@0: steve@0: import com.hp.hpl.jena.rdf.model.Resource; steve@0: stevenh@17: /** stevenh@17: * @author steven hargreaves stevenh@17: * stevenh@17: */ stevenh@6: public class Datapoint extends NDimensionalObject { steve@0: steve@0: private Resource resource; steve@0: private int orderedIndex; steve@0: stevenh@17: public static final String RESOURCE_URI = Namespaces.SIA_NS_URI + "Datapoint"; steve@0: steve@0: /** steve@0: * @return the resource steve@0: */ steve@0: public Resource getResource() { steve@0: return resource; steve@0: } steve@0: steve@0: /** steve@0: * @param resource the node to set steve@0: */ steve@0: public void setResource(Resource resource) { steve@0: this.resource = resource; steve@0: } steve@0: steve@0: /** steve@0: * @return the orderedIndex steve@0: */ steve@0: public int getOrderedIndex() { steve@0: return orderedIndex; steve@0: } steve@0: steve@0: /** steve@0: * @param orderedIndex the orderedIndex to set steve@0: */ steve@0: public void setOrderedIndex(int orderedIndex) { steve@0: this.orderedIndex = orderedIndex; steve@0: } stevenh@17: stevenh@17: /** stevenh@17: * @param d stevenh@17: * @return stevenh@17: */ stevenh@17: public NDimensionalObject subtract(Datapoint d) stevenh@17: { stevenh@17: NDimensionalObject nDimObj = new NDimensionalObject(); stevenh@17: Vector dimVals = new Vector(); stevenh@17: int dimensions = d.getDimensionValues().size(); stevenh@17: DimensionValue dimVal; stevenh@17: stevenh@17: for (int dimension = 1; dimension <= dimensions; dimension++) stevenh@17: { stevenh@17: dimVal = new DimensionValue(); stevenh@17: dimVal.setDimension(dimension); stevenh@17: stevenh@17: try { stevenh@17: dimVal.setValue(this.getDimensionValue(dimension) - d.getDimensionValue(dimension)); stevenh@17: } catch (DimensionException e) { stevenh@17: e.printStackTrace(); stevenh@17: System.exit(1); stevenh@17: } stevenh@17: stevenh@17: dimVals.add(dimVal); stevenh@17: } stevenh@17: stevenh@17: nDimObj.setDimensionValues(dimVals); stevenh@17: return nDimObj; stevenh@17: } steve@0: steve@0: }