vtkKWMimxCreateExtrudeFEMeshGroup.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003 Program:   MIMX Meshing Toolkit
00004 Module:    $RCSfile: vtkKWMimxCreateExtrudeFEMeshGroup.h,v $
00005 Language:  C++
00006 Date:      $Date: 2008/06/19 17:53:41 $
00007 Version:   $Revision: 1.11 $
00008 
00009  Musculoskeletal Imaging, Modelling and Experimentation (MIMX)
00010  Center for Computer Aided Design
00011  The University of Iowa
00012  Iowa City, IA 52242
00013  http://www.ccad.uiowa.edu/mimx/
00014  
00015 Copyright (c) The University of Iowa. All rights reserved.
00016 See MIMXCopyright.txt or http://www.ccad.uiowa.edu/mimx/Copyright.htm for details.
00017 
00018 This software is distributed WITHOUT ANY WARRANTY; without even 
00019 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
00020 PURPOSE.  See the above copyright notices for more information.
00021 
00022 =========================================================================*/
00023 // .NAME vtkKWMimxCreateExtrudeFEMeshGroup - a tabbed notebook of UI pages
00024 // .SECTION Description
00025 // The class is derived from vtkKWCompositeWidget. It contains 5 pages 1) Image
00026 // 2) Surface 3) Building Block 4) F E Mesh 5) Mesh quality. Each page inturn
00027 // contains a list of options specific to a page.
00028 
00029 #ifndef __vtkKWMimxCreateExtrudeFEMeshGroup_h
00030 #define __vtkKWMimxCreateExtrudeFEMeshGroup_h
00031 
00032 #include "vtkKWMimxGroupBase.h"
00033 #include "vtkKWMimxFEMeshMenuGroup.h"
00034 #include "vtkKWMimxMainWindow.h"
00035 #include "vtkBuildingBlockWin32Header.h"
00036 
00037 
00038 class vtkKWMenuButtonWithLabel;
00039 class vtkKWCheckButtonWithLabel;
00040 class vtkKWEntryWithLabel;
00041 class vtkKWFrameWithLabel;
00042 class vtkKWPushButton;
00043 class vtkKWRadioButtonSet;
00044 
00045 class vtkLinkedListWrapper;
00046 class vtkIntArray;
00047 class vtkKWComboBoxWithLabel;
00048 class vtkKWRenderWidget;
00049 class vtkActor;
00050 class vtkMimxSelectCellsWidgetFEMesh;
00051 class vtkMimxMeshActor;
00052 
00053 class vtkKWMimxNodeElementNumbersGroup;
00054 class vtkKWMimxDefineElSetGroup;
00055 
00056 class VTK_BUILDINGBLOCK_EXPORT vtkKWMimxCreateExtrudeFEMeshGroup : public vtkKWMimxGroupBase
00057 {
00058 public:
00059   static vtkKWMimxCreateExtrudeFEMeshGroup* New();
00060   vtkTypeRevisionMacro(vtkKWMimxCreateExtrudeFEMeshGroup,vtkKWCompositeWidget);
00061   void PrintSelf(ostream& os, vtkIndent indent);
00062   virtual void Update();
00063   virtual void UpdateEnableState();
00064   vtkGetObjectMacro(MimxMainWindow, vtkKWMimxMainWindow);
00065   vtkSetObjectMacro(MimxMainWindow, vtkKWMimxMainWindow);
00066 
00067   void CreateExtrudeFEMeshDoneCallback();
00068   void CreateExtrudeFEMeshCancelCallback();
00069   int CreateExtrudeFEMeshApplyCallback();
00070 
00071   void UpdateObjectLists();
00072   void ShowNormalsCallback(int State);
00073   void SelectionChangedCallback(const char*);
00074   int SelectElementsThroughCallback();
00075   int SelectElementsSurfaceCallback();
00076   void VTKInteractionCallback();
00077   vtkMimxMeshActor* GetSelectedObject();
00078   void DefineElementSetCallback();
00079 protected:
00080         vtkKWMimxCreateExtrudeFEMeshGroup();
00081         ~vtkKWMimxCreateExtrudeFEMeshGroup();
00082         virtual void CreateWidget();
00083   vtkKWComboBoxWithLabel *ObjectListComboBox;
00084   vtkKWMimxMainWindow *MimxMainWindow;
00085   vtkKWEntryWithLabel *ExtrusionLength;
00086   vtkKWEntryWithLabel *NumberOfDivisions;
00087   vtkKWCheckButtonWithLabel *ShowNormalsCheckButton;
00088   vtkActor *NormalsActor;
00089   vtkKWMimxNodeElementNumbersGroup *NodeElementNumbersGroup;
00090   vtkKWRadioButtonSet *SelectSubsetRadiobuttonSet;
00091   vtkMimxSelectCellsWidgetFEMesh *SelectCellsWidget;
00092   vtkKWPushButton *DefineElSetButton;
00093   int MaxEleNum;
00094   int MaxNodeNum;
00095   vtkKWMimxDefineElSetGroup *DefineElementSetDialog;
00096 private:
00097   vtkKWMimxCreateExtrudeFEMeshGroup(const vtkKWMimxCreateExtrudeFEMeshGroup&); // Not implemented
00098   void operator=(const vtkKWMimxCreateExtrudeFEMeshGroup&); // Not implemented
00099  };
00100 
00101 #endif
00102 

Generated on 6 Apr 2011 for Slicer3 by  doxygen 1.6.1