]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Debian 6 compilation
authorsln <sln@opencascade.com>
Fri, 22 Jun 2012 11:54:25 +0000 (11:54 +0000)
committersln <sln@opencascade.com>
Fri, 22 Jun 2012 11:54:25 +0000 (11:54 +0000)
12 files changed:
src/CAM/CAM_Application.cxx
src/CAM/Makefile.am
src/Qtx/QtxMultiAction.cxx
src/Qtx/QtxSplash.cxx
src/Qtx/QtxWorkstack.cxx
src/SUIT/SUIT_DataObject.cxx
src/SVTK/SALOME_Actor.cxx
src/SVTK/SALOME_Actor.h
src/SVTK/SVTK_Actor.cxx
src/SVTK/SVTK_Renderer.cxx
src/SVTK/SVTK_Renderer.h
src/VTKViewer/VTKViewer_GeometryFilter.cxx

index 73d7ef7877482af3ebf359325295632bff7a3575..d70e80840ad4e6b057d85fd8aa83bd9b78518ad9 100755 (executable)
@@ -31,6 +31,8 @@
 #include <QApplication>
 #include <QRegExp>
 
+#include <stdio.h>
+
 #ifdef WIN32
 #include <windows.h>
 #else
index 3b80df3f8f7c93409d5a9ea74f50af1d1c3add77..44283644abe28f4a3ee78be0fef7aff2efcd0f2f 100755 (executable)
@@ -49,7 +49,7 @@ nodist_libCAM_la_SOURCES = $(MOC_FILES)
 
 nodist_salomeres_DATA = \
        CAM_msg_en.qm \
-       CAM_msg_en.qm
+       CAM_msg_fr.qm
 
 libCAM_la_CPPFLAGS = $(QT_INCLUDES) -I$(srcdir)/../SUIT -I$(srcdir)/../STD -I$(srcdir)/../Qtx
 libCAM_la_LDFLAGS  = $(QT_MT_LIBS)
index c46689ffb19e76fbdc2083aa08903b80fc68d2da..903e11798fcfc29a951de8f24799713bb1d33487 100644 (file)
@@ -84,7 +84,7 @@ protected:
       {
         QHelpEvent* help = static_cast<QHelpEvent*>( e );
         QWidget* w = QApplication::widgetAt( help->globalPos() );
-        if ( w && Qtx::isParent( w, this ) )
+        if ( w && w != this && Qtx::isParent( w, this ) )
         {
           QHelpEvent he( help->type(), w->mapFromGlobal( help->globalPos() ), help->globalPos() );
           QApplication::sendEvent( w, &he );
index 044d8fe88c9592a667618219601f618aef34d374..3fb5bbb0f0097d4ed32436e60a05efa3780a6bce 100644 (file)
@@ -28,6 +28,8 @@
 #include <QMessageBox>
 #include <QDesktopWidget>
 
+#include <stdio.h>
+
 /*!
   \class ProgressEvent
   \internal
index 5ad12139ce17a753ace46f9323d3f7c5736654b5..e7849756a3712db386ee470cc4c3eef36568c00c 100644 (file)
@@ -38,6 +38,8 @@
 #include <QStackedWidget>
 #include <QAbstractButton>
 
+#include <stdio.h>
+
 /*!
   \class QtxWorkstackArea::WidgetEvent
   \internal
index bb64cafa42846d37ff866b29a27176b984b42e16..ebd6c74b45d471156f7f20abe9a03dfc74aaaa58 100755 (executable)
@@ -23,6 +23,8 @@
 #include "SUIT_DataObject.h"
 #include "SUIT_DataObjectKey.h"
 
+#include <stdio.h>
+
 SUIT_DataObject::Signal* SUIT_DataObject::mySignal = 0;
 
 /*!
index 589dee0aa78ed189f61eb5423e113cb86d075a86..9583cc3f26ac542eeadcff1dd4b8fe0a4679064f 100644 (file)
@@ -163,6 +163,7 @@ SALOME_Actor
 ::SALOME_Actor():
   myRenderer(NULL),
   myInteractor(NULL),
+  myPrehighlightedCellId(-1),
   mySelectionMode(ActorSelection),
   myPreHighlightActor(SVTK_Actor::New()),
   myHighlightActor(SVTK_Actor::New()),
@@ -448,6 +449,7 @@ SALOME_Actor
               SVTK_SelectionEvent* theSelectionEvent,
               bool theIsHighlight)
 {
+  myPrehighlightedCellId = -1;
   if ( !GetPickable() )
     return false;
       
@@ -517,6 +519,7 @@ SALOME_Actor
        if ( anObjId >= 0 ) {
          myIsPreselected = CheckDimensionId(aSelectionMode,this,anObjId);
          if(myIsPreselected){
+           myPrehighlightedCellId = anObjId;
            const TColStd_IndexedMapOfInteger& aMapIndex = myPreHighlightActor->GetMapIndex();
            int anExtent = aMapIndex.Extent();
            anIsChanged |= (anExtent == 0 || anExtent > 0 && anObjId != aMapIndex(1));
@@ -594,6 +597,16 @@ SALOME_Actor
   return anIsChanged;
 }
 
+/*!
+  Returns id of the prehighlighted cell (-1 if no cell is highlighted)
+*/
+int
+SALOME_Actor
+::GetPrehighlightedCellId() const
+{
+  return myPrehighlightedCellId;
+}
+
 /*!
   To process highlight (called from SVTK_InteractorStyle)
 */
index e51d4eb4383edec3d8e9ac12ab95936c308d00ae..8c635f5f4d78a5ebcd95232a14e56717e695be8a 100644 (file)
@@ -171,6 +171,11 @@ class SVTK_EXPORT SALOME_Actor : public VTKViewer_Actor
               SVTK_SelectionEvent* theSelectionEvent,
               bool theIsHighlight);
 
+  //! Returns id of the prehighlighted cell (-1 if no cell is highlighted)
+  virtual
+  int
+  GetPrehighlightedCellId() const;
+
   //! To process highlight (called from #SVTK_InteractorStyle)
   virtual 
   bool
@@ -214,6 +219,8 @@ class SVTK_EXPORT SALOME_Actor : public VTKViewer_Actor
 
   Handle(SALOME_InteractiveObject) myIO;
 
+  int myPrehighlightedCellId;
+
   SALOME_Actor();
   ~SALOME_Actor();
 
index 11bfa36c0e391fc722670fded5d1736b8e6fbbfd..400067055d55ffc3a56967f6b66c30285717474a 100644 (file)
@@ -144,7 +144,7 @@ SVTK_Actor
       int aPartId = theMapIndex( i+1 );
       if(vtkFloatingPointType* aCoord = theMapActor->GetNodeCoord(aPartId)){
        aPoints->SetPoint(i,aCoord);
-       myUnstructuredGrid->InsertNextCell(VTK_VERTEX,1,&i);
+       myUnstructuredGrid->InsertNextCell(VTK_VERTEX,1,(vtkIdType*)&i);
       }
     }
     myUnstructuredGrid->SetPoints(aPoints);
index cab5ca695e67649dce67d9cff6276d5d3f4bd29f..c2fd4ea62cede20ed9e1e0827bc2981787a512f7 100644 (file)
 #include "VTKViewer_Transform.h"
 #include "VTKViewer_Utilities.h"
 
-#include <vtkCamera.h>
-#include <vtkRenderer.h>
-#include <vtkTextProperty.h>
-#include <vtkObjectFactory.h>
+#include <vtkAbstractVolumeMapper.h>
 #include <vtkCallbackCommand.h>
-
+#include <vtkCamera.h>
+#include <vtkDataSet.h>
+#include <vtkGenericCell.h>
+#include <vtkMapper.h>
 #include <vtkPicker.h>
 #include <vtkPointPicker.h>
-#include <vtkCellPicker.h>
-
 #include <vtkProperty.h>
+#include <vtkRenderer.h>
+#include <vtkTextProperty.h>
+#include <vtkObjectFactory.h>
 
 // undefining min and max because CASCADE's defines them and
 // it clashes with std::min(), std::max() included in utilities.h
 #undef min
 #undef max
 
-
 vtkStandardNewMacro(SVTK_Renderer);
+vtkStandardNewMacro(SVTK_CellPicker);
 
 /*!
   Constructor
@@ -67,7 +68,7 @@ SVTK_Renderer
   myPriority(0.0),
   myEventCallbackCommand(vtkCallbackCommand::New()),
   myPointPicker(vtkPointPicker::New()),
-  myCellPicker(vtkCellPicker::New()),
+  myCellPicker(SVTK_CellPicker::New()),
   myPointRectPicker(SVTK_RectPicker::New()),
   myCellRectPicker(SVTK_RectPicker::New()),
   myPreHighlightProperty(vtkProperty::New()),
@@ -751,3 +752,108 @@ SVTK_Renderer
   aCamera->SetFocalPoint(0,0,0);
   this->OnFitAll();
 }
+
+/*!
+  SVTK_CellPicker constructor
+*/
+SVTK_CellPicker::SVTK_CellPicker()
+{
+  this->Cell = vtkGenericCell::New();
+}
+
+/*!
+  SVTK_CellPicker destructor
+*/
+SVTK_CellPicker::~SVTK_CellPicker()
+{
+  this->Cell->Delete();
+}
+
+/*!
+  Redefined virtual method of the vtkCellPicker class
+*/
+double SVTK_CellPicker::IntersectWithLine(double p1[3], double p2[3], double tol, 
+                                          vtkAssemblyPath *path, 
+                                          vtkProp3D *prop3D, 
+                                          vtkAbstractMapper3D *m)
+{
+  vtkIdType numCells, cellId, minCellId;
+  int i, minSubId, subId;
+  double x[3], tMin, t, pcoords[3], minXYZ[3], minPcoords[3];
+  vtkDataSet *input;
+  vtkMapper *mapper;
+  vtkAbstractVolumeMapper *volumeMapper;
+
+  // Get the underlying dataset
+  if ( (mapper=vtkMapper::SafeDownCast(m)) != NULL )
+    {
+    input = mapper->GetInput();
+    }
+  else if ( (volumeMapper=vtkAbstractVolumeMapper::SafeDownCast(m)) != NULL )
+    {
+    input = volumeMapper->GetDataSetInput();
+    }
+  else
+    {
+    return VTK_DOUBLE_MAX;
+    }
+
+  if ( (numCells = input->GetNumberOfCells()) < 1 )
+    {
+    return 2.0;
+    }
+
+  // Intersect each cell with ray.  Keep track of one closest to
+  // the eye (within the tolerance tol) and within the clipping range). 
+  // Note that we fudge the "closest to" (tMin+this->Tolerance) a little and
+  // keep track of the cell with the best pick based on parametric
+  // coordinate (pick the minimum, maximum parametric distance). This 
+  // breaks ties in a reasonable way when cells are the same distance 
+  // from the eye (like cells lying on a 2D plane).
+  //
+  minCellId = -1;
+  minSubId = -1;
+  pcoords[0] = pcoords[1] = pcoords[2] = 0;
+  double pDistMin=VTK_DOUBLE_MAX, pDist;
+  for (tMin=VTK_DOUBLE_MAX,cellId=0; cellId<numCells; cellId++) 
+    {
+    input->GetCell(cellId, this->Cell);
+
+    if ( this->Cell->IntersectWithLine(p1, p2, tol, t, x, pcoords, subId) 
+    && t <= (tMin+this->Tolerance) )
+      {
+      pDist = this->Cell->GetParametricDistance(pcoords);
+      // This is the only difference of this method from the vtkCellPicker's one
+      static double aTolerance = 1E-7;
+      //if ( pDist < pDistMin || (pDist == pDistMin && t < tMin ) )
+      if ( pDist < pDistMin || (pDist == pDistMin && t < tMin + aTolerance ) )
+        {
+        minCellId = cellId;
+        minSubId = subId;
+        for (i=0; i<3; i++)
+          {
+          minXYZ[i] = x[i];
+          minPcoords[i] = pcoords[i];
+          }
+        tMin = t;
+        pDistMin = pDist;
+//        cout << "cell id: " << minCellId << "\n";
+        }//if minimum, maximum
+      }//if a close cell
+    }//for all cells
+  
+  //  Now compare this against other actors.
+  //
+  if ( minCellId>(-1) && tMin < this->GlobalTMin ) 
+    {
+    this->MarkPicked(path, prop3D, m, tMin, minXYZ);
+    this->CellId = minCellId;
+    this->SubId = minSubId;
+    for (i=0; i<3; i++)
+      {
+      this->PCoords[i] = minPcoords[i];
+      }
+    vtkDebugMacro("Picked cell id= " << minCellId);
+    }
+  return tMin;
+}
index 8dbd981b2f9f66d2f4101633c206abbdd3931ac1..1b08d59658e75da60fe9e36aa27fcefd42b956ee 100644 (file)
@@ -34,6 +34,7 @@
 
 #include <vtkObject.h>
 #include <vtkSmartPointer.h>
+#include <vtkCellPicker.h>
 
 class vtkRenderer;
 class vtkCallbackCommand;
@@ -41,7 +42,6 @@ class vtkRenderWindowInteractor;
 
 class vtkPicker;
 class vtkPointPicker;
-class vtkCellPicker;
 class vtkProperty;
 
 class SVTK_RectPicker;
@@ -51,6 +51,7 @@ class VTKViewer_Transform;
 class SVTK_CubeAxesActor2D;
 class VTKViewer_Actor;
 class SVTK_Selector;
+class SVTK_CellPicker;
 
 #ifdef WIN32
 #pragma warning ( disable:4251 )
@@ -236,7 +237,7 @@ class SVTK_EXPORT SVTK_Renderer : public vtkObject
   //----------------------------------------------------------------------------
   // Highlight/ Prehighlight devices
   vtkSmartPointer<vtkPointPicker> myPointPicker;
-  vtkSmartPointer<vtkCellPicker> myCellPicker;
+  vtkSmartPointer<SVTK_CellPicker> myCellPicker;
 
   vtkSmartPointer<SVTK_RectPicker> myPointRectPicker;
   vtkSmartPointer<SVTK_RectPicker> myCellRectPicker;
@@ -252,6 +253,33 @@ class SVTK_EXPORT SVTK_Renderer : public vtkObject
   vtkFloatingPointType myBndBox[6];
 };
 
+/*! 
+  \class SVTK_CellPicker
+  The class is intended to redefine the IntersectWithLine()
+  to correct the mechanism of picking coincident cells
+*/
+class SVTK_CellPicker : public vtkCellPicker
+{
+public:
+  static SVTK_CellPicker* New();
+  vtkTypeMacro(SVTK_CellPicker,vtkCellPicker);
+
+protected:
+  SVTK_CellPicker();
+  ~SVTK_CellPicker();
+
+  virtual double IntersectWithLine(double p1[3], double p2[3], double tol, 
+                                   vtkAssemblyPath *path, vtkProp3D *p, 
+                                   vtkAbstractMapper3D *m);
+
+private:
+  vtkGenericCell *Cell; //used to accelerate picking
+
+private:
+  SVTK_CellPicker(const SVTK_CellPicker&);  // Not implemented.
+  void operator=(const SVTK_CellPicker&);  // Not implemented.
+};
+
 #ifdef WIN32
 //#pragma warning ( default:4251 )
 #endif
index 630b7870a1e836b28d9fa75356cc155a9e887bc6..cd83d7505c3d784b96b3908a04327ceedda537d4 100755 (executable)
@@ -350,7 +350,7 @@ VTKViewer_GeometryFilter
               {
               for ( i=0; i < numFacePts; i++)
                 aNewPts[i] = pts[faceVerts[i]];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -375,7 +375,7 @@ VTKViewer_GeometryFilter
               {
               for ( i=0; i < numFacePts; i++)
                 aNewPts[i] = pts[faceVerts[PixelConvert[i]]];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -400,7 +400,7 @@ VTKViewer_GeometryFilter
               {
               for ( i=0; i < numFacePts; i++)
                 aNewPts[i] = pts[faceVerts[i]];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -430,7 +430,7 @@ VTKViewer_GeometryFilter
               {
               for ( i=0; i < numFacePts; i++)
                 aNewPts[i] = pts[faceVerts[i]];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -460,7 +460,7 @@ VTKViewer_GeometryFilter
               {
               for ( i=0; i < numFacePts; i++)
                 aNewPts[i] = pts[faceVerts[i]];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -489,7 +489,7 @@ VTKViewer_GeometryFilter
              for (i=0; i < pts->GetNumberOfIds(); i+=2) {
                aNewPts[0] = pts->GetId(i);
                aNewPts[1] = pts->GetId(i+1);
-               newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+               newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
                if(myStoreMapping)
                  myVTK2ObjIds.push_back(cellId);
                outputCD->CopyData(cd,cellId,newCellId);
@@ -503,7 +503,7 @@ VTKViewer_GeometryFilter
                aNewPts[0] = pts->GetId(i);
                aNewPts[1] = pts->GetId(i+1);
                aNewPts[2] = pts->GetId(i+2);
-               newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+               newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
                if(myStoreMapping)
                  myVTK2ObjIds.push_back(cellId);
                outputCD->CopyData(cd,cellId,newCellId);
@@ -522,7 +522,7 @@ VTKViewer_GeometryFilter
                    aNewPts[0] = pts->GetId(i);
                    aNewPts[1] = pts->GetId(i+1);
                    aNewPts[2] = pts->GetId(i+2);
-                   newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+                   newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
                    if(myStoreMapping)
                      myVTK2ObjIds.push_back(cellId);
                    outputCD->CopyData(cd,cellId,newCellId);
@@ -544,7 +544,7 @@ VTKViewer_GeometryFilter
              aNewPts[2] = pts[1];
              aNewPts[1] = pts[2];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -562,7 +562,7 @@ VTKViewer_GeometryFilter
              aNewPts[4] = pts[2];
              aNewPts[5] = pts[5];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -582,7 +582,7 @@ VTKViewer_GeometryFilter
              aNewPts[6] = pts[3];
              aNewPts[7] = pts[7];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -601,7 +601,7 @@ VTKViewer_GeometryFilter
              aNewPts[4] = pts[2];
              aNewPts[5] = pts[6];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -615,7 +615,7 @@ VTKViewer_GeometryFilter
              aNewPts[4] = pts[1];
              aNewPts[5] = pts[4];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -629,7 +629,7 @@ VTKViewer_GeometryFilter
              aNewPts[4] = pts[2];
              aNewPts[5] = pts[5];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -643,7 +643,7 @@ VTKViewer_GeometryFilter
              aNewPts[4] = pts[0];
              aNewPts[5] = pts[6];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -662,7 +662,7 @@ VTKViewer_GeometryFilter
              aNewPts[3] = pts[7];
              aNewPts[4] = pts[2];
              aNewPts[5] = pts[8];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -675,7 +675,7 @@ VTKViewer_GeometryFilter
              aNewPts[3] = pts[10];
              aNewPts[4] = pts[5];
              aNewPts[5] = pts[11];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -691,7 +691,7 @@ VTKViewer_GeometryFilter
              aNewPts[5] = pts[11];
              aNewPts[6] = pts[3];
              aNewPts[7] = pts[12];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -706,7 +706,7 @@ VTKViewer_GeometryFilter
              aNewPts[5] = pts[14];
              aNewPts[6] = pts[2];
              aNewPts[7] = pts[7];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -721,7 +721,7 @@ VTKViewer_GeometryFilter
              aNewPts[5] = pts[13];
               aNewPts[6] = pts[1];
               aNewPts[7] = pts[6];
-              newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+              newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
               outputCD->CopyData(cd,cellId,newCellId);
@@ -741,7 +741,7 @@ VTKViewer_GeometryFilter
              aNewPts[6] = pts[4];
              aNewPts[7] = pts[16];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -757,7 +757,7 @@ VTKViewer_GeometryFilter
              aNewPts[6] = pts[5];
              aNewPts[7] = pts[17];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -773,7 +773,7 @@ VTKViewer_GeometryFilter
              aNewPts[6] = pts[6];
              aNewPts[7] = pts[18];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -789,7 +789,7 @@ VTKViewer_GeometryFilter
              aNewPts[6] = pts[7];
              aNewPts[7] = pts[19];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -805,7 +805,7 @@ VTKViewer_GeometryFilter
              aNewPts[6] = pts[3];
              aNewPts[7] = pts[11];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);
              
@@ -821,7 +821,7 @@ VTKViewer_GeometryFilter
              aNewPts[6] = pts[7];
              aNewPts[7] = pts[15];
              
-             newCellId = output->InsertNextCell(aCellType,numFacePts,aNewPts);
+             newCellId = output->InsertNextCell(aCellType,numFacePts,(vtkIdType*)aNewPts);
              if(myStoreMapping)
                myVTK2ObjIds.push_back(cellId);