def createData(func, idx): global gDataSet, adata, gCenter, gMinValue, gMaxValue import numpy from pyvisus.numpyconversion import VisusIncoreEncoder print "Create data for idx(%d)" % idx dimi = 50 dimj = 50 dimk = 50 gCenter[0] = 0.5 * (dimi - 1) gCenter[1] = 0.5 * (dimj - 1) gCenter[2] = 0.5 * (dimk - 1) data = [] for i in xrange(dimi * dimj * dimk): data.append(0) for i in xrange(dimi): for j in xrange(dimj): for k in xrange(dimk): value = func(i, j, k) data[k + j * dimk + i * dimk * dimj] = value if idx == COLOR_NDX: if value < gMinValue: gMinValue = value if value > gMaxValue: gMaxValue = value adata[idx] = numpy.array(data) encoder = VisusIncoreEncoder(dimi, dimj, dimk, 1) encoder.domain([0, 0, 0], [dimk, dimj, dimi]) encoder.field(adata[idx], "density") gDataSet[idx] = str(encoder) # Make the data source print "Opening dataset(%s)" % gDataSet[idx] data = VisusDataSourceFactory.make(gDataSet[idx]) if not data.isValid(): raise RuntimeError("Loaded data is not valid") return data
def createData(): global gBBox, gDataSet, adata import numpy from math import sqrt, pow from pyvisus.numpyconversion import VisusIncoreEncoder idim = 50 jdim = 50 kdim = 50 data = [] for i in xrange(idim*jdim*kdim): data.append(0) for i in xrange(idim): for j in xrange(jdim): for k in xrange(kdim): data[k+j*kdim+i*jdim*kdim] = sqrt(pow(i-25.0,2) + pow(j-25.0,2) + pow(k-25.0,2)) adata = numpy.array(data) encoder = VisusIncoreEncoder(idim,jdim,kdim,1) encoder.domain([0,0,0],[1.0*idim,1.0*jdim,0.1*kdim]) encoder.field(adata) gDataSet = str(encoder) # Make the data source print "Opening dataset(%s)" % gDataSet data = VisusDataSourceFactory.make(gDataSet); if not data.isValid(): raise RuntimeError("Loaded data is not valid") gSamples = data.samples(); left = VectorDouble(3) right= VectorDouble(3) data.domainBoundingBox(left,right); gBBox = VisusBoundingBox() gBBox.set(left,right); return
def createData(filename=None): global gBBox, gDataSet, adata if filename is None: import numpy from math import sqrt, pow from pyvisus.numpyconversion import VisusIncoreEncoder data = [] for i in xrange(50 * 50 * 50): data.append(0) for i in xrange(50): for j in xrange(50): for k in xrange(50): data[k + j * 50 + i * 50 * 50] = sqrt( pow(i - 25.0, 2) + pow(j - 25.0, 2) + pow(k - 25.0, 2)) adata = numpy.array(data) encoder = VisusIncoreEncoder(50, 50, 50) encoder.field(adata) gDataSet = str(encoder) else: gDataSet = "Idx:%s" % filename # Make the data source print "Opening dataset(%s)" % gDataSet data = VisusDataSourceFactory.make(gDataSet) if not data.isValid(): raise RuntimeError("Loaded data is not valid") gSamples = data.samples() left = VectorDouble(3) right = VectorDouble(3) data.domainBoundingBox(left, right) gBBox = VisusBoundingBox() gBBox.set(left, right) return
def createData(filename=None): global gBBox, gDataSet, adata if filename is None: import numpy from math import sqrt, pow from pyvisus.numpyconversion import VisusIncoreEncoder data = [] for i in xrange(50*50*50): data.append(0) for i in xrange(50): for j in xrange(50): for k in xrange(50): data[k+j*50+i*50*50] = sqrt(pow(i-25.0,2) + pow(j-25.0,2) + pow(k-25.0,2)) adata = numpy.array(data) encoder = VisusIncoreEncoder(50,50,50) encoder.field(adata) gDataSet = str(encoder) else: gDataSet = "Idx:%s" % filename # Make the data source print "Opening dataset(%s)" % gDataSet data = VisusDataSourceFactory.make(gDataSet); if not data.isValid(): raise RuntimeError("Loaded data is not valid") gSamples = data.samples(); left = VectorDouble(3) right= VectorDouble(3) data.domainBoundingBox(left,right); gBBox = VisusBoundingBox() gBBox.set(left,right); return
def createData(func,idx): global gDataSet, adata, gCenter, gMinValue, gMaxValue import numpy from pyvisus.numpyconversion import VisusIncoreEncoder print "Create data for idx(%d)" % idx dimi = 50 dimj = 50 dimk = 50 gCenter[0] = 0.5 * (dimi-1) gCenter[1] = 0.5 * (dimj-1) gCenter[2] = 0.5 * (dimk-1) data = [] for i in xrange(dimi*dimj*dimk): data.append(0) for i in xrange(dimi): for j in xrange(dimj): for k in xrange(dimk): value = func(i,j,k) data[k + j*dimk + i*dimk*dimj] = value if idx == COLOR_NDX: if value < gMinValue: gMinValue = value if value > gMaxValue: gMaxValue = value adata[idx] = numpy.array(data) encoder = VisusIncoreEncoder(dimi,dimj,dimk,1) encoder.domain([0,0,0],[dimk,dimj,dimi]) encoder.field(adata[idx], "density") gDataSet[idx] = str(encoder) # Make the data source print "Opening dataset(%s)" % gDataSet[idx] data = VisusDataSourceFactory.make(gDataSet[idx]); if not data.isValid(): raise RuntimeError("Loaded data is not valid") return data
def createData(): global gBBox, gDataSet, adata import numpy from math import sqrt, pow from pyvisus.numpyconversion import VisusIncoreEncoder idim = 50 jdim = 50 kdim = 50 data = [] for i in xrange(idim * jdim * kdim): data.append(0) for i in xrange(idim): for j in xrange(jdim): for k in xrange(kdim): data[k + j * kdim + i * jdim * kdim] = sqrt( pow(i - 25.0, 2) + pow(j - 25.0, 2) + pow(k - 25.0, 2)) adata = numpy.array(data) encoder = VisusIncoreEncoder(idim, jdim, kdim, 1) encoder.domain([0, 0, 0], [1.0 * idim, 1.0 * jdim, 0.1 * kdim]) encoder.field(adata) gDataSet = str(encoder) # Make the data source print "Opening dataset(%s)" % gDataSet data = VisusDataSourceFactory.make(gDataSet) if not data.isValid(): raise RuntimeError("Loaded data is not valid") gSamples = data.samples() left = VectorDouble(3) right = VectorDouble(3) data.domainBoundingBox(left, right) gBBox = VisusBoundingBox() gBBox.set(left, right) return