mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2025-03-13 03:14:34 +05:00
code cleanup
This commit is contained in:
parent
6a221923f3
commit
1026c29d39
@ -86,8 +86,6 @@
|
|||||||
#include <OCCViewer_ViewPort3d.h>
|
#include <OCCViewer_ViewPort3d.h>
|
||||||
#include <OCCViewer_Utilities.h>
|
#include <OCCViewer_Utilities.h>
|
||||||
|
|
||||||
//MBS:
|
|
||||||
//#include <PV3DViewer_ViewModel.h>
|
|
||||||
#include <BRepBndLib.hxx>
|
#include <BRepBndLib.hxx>
|
||||||
#include <pqActiveObjects.h>
|
#include <pqActiveObjects.h>
|
||||||
#include <pqApplicationCore.h>
|
#include <pqApplicationCore.h>
|
||||||
@ -1766,7 +1764,7 @@ void GEOM_Displayer::Update( SALOME_PV3DPrs* prs )
|
|||||||
//
|
//
|
||||||
// specific processing for local coordinate system presentation
|
// specific processing for local coordinate system presentation
|
||||||
//
|
//
|
||||||
// NYI
|
// NYI - Update(PV3DPrs) for the local coordinate system
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -1789,120 +1787,40 @@ void GEOM_Displayer::Update( SALOME_PV3DPrs* prs )
|
|||||||
// if presentation is empty we try to create new one
|
// if presentation is empty we try to create new one
|
||||||
if ( pv3dPrs->IsNull() )
|
if ( pv3dPrs->IsNull() )
|
||||||
{
|
{
|
||||||
#if 0 // VTK
|
|
||||||
|
|
||||||
vtkNew<vtkNamedColors> colors;
|
|
||||||
|
|
||||||
std::array<std::array<double, 3>, 8> pts = {{{{XMin, YMin, ZMin}},
|
|
||||||
{{XMax, YMin, ZMin}},
|
|
||||||
{{XMax, YMax, ZMin}},
|
|
||||||
{{XMin, YMax, ZMin}},
|
|
||||||
{{XMin, YMin, ZMax}},
|
|
||||||
{{XMax, YMin, ZMax}},
|
|
||||||
{{XMax, YMax, ZMax}},
|
|
||||||
{{XMin, YMax, ZMax}}}};
|
|
||||||
// The ordering of the corner points on each face.
|
|
||||||
std::array<std::array<vtkIdType, 4>, 6> ordering = {{{{0, 3, 2, 1}},
|
|
||||||
{{4, 5, 6, 7}},
|
|
||||||
{{0, 1, 5, 4}},
|
|
||||||
{{1, 2, 6, 5}},
|
|
||||||
{{2, 3, 7, 6}},
|
|
||||||
{{3, 0, 4, 7}}}};
|
|
||||||
|
|
||||||
// We'll create the building blocks of polydata including data attributes.
|
|
||||||
vtkNew<vtkPolyData> cube;
|
|
||||||
vtkNew<vtkPoints> points;
|
|
||||||
vtkNew<vtkCellArray> polys;
|
|
||||||
vtkNew<vtkFloatArray> scalars;
|
|
||||||
|
|
||||||
// Load the point, cell, and data attributes.
|
|
||||||
for (auto i = 0ul; i < pts.size(); ++i)
|
|
||||||
{
|
|
||||||
points->InsertPoint(i, pts[i].data());
|
|
||||||
scalars->InsertTuple1(i, i);
|
|
||||||
}
|
|
||||||
for (auto&& i : ordering)
|
|
||||||
{
|
|
||||||
polys->InsertNextCell(vtkIdType(i.size()), i.data());
|
|
||||||
}
|
|
||||||
|
|
||||||
// We now assign the pieces to the vtkPolyData.
|
|
||||||
cube->SetPoints(points);
|
|
||||||
cube->SetPolys(polys);
|
|
||||||
cube->GetPointData()->SetScalars(scalars);
|
|
||||||
|
|
||||||
// Now we'll look at it.
|
|
||||||
vtkNew<vtkPolyDataMapper> cubeMapper;
|
|
||||||
cubeMapper->SetInputData(cube);
|
|
||||||
cubeMapper->SetScalarRange(cube->GetScalarRange());
|
|
||||||
vtkNew<vtkActor> cubeActor;
|
|
||||||
cubeActor->SetMapper(cubeMapper);
|
|
||||||
|
|
||||||
// The usual rendering stuff.
|
|
||||||
vtkNew<vtkCamera> camera;
|
|
||||||
camera->SetPosition(1, 1, 1);
|
|
||||||
camera->SetFocalPoint(0, 0, 0);
|
|
||||||
|
|
||||||
vtkNew<vtkRenderer> renderer;
|
|
||||||
vtkNew<vtkRenderWindow> renWin;
|
|
||||||
renWin->AddRenderer(renderer);
|
|
||||||
renWin->SetWindowName("Cube");
|
|
||||||
|
|
||||||
vtkNew<vtkRenderWindowInteractor> iren;
|
|
||||||
iren->SetRenderWindow(renWin);
|
|
||||||
|
|
||||||
renderer->AddActor(cubeActor);
|
|
||||||
renderer->SetActiveCamera(camera);
|
|
||||||
renderer->ResetCamera();
|
|
||||||
renderer->SetBackground(colors->GetColor3d("Cornsilk").GetData());
|
|
||||||
|
|
||||||
renWin->SetSize(600, 600);
|
|
||||||
|
|
||||||
// interact with data
|
|
||||||
renWin->Render();
|
|
||||||
iren->Start();
|
|
||||||
|
|
||||||
#else // PV
|
|
||||||
|
|
||||||
// Create a pipeline source with vtkPolyData output from a TopoDS_Shape
|
// Create a pipeline source with vtkPolyData output from a TopoDS_Shape
|
||||||
pqObjectBuilder* builder = pqApplicationCore::instance()->getObjectBuilder();
|
pqObjectBuilder* builder = pqApplicationCore::instance()->getObjectBuilder();
|
||||||
pqServer* activeServer = pqActiveObjects::instance().activeServer();
|
pqServer* activeServer = pqActiveObjects::instance().activeServer();
|
||||||
|
|
||||||
|
#define USE_CUBE_SOURCE
|
||||||
|
#ifdef USE_CUBE_SOURCE
|
||||||
pqPipelineSource* source = builder->createSource("sources", "CubeSource", activeServer);
|
pqPipelineSource* source = builder->createSource("sources", "CubeSource", activeServer);
|
||||||
|
#else
|
||||||
|
pqPipelineSource* source = builder->createSource("sources", "GeometryGenerator", activeServer);
|
||||||
|
#endif
|
||||||
if (!source) {
|
if (!source) {
|
||||||
MSGEL("ERR: VTK source not found");
|
MSGEL("ERR: VTK source not found");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
||||||
// On SourceCreated signal handler
|
|
||||||
vtkNew<vtkSMParaViewPipelineControllerWithRendering> controller;
|
|
||||||
pqView* activeView = pqActiveObjects::instance().activeView();
|
|
||||||
if (activeView)
|
|
||||||
{
|
|
||||||
if (source)
|
|
||||||
{
|
|
||||||
#if PARAVIEW_VERSION_MINOR <= 10
|
|
||||||
source->updatePipeline();
|
|
||||||
source->setModifiedState(pqProxy::UNMODIFIED);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
controller->Show(source->getSourceProxy(), 0, activeView->getViewProxy());//, "CADRepresentation");
|
|
||||||
}
|
|
||||||
activeView->render();
|
|
||||||
activeView->resetDisplay();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Set dimensions of bbox
|
// Set dimensions of bbox
|
||||||
vtkSMProxy* proxy = source->getProxy();
|
vtkSMProxy* proxy = source->getProxy();
|
||||||
|
#ifdef USE_CUBE_SOURCE
|
||||||
vtkSMPropertyHelper(proxy, "XLength").Set(XMax-XMin);
|
vtkSMPropertyHelper(proxy, "XLength").Set(XMax-XMin);
|
||||||
vtkSMPropertyHelper(proxy, "YLength").Set(YMax-YMin);
|
vtkSMPropertyHelper(proxy, "YLength").Set(YMax-YMin);
|
||||||
vtkSMPropertyHelper(proxy, "ZLength").Set(ZMax-ZMin);
|
vtkSMPropertyHelper(proxy, "ZLength").Set(ZMax-ZMin);
|
||||||
|
#else
|
||||||
|
// Standard_SStream ss;
|
||||||
|
// BRepTools::Write(myShape, ss);
|
||||||
|
// std::string str = ss.str();
|
||||||
|
// vtkSMPropertyHelper(proxy, "BRepStream").Set(str.c_str());
|
||||||
|
|
||||||
|
vtkSMPropertyHelper(proxy, "EdgeSubdivision").Set(2);
|
||||||
|
vtkSMPropertyHelper(proxy, "NumberOfSolids").Set(1);
|
||||||
|
#endif
|
||||||
|
|
||||||
proxy->UpdateVTKObjects();
|
proxy->UpdateVTKObjects();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// presentation is being updated
|
// presentation is being updated
|
||||||
|
Loading…
x
Reference in New Issue
Block a user