<h1>A Volume Renderer</h1> <h2>To setup to load DICOM or RAW data</h2> <p> <ol> <li>Create directory <b>/sdcard/Download/volumes/</b></li> <li>Create subdirectories for each dataset</li> <li>Create a ".prop" for each data set</li> </ol> ".prop" files are simple jave properties files which consist of key=value pairs <dl> <dt>name</dt> <dd>The name to be desplayed on the screen</dd> <dt>dir</dt> <dd>The subdirectory containing the data</dd> <dt>format</dt> <dd>the format the data is in (raw or dicom)</dd> <dt>format</dt> <dd>The format of the pixes (only short & ushort supported)</dd> <dt>dim</dt> <dd>the X by Y by Z dimensions of the data seperated by x</dd> <dt>voxeldim</dt> <dd>The size of each voxel separated by a comma "," uniform = (1.0,1.0,1.0)</dd> <dt>sequence</dt> <dd>if it says 1file the raw data is all on one file</dd> <dt>looks</dt> <dd>The name of the supplied looks</dd> <dt>XXXXX.opacity</dt> <dd>the opacity table asociate with the XXXXX look</dd> <dt>XXXXX.color</dt> <dd>The color table asociated with the XXXXX look</dd> </dl> </p> <h3>Opacity table</h3> opacity tabls consisit of nested arrays of shorts. The first being intensity the second being opacity on a 0-255 scale. The values for each pixel in the volume are interpolated <p></p> <h3>Color table</h3> The color table The values are linearly interpolated from one value to the next <dl> <dt>intensity</dt> <dd>The intensity that has this "color"</dd> <dt>RGB</dt> <dd>Hex number describing the color this number has</dd> <dt>diffuse</dt> <dd>how much difuse lighting to apply to this materal 0-100</dd> <dt>ambient</dt> <dd>how much ambient lighting does this materal reflect 0-100</dd> <dt>specular</dt> <dd>How much specular reflection materal has 0-100</dd> </dl> <p></p> <h3>Example property file</h3> <p> <PRE> name=Back Pack dir=backpack format=raw endian=little pixels=ushort dim=512x512x373 voxeldim=0.9766, 0.9766, 1.25 sequence=1file looks=clean,clay,black black.opacity = { {255, 0},{259, 255}}; black.color = {{255, 0xff0000, 10, 10, 20},{259, 0xfff5e4, 10, 10, 20}}; clay.opacity = { {27, 0}, {92, 0}, {629, 0}, {1203, 255}, {2343, 255}} clay.color = {{27, 0xe1ac96, 30, 70, 20}, {92, 0xbc703a, 30, 70, 20}, {629, 0xe29c9d, 30, 70, 20}, {1203, 0xe1af97, 30, 34, 20}, {2343, 0xdebd9d, 30, 38, 20}} clean.opacity = {{27, 0}, {92, 0}, {1433, 0}, {1691, 255}, {1734, 255}} clean.color = {{27, 0xe1ac96, 30, 70, 20}, {92, 0xe1ac96, 30, 70, 20}, {629, 0xed1904, 30, 70, 0}, {1611, 0xaeb3c9, 19, 42, 44}, {1826, 0xe7e7ea, 19, 44, 41}} </PRE> </p>