use of org.vcell.util.Origin in project vcell by virtualcell.
the class GeometrySizeDialog method Ok.
/**
* Comment
*/
private void Ok() throws PropertyVetoException {
final double worldExtentX = Double.valueOf(getSizeXTextField().getText()).doubleValue();
final double worldExtentY = Double.valueOf(getSizeYTextField().getText()).doubleValue();
final double worldExtentZ = Double.valueOf(getSizeZTextField().getText()).doubleValue();
final double worldOriginX = Double.valueOf(getOriginXTextField().getText()).doubleValue();
final double worldOriginY = Double.valueOf(getOriginYTextField().getText()).doubleValue();
final double worldOriginZ = Double.valueOf(getOriginZTextField().getText()).doubleValue();
final GeometrySpec geometrySpec = getGeometry().getGeometrySpec();
AsynchClientTask extentOriginTask = new AsynchClientTask("Changing domain", AsynchClientTask.TASKTYPE_NONSWING_BLOCKING) {
@Override
public void run(Hashtable<String, Object> hashTable) throws Exception {
geometrySpec.setExtent(new Extent(worldExtentX, worldExtentY, worldExtentZ));
geometrySpec.setOrigin(new Origin(worldOriginX, worldOriginY, worldOriginZ));
getGeometry().precomputeAll(new GeometryThumbnailImageFactoryAWT());
}
};
ClientTaskDispatcher.dispatch(this.getParent(), new Hashtable<String, Object>(), new AsynchClientTask[] { extentOriginTask }, false);
}
use of org.vcell.util.Origin in project vcell by virtualcell.
the class FieldDataGUIPanel method copyMethod.
private void copyMethod(int copyMode) {
String delimiter = "";
if (copyMode == COPY_NL) {
delimiter = "\n";
} else if (copyMode == COPY_CRNL) {
delimiter = "\r\n";
} else if (copyMode == COPY_CSV) {
delimiter = ",";
} else if (copyMode == COPY_SPACE) {
delimiter = " ";
}
String copyString = "";
javax.swing.tree.TreePath selPath = getJTree1().getSelectionPath();
if (selPath != null) {
javax.swing.tree.DefaultMutableTreeNode lastPathComponent = (javax.swing.tree.DefaultMutableTreeNode) selPath.getLastPathComponent();
if (lastPathComponent.equals(getJTree1().getModel().getRoot())) {
int childCount = lastPathComponent.getChildCount();
for (int i = 0; i < childCount; i += 1) {
if (i != 0) {
copyString += delimiter;
}
copyString += ((FieldDataMainList) ((DefaultMutableTreeNode) lastPathComponent.getChildAt(i)).getUserObject()).externalDataIdentifier.getName();
}
} else if (lastPathComponent.getUserObject() instanceof FieldDataOriginList) {
Origin origin = ((FieldDataOriginList) lastPathComponent.getUserObject()).origin;
copyString = origin.getX() + delimiter + origin.getY() + delimiter + origin.getZ();
} else if (lastPathComponent.getUserObject() instanceof FieldDataExtentList) {
Extent extent = ((FieldDataExtentList) lastPathComponent.getUserObject()).extent;
copyString = extent.getX() + delimiter + extent.getY() + delimiter + extent.getZ();
} else if (lastPathComponent.getUserObject() instanceof FieldDataISizeList) {
ISize isize = ((FieldDataISizeList) lastPathComponent.getUserObject()).isize;
copyString = isize.getX() + delimiter + isize.getY() + delimiter + isize.getZ();
} else if (lastPathComponent.getUserObject() instanceof FieldDataTimeList) {
double[] times = ((FieldDataTimeList) lastPathComponent.getUserObject()).times;
for (int i = 0; i < times.length; i += 1) {
if (i != 0) {
copyString += delimiter;
}
copyString += times[i] + "";
}
} else if (lastPathComponent.getUserObject() instanceof FieldDataMainList) {
ExternalDataIdentifier extDataID = ((FieldDataMainList) lastPathComponent.getUserObject()).externalDataIdentifier;
copyString = extDataID.getName();
} else if (lastPathComponent.getUserObject() instanceof FieldDataVarList) {
DataIdentifier dataIdentifier = ((FieldDataVarList) lastPathComponent.getUserObject()).dataIdentifier;
copyString = dataIdentifier.getName();
} else if (lastPathComponent.getUserObject() instanceof FieldDataVarMainList) {
int childCount = lastPathComponent.getChildCount();
for (int i = 0; i < childCount; i += 1) {
if (i != 0) {
copyString += delimiter;
}
copyString += ((FieldDataVarList) ((DefaultMutableTreeNode) lastPathComponent.getChildAt(i)).getUserObject()).dataIdentifier.getName();
}
}
if (copyString.length() > 0) {
VCellTransferable.sendToClipboard(copyString);
}
}
}
use of org.vcell.util.Origin in project vcell by virtualcell.
the class ClientRequestManager method createFDOSFromVCImage.
private static FieldDataFileOperationSpec createFDOSFromVCImage(VCImage dbImage) throws ImageException {
int[] temp = new int[256];
short[] templateShorts = new short[dbImage.getNumXYZ()];
for (int i = 0; i < dbImage.getPixels().length; i++) {
templateShorts[i] = (short) (0x00FF & dbImage.getPixels()[i]);
temp[templateShorts[i]]++;
}
for (int j = 0; j < dbImage.getPixelClasses().length; j++) {
short tempshort = (short) (0x00FF & dbImage.getPixelClasses()[j].getPixel());
}
FieldDataFileOperationSpec fdfos = null;
fdfos = new FieldDataFileOperationSpec();
fdfos.origin = new Origin(0, 0, 0);
fdfos.extent = dbImage.getExtent();
fdfos.isize = new ISize(dbImage.getNumX(), dbImage.getNumY(), dbImage.getNumZ());
fdfos.shortSpecData = new short[][][] { { templateShorts } };
return fdfos;
}
use of org.vcell.util.Origin in project vcell by virtualcell.
the class FRAPStudy method getPSFFieldData.
public static FieldDataIdentifierSpec getPSFFieldData(LocalWorkspace localWorkspace) {
// create ROI image
short[] psfFieldData = null;
psfFieldData = new short[9];
psfFieldData[4] = (short) 1;
// create field data
int NumTimePoints = 1;
// 8 rois integrated into 1 image
int NumChannels = 1;
short[][][] pixData = new short[NumTimePoints][NumChannels][1];
pixData[0][0] = psfFieldData;
// get extental data id
ExternalDataIdentifier newPsfExtDataID = FRAPStudy.createNewExternalDataInfo(localWorkspace, FRAPStudy.PSF_DATA_NAME).getExternalDataIdentifier();
CartesianMesh cartesianMesh;
try {
Origin origin = new Origin(0, 0, 0);
Extent ext = new Extent(1, 1, 1);
ISize isize = new ISize(3, 3, 1);
cartesianMesh = CartesianMesh.createSimpleCartesianMesh(origin, ext, isize, new RegionImage(new VCImageUncompressed(null, new byte[isize.getXYZ()], ext, isize.getX(), isize.getY(), isize.getZ()), 0, null, null, RegionImage.NO_SMOOTHING));
FieldDataFileOperationSpec fdos = new FieldDataFileOperationSpec();
fdos.opType = FieldDataFileOperationSpec.FDOS_ADD;
fdos.cartesianMesh = cartesianMesh;
fdos.shortSpecData = pixData;
fdos.specEDI = newPsfExtDataID;
fdos.varNames = new String[] { "psfVar" };
fdos.owner = LocalWorkspace.getDefaultOwner();
fdos.times = new double[] { 0.0 };
fdos.variableTypes = new VariableType[] { VariableType.VOLUME };
fdos.origin = origin;
fdos.extent = ext;
fdos.isize = isize;
localWorkspace.getDataSetControllerImpl().fieldDataFileOperation(fdos);
FieldFunctionArguments psfFieldFunc = new FieldFunctionArguments(PSF_DATA_NAME, "psfVar", new Expression(0.0), VariableType.VOLUME);
FieldDataIdentifierSpec fdis = new FieldDataIdentifierSpec(psfFieldFunc, newPsfExtDataID);
return fdis;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
}
use of org.vcell.util.Origin in project vcell by virtualcell.
the class FRAPStudy method getCartesianMesh.
public CartesianMesh getCartesianMesh() throws Exception {
CartesianMesh cartesianMesh = null;
ImageDataset imgDataSet = getFrapData().getImageDataset();
Extent extent = imgDataSet.getExtent();
ISize isize = imgDataSet.getISize();
Origin origin = new Origin(0, 0, 0);
if (getBioModel() == null) {
cartesianMesh = CartesianMesh.createSimpleCartesianMesh(origin, extent, isize, new RegionImage(new VCImageUncompressed(null, new byte[isize.getXYZ()], extent, isize.getX(), isize.getY(), isize.getZ()), 0, null, null, RegionImage.NO_SMOOTHING));
} else {
RegionImage regionImage = getBioModel().getSimulationContexts()[0].getGeometry().getGeometrySurfaceDescription().getRegionImage();
if (regionImage == null) {
getBioModel().getSimulationContexts()[0].getGeometry().getGeometrySurfaceDescription().updateAll();
regionImage = getBioModel().getSimulationContexts()[0].getGeometry().getGeometrySurfaceDescription().getRegionImage();
}
cartesianMesh = CartesianMesh.createSimpleCartesianMesh(origin, extent, isize, regionImage);
}
return cartesianMesh;
}
Aggregations