/** Constructor. */ public GLRadialHierarchy(IGLCanvas glCanvas, ViewFrustum viewFrustum) { super(glCanvas, viewFrustum, VIEW_TYPE, VIEW_NAME); ArrayList<SelectionType> alSelectionTypes = new ArrayList<SelectionType>(); alSelectionTypes.add(SelectionType.NORMAL); alSelectionTypes.add(SelectionType.MOUSE_OVER); alSelectionTypes.add(SelectionType.SELECTION); renderStyle = new RadialHierarchyRenderStyle(viewFrustum); renderStyle.setMinViewDimensions( MIN_DISPLAY_WIDTH + MIN_PIXELS_PER_DISPLAYED_LEVEL * DISP_HIER_DEPTH_DEFAULT, MIN_DISPLAY_HEIGHT + MIN_PIXELS_PER_DISPLAYED_LEVEL * DISP_HIER_DEPTH_DEFAULT, this); hashPartialDiscs = new HashMap<Integer, PartialDisc>(); partialDiscTree = new Tree<PartialDisc>(); // iMaxDisplayedHierarchyDepth = DISP_HIER_DEPTH_DEFAULT; navigationHistory = new NavigationHistory(this, null); drawingController = new DrawingController(this, navigationHistory); drawingStrategyManager = new DrawingStrategyManager(dataDomain.getTable().getColorMapper()); navigationHistory.setDrawingController(drawingController); iUpwardNavigationSliderButtonID = 0; iUpwardNavigationSliderID = 0; iUpwardNavigationSliderBodyID = 0; glKeyListener = new GLRadialHierarchyKeyListener(this); bIsAnimationActive = false; // bIsNewSelection = false; }
/** * Sets the maximum displayed hierarchy depth. * * @param iMaxDisplayedHierarchyDepth */ public void setMaxDisplayedHierarchyDepth(int iMaxDisplayedHierarchyDepth) { if (this.iMaxDisplayedHierarchyDepth != iMaxDisplayedHierarchyDepth) { renderStyle.setMinViewDimensions( MIN_DISPLAY_WIDTH + MIN_PIXELS_PER_DISPLAYED_LEVEL * iMaxDisplayedHierarchyDepth, MIN_DISPLAY_HEIGHT + MIN_PIXELS_PER_DISPLAYED_LEVEL * iMaxDisplayedHierarchyDepth, this); bIsNewSelection = false; this.iMaxDisplayedHierarchyDepth = iMaxDisplayedHierarchyDepth; navigationHistory.setCurrentMaxDisplayedHierarchyDepth(iMaxDisplayedHierarchyDepth); setDisplayListDirty(); } }