Package org.gephi.data.attributes.type

Examples of org.gephi.data.attributes.type.TimeInterval


                    if (timeIntervalMax != null && node.getTimeInterval() != null && node.getTimeInterval().getHigh() > timeIntervalMax) {
                        node.setTimeInterval((TimeInterval) DynamicUtilities.fitToInterval(node.getTimeInterval(), node.getTimeInterval().getLow(), timeIntervalMax));
                        issue = true;
                    }
                    if (node.getTimeInterval() == null) {
                        node.setTimeInterval(new TimeInterval(timeIntervalMin, timeIntervalMax));
                    }
                }

                AttributeValue[] values = node.getAttributeRow().getValues();
                for (int i = 0; i < values.length; i++) {
                    AttributeValue val = values[i];
                    if (val.getValue() != null && val.getValue() instanceof DynamicType) {   //is Dynamic type
                        DynamicType type = (DynamicType) val.getValue();
                        if (timeIntervalMin != null && type.getLow() < timeIntervalMin) {
                            if (!Double.isInfinite(type.getLow())) {
                                issue = true;
                            }
                            node.getAttributeRow().setValue(val.getColumn(), DynamicUtilities.fitToInterval(type, timeIntervalMin, type.getHigh()));
                        }
                        if (timeIntervalMax != null && type.getHigh() > timeIntervalMax) {
                            if (!Double.isInfinite(type.getHigh())) {
                                issue = true;
                            }
                            node.getAttributeRow().setValue(val.getColumn(), DynamicUtilities.fitToInterval(type, type.getLow(), timeIntervalMax));
                        }
                    }
                }
                if (issue) {
                    report.logIssue(new Issue(NbBundle.getMessage(ImportContainerImpl.class, "ImportContainerException_TimeIntervalVerify_Node_OutOfBound", node.getId()), Level.WARNING));
                }
            }
            for (EdgeDraftImpl edge : edgeMap.values()) {
                boolean issue = false;
                if (timeIntervalMin != null || timeIntervalMax != null) {
                    if (timeIntervalMin != null && edge.getTimeInterval() != null && edge.getTimeInterval().getLow() < timeIntervalMin) {
                        edge.setTimeInterval((TimeInterval) DynamicUtilities.fitToInterval(edge.getTimeInterval(), timeIntervalMin, edge.getTimeInterval().getHigh()));
                        issue = true;
                    }
                    if (timeIntervalMax != null && edge.getTimeInterval() != null && edge.getTimeInterval().getHigh() > timeIntervalMax) {
                        edge.setTimeInterval((TimeInterval) DynamicUtilities.fitToInterval(edge.getTimeInterval(), edge.getTimeInterval().getLow(), timeIntervalMax));
                        issue = true;
                    }
                    if (edge.getTimeInterval() == null) {
                        edge.setTimeInterval(new TimeInterval(timeIntervalMin, timeIntervalMax));
                    }
                }

                AttributeValue[] values = edge.getAttributeRow().getValues();
                for (int i = 0; i < values.length; i++) {
View Full Code Here


        addTimeInterval(dateFrom, dateTo, false, false);
    }

    public void addTimeInterval(String dateFrom, String dateTo, boolean startOpen, boolean endOpen) throws IllegalArgumentException {
        if (timeInterval == null) {
            timeInterval = new TimeInterval();
        }
        Double start = null;
        Double end = null;
        if (dateFrom != null && !dateFrom.isEmpty()) {
            try {
                if (container.getTimeFormat().equals(TimeFormat.DATE) ||
                        container.getTimeFormat().equals(TimeFormat.DATETIME)) {
                    start = DynamicUtilities.getDoubleFromXMLDateString(dateFrom);
                } else {
                    start = Double.parseDouble(dateFrom);
                }

            } catch (Exception ex) {
                throw new IllegalArgumentException(NbBundle.getMessage(NodeDraftImpl.class, "ImportContainerException_TimeInterval_ParseError", dateFrom));
            }
        }
        if (dateTo != null && !dateTo.isEmpty()) {
            try {
                if (container.getTimeFormat().equals(TimeFormat.DATE) ||
                        container.getTimeFormat().equals(TimeFormat.DATETIME)) {
                    end = DynamicUtilities.getDoubleFromXMLDateString(dateTo);
                } else {
                    end = Double.parseDouble(dateTo);
                }
            } catch (Exception ex) {
                throw new IllegalArgumentException(NbBundle.getMessage(NodeDraftImpl.class, "ImportContainerException_TimeInterval_ParseError", dateTo));
            }
        }
        if (start == null && end == null) {
            throw new IllegalArgumentException(NbBundle.getMessage(NodeDraftImpl.class, "ImportContainerException_TimeInterval_Empty"));
        }
        timeInterval = new TimeInterval(timeInterval, start != null ? start : Double.NEGATIVE_INFINITY, end != null ? end : Double.POSITIVE_INFINITY, startOpen, endOpen);
    }
View Full Code Here

        }
    }

    @Override
    public void setVisibleInterval(double low, double high) {
        setVisibleInterval(new TimeInterval(low, high));
    }
View Full Code Here

        edgeDynamicColumns = Collections.synchronizedList(new ArrayList<AttributeColumn>());

        refresh();

        //Visible interval
        visibleTimeInterval = new TimeInterval(timeIntervalIndex.getMin(), timeIntervalIndex.getMax());

        //AttUtils
        final AttributeUtils attUtils = AttributeUtils.getDefault();

        //Listen columns
View Full Code Here

        addTimeInterval(dateFrom, dateTo, false, false);
    }

    public void addTimeInterval(String dateFrom, String dateTo, boolean startOpen, boolean endOpen) throws IllegalArgumentException {
        if (timeInterval == null) {
            timeInterval = new TimeInterval();
        }
        Double start = null;
        Double end = null;
        if (dateFrom != null && !dateFrom.isEmpty()) {
            try {
                if (container.getTimeFormat().equals(TimeFormat.DATE) ||
                        container.getTimeFormat().equals(TimeFormat.DATETIME)) {
                    start = DynamicUtilities.getDoubleFromXMLDateString(dateFrom);
                } else {
                    start = Double.parseDouble(dateFrom);
                }

            } catch (Exception ex) {
                throw new IllegalArgumentException(NbBundle.getMessage(NodeDraftImpl.class, "ImportContainerException_TimeInterval_ParseError", dateFrom));
            }
        }
        if (dateTo != null && !dateTo.isEmpty()) {
            try {
                if (container.getTimeFormat().equals(TimeFormat.DATE) ||
                        container.getTimeFormat().equals(TimeFormat.DATETIME)) {
                    end = DynamicUtilities.getDoubleFromXMLDateString(dateTo);
                } else {
                    end = Double.parseDouble(dateTo);
                }
            } catch (Exception ex) {
                throw new IllegalArgumentException(NbBundle.getMessage(NodeDraftImpl.class, "ImportContainerException_TimeInterval_ParseError", dateTo));
            }
        }
        if (start == null && end == null) {
            throw new IllegalArgumentException(NbBundle.getMessage(EdgeDraftImpl.class, "ImportContainerException_TimeInterval_Empty"));
        }
        timeInterval = new TimeInterval(timeInterval, start != null ? start : Double.NEGATIVE_INFINITY, end != null ? end : Double.POSITIVE_INFINITY, startOpen, endOpen);
    }
View Full Code Here

    this.high = high;

    if (low != Double.NEGATIVE_INFINITY || high != Double.POSITIVE_INFINITY) {
      Graph vgraph = model.getGraph(currentView);
      for (Node n : vgraph.getNodes().toArray()) {
        TimeInterval ti = (TimeInterval)n.getNodeData().getAttributes().getValue(
            DynamicModel.TIMEINTERVAL_COLUMN);
        if (!ti.isInRange(low, high))
          vgraph.removeNode(n);
      }
      for (Edge e : vgraph.getEdges().toArray()) {
        TimeInterval ti = (TimeInterval)e.getEdgeData().getAttributes().getValue(
            DynamicModel.TIMEINTERVAL_COLUMN);
        if (!ti.isInRange(low, high))
          vgraph.removeEdge(e);
      }
    }
  }
View Full Code Here

  @Override
  public Graph getSnapshotGraph(Interval interval, Estimator estimator) {
    Graph graph  = model.getGraph(sourceView);
    Graph vgraph = model.getGraph(currentView);
    for (Node n : graph.getNodes().toArray()) {
      TimeInterval ti = (TimeInterval)n.getNodeData().getAttributes().getValue(DynamicModel.TIMEINTERVAL_COLUMN);
                        if(ti == null && !vgraph.contains(n))
                                vgraph.addNode(n);
                        else if(ti != null && ti.getValue(interval, estimator) == null && vgraph.contains(n))
        vgraph.removeNode(n);
      else if (ti != null && ti.getValue(interval, estimator) != null && !vgraph.contains(n))
        vgraph.addNode(n);
    }
    for (Edge e : graph.getEdges().toArray()) {
      TimeInterval ti = (TimeInterval)e.getEdgeData().getAttributes().getValue(DynamicModel.TIMEINTERVAL_COLUMN);
                        if(ti == null && !vgraph.contains(e) &&
          vgraph.contains(e.getSource()) && vgraph.contains(e.getTarget()))
                                vgraph.addEdge(e);
                        else if(ti != null && ti.getValue(interval, estimator) == null && vgraph.contains(e))
        vgraph.removeEdge(e);
      else if (ti != null && ti.getValue(interval, estimator) != null && !vgraph.contains(e) &&
          vgraph.contains(e.getSource()) && vgraph.contains(e.getTarget()))
        vgraph.addEdge(e);
    }
    return vgraph;
  }
View Full Code Here

  @Override
  public Graph getStrongSnapshotGraph(Interval interval) {
    Graph graph  = model.getGraph(sourceView);
    Graph vgraph = model.getGraph(currentView);
    for (Node n : graph.getNodes().toArray()) {
      TimeInterval ti = (TimeInterval)n.getNodeData().getAttributes().getValue(DynamicModel.TIMEINTERVAL_COLUMN);
      if (ti.getValues(interval).size() < ti.getValues().size() && vgraph.contains(n))
        vgraph.removeNode(n);
      else if (ti.getValues(interval).size() == ti.getValues().size() && !vgraph.contains(n))
        vgraph.addNode(n);
    }
    for (Edge e : graph.getEdges().toArray()) {
      TimeInterval ti = (TimeInterval)e.getEdgeData().getAttributes().getValue(DynamicModel.TIMEINTERVAL_COLUMN);
      if (ti.getValues(interval).size() < ti.getValues().size() && vgraph.contains(e))
        vgraph.removeEdge(e);
      else if (ti.getValues(interval).size() == ti.getValues().size() && !vgraph.contains(e) &&
          vgraph.contains(e.getSource()) && vgraph.contains(e.getTarget()))
        vgraph.addEdge(e);
    }
    return vgraph;
  }
View Full Code Here

    return model.getGraph();
  }

  @Override
  public TimeInterval getInterval() {
    return new TimeInterval(low, high);
  }
View Full Code Here

                    for (Interval interval : out) {
                        lout.add(new Interval(interval.getLow(), interval.getHigh(),
                                interval.isLowExcluded(), interval.isHighExcluded()));
                    }
                }
                return new TimeInterval((TimeInterval) source, lin, lout);
            }
            default:
                return null;
        }
    }
View Full Code Here

TOP

Related Classes of org.gephi.data.attributes.type.TimeInterval

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.