Fovia's .NET Client/Server API
|
Static Public Member Functions | |
static void | clipLineToPlane (VECTOR3D line[], PLANEEQF plane) |
static void | clipLineToPlanes (VECTOR3D line[], PLANEEQF planes[]) |
static VECTOR3D[] | clipLineToRectangle (VECTOR3D line[], VECTOR3D rect[]) |
static boolean | cutPlaneAffectsVolume (PLANEEQF plane, VECTOR3D vbp[], double fudgeFactor) |
static RENDER_PARAMS | DICOMRefToFovia (hdrcDICOMImageDesc desc, double spacingX, VECTOR3D volumeOffset) |
static double | distanceToSlabCenter (RENDER_PARAMS rp, VOLUME_DATA_PARAMS vdp) |
static void | drawObscuredLines (Graphics g, hdrcRenderEngineContext rec, VECTOR3D lines[][], int pixelsPerPoint[], Color visibleColor, Color obscuredColor, float zoom, double spacingX, MATRIX44D transform, SIZE imgSize, boolean bBehindPPVisible) |
static void | drawObscuredLines (Graphics g, hdrcRenderEngineContext rec, VECTOR3D lines[][], int pixelsPerPoint[], Color visibleColor, Color obscuredColor, float zoom, double spacingX, MATRIX44D transform, SIZE imgSize, boolean bBehindPPVisible, int renderType, double viewAngle) |
static void | drawOrientationCube (Graphics g, Color textCol, Color bgCol, int offsX, int offsY, int width, int height, RENDER_PARAMS rp) |
static hdrcDICOMImageDesc | foviaRefToDICOM (RENDER_PARAMS rp, double spacingX, VECTOR3D volumeOffset) |
static String | getBiasNameMedical (VECTOR3D dir) |
static VECTOR3D | getContributions (VECTOR3D vec) |
static double | getConvertedViewAngle (SIZE imgSize, double viewAngle) |
static Vector< VECTOR3D > | getCurvedLine (VECTOR3D points[], int pixelsPerSubdiv) |
static boolean | getHasSecondaryBias (double threshold, int primaryBias, VECTOR3D contributions) |
static VECTOR3D | getLineNormal (VECTOR3D points[], VECTOR3D look, int startIdx, int endIdx, double delta) |
static VECTOR3D[] | getLineOfIntersection (PLANEEQF p1, PLANEEQF p2) |
static VECTOR3D | getLineTangent (VECTOR3D points[], int startIdx, int endIdx, double delta) |
static double | getPercentageIntoVolume (MATRIX44D transform, VECTOR3D volumeBoxPoints[]) |
static double | getPercentageIntoVolume (VECTOR3D loc, VECTOR3D vecZ, VECTOR3D volumeBoxPoints[]) |
static double | getPercentageIntoVolume (MATRIX44D transform, boolean bUseSlabCenter, double slabThickness, VECTOR3D volumeBoxPoints[]) |
static double | getPercentageIntoVolume (VECTOR3D loc, VECTOR3D vecZ, boolean bUseSlabCenter, double slabThickness, VECTOR3D volumeBoxPoints[]) |
static double | getPixelsPerMillimeter (double spacingX, double zoom) |
static PLANEEQF | getPlaneEquation (VECTOR3D pt1, VECTOR3D pt2, VECTOR3D pt3) |
static PLANEEQF | getPlaneEquation (MATRIX44D transform) |
static VECTOR3D | getPointAtPercentageIntoVolume (double pct, VECTOR3D[] volumeBoxPoints, RENDER_PARAMS rp) |
static VECTOR3D | getPointAtPercentageIntoVolume (double pct, boolean bUseSlabCenter, VECTOR3D[] volumeBoxPoints, RENDER_PARAMS rp) |
static VECTOR3D | getPointLocation (hdrcIRenderParamsReceiver control, int x, int y) throws IOException |
static VECTOR3D | getPointOfIntersection (PLANEEQF p1, PLANEEQF p2, PLANEEQF p3) |
static int | getPrimaryBias (VECTOR3D contributions) |
static int | getSecondaryBias (int primaryBias, VECTOR3D contributions) |
static PLANEEQF[] | getVolumeBoxPlanes (VECTOR3D vbPoints[]) |
static VECTOR3D[] | getVolumeBoxPoints (VOLUME_DATA_PARAMS vdp) |
static VECTOR3D | getVolumeOffset (VECTOR3D firstSliceLoc, VECTOR3D lastSliceLoc, VOLUME_DATA_PARAMS vdp) |
static VECTOR3D | getVolumeOffset (boolean bCenterOfSliceIsSliceLocation, VECTOR3D firstSliceLoc, VECTOR3D lastSliceLoc, VOLUME_DATA_PARAMS vdp) |
static double | getZoomForPixelsPerMillimeter (double spacingX, double pixelsPerMilli) |
static VECTOR3D | intersectLineWithPlane (VECTOR3D pt1, VECTOR3D pt2, PLANEEQF pl, VECTOR3D plPt) |
static boolean | isPointVisible (VECTOR3D point, RAYSTOPINFO rsi, MATRIX44D transform, boolean bBehindPPVisible) |
static boolean | pointInPolygon (VECTOR3D polygon[], VECTOR3D point) |
static boolean | pointOnLine2D (VECTOR3D line[], VECTOR3D point, double tolerance) |
static VECTOR3D | renderImageLoc2VolumeCoordinates (int x, int y, MATRIX44D transform, SIZE imgSize, float zoom, VOLUME_DATA_PARAMS vdp) |
static void | rotatePointAroundVector (VECTOR3D pt, VECTOR3D axis, double rot) |
static void | setPercentageIntoVolume (double pct, hdrcIRenderParamsReceiver control, VECTOR3D volumeBoxPoints[]) throws IOException |
static void | setPercentageIntoVolume (double pct, boolean bUseSlabCenter, hdrcIRenderParamsReceiver control, VECTOR3D volumeBoxPoints[]) throws IOException |
static VECTOR3D | shootRayToPointInCenterOfView (hdrcIRenderParamsReceiver control) throws IOException |
static VECTOR3D | shootRayToPointInCenterOfView (hdrcIRenderParamsReceiver control, double percent) throws IOException |
static VECTOR3D | shootRayToPointLocation (hdrcIRenderParamsReceiver control, int x, int y) throws IOException |
static VECTOR3D | shootRayToPointLocation (hdrcIRenderParamsReceiver control, int x, int y, double percent) throws IOException |
static void | snapPointsToPlane (PLANEEQF plane, VECTOR3D points[]) |
static VECTOR3D | volume2ProjectionPlane (double x, double y, double z, float zoom, double spacingX, MATRIX44D transform, SIZE imgSize) |
static VECTOR3D | volume2ProjectionPlane (int renderType, double x, double y, double z, float zoom, double spacingX, MATRIX44D transform, SIZE imgSize, double convertedViewAngle) |
static VECTOR3D | volume2ProjectionPlaneParallel (double x, double y, double z, float zoom, double spacingX, MATRIX44D transform, SIZE imgSize) |
static VECTOR3D | volume2ProjectionPlanePerspective (double x, double y, double z, MATRIX44D transform, SIZE imgSize, double convertedViewAngle) |
Static Public Attributes | |
static final String | BIAS_NAMES_MEDICAL [] |
static final int | X_NEG = 1 |
static final int | X_POS = 0 |
static final int | Y_NEG = 3 |
static final int | Y_POS = 2 |
static final int | Z_NEG = 5 |
static final int | Z_POS = 4 |
Static Public Attributes inherited from com.fovia.hdrcsrv.hdrcDefines | |
static final int | CID_APPLY_AS_COLORIZATION_MAP = 66 |
static final int | CID_APPLY_VOLUMETRIC_SHADOW_MAP = 72 |
static final int | CID_AUTONAVIGATE = 29 |
static final int | CID_CHECK_CHANNEL = 23 |
static final int | CID_CREATE_IVOLUMESEGMENTATION = 26 |
static final int | CID_CREATE_POLYGONUTIL = 60 |
static final int | CID_CREATE_RENDER_ENGINE = 2 |
static final int | CID_CREATE_VERTEX_CALL_LIST = 53 |
static final int | CID_CREATE_VOLUME_OCTREE = 4 |
static final int | CID_CREATE_VOLUME_SHADOW = 74 |
static final int | CID_FAST_SWAP = 44 |
static final int | CID_FIND_PATH = 52 |
static final int | CID_FINISH_JOB = 16 |
static final int | CID_GET_COLORIZATION = 58 |
static final int | CID_GET_CURVED_REFORMAT = 43 |
static final int | CID_GET_DATA_HOLDER = 20 |
static final int | CID_GET_HISTOGRAM = 28 |
static final int | CID_GET_JOB_INFO = 15 |
static final int | CID_GET_RENDER_ENGINE_TF_COUNT = 65 |
static final int | CID_GET_RENDER_PARAMS = 6 |
static final int | CID_GET_SEGMENTATION = 30 |
static final int | CID_GET_TRANSFER_FUNCTION = 57 |
static final int | CID_GET_VISIBILITY_INFO = 39 |
static final int | CID_GET_VOLUME_DATA_PARAMS = 17 |
static final int | CID_GETDICOMTAGS = 35 |
static final int | CID_IS_RENDERING_FINISHED = 27 |
static final int | CID_IVOLUMESEGMENTATION_CALL = 25 |
static final int | CID_LOAD_DICOM_FILE_LIST = 33 |
static final int | CID_LOAD_PRESET = 9 |
static final int | CID_LOAD_RAW_FILES = 62 |
static final int | CID_LOAD_SERIES_FROM_DICOM_LIST = 34 |
static final int | CID_LOAD_VOLUME_DATA = 1 |
static final int | CID_OUTPUTDICOMIMAGES = 37 |
static final int | CID_POLYGONUTIL_CALL = 61 |
static final int | CID_PROJECT_POINT = 13 |
static final int | CID_PROJECT_VOLUMETRIC_SHADOW = 45 |
static final int | CID_RELEASE_ALL_SESSION_OBJECT = 55 |
static final int | CID_RELEASE_SESSION_OBJECT = 19 |
static final int | CID_RENDER = 7 |
static final int | CID_RENDER_SHADOW_LIGHT = 73 |
static final int | CID_RETRIEVE_DATA = 22 |
static final int | CID_SAVE_PRESET = 18 |
static final int | CID_SCAN_DICOM_DIRECTORY = 32 |
static final int | CID_SET_CLIENT_VERSION = 64 |
static final int | CID_SET_COLORIZATION = 59 |
static final int | CID_SET_COLORIZATION_COLORS = 51 |
static final int | CID_SET_COLORIZATION_ENABLED = 49 |
static final int | CID_SET_COLORIZATION_INDEX = 50 |
static final int | CID_SET_CURVED_MPR_PATH = 42 |
static final int | CID_SET_FAST_POLYGONS_ENABLED = 67 |
static final int | CID_SET_FRAMES_PER_PHASE = 48 |
static final int | CID_SET_PHASE = 47 |
static final int | CID_SET_RENDER_PARAMS = 5 |
static final int | CID_SET_SEG_BOUNDARIES = 70 |
static final int | CID_SET_SEGMENTATION = 31 |
static final int | CID_SET_TRANSFER_FUNCTION = 56 |
static final int | CID_SET_VIEW_MODE = 24 |
static final int | CID_SET_VOLUME_DATA = 3 |
static final int | CID_SET_VOLUME_DATA_4D = 46 |
static final int | CID_SETDICOMTAGS = 36 |
static final int | CID_SETRP_AND_RENDER = 8 |
static final int | CID_SETRP_RENDER_AND_SEND_PREV = 41 |
static final int | CID_SHOOT_RAY = 12 |
static final int | CID_SHOOT_RAY_FAST = 38 |
static final int | CID_SHOOT_RAY_GET_WALL = 69 |
static final int | CID_START_JOB = 14 |
static final int | CID_STORE_DATA = 21 |
static final int | CID_TESTFUNCTION = 63 |
static final int | CID_UPDATE_OCTREE = 68 |
static final int | CID_UPDATE_VERTEX_CALL_LISTS = 54 |
static final int | CID_VOLUME_SHADOW_CALL = 71 |
static final int | CID_WAIT_PREV_RENDER = 40 |
static final int | CM_DILATION = 5 |
static final int | CM_EROSION = 4 |
static final int | CM_MIN_MAX = 0 |
static final int | CM_MIN_MAX_BONE = 3 |
static final int | CM_MIN_MAX_SMART = 1 |
static final int | CM_MIN_MAX_SMART_EXPAND = 2 |
static final int | COLOR_MODEL_GRAYSCALE12 = COLOR_MODEL_GRAYSCALE8+1 |
static final int | COLOR_MODEL_GRAYSCALE8 = COLOR_MODEL_NONE+1 |
static final int | COLOR_MODEL_NONE = 0 |
static final int | COLOR_MODEL_RGB = COLOR_MODEL_GRAYSCALE12+1 |
static final int | COMPRESSION_TYPE_JPEG = COMPRESSION_TYPE_ZIP+1 |
static final int | COMPRESSION_TYPE_JPEG2000 = COMPRESSION_TYPE_STRETCH+1 |
static final int | COMPRESSION_TYPE_JPEG_RGB = COMPRESSION_TYPE_PNG+1 |
static final int | COMPRESSION_TYPE_NONE = 0 |
static final int | COMPRESSION_TYPE_PNG = COMPRESSION_TYPE_RLE+1 |
static final int | COMPRESSION_TYPE_RLE = COMPRESSION_TYPE_JPEG2000+1 |
static final int | COMPRESSION_TYPE_STRETCH = COMPRESSION_TYPE_JPEG+1 |
static final int | COMPRESSION_TYPE_ZIP = COMPRESSION_TYPE_NONE+1 |
static final int | CP_FRAGMENT_FORM_MASK = 0x0000C000 |
static final int | CP_FRAGMENT_FORM_SQUARE = 0x00004000 |
static final int | CP_FRAGMENT_FORM_STRIPE = 0x00008000 |
static final int | CP_FRAGMENT_ID_MASK = 0x000000FF |
static final int | CP_FRAGMENT_ID_SHIFT = 0 |
static final int | CP_FRAGMENT_NONE = 0x0 |
static final int | CP_FRAGMENT_PACKING_FRAGMENT_ONLY = 0x00001000 |
static final int | CP_FRAGMENT_PACKING_MASK = 0x0000F000 |
static final int | CP_FRAGMENT_PACKING_SHIFT = 11 |
static final int | CP_FRAGMENT_PACKING_TYPE_MASK = 0x00003000 |
static final int | CP_FRAGMENT_PACKING_WHOLE_IMAGE = 0x00000000 |
static final int | CP_FRAGMENT_SQUARE_SIZE = 256 |
static final int | CP_FRAGMENT_STRIPE_SIZE = 128 |
static final int | CP_FRAGMENT_VALID = 0x70000000 |
static final int | CULL_MODE_BACK = 1 |
static final int | CULL_MODE_BACK_INV = 2 |
static final int | CULL_MODE_NONE = 0 |
static final int | CURVED_MPR_TYPE_X_IS_CURVED = CURVED_MPR_TYPE_X_IS_CURVED_TRILINEAR |
static final int | CURVED_MPR_TYPE_X_IS_CURVED_TRICUBIC = CURVED_MPR_TYPE_Y_IS_CURVED_TRILINEAR+1 |
static final int | CURVED_MPR_TYPE_X_IS_CURVED_TRILINEAR = 0 |
static final int | CURVED_MPR_TYPE_Y_IS_CURVED = CURVED_MPR_TYPE_Y_IS_CURVED_TRILINEAR |
static final int | CURVED_MPR_TYPE_Y_IS_CURVED_TRICUBIC = CURVED_MPR_TYPE_X_IS_CURVED_TRICUBIC+1 |
static final int | CURVED_MPR_TYPE_Y_IS_CURVED_TRILINEAR = CURVED_MPR_TYPE_X_IS_CURVED_TRILINEAR+1 |
static final int | CUT_PLANE_MODE_MAX_DISTANCE = CUT_PLANE_MODE_STANDARD+1 |
static final int | CUT_PLANE_MODE_MIN_DISTANCE = CUT_PLANE_MODE_MAX_DISTANCE+1 |
static final int | CUT_PLANE_MODE_STANDARD = 0 |
static final int | CUT_PLANE_STATUS_DISABLED = 0 |
static final int | CUT_PLANE_STATUS_ENABLED = CUT_PLANE_STATUS_DISABLED+1 |
static final int | CUT_PLANE_TYPE_NEGATIVE = CUT_PLANE_TYPE_POSITIVE+1 |
static final int | CUT_PLANE_TYPE_POSITIVE = 0 |
static final int | DEFAULT_RENDER_IMAGE_HEIGHT = 512 |
static final int | DEFAULT_RENDER_IMAGE_WIDTH = 512 |
static final int | DO_SLICE = 0 |
static final int | DT_BIG_ENDIAN = 2 |
static final int | DT_MONOCHROME_1 = 16 |
static final int | DT_REVERSE_BIT_ORDER = 4 |
static final int | DT_SIGNED = 1 |
static final int | DT_UPPER_BITS_DIRTY = 8 |
static final int | E_FAIL = 0x80004005 |
static final int | E_INVALIDARG = 0x80070057 |
static final int | E_NOINTERFACE = 0x80004002 |
static final int | E_NOTIMPL = 0x80004001 |
static final int | E_OUTOFMEMORY = 0x8007000E |
static final int | E_PENDING = 0x8000000A |
static final int | E_POINTER = 0x80004003 |
static final int | E_UNEXPECTED = 0x8000FFFF |
static final int | EROSION_DILATION_CLASSIC = 255 |
static final int | FHC_COMPLETE_VOLUME = 3 |
static final int | FHC_FIRST_LAYER = 2 |
static final int | FHC_SURFACE_ONLY = 1 |
static final int | FHC_WHOLE_VOLUME = 0 |
static final int | FPS_NO_CAP = 100000 |
static final int | IMAGE_TYPE_LUMINANCE12 = (2<<8)|2 |
static final int | IMAGE_TYPE_LUMINANCE16 = (3<<8)|2 |
static final int | IMAGE_TYPE_LUMINANCE8 = (1<<8)|1 |
static final int | IMAGE_TYPE_NONE = 0 |
static final int | IMAGE_TYPE_RGB = (4<<8)|3 |
static final int | IMAGE_TYPE_RGBA = (5<<8)|4 |
static final int | IMAGE_TYPE_RGBX = (6<<8)|4 |
static final int | LDO_DCM_UTF8 = 1002 |
static final int | LDO_DICOM_DIRECTORY = 1 |
static final int | LDO_DICOM_FILE_SET =3 |
static final int | LDO_FILE_SET = 4 |
static final int | LDO_MEMORY_BLOCK = 2 |
static final int | LDO_MEMORY_MAP_SET = 5 |
static final int | LDO_RAW_DATASET_PATH = 0 |
static final int | LDO_SEGY_DATASET_PATH =6 |
static final int | LIGHT_MODEL_BEAM = 0 |
static final int | LIGHT_MODEL_HEADLIGHT = LIGHT_MODEL_BEAM+1 |
static final int | LMM_ATTACHED_TO_CAMERA = 0 |
static final int | LMM_ATTACHED_TO_DATASET = 1 |
static final int | MAX_ALTERNATE_TRANSFER_FUNCTIONS = 7 |
static final int | MAX_CT_VALUE = 1024*4-1024 |
static final int | MAX_CUTPLANES = 16 |
static final int | MAX_DATASET_BIT_DEPTH = 16 |
static final int | MAX_DIMENSION_X = 4096 |
static final int | MAX_DIMENSION_Y = 4096 |
static final int | MAX_DIMENSION_Z = 4096 |
static final int | MAX_OPACITY_FUNCTION_VALUE = 1024*4 - 1 |
static final int | MAX_RENDER_IMAGE_HEIGHT = 8192 |
static final int | MAX_RENDER_IMAGE_WIDTH = 8192 |
static final int | MAX_RENDER_RANGE_POINTS = 50 |
static final int | MAX_RENDER_RANGES_PARAMS = 8 |
static final float | MAX_RENDER_ZOOM = 700.0f |
static final double | MAX_THIN_SLAB = 4096 |
static final int | MESH_UPDATE_ALL = 63 |
static final int | MESH_UPDATE_COLORS = 4 |
static final int | MESH_UPDATE_INDICES = 16 |
static final int | MESH_UPDATE_NORMALS = 2 |
static final int | MESH_UPDATE_SHADING = 8 |
static final int | MESH_UPDATE_TEX_COORDS = 32 |
static final int | MESH_UPDATE_VERTICES = 1 |
static final int | MIN_CT_VALUE = 0 -1024 |
static final int | MIN_OPACITY_FUNCTION_VALUE = 0 |
static final int | MIN_RENDER_IMAGE_HEIGHT = 64 |
static final int | MIN_RENDER_IMAGE_WIDTH = 64 |
static final float | MIN_RENDER_ZOOM = 0.125f |
static final double | MIN_THIN_SLAB = 0 |
static final int | PET_MARCHING_CUBES = 0 |
static final int | PPM_CALL_LISTS = (1<<0) |
static final int | PPM_NONE = 0 |
static final int | RENDER_ENGINE_ID_MIP = 3 |
static final int | RENDER_ENGINE_ID_MPR = 0 |
static final int | RENDER_ENGINE_ID_PAR = 1 |
static final int | RENDER_ENGINE_ID_PER = 2 |
static final int | RENDER_IMAGE_HEIGHT_STEP = 16 |
static final int | RENDER_IMAGE_WIDTH_STEP = 16 |
static final int | RENDER_QUALITY_BEST = RENDER_QUALITY_BETTER+1 |
static final int | RENDER_QUALITY_BETTER = RENDER_QUALITY_DRAFT+1 |
static final int | RENDER_QUALITY_DRAFT = RENDER_QUALITY_RAW+1 |
static final int | RENDER_QUALITY_NONE = 0 |
static final int | RENDER_QUALITY_PRINT = 0x7fffffff |
static final int | RENDER_QUALITY_RAW = RENDER_QUALITY_NONE+1 |
static final int | RENDER_RANGE_STATUS_DISABLED = RENDER_RANGE_STATUS_ENABLED+1 |
static final int | RENDER_RANGE_STATUS_ENABLED = 0 |
static final int | RENDER_RANGE_TYPE_AUTO_COLOR = RENDER_RANGE_TYPE_CATMUL+1 |
static final int | RENDER_RANGE_TYPE_BSPLINE = RENDER_RANGE_TYPE_LINES_END_COLOR+1 |
static final int | RENDER_RANGE_TYPE_CATMUL = RENDER_RANGE_TYPE_BSPLINE+1 |
static final int | RENDER_RANGE_TYPE_LINES = RENDER_RANGE_TYPE_NONE+1 |
static final int | RENDER_RANGE_TYPE_LINES_END_COLOR = RENDER_RANGE_TYPE_LINES+1 |
static final int | RENDER_RANGE_TYPE_NONE = 0 |
static final int | RENDER_STAGE_AUTO_IMPROVE = RENDER_STAGE_CURRENT+1 |
static final int | RENDER_STAGE_CURRENT = RENDER_STAGE_FINAL+1 |
static final int | RENDER_STAGE_FINAL = RENDER_STAGE_PROGR5+1 |
static final int | RENDER_STAGE_NONE = 0 |
static final int | RENDER_STAGE_PROGR0 = RENDER_STAGE_NONE+1 |
static final int | RENDER_STAGE_PROGR1 = RENDER_STAGE_PROGR0+1 |
static final int | RENDER_STAGE_PROGR2 = RENDER_STAGE_PROGR1+1 |
static final int | RENDER_STAGE_PROGR3 = RENDER_STAGE_PROGR2+1 |
static final int | RENDER_STAGE_PROGR4 = RENDER_STAGE_PROGR3+1 |
static final int | RENDER_STAGE_PROGR5 = RENDER_STAGE_PROGR4+1 |
static final int | RF_ALL = 0x7FFFFFFF |
static final int | RF_ALLOW_IMAGE_SMOOTH = (1<<2) |
static final int | RF_ALLOW_RENDER_CACHE = (1<<1) |
static final int | RF_CUT_PLANES_AFFECT_POLYGONS =(1 << 13) |
static final int | RF_DEFAULT = RF_ALLOW_IMAGE_SMOOTH|RF_USE_GRADIENTS|RF_USE_SLAB_MIP |
static final int | RF_DONT_NORMALIZE_TF = (1<<7) |
static final int | RF_FRONT_CLIPPING_PLANE_ENABLED = (1<<8) |
static final int | RF_LONG_TRIANGLE_FIX =(1 << 14) |
static final int | RF_MASK_DEFAULT = RF_ALLOW_IMAGE_SMOOTH|RF_USE_GRADIENTS|RF_USE_SLAB_MPR|RF_USE_SLAB_PAR|RF_USE_SLAB_MIP|RF_POLYGON_LINES_IN_SCREEN_SPACE |
static final int | RF_NONE = (0) |
static final int | RF_POLYGON_CROSS_SECTIONS =(1 << 12) |
static final int | RF_POLYGON_LINES_IN_SCREEN_SPACE =(1 << 10) |
static final int | RF_THICK_MODES_USE_TRANSFER_FUNCTION =(1 << 9) |
static final int | RF_THIN_MODES_OUTPUT_RGB =(1 << 15) |
static final int | RF_USE_GRADIENTS = (1<<3) |
static final int | RF_USE_SLAB_MIP = (1<<6) |
static final int | RF_USE_SLAB_MPR = (1<<4) |
static final int | RF_USE_SLAB_PAR = (1<<5) |
static final int | RF_VERTEX_COLOR_MAP =(1 << 11) |
static final int | RPM_ALL = 0x7FFFFFFF |
static final int | RPM_AMBIENCE = (1 <<30) |
static final int | RPM_BACK_COLOR = (1<<17) |
static final int | RPM_BRIGHTNESS = (1<<18) |
static final int | RPM_COLOR_MODEL = (1<<7) |
static final int | RPM_CROP_BOX = (1<<16) |
static final int | RPM_CUT_PLANES = (1<<23) |
static final int | RPM_DEFAULT = RPM_ALL |
static final int | RPM_DESIRED_FPS = (1<<10) |
static final int | RPM_FRONT_SLAB_POLYGON_TRANSPARENCY = (1 <<29) |
static final int | RPM_GRAD_INSEN_SLAB = (1<<15) |
static final int | RPM_LIGHT_MODEL = (1<<9) |
static final int | RPM_LIGHT_PARAMS = (1<<27) |
static final int | RPM_MIN_QUALITY_BIAS = (1<<28) |
static final int | RPM_NONE = (0) |
static final int | RPM_NUM_RENDERING_THREADS = (1<<25) |
static final int | RPM_PHONG_PARAMETERS = RPM_AMBIENCE | RPM_BRIGHTNESS | RPM_SHININESS | RPM_REFLECTION |
static final int | RPM_QUALITY = (1<<8) |
static final int | RPM_RAYCASTING_PRECISION = (1<<21) |
static final int | RPM_REAR_SLAB_POLYGON_TRANSPARENCY = (1 <<31) |
static final int | RPM_REFLECTION = (1<<20) |
static final int | RPM_RENDER_IMAGE_SIZE = (1<<24) |
static final int | RPM_RENDER_RANGE_MIN_MAX = (1<<11) |
static final int | RPM_RENDER_RANGES = (1<<12) |
static final int | RPM_RENDER_SAMPLES = (1<<22) |
static final int | RPM_RENDER_TYPE = (1<<0) |
static final int | RPM_SHININESS = (1<<19) |
static final int | RPM_SLAB_THICKNESS = (1<<14) |
static final int | RPM_STEREO_MODE = (1<<26) |
static final int | RPM_TRANSFORM = RPM_TRANSFORM_RSS|RPM_TRANSFORM_OFFSET|RPM_TRANSFORM_PC |
static final int | RPM_TRANSFORM_OFFSET = RPM_TRANSFORM_XPOS|RPM_TRANSFORM_YPOS|RPM_TRANSFORM_ZPOS |
static final int | RPM_TRANSFORM_PC = (1<<5) |
static final int | RPM_TRANSFORM_RSS = (1<<4) |
static final int | RPM_TRANSFORM_XPOS = (1<<1) |
static final int | RPM_TRANSFORM_YPOS = (1<<2) |
static final int | RPM_TRANSFORM_ZPOS = (1<<3) |
static final int | RPM_VIEW_ANGLE = (1<<13) |
static final int | RPM_ZOOM = (1<<6) |
static final int | RT_AUTO_FADED_MIP = (1<<18) |
static final int | RT_AUTO_MINIP = (1<<19) |
static final int | RT_AUTO_MIP = (1<<17) |
static final int | RT_BRUTE_FORCE_AVE = RT_THIN_AVE |
static final int | RT_BRUTE_FORCE_FMIP = RT_THIN_FMIP |
static final int | RT_BRUTE_FORCE_MINIP = RT_THIN_MINIP |
static final int | RT_BRUTE_FORCE_MIP = RT_THIN_MIP |
static final int | RT_MIP = RT_THICK_MIP |
static final int | RT_MPR_AXIAL = (1<<3) |
static final int | RT_MPR_CORONAL = (1<<5) |
static final int | RT_MPR_CURVED = (1<<13) |
static final int | RT_MPR_OBLIQUE = (1<<6) |
static final int | RT_MPR_SAGITTAL = (1<<4) |
static final int | RT_MPR_XY = (1<<0) |
static final int | RT_MPR_XZ = (1<<1) |
static final int | RT_MPR_YZ = (1<<2) |
static final int | RT_NONE = 0 |
static final int | RT_PARALLEL = (1<<7) |
static final int | RT_PERSPECTIVE = (1<<8) |
static final int | RT_RESERVED16 = (1<<16) |
static final int | RT_THICK_FADED_MIP = (1<<10) |
static final int | RT_THICK_MINIP = (1<<20) |
static final int | RT_THICK_MINIP_PERSPECTIVE = (1<<22) |
static final int | RT_THICK_MIP = (1<<9) |
static final int | RT_THICK_MIP_PERSPECTIVE = (1<<21) |
static final int | RT_THIN_AVE = (1<<14) |
static final int | RT_THIN_FMIP = (1<<12) |
static final int | RT_THIN_MINIP = (1<<15) |
static final int | RT_THIN_MIP = (1<<11) |
static final int | RT_XRAY = RT_THICK_FADED_MIP |
static final int | S_FALSE = 1 |
static final int | S_OK = 0 |
static final int | SEG_GRAN_1X1X1 = 0 |
static final int | SEG_GRAN_2X2X2 = 1 |
static final int | SEGMENTATION_TYPE_ADDITIVE = 0 |
static final int | SEGMENTATION_TYPE_SUBTRACTIVE = 1 |
static final int | SK_CUSTOM = 4 |
static final int | SK_MIN_MAX = 0 |
static final int | SK_MIN_MAX_BONE = 3 |
static final int | SK_MIN_MAX_GRADIENT = 1 |
static final int | SK_MIN_MAX_GRADIENT_EXPAND = 2 |
static final int | SMOOTH3D_NONE = 0 |
static final int | SMOOTH3D_TRICUBIC = 2 |
static final int | SMOOTH3D_TRILINEAR = 1 |
static final int | SPT_LAPLACIAN = 1 |
static final int | SPT_NONE = 0 |
static final int | ST_ADDITIVE = 0 |
static final int | ST_SUBTRACTIVE = 1 |
static final int | STEREO_MODE_LEFT_EYE = 1 |
static final int | STEREO_MODE_OFF = 0 |
static final int | STEREO_MODE_RIGHT_EYE = 2 |
static final int | THICK_TF_MIP_OPACITY = 500 |
static final int | TO_NONE = 0 |
static final int | TO_SHOW_COMMAND_ARGUMENTS = (1 << 2) |
static final int | TO_SHOW_COMMAND_DEBUG1 = (1 << 4) |
static final int | TO_SHOW_COMMAND_DEBUG2 = (1 << 5) |
static final int | TO_SHOW_COMMAND_DEBUG3 = (1 << 6) |
static final int | TO_SHOW_COMMAND_RESULTS = (1 << 3) |
static final int | TO_SHOW_COMMAND_TIME = (1 << 1) |
static final int | TO_SHOW_COMMANDS = (1 << 0) |
static final double | TRANSFER_FUNCTION_LOG_CORRECTION = 0.4 |
static final int | UPDATE_MODE_CLEAR = 0 |
static final int | UPDATE_MODE_CLEAR_BY_MASK = 10 |
static final int | UPDATE_MODE_CLEAR_MULTI_TF = UPDATE_MODE_SET_TF_2+1 |
static final int | UPDATE_MODE_CLEAR_NODES_ONLY = UPDATE_MODE_INVERT_MULTI_TF+1 |
static final int | UPDATE_MODE_INVERT = UPDATE_MODE_NEGATIVE+1 |
static final int | UPDATE_MODE_INVERT_MULTI_TF = UPDATE_MODE_CLEAR_MULTI_TF+1 |
static final int | UPDATE_MODE_NEGATIVE = UPDATE_MODE_POSITIVE+1 |
static final int | UPDATE_MODE_POSITIVE = UPDATE_MODE_CLEAR+1 |
static final int | UPDATE_MODE_REBUILD = UPDATE_MODE_INVERT+1 |
static final int | UPDATE_MODE_SET_TF_1 = UPDATE_MODE_REBUILD+1 |
static final int | UPDATE_MODE_SET_TF_2 = UPDATE_MODE_SET_TF_1+1 |
static final int | VCL_OPTIMIZE_DO_NOT_REMOVE = 0xFFFFFFFF |
static final int | VCL_TYPE_LINES = 1 |
static final int | VCL_TYPE_TRIANGLES = 0 |
static final int | VCLF_CUT_PLANES_AFFECT_POLYGONS =(1 << 0) |
static final int | VCLF_INVERT_MESH_GRADIENTS =(1 << 2) |
static final int | VCLF_NONE =(0 ) |
static final int | VCLF_PER_CALL_LIST_INTERSECTION_LINE_PARAMS =(1 << 1) |
static final int | VLT_DIRECTIONAL = 0 |
static final int | VLT_FRUSTRUM = 1 |
static final int | VM_VEWMPR = 0 |
static final int | VM_VIEW3D = 1 |
Utility class for functions that may be helpful when manipulating 3D volumes.
|
static |
Clips the line to the plane. If the line is completely on the back side of the plane, the function will set the value of line[0] and line[1] to null.
line | Array of length 2 that contains the two points for the line segment. |
plane | The plane to clip to. |
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.clipLineToPlanes().
|
static |
Placeholder()
References com.fovia.hdrc.utils.hdrc3DHelpers.clipLineToPlane().
|
static |
While it takes inand returns 3D vectors, this is a purely 2D function. Only X and Y are considered in calculations. null is returned if the line does not intersect with the rectangle. Note that this function will only work with axis-aligned rectangles. If you're rect isn't axis aligned, either write a new function or make it axis aligned via rotation.
line | Two points on the line in question. |
rect | Two points that define a rectangle. The ordering of the points should be top-left then bottom-right. |
|
static |
Cut plane use has a performance penalty if none of the volume is clipped. Use this function to verify that a cut plane is actually doing something.
plane | The plane to test |
vbp | Volume box points for the volume. See getVolumeBoxPoints(). |
fudgeFactor | Tolerance for determining if the cut plane is outside the volume. Greater values let cut planes closer to the volume be ignored |
References com.fovia.hdrcsrv.PLANEEQF.a, com.fovia.hdrcsrv.PLANEEQF.b, com.fovia.hdrcsrv.PLANEEQF.c, com.fovia.hdrcsrv.PLANEEQF.d, com.fovia.hdrcsrv.VECTOR3D.x, com.fovia.hdrcsrv.VECTOR3D.y, and com.fovia.hdrcsrv.VECTOR3D.z.
|
static |
Placeholder()
References com.fovia.hdrcsrv.VECTOR3D.cross(), com.fovia.hdrcsrv.hdrcDefines.RPM_TRANSFORM, and com.fovia.hdrcsrv.hdrcDefines.RPM_ZOOM.
|
static |
Placeholder()
References com.fovia.hdrcsrv.RENDER_PARAMS.SlabThickness.
|
static |
Draws the lines specified taking visibility into consideration.
g | Graphics context |
rec | Render engine in question |
lines | Array of point arrays that specify lines. |
pixelsPerPoint | The lines will be broken up to satisfy this number of pixels per point so that opacity information is precise. |
visibleColor | The color of the line where it is visible. |
obscuredColor | The color of the line where it is invisible. |
zoom | The current zoom level of the engine. |
spacingX | The spacing in the X direction for the data set. |
transform | The current transform on the engine. |
imgSize | The current render image size. |
bBehindPPVisible | Should points behind the projection plane be visible? |
References com.fovia.hdrcsrv.hdrcDefines.RT_PARALLEL.
|
static |
|
static |
Draws an orientation cube with the specified graphics context.
g | Graphics context to use for drawing. |
textCol | Color of the text on the cube. |
bgCol | Color of the cube faces. |
offsX | Offset in context to draw cube. |
offsY | Offset in context to draw cube. |
width | Width of cube. |
height | Height of cube. |
rp | Current state of the render control we wish to represent. |
References com.fovia.hdrcsrv.RENDER_PARAMS.Transform, com.fovia.hdrcsrv.VECTOR3D.x, com.fovia.hdrcsrv.VECTOR3D.y, and com.fovia.hdrcsrv.VECTOR3D.z.
|
static |
Placeholder()
References com.fovia.hdrcsrv.SIZE.cx, com.fovia.hdrcsrv.SIZE.cy, and com.fovia.hdrcsrv.RENDER_PARAMS.RenderImageSize.
|
static |
Really only a sample function. You'll probably want to implement something like this but more tailored to your application.
dir | VECTOR3D |
References com.fovia.hdrc.utils.hdrc3DHelpers.getContributions(), com.fovia.hdrc.utils.hdrc3DHelpers.getHasSecondaryBias(), com.fovia.hdrc.utils.hdrc3DHelpers.getPrimaryBias(), and com.fovia.hdrc.utils.hdrc3DHelpers.getSecondaryBias().
Each component of the return vector will be a number from 0-1 describing the contribution of that component in the vector percentage-wise
vec | VECTOR3D |
References com.fovia.hdrcsrv.VECTOR3D.x, com.fovia.hdrcsrv.VECTOR3D.y, and com.fovia.hdrcsrv.VECTOR3D.z.
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.getBiasNameMedical().
|
static |
Placeholder()
References com.fovia.hdrcsrv.SIZE.cx.
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.drawObscuredLines().
|
static |
Placeholder()
References com.fovia.hdrcsrv.VECTOR3D.length().
|
static |
Determines if you should show a secondary bias based upon the threshold you supply. A higher threshold will make the second bias more likely.
threshold | double |
primaryBias | Value returned by getPrimaryBias() |
contributions | Value returned by getContributions() |
References com.fovia.hdrcsrv.VECTOR3D.x, com.fovia.hdrcsrv.VECTOR3D.y, and com.fovia.hdrcsrv.VECTOR3D.z.
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.getBiasNameMedical().
|
static |
Placeholder()
References com.fovia.hdrc.utils.hdrc3DHelpers.getLineTangent().
|
static |
Adapted from a web site by Paul Bourke http://local.wasp.uwa.edu.au/~pbourke/geometry/planeplane/
Do note that this is a relatively expensive operation. It should not be done thousands of times per frame.
p1 | PLANEEQF |
p2 | PLANEEQF |
References com.fovia.hdrcsrv.PLANEEQF.a, com.fovia.hdrcsrv.PLANEEQF.b, com.fovia.hdrcsrv.PLANEEQF.c, com.fovia.hdrcsrv.PLANEEQF.d, com.fovia.hdrcsrv.VECTOR3D.scale(), com.fovia.hdrcsrv.VECTOR3D.x, com.fovia.hdrcsrv.VECTOR3D.y, and com.fovia.hdrcsrv.VECTOR3D.z.
|
static |
Placeholder()
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.getLineNormal().
|
static |
Returns the percentage into the volume of the current projection plane. 0% is when the projection plane is moved to include the backmost point in the volume box. 100% is when the projection plane is moved to include the frontmost point in the volume box. The returned result is not constrained to [0...100].
transform | MATRIX44D |
volumeBoxPoints | VOLUME_DATA_PARAMS |
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.getPercentageIntoVolume().
|
static |
Placeholder()
References com.fovia.hdrc.utils.hdrc3DHelpers.getPercentageIntoVolume().
|
static |
Placeholder()
References com.fovia.hdrc.utils.hdrc3DHelpers.getPercentageIntoVolume().
|
static |
Placeholder()
|
static |
Returns the pixels per millimeter given a volume spacing and current zoom.
spacingX | |
zoom |
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.getPointLocation(), and com.fovia.hdrc.utils.hdrc3DHelpers.renderImageLoc2VolumeCoordinates().
|
static |
Given three points in 3D space, this will return the plane equation for the plane they all lie upon.
pt1 | |
pt2 | |
pt3 |
References com.fovia.hdrcsrv.VECTOR3D.x, com.fovia.hdrcsrv.VECTOR3D.y, and com.fovia.hdrcsrv.VECTOR3D.z.
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.getVolumeBoxPlanes().
Returns the plane equation for a given projection plane position.
transform |
References com.fovia.hdrcsrv.PLANEEQF.b, and com.fovia.hdrcsrv.PLANEEQF.d.
|
static |
Placeholder()
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.setPercentageIntoVolume().
|
static |
Placeholder()
|
static |
|
static |
Placeholder()
|
static |
Returns the primary direciton that the vector is pointing.
contributions | Value returned by getContributions(); |
References com.fovia.hdrcsrv.VECTOR3D.x, com.fovia.hdrcsrv.VECTOR3D.y, and com.fovia.hdrcsrv.VECTOR3D.z.
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.getBiasNameMedical().
|
static |
Returns the second most significant axis
primaryBias | The value returned by getPrimaryBias() |
contributions | The value returned by getContributions() |
References com.fovia.hdrcsrv.VECTOR3D.x, com.fovia.hdrcsrv.VECTOR3D.y, and com.fovia.hdrcsrv.VECTOR3D.z.
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.getBiasNameMedical().
|
static |
Converts the points returned by getVolumeBoxPoints() to plane equations for each face of the box.
vbPoints |
References com.fovia.hdrc.utils.hdrc3DHelpers.getPlaneEquation().
|
static |
The order of point is as follows: -X,-Y,-Z / +X,-Y,-Z / -X,+Y,-Z / +X,+Y,-Z / -X,-Y,+Z / +X,-Y,+Z / -X,+Y,+Z / +X,+Y,+Z
Note: This function is not intended to be in real time code. Cache it if you'll be using it often. It always returns the same values for the same dataset anyway.
vdp | VOLUME_DATA_PARAMS |
References com.fovia.hdrcsrv.VOLUME_DATA_PARAMS.Dimension, com.fovia.hdrcsrv.VECTOR3L.x, com.fovia.hdrcsrv.VECTOR3L.y, and com.fovia.hdrcsrv.VECTOR3L.z.
|
static |
See overload of this function getVolumeOffset(boolean,VECTOR3D,VECTOR3D,VOLUME_DATA_PARAMS). This version calls that version direction with bCenterOfSliceIsSliceLocation set to true.
firstSliceLoc | |
lastSliceLoc | |
vdp |
|
static |
Returns the offset of the volume center from the origin in the patient system of coordinates. Since all Fovia renderings set the center of the volume to be 0,0,0, adding this value to any point in Fovia's coordinates will return the coordinate as it should be in the DICOM spec. Subtracting this value from the point will reverse the action.
bCenterOfSliceIsSliceLocation | If true, the slice location indicates the center of the slice. If false, the upper-left of the image is the location (DICOM standard). |
firstSliceLoc | DICOM Image Location tag for the first slice in the volume |
lastSliceLoc | DICOM Image Location tag for the last slice in the volume |
vdp |
|
static |
Returns the zoom needed on the current volume to set the specified pixels per millimeter.
spacingX | |
pixelsPerMilli |
|
static |
Determines the point where a line intersects a plane. Returns null if the line is parallel to the plane.
pt1 | First point on the line |
pt2 | Second point on the line |
pl | Plane to intersect with |
plPt | A point that exists on the plane |
References com.fovia.hdrcsrv.PLANEEQF.a, com.fovia.hdrcsrv.PLANEEQF.b, and com.fovia.hdrcsrv.PLANEEQF.c.
|
static |
Pass in a 3D point, the results of a shootray from the point on the screen that is a result of volume2ProjectionPlane() from the same 3D point, and the current transform for the projection plane.
References com.fovia.hdrcsrv.VECTOR3D.dot(), com.fovia.hdrcsrv.RAYSTOPINFO.VoxelValue, and com.fovia.hdrcsrv.RAYSTOPINFO.vtx.
|
static |
It's 3D parameters, but only the X and Y dimensions are considered
Adapted from code on http://local.wasp.uwa.edu.au/~pbourke/geometry/insidepoly/ Article by Paul Bourke. Algorithm by Randolph Franklin
polygon | VECTOR3D[] |
point | VECTOR3D |
References com.fovia.hdrcsrv.VECTOR3D.length(), com.fovia.hdrcsrv.VECTOR3D.x, and com.fovia.hdrcsrv.VECTOR3D.y.
|
static |
Placeholder()
References com.fovia.hdrcsrv.VECTOR3D.y.
|
static |
|
static |
Rotate the point pt around the vector axis.
pt | VECTOR3D |
axis | VECTOR3D |
rot | double |
References com.fovia.hdrcsrv.VECTOR3D.x, com.fovia.hdrcsrv.VECTOR3D.y, and com.fovia.hdrcsrv.VECTOR3D.z.
|
static |
Sets the control's projection to be the given percent into the volume box by translating along the current view direction.
pct | |
control | |
volumeBoxPoints |
IOException |
|
static |
Placeholder()
References com.fovia.hdrc.utils.hdrc3DHelpers.getPointAtPercentageIntoVolume(), and com.fovia.hdrcsrv.hdrcDefines.RPM_TRANSFORM_OFFSET.
|
static |
Placeholder()
|
static |
Placeholder()
References com.fovia.hdrcsrv.RAYSTOPINFO.vtx.
|
static |
Placeholder()
|
static |
Placeholder()
References com.fovia.hdrcsrv.RAYSTOPINFO.vtx.
|
static |
Puts all the specified points on the plane by adjusting their location along the plane normal.
plane | |
points |
References com.fovia.hdrcsrv.PLANEEQF.a, com.fovia.hdrcsrv.PLANEEQF.b, and com.fovia.hdrcsrv.PLANEEQF.c.
|
static |
Converts a 3D point in patient coordinates to a point on the screen. The returned value will have projection plane coordinates for x and y. In z offset from the projection plane is communicated. The extra parameters should be taken directly from the current RENDER_PARAMS, except for spacingX, which is the X spacing from the VOLUME_DATA_PARAMS.
x | double |
y | double |
z | double |
zoom | float |
spacingX | float |
transform | MATRIX44D |
imgSize | SIZE |
References com.fovia.hdrc.utils.hdrc3DHelpers.volume2ProjectionPlaneParallel().
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.drawObscuredLines().
|
static |
Placeholder()
References com.fovia.hdrcsrv.hdrcDefines.RT_PERSPECTIVE, com.fovia.hdrcsrv.hdrcDefines.RT_THICK_MINIP_PERSPECTIVE, com.fovia.hdrcsrv.hdrcDefines.RT_THICK_MIP_PERSPECTIVE, com.fovia.hdrc.utils.hdrc3DHelpers.volume2ProjectionPlaneParallel(), and com.fovia.hdrc.utils.hdrc3DHelpers.volume2ProjectionPlanePerspective().
|
static |
Placeholder()
References com.fovia.hdrcsrv.VECTOR3D.y.
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.volume2ProjectionPlane().
|
static |
Placeholder()
References com.fovia.hdrcsrv.VECTOR3D.length().
Referenced by com.fovia.hdrc.utils.hdrc3DHelpers.volume2ProjectionPlane().