Search in sources :

Example 11 with Range

use of org.vcell.util.Range in project vcell by virtualcell.

the class EstParams_OneDiffComponentPanel method setData.

public void setData(final FRAPOptData frapOptData, final FRAPData fData, Parameter[] modelParams, final double[] frapDataTimeStamps, int startIndexForRecovery, boolean[] selectedROIs) throws Exception {
    this.frapOptData = frapOptData;
    double[] prebleachAverage = FrapDataUtils.calculatePreBleachAverageXYZ(fData, startIndexForRecovery);
    spatialAnalysisResults = FRAPStudy.spatialAnalysis(null, startIndexForRecovery, frapDataTimeStamps[startIndexForRecovery], modelParams, fData, prebleachAverage);
    // allDataHash use AnalysisParameters as key, the value is dataSource[] which should have length as 2: expDataSource & simDataSouce
    allDataHash = spatialAnalysisResults.createSummaryReportSourceData(frapDataTimeStamps, startIndexForRecovery, selectedROIs, false);
    final SpatialAnalysisResults finalSpatialAnalysisResults = spatialAnalysisResults;
    try {
        getPureDiffusionPanel().setData(frapOptData, modelParams);
        multisourcePlotPane.forceXYRange(new Range(frapDataTimeStamps[0], frapDataTimeStamps[frapDataTimeStamps.length - 1]), new Range(0, 1.5));
        plotDerivedSimulationResults(finalSpatialAnalysisResults.getAnalysisParameters());
    } catch (Exception e) {
        throw new RuntimeException("Error setting data to result panel for diffusion with one diffusing component.");
    }
}
Also used : SpatialAnalysisResults(cbit.vcell.microscopy.SpatialAnalysisResults) Range(org.vcell.util.Range)

Example 12 with Range

use of org.vcell.util.Range in project vcell by virtualcell.

the class EstParams_ReacBindingPanel method setData.

// private void showPopupMenu(MouseEvent e){
// if(B_TABLE_DISABLED){
// return;
// }
// if(e.isPopupTrigger()){
// if(table.getSelectedRow() < 0 || table.getSelectedRow() >= summaryData.length||
// table.getSelectedColumn() < 0 || table.getSelectedColumn() >= summaryReportColumnNames.length){
// copyValueJMenuItem.setEnabled(false);
// copyTimeDataJMenuItem.setEnabled(false);
// }else{
// copyValueJMenuItem.setEnabled(true);
// copyTimeDataJMenuItem.setEnabled(true);
// }
// if(copyTimeDataJMenuItem.isEnabled() && table.getSelectedColumn() == 0){
// copyTimeDataJMenuItem.setEnabled(false);
// }
// jPopupMenu.show((Component)e.getSource(), e.getX(), e.getY());
// }
// 
// }
// private void sortColumn(final int columnIndex,boolean bAutoReverse){
// if(B_TABLE_DISABLED){
// return;
// }
// if(summaryData != null){
// int selectedRow = table.getSelectedRow();
// int[] selectedColumns = table.getSelectedColumns();
// Object[][] sortedObjects = new Object[summaryData.length][];
// for (int i = 0; i < sortedObjects.length; i++) {
// sortedObjects[i] = new Object[] {new Integer(i),(Double)summaryData[i][columnIndex]};
// }
// Arrays.sort(sortedObjects,
// new Comparator<Object[]> (){
// public int compare(Object[] o1,Object[] o2) {
// return (int)Math.signum((Double)o1[1] - (Double)o2[1]);
// }
// }
// );
// if(bAutoReverse){
// boolean bSortOrderChanged = false;
// for (int i = 0; i < sortedObjects.length; i++) {
// if((Integer)(((Object[])sortedObjects[i])[0]) != i){
// bSortOrderChanged = true;
// break;
// }
// }
// if(!bSortOrderChanged){
// Object[][] reverseSort = new Object[sortedObjects.length][];
// for (int i = 0; i < reverseSort.length; i++) {
// reverseSort[i] = sortedObjects[sortedObjects.length-1-i];
// }
// sortedObjects = reverseSort;
// }
// }
// Object[][] summaryCopy = new Object[summaryData.length][];
// for (int i = 0; i < sortedObjects.length; i++) {
// summaryCopy[i] = summaryData[(Integer)(((Object[])sortedObjects[i])[0])];
// }
// table.setModel(getTableModel(summaryReportColumnNames,summaryCopy));
// if(selectedRow != -1){
// for (int i = 0; i < sortedObjects.length; i++) {
// if((Integer)(((Object[])sortedObjects[i])[0]) == selectedRow){
// selectedRow = i;//table.getSelectionModel().setSelectionInterval(i, i);
// break;
// }
// }
// 
// }
// if(selectedColumns != null && selectedColumns.length > 0){
// setTableCellSelection(selectedRow, selectedColumns);
// }
// }
// }
// private void processTableSelection(){
// if(allDataHash == null || B_TABLE_DISABLED){
// return;
// }
// int selectedRow = table.getSelectedRow();
// int[] selectedColumns = table.getSelectedColumns();
// if(selectedRow != -1 && selectedColumns != null && selectedColumns.length > 0){
// Double selectedDiffusionRate =
// (Double)table.getValueAt(selectedRow,
// FRAPStudy.SpatialAnalysisResults.COLUMN_INDEX_DIFFUSION_RATE);
// DataSource[] selectedRowDataSourceArr = allDataHash.get(selectedDiffusionRate);
// multisourcePlotPane.setDataSources(selectedRowDataSourceArr);
// multisourcePlotPane.clearSelection();
// Vector<String> dataSourceColumnNamesV = new Vector<String>();
// for (int i = 0; i < selectedColumns.length; i++) {
// int selectedColumn = selectedColumns[i];
// if(selectedColumn < FRAPStudy.SpatialAnalysisResults.ANALYSISPARAMETERS_COLUMNS_COUNT/*== FRAPStudy.SpatialAnalysisResults.COLUMN_INDEX_DIFFUSION_RATE*/){
// multisourcePlotPane.selectAll();
// dataSourceColumnNamesV = null;
// break;
// }else{
// String expColName =
// ((ReferenceData)selectedRowDataSourceArr[FRAPStudy.SpatialAnalysisResults.ARRAY_INDEX_EXPDATASOURCE].getSource()).getColumnNames()[selectedColumn-FRAPStudy.SpatialAnalysisResults.ANALYSISPARAMETERS_COLUMNS_COUNT+1];
// String simColName =
// ((ODESolverResultSet)selectedRowDataSourceArr[FRAPStudy.SpatialAnalysisResults.ARRAY_INDEX_SIMDATASOURCE].getSource()).getColumnDescriptions()[selectedColumn-FRAPStudy.SpatialAnalysisResults.ANALYSISPARAMETERS_COLUMNS_COUNT+1].getName();
// dataSourceColumnNamesV.add(expColName);
// dataSourceColumnNamesV.add(simColName);
// }
// }
// if(dataSourceColumnNamesV != null && dataSourceColumnNamesV.size() > 0){
// String[] dataSourceColumnNamesArr = dataSourceColumnNamesV.toArray(new String[0]);
// multisourcePlotPane.select(dataSourceColumnNamesArr);
// }
// }else{
// multisourcePlotPane.setDataSources(null);
// }
// 
// }
public void setData(final FRAPData fData, Parameter[] modelParams, final double[] frapDataTimeStamps, int startIndexForRecovery, boolean[] selectedROIs) throws Exception {
    double[] prebleachAverage = FrapDataUtils.calculatePreBleachAverageXYZ(fData, startIndexForRecovery);
    spatialAnalysisResults = FRAPStudy.spatialAnalysis(null, startIndexForRecovery, frapDataTimeStamps[startIndexForRecovery], modelParams, fData, prebleachAverage);
    // allDataHash use AnalysisParameters as key, the value is dataSource[] which should have length as 2: expDataSource & simDataSouce
    allDataHash = spatialAnalysisResults.createSummaryReportSourceData(frapDataTimeStamps, startIndexForRecovery, selectedROIs, false);
    final SpatialAnalysisResults finalSpatialAnalysisResults = spatialAnalysisResults;
    try {
        multisourcePlotPane.forceXYRange(new Range(frapDataTimeStamps[0], frapDataTimeStamps[frapDataTimeStamps.length - 1]), new Range(0, 1.5));
        plotDerivedSimulationResults(finalSpatialAnalysisResults.getAnalysisParameters());
    } catch (Exception e) {
        throw new RuntimeException("Error setting data to result panel for diffusion with one diffusing component.");
    }
}
Also used : SpatialAnalysisResults(cbit.vcell.microscopy.SpatialAnalysisResults) Range(org.vcell.util.Range)

Example 13 with Range

use of org.vcell.util.Range in project vcell by virtualcell.

the class Plot2D method getYDataRange.

/**
 * Insert the method's description here.
 * Creation date: (2/8/2001 1:33:21 PM)
 * @return cbit.image.Range
 */
public Range getYDataRange() {
    double ymin = 0;
    double ymax = 0;
    for (int i = 0; i < plotDatas.length; i++) {
        if (isVisiblePlot(i)) {
            ymin = Math.min(ymin, plotDatas[i].getDependentMin());
            ymax = Math.max(ymax, plotDatas[i].getDependentMax());
        }
    }
    yDataRange = new Range(ymin, ymax);
    return yDataRange;
}
Also used : Range(org.vcell.util.Range)

Example 14 with Range

use of org.vcell.util.Range in project vcell by virtualcell.

the class Plot2DSettings method setXManualRange.

/**
 * Sets the xManualRange property (cbit.image.Range) value.
 * @param xManualRange The new value for the property.
 * @see #getXManualRange
 */
public void setXManualRange(Range xManualRange) {
    Range oldValue = fieldXManualRange;
    fieldXManualRange = xManualRange;
    firePropertyChange("xManualRange", oldValue, xManualRange);
}
Also used : Range(org.vcell.util.Range)

Example 15 with Range

use of org.vcell.util.Range in project vcell by virtualcell.

the class Plot2DSettings method setYAutoRange.

/**
 * Sets the yAutoRange property (cbit.image.Range) value.
 * @param yAutoRange The new value for the property.
 * @see #getYAutoRange
 */
public void setYAutoRange(Range yAutoRange) {
    Range oldValue = fieldYAutoRange;
    fieldYAutoRange = yAutoRange;
    firePropertyChange("yAutoRange", oldValue, yAutoRange);
}
Also used : Range(org.vcell.util.Range)

Aggregations

Range (org.vcell.util.Range)54 Point (java.awt.Point)12 SourceDataInfo (cbit.image.SourceDataInfo)5 Paint (java.awt.Paint)4 DecimalFormat (java.text.DecimalFormat)4 DisplayAdapterService (cbit.image.DisplayAdapterService)3 SinglePoint (cbit.vcell.geometry.SinglePoint)3 SpatialAnalysisResults (cbit.vcell.microscopy.SpatialAnalysisResults)3 DisplayPreferences (cbit.image.DisplayPreferences)2 Plot2D (cbit.plot.Plot2D)2 PlotData (cbit.plot.PlotData)2 ExportEvent (cbit.rmi.event.ExportEvent)2 AsynchClientTask (cbit.vcell.client.task.AsynchClientTask)2 VariableType (cbit.vcell.math.VariableType)2 VolVariable (cbit.vcell.math.VolVariable)2 MergedDataInfo (cbit.vcell.simdata.MergedDataInfo)2 VCSimulationDataIdentifier (cbit.vcell.solver.VCSimulationDataIdentifier)2 CartesianMesh (cbit.vcell.solvers.CartesianMesh)2 ExternalDataIdentifier (org.vcell.util.document.ExternalDataIdentifier)2 VCDataIdentifier (org.vcell.util.document.VCDataIdentifier)2