Changeset 2408
- Timestamp:
- 08/15/08 16:11:12 (3 months ago)
- Files:
-
- trunk/plugins/preprocessing/edu.iu.nwb.preprocessing.extractnodesandedges/OSGI-INF/metatype/METADATA.XML (modified) (1 diff)
- trunk/plugins/preprocessing/edu.iu.nwb.preprocessing.extractnodesandedges/src/edu/iu/nwb/preprocessing/extractnodesandedges/extractedges/abovebelow/EdgeNumericDecorationFilter.java (modified) (2 diffs)
- trunk/plugins/preprocessing/edu.iu.nwb.preprocessing.extractnodesandedges/src/edu/iu/nwb/preprocessing/extractnodesandedges/extractedges/abovebelow/EdgeThresholdFilter.java (added)
- trunk/plugins/preprocessing/edu.iu.nwb.preprocessing.extractnodesandedges/src/edu/iu/nwb/preprocessing/extractnodesandedges/extractedges/abovebelow/ExtractEdgesAboveBelowAlgorithm.java (modified) (4 diffs)
- trunk/plugins/preprocessing/edu.iu.nwb.preprocessing.extractnodesandedges/src/edu/iu/nwb/preprocessing/extractnodesandedges/extractedges/abovebelow/InverseEdgeNumericDecorationFilter.java (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/plugins/preprocessing/edu.iu.nwb.preprocessing.extractnodesandedges/OSGI-INF/metatype/METADATA.XML
r2407 r2408 32 32 description="Extract all edges with an attribute above a certain number"> 33 33 <AD name="Extract from this number" id="fromThisNum" type="Double" description="Extracts all edges above or below this attribute value" default="1"/> 34 <AD name=" Invert?" id="invert" type="Boolean" description="Extract edges below or equal to this value instead?" default="false"/>34 <AD name="Below?" id="belowInstead" type="Boolean" description="Extract edges below this value instead of above?" default="false"/> 35 35 <AD name="Numeric Attribute" id="numericAttribute" type="String" description="The attribute which the edges will be sorted by" default=""/> 36 36 </OCD> trunk/plugins/preprocessing/edu.iu.nwb.preprocessing.extractnodesandedges/src/edu/iu/nwb/preprocessing/extractnodesandedges/extractedges/abovebelow/EdgeNumericDecorationFilter.java
r2162 r2408 2 2 3 3 import edu.uci.ics.jung.graph.Edge; 4 import edu.uci.ics.jung.graph.filters.GeneralEdgeAcceptFilter;5 4 6 public class EdgeNumericDecorationFilter extends GeneralEdgeAcceptFilter {5 public class EdgeNumericDecorationFilter extends EdgeThresholdFilter { 7 6 8 private Object decoratorKey;9 private double threshold = 0.0;10 11 7 public boolean acceptEdge(Edge e) { 12 if ( decoratorKey!= null) {13 Object value = e.getUserDatum( decoratorKey);8 if (getDecorationKey() != null) { 9 Object value = e.getUserDatum(getDecorationKey()); 14 10 if (value instanceof Number) { 15 11 Number numericValue = (Number) value; 16 12 double doubleValue = numericValue.doubleValue(); 17 return doubleValue > threshold;13 return doubleValue > getThreshold(); 18 14 } else { 19 15 return true; … … 22 18 return true; 23 19 } 24 25 public void setDecorationKey(Object decoratorKey) {26 this.decoratorKey = decoratorKey;27 }28 29 public void setThreshold(double threshold) {30 this.threshold = threshold;31 }32 20 33 21 public String getName() { 34 return "Edge Numeric DecorationFilter";22 return "Edge Threshold Filter"; 35 23 } 36 37 24 } trunk/plugins/preprocessing/edu.iu.nwb.preprocessing.extractnodesandedges/src/edu/iu/nwb/preprocessing/extractnodesandedges/extractedges/abovebelow/ExtractEdgesAboveBelowAlgorithm.java
r2162 r2408 16 16 17 17 private Double fromThisNum; 18 private Boolean invert;18 private Boolean belowInstead; 19 19 private String numericAttribute; 20 20 … … 33 33 } 34 34 this.fromThisNum = (Double) parameters.get("fromThisNum"); 35 this. invert = (Boolean) parameters.get("invert");35 this.belowInstead = (Boolean) parameters.get("belowInstead"); 36 36 this.numericAttribute = (String) parameters.get("numericAttribute"); 37 37 } … … 55 55 //returns a new graph that contains all the nodes whose attribute is either above or below a given threshold 56 56 private Graph filter(Graph originalGraph) { 57 Edge NumericDecorationFilter filter = null;58 if ( invert.booleanValue() == false) {57 EdgeThresholdFilter filter = null; 58 if (belowInstead.booleanValue() == false) { 59 59 filter = new EdgeNumericDecorationFilter(); 60 60 } else { … … 71 71 StringBuilder label = new StringBuilder(); 72 72 label.append ("all edges with " + this.numericAttribute); 73 if (this. invert.booleanValue() == false) {73 if (this.belowInstead.booleanValue() == false) { 74 74 label.append(" above "); 75 75 } else { 76 label.append(" below or equal to");76 label.append(" below "); 77 77 } 78 78 label.append("" + this.fromThisNum); trunk/plugins/preprocessing/edu.iu.nwb.preprocessing.extractnodesandedges/src/edu/iu/nwb/preprocessing/extractnodesandedges/extractedges/abovebelow/InverseEdgeNumericDecorationFilter.java
r2162 r2408 2 2 3 3 import edu.uci.ics.jung.graph.Edge; 4 import edu.uci.ics.jung.graph.filters.GeneralEdgeAcceptFilter; 4 5 5 public class InverseEdgeNumericDecorationFilter extends EdgeNumericDecorationFilter { 6 public boolean acceptEdge(Edge e) { 7 return ! super.acceptEdge(e); 6 public class InverseEdgeNumericDecorationFilter extends EdgeThresholdFilter { 7 8 public boolean acceptEdge(Edge e) { 9 if (getDecorationKey() != null) { 10 Object value = e.getUserDatum(getDecorationKey()); 11 if (value instanceof Number) { 12 Number numericValue = (Number) value; 13 double doubleValue = numericValue.doubleValue(); 14 return doubleValue < getThreshold(); 15 } else { 16 return true; 17 } 8 18 } 19 return true; 20 } 9 21 10 public String getName() {11 return "Inverse Edge Numeric DecorationFilter";12 }22 public String getName() { 23 return "Below Edge Threshold Filter"; 24 } 13 25 }
