stevenh@74
|
1 package org.qmul.eecs.c4dm.sia.model;
|
stevenh@74
|
2
|
stevenh@74
|
3 import java.util.Vector;
|
stevenh@74
|
4
|
stevenh@74
|
5 import org.qmul.eecs.c4dm.sia.exceptions.DimensionException;
|
stevenh@74
|
6 import org.qmul.eecs.c4dm.sia.rdf.Namespaces;
|
stevenh@74
|
7
|
stevenh@74
|
8 import com.hp.hpl.jena.rdf.model.Resource;
|
stevenh@74
|
9
|
stevenh@74
|
10 /**
|
stevenh@74
|
11 * @author steven hargreaves
|
stevenh@74
|
12 *
|
stevenh@74
|
13 */
|
stevenh@74
|
14 public class SiaVector extends NDimensionalObject {
|
stevenh@74
|
15
|
stevenh@74
|
16 private Resource resource;
|
stevenh@74
|
17 private int orderedIndex;
|
stevenh@74
|
18
|
stevenh@74
|
19 public static final String RESOURCE_URI = Namespaces.SIA_NS_URI + "Vector";
|
stevenh@74
|
20 public static final String PROPERTY_URI = Namespaces.SIA_NS_URI + "vector";
|
stevenh@74
|
21
|
stevenh@74
|
22 /**
|
stevenh@74
|
23 * @return the resource
|
stevenh@74
|
24 */
|
stevenh@74
|
25 public Resource getResource() {
|
stevenh@74
|
26 return resource;
|
stevenh@74
|
27 }
|
stevenh@74
|
28
|
stevenh@74
|
29 /**
|
stevenh@74
|
30 * @param resource the node to set
|
stevenh@74
|
31 */
|
stevenh@74
|
32 public void setResource(Resource resource) {
|
stevenh@74
|
33 this.resource = resource;
|
stevenh@74
|
34 }
|
stevenh@74
|
35
|
stevenh@74
|
36 /**
|
stevenh@74
|
37 * @return the orderedIndex
|
stevenh@74
|
38 */
|
stevenh@74
|
39 public int getOrderedIndex() {
|
stevenh@74
|
40 return orderedIndex;
|
stevenh@74
|
41 }
|
stevenh@74
|
42
|
stevenh@74
|
43 /**
|
stevenh@74
|
44 * @param orderedIndex the orderedIndex to set
|
stevenh@74
|
45 */
|
stevenh@74
|
46 public void setOrderedIndex(int orderedIndex) {
|
stevenh@74
|
47 this.orderedIndex = orderedIndex;
|
stevenh@74
|
48 }
|
stevenh@74
|
49
|
stevenh@74
|
50 /**
|
stevenh@74
|
51 * @param d
|
stevenh@74
|
52 * @return
|
stevenh@74
|
53 */
|
stevenh@74
|
54 public NDimensionalObject subtract(Datapoint d)
|
stevenh@74
|
55 {
|
stevenh@74
|
56 NDimensionalObject nDimObj = new NDimensionalObject();
|
stevenh@74
|
57 Vector<DimensionValue> dimVals = new Vector<DimensionValue>();
|
stevenh@74
|
58 int dimensions = d.getDimensionValues().size();
|
stevenh@74
|
59 DimensionValue dimVal;
|
stevenh@74
|
60
|
stevenh@74
|
61 for (int dimension = 1; dimension <= dimensions; dimension++)
|
stevenh@74
|
62 {
|
stevenh@74
|
63 dimVal = new DimensionValue();
|
stevenh@74
|
64 dimVal.setDimension(dimension);
|
stevenh@74
|
65
|
stevenh@74
|
66 try {
|
stevenh@74
|
67 dimVal.setValue(this.getDimensionValue(dimension) - d.getDimensionValue(dimension));
|
stevenh@74
|
68 } catch (DimensionException e) {
|
stevenh@74
|
69 e.printStackTrace();
|
stevenh@74
|
70 System.exit(1);
|
stevenh@74
|
71 }
|
stevenh@74
|
72
|
stevenh@74
|
73 dimVals.add(dimVal);
|
stevenh@74
|
74 }
|
stevenh@74
|
75
|
stevenh@74
|
76 nDimObj.setDimensionValues(dimVals);
|
stevenh@74
|
77 return nDimObj;
|
stevenh@74
|
78 }
|
stevenh@74
|
79
|
stevenh@74
|
80 }
|