mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-02-05 03:04:18 +05:00
0021711: [CEA 579] Simplify Properties dialog accordingly to dimension of mesh
This commit is contained in:
parent
5296aeeaa6
commit
878662e498
@ -49,7 +49,6 @@ salomeinclude_HEADERS = \
|
|||||||
SMESHGUI_RemoveElementsDlg.h \
|
SMESHGUI_RemoveElementsDlg.h \
|
||||||
SMESHGUI_MeshInfo.h \
|
SMESHGUI_MeshInfo.h \
|
||||||
SMESHGUI_Measurements.h \
|
SMESHGUI_Measurements.h \
|
||||||
SMESHGUI_Preferences_ColorDlg.h \
|
|
||||||
SMESHGUI_Preferences_ScalarBarDlg.h \
|
SMESHGUI_Preferences_ScalarBarDlg.h \
|
||||||
SMESHGUI_AddMeshElementDlg.h \
|
SMESHGUI_AddMeshElementDlg.h \
|
||||||
SMESHGUI_XmlHandler.h \
|
SMESHGUI_XmlHandler.h \
|
||||||
@ -97,6 +96,7 @@ salomeinclude_HEADERS = \
|
|||||||
SMESHGUI_CopyMeshDlg.h \
|
SMESHGUI_CopyMeshDlg.h \
|
||||||
SMESHGUI_PreviewDlg.h \
|
SMESHGUI_PreviewDlg.h \
|
||||||
SMESHGUI_ReorientFacesDlg.h \
|
SMESHGUI_ReorientFacesDlg.h \
|
||||||
|
SMESHGUI_PropertiesDlg.h \
|
||||||
SMESH_SMESHGUI.hxx
|
SMESH_SMESHGUI.hxx
|
||||||
|
|
||||||
# Libraries targets
|
# Libraries targets
|
||||||
@ -115,7 +115,6 @@ dist_libSMESH_la_SOURCES = \
|
|||||||
SMESHGUI_RemoveElementsDlg.cxx \
|
SMESHGUI_RemoveElementsDlg.cxx \
|
||||||
SMESHGUI_MeshInfo.cxx \
|
SMESHGUI_MeshInfo.cxx \
|
||||||
SMESHGUI_Measurements.cxx \
|
SMESHGUI_Measurements.cxx \
|
||||||
SMESHGUI_Preferences_ColorDlg.cxx \
|
|
||||||
SMESHGUI_Preferences_ScalarBarDlg.cxx \
|
SMESHGUI_Preferences_ScalarBarDlg.cxx \
|
||||||
SMESHGUI_AddMeshElementDlg.cxx \
|
SMESHGUI_AddMeshElementDlg.cxx \
|
||||||
SMESHGUI_XmlHandler.cxx \
|
SMESHGUI_XmlHandler.cxx \
|
||||||
@ -173,7 +172,8 @@ dist_libSMESH_la_SOURCES = \
|
|||||||
SMESHGUI_CopyMeshDlg.cxx \
|
SMESHGUI_CopyMeshDlg.cxx \
|
||||||
SMESHGUI_FileValidator.cxx \
|
SMESHGUI_FileValidator.cxx \
|
||||||
SMESHGUI_PreviewDlg.cxx \
|
SMESHGUI_PreviewDlg.cxx \
|
||||||
SMESHGUI_ReorientFacesDlg.cxx
|
SMESHGUI_ReorientFacesDlg.cxx \
|
||||||
|
SMESHGUI_PropertiesDlg.cxx
|
||||||
|
|
||||||
MOC_FILES = \
|
MOC_FILES = \
|
||||||
SMESHGUI_moc.cxx \
|
SMESHGUI_moc.cxx \
|
||||||
@ -189,7 +189,6 @@ MOC_FILES = \
|
|||||||
SMESHGUI_RemoveElementsDlg_moc.cxx \
|
SMESHGUI_RemoveElementsDlg_moc.cxx \
|
||||||
SMESHGUI_MeshInfo_moc.cxx \
|
SMESHGUI_MeshInfo_moc.cxx \
|
||||||
SMESHGUI_Measurements_moc.cxx \
|
SMESHGUI_Measurements_moc.cxx \
|
||||||
SMESHGUI_Preferences_ColorDlg_moc.cxx \
|
|
||||||
SMESHGUI_Preferences_ScalarBarDlg_moc.cxx \
|
SMESHGUI_Preferences_ScalarBarDlg_moc.cxx \
|
||||||
SMESHGUI_AddMeshElementDlg_moc.cxx \
|
SMESHGUI_AddMeshElementDlg_moc.cxx \
|
||||||
SMESHGUI_FilterDlg_moc.cxx \
|
SMESHGUI_FilterDlg_moc.cxx \
|
||||||
@ -233,7 +232,8 @@ MOC_FILES = \
|
|||||||
SMESHGUI_CopyMeshDlg_moc.cxx \
|
SMESHGUI_CopyMeshDlg_moc.cxx \
|
||||||
SMESHGUI_MeshOrderOp_moc.cxx \
|
SMESHGUI_MeshOrderOp_moc.cxx \
|
||||||
SMESHGUI_PreviewDlg_moc.cxx \
|
SMESHGUI_PreviewDlg_moc.cxx \
|
||||||
SMESHGUI_ReorientFacesDlg_moc.cxx
|
SMESHGUI_ReorientFacesDlg_moc.cxx \
|
||||||
|
SMESHGUI_PropertiesDlg_moc.cxx
|
||||||
|
|
||||||
nodist_libSMESH_la_SOURCES= \
|
nodist_libSMESH_la_SOURCES= \
|
||||||
$(MOC_FILES)
|
$(MOC_FILES)
|
||||||
|
@ -59,8 +59,8 @@
|
|||||||
#include "SMESHGUI_MeshPatternDlg.h"
|
#include "SMESHGUI_MeshPatternDlg.h"
|
||||||
#include "SMESHGUI_MultiEditDlg.h"
|
#include "SMESHGUI_MultiEditDlg.h"
|
||||||
#include "SMESHGUI_NodesDlg.h"
|
#include "SMESHGUI_NodesDlg.h"
|
||||||
#include "SMESHGUI_Preferences_ColorDlg.h"
|
|
||||||
#include "SMESHGUI_Preferences_ScalarBarDlg.h"
|
#include "SMESHGUI_Preferences_ScalarBarDlg.h"
|
||||||
|
#include "SMESHGUI_PropertiesDlg.h"
|
||||||
#include "SMESHGUI_RemoveElementsDlg.h"
|
#include "SMESHGUI_RemoveElementsDlg.h"
|
||||||
#include "SMESHGUI_RemoveNodesDlg.h"
|
#include "SMESHGUI_RemoveNodesDlg.h"
|
||||||
#include "SMESHGUI_RenumberingDlg.h"
|
#include "SMESHGUI_RenumberingDlg.h"
|
||||||
@ -939,6 +939,8 @@
|
|||||||
SALOMEDS::Color aColor = aGroupObject->GetColor();
|
SALOMEDS::Color aColor = aGroupObject->GetColor();
|
||||||
_PTR(SObject) aGroupSObject = SMESH::FindSObject(aGroupObject);
|
_PTR(SObject) aGroupSObject = SMESH::FindSObject(aGroupObject);
|
||||||
if (aGroupSObject) {
|
if (aGroupSObject) {
|
||||||
|
QColor c;
|
||||||
|
int delta;
|
||||||
if(SMESH_Actor *anActor = SMESH::FindActorByEntry(aGroupSObject->GetID().c_str())) {
|
if(SMESH_Actor *anActor = SMESH::FindActorByEntry(aGroupSObject->GetID().c_str())) {
|
||||||
switch ( aGroupObject->GetType ()) {
|
switch ( aGroupObject->GetType ()) {
|
||||||
case SMESH::NODE:
|
case SMESH::NODE:
|
||||||
@ -949,9 +951,11 @@
|
|||||||
anActor->Set0DColor( aColor.R, aColor.G, aColor.B ); break;
|
anActor->Set0DColor( aColor.R, aColor.G, aColor.B ); break;
|
||||||
case SMESH::BALL:
|
case SMESH::BALL:
|
||||||
anActor->SetBallColor( aColor.R, aColor.G, aColor.B ); break;
|
anActor->SetBallColor( aColor.R, aColor.G, aColor.B ); break;
|
||||||
|
case SMESH::VOLUME:
|
||||||
|
SMESH::GetColor("SMESH", "volume_color", c, delta, "255,0,170|-100");
|
||||||
|
anActor->SetVolumeColor( aColor.R, aColor.G, aColor.B, delta ); break;
|
||||||
|
case SMESH::FACE:
|
||||||
default:
|
default:
|
||||||
QColor c;
|
|
||||||
int delta;
|
|
||||||
SMESH::GetColor("SMESH", "fill_color", c, delta, "0,170,255|-100");
|
SMESH::GetColor("SMESH", "fill_color", c, delta, "0,170,255|-100");
|
||||||
anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B, delta );
|
anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B, delta );
|
||||||
}
|
}
|
||||||
@ -1202,250 +1206,224 @@
|
|||||||
(new SMESHGUI_TransparencyDlg( SMESHGUI::GetSMESHGUI() ))->show();
|
(new SMESHGUI_TransparencyDlg( SMESHGUI::GetSMESHGUI() ))->show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
case 1132:{
|
case 1132: {
|
||||||
QColor c, e, b, n, c0D, cBall, o, outl, selection, preselection;
|
vtkFloatingPointType color[3];
|
||||||
int delta;
|
QColor faceColor, edgeColor, nodeColor, elem0dColor, ballColor;
|
||||||
int size0D = 0, ballSize = 0;
|
QColor orientationColor, outlineColor, volumeColor;
|
||||||
int Edgewidth = 0;
|
int deltaF = 0, deltaV = 0;
|
||||||
vtkFloatingPointType Shrink = 0.0;
|
int elem0dSize = 1;
|
||||||
vtkFloatingPointType faces_orientation_scale = 0.0;
|
int ballSize = 1;
|
||||||
bool faces_orientation_3dvectors = false;
|
int edgeWidth = 1;
|
||||||
|
int outlineWidth = 1;
|
||||||
VTK::MarkerType aMarkerTypeCurrent = VTK::MT_NONE;
|
vtkFloatingPointType shrinkCoef = 0.0;
|
||||||
VTK::MarkerScale aMarkerScaleCurrent = VTK::MS_NONE;
|
vtkFloatingPointType orientationScale = 0.0;
|
||||||
int aMarkerTextureCurrent = 0;
|
bool orientation3d = false;
|
||||||
|
VTK::MarkerType markerType = VTK::MT_NONE;
|
||||||
|
VTK::MarkerScale markerScale = VTK::MS_NONE;
|
||||||
|
int markerId = 0;
|
||||||
|
bool hasNodes = false;
|
||||||
|
int presentEntities = 0;
|
||||||
|
bool firstTime = true;
|
||||||
|
|
||||||
SALOME_ListIteratorOfListIO It( selected );
|
SALOME_ListIteratorOfListIO It( selected );
|
||||||
for( ; It.More(); It.Next()){
|
for ( ; It.More(); It.Next() ) {
|
||||||
Handle(SALOME_InteractiveObject) IObject = It.Value();
|
Handle(SALOME_InteractiveObject) IObject = It.Value();
|
||||||
if(IObject->hasEntry()){
|
if ( !IObject->hasEntry() ) continue;
|
||||||
if(SMESH_Actor *anActor = SMESH::FindActorByEntry(IObject->getEntry())){
|
SMESH_Actor* anActor = SMESH::FindActorByEntry( IObject->getEntry() );
|
||||||
vtkFloatingPointType color[3];
|
if ( !anActor || !anActor->GetObject() ) continue;
|
||||||
anActor->GetSufaceColor(color[0], color[1], color[2],delta);
|
|
||||||
int c0 = int (color[0] * 255);
|
|
||||||
int c1 = int (color[1] * 255);
|
|
||||||
int c2 = int (color[2] * 255);
|
|
||||||
c.setRgb(c0, c1, c2);
|
|
||||||
|
|
||||||
vtkFloatingPointType edgecolor[3];
|
if ( firstTime ) {
|
||||||
anActor->GetEdgeColor(edgecolor[0], edgecolor[1], edgecolor[2]);
|
// nodes: color, marker
|
||||||
c0 = int (edgecolor[0] * 255);
|
anActor->GetNodeColor( color[0], color[1], color[2] );
|
||||||
c1 = int (edgecolor[1] * 255);
|
nodeColor.setRgbF( color[0], color[1], color[2] );
|
||||||
c2 = int (edgecolor[2] * 255);
|
markerType = anActor->GetMarkerType();
|
||||||
e.setRgb(c0, c1, c2);
|
markerScale = anActor->GetMarkerScale();
|
||||||
|
markerId = anActor->GetMarkerTexture();
|
||||||
|
// edges: color, width
|
||||||
|
anActor->GetEdgeColor( color[0], color[1], color[2] );
|
||||||
|
edgeColor.setRgbF( color[0], color[1], color[2] );
|
||||||
|
edgeWidth = qMax( (int)anActor->GetLineWidth(), 1 ); // minimum allowed width is 1
|
||||||
|
// faces: front color, back color (delta)
|
||||||
|
anActor->GetSufaceColor( color[0], color[1], color[2], deltaF );
|
||||||
|
faceColor.setRgbF( color[0], color[1], color[2] );
|
||||||
|
// faces: front color, back color (delta)
|
||||||
|
anActor->GetVolumeColor( color[0], color[1], color[2], deltaV );
|
||||||
|
volumeColor.setRgbF( color[0], color[1], color[2] );
|
||||||
|
// 0d elements: color, size
|
||||||
|
anActor->Get0DColor( color[0], color[1], color[2] );
|
||||||
|
elem0dColor.setRgbF( color[0], color[1], color[2] );
|
||||||
|
elem0dSize = qMax( (int)anActor->Get0DSize(), 1 ); // minimum allowed size is 1
|
||||||
|
// balls: color, size
|
||||||
|
anActor->GetBallColor( color[0], color[1], color[2] );
|
||||||
|
ballColor.setRgbF( color[0], color[1], color[2] );
|
||||||
|
ballSize = qMax( (int)anActor->GetBallSize(), 1 ); // minimum allowed size is 1
|
||||||
|
// outlines: color
|
||||||
|
anActor->GetOutlineColor( color[0], color[1], color[2] );
|
||||||
|
outlineColor.setRgbF( color[0], color[1], color[2] );
|
||||||
|
outlineWidth = qMax( (int)anActor->GetOutlineWidth(), 1 ); // minimum allowed width is 1
|
||||||
|
// orientation vectors: color, scale, 3d flag
|
||||||
|
anActor->GetFacesOrientationColor( color[0], color[1], color[2] );
|
||||||
|
orientationColor.setRgbF( color[0], color[1], color[2] );
|
||||||
|
orientationScale = anActor->GetFacesOrientationScale();
|
||||||
|
orientation3d = anActor->GetFacesOrientation3DVectors();
|
||||||
|
// shrink factor
|
||||||
|
shrinkCoef = anActor->GetShrinkFactor();
|
||||||
|
}
|
||||||
|
|
||||||
vtkFloatingPointType nodecolor[3];
|
firstTime = false; // we only take properties from first object (for performance reasons)
|
||||||
anActor->GetNodeColor(nodecolor[0], nodecolor[1], nodecolor[2]);
|
|
||||||
c0 = int (nodecolor[0] * 255);
|
|
||||||
c1 = int (nodecolor[1] * 255);
|
|
||||||
c2 = int (nodecolor[2] * 255);
|
|
||||||
n.setRgb(c0, c1, c2);
|
|
||||||
|
|
||||||
vtkFloatingPointType color0D[3];
|
if ( !hasNodes )
|
||||||
anActor->Get0DColor(color0D[0], color0D[1], color0D[2]);
|
hasNodes = anActor->GetObject()->GetNbEntities( SMDSAbs_Node );
|
||||||
c0 = int (color0D[0] * 255);
|
if ( !(presentEntities & SMESH_Actor::eEdges) && anActor->GetObject()->GetNbEntities( SMDSAbs_Edge ) )
|
||||||
c1 = int (color0D[1] * 255);
|
presentEntities = presentEntities | SMESH_Actor::eEdges;
|
||||||
c2 = int (color0D[2] * 255);
|
if ( !(presentEntities & SMESH_Actor::eFaces) && anActor->GetObject()->GetNbEntities( SMDSAbs_Face ) )
|
||||||
c0D.setRgb(c0, c1, c2);
|
presentEntities = presentEntities | SMESH_Actor::eFaces;
|
||||||
|
if ( !(presentEntities & SMESH_Actor::eVolumes) && anActor->GetObject()->GetNbEntities( SMDSAbs_Volume ) )
|
||||||
|
presentEntities = presentEntities | SMESH_Actor::eVolumes;
|
||||||
|
if ( !(presentEntities & SMESH_Actor::e0DElements) && anActor->GetObject()->GetNbEntities( SMDSAbs_0DElement ) )
|
||||||
|
presentEntities = presentEntities | SMESH_Actor::e0DElements;
|
||||||
|
if ( !(presentEntities & SMESH_Actor::eBallElem) && anActor->GetObject()->GetNbEntities( SMDSAbs_Ball ) )
|
||||||
|
presentEntities = presentEntities | SMESH_Actor::eBallElem;
|
||||||
|
|
||||||
|
// as we know that all types of elements are present, we can exit the loop
|
||||||
|
if ( presentEntities == SMESH_Actor::eAllEntity )
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
vtkFloatingPointType ballcolor[3];
|
SMESHGUI_PropertiesDlg dlg( theMarkerMap[ aStudy->StudyId() ], SMESHGUI::desktop() );
|
||||||
anActor->GetBallColor(ballcolor[0], ballcolor[1], ballcolor[2]);
|
// nodes: color, marker
|
||||||
c0 = int (ballcolor[0] * 255);
|
dlg.setNodeColor( nodeColor );
|
||||||
c1 = int (ballcolor[1] * 255);
|
if( markerType != VTK::MT_USER )
|
||||||
c2 = int (ballcolor[2] * 255);
|
dlg.setNodeMarker( markerType, markerScale );
|
||||||
cBall.setRgb(c0, c1, c2);
|
|
||||||
|
|
||||||
vtkFloatingPointType outlineColor[3];
|
|
||||||
anActor->GetOutlineColor(outlineColor[0], outlineColor[1], outlineColor[2]);
|
|
||||||
c0 = int (outlineColor[0] * 255);
|
|
||||||
c1 = int (outlineColor[1] * 255);
|
|
||||||
c2 = int (outlineColor[2] * 255);
|
|
||||||
outl.setRgb(c0, c1, c2);
|
|
||||||
|
|
||||||
vtkFloatingPointType hColor[3];
|
|
||||||
anActor->GetHighlightColor(hColor[0], hColor[1], hColor[2]);
|
|
||||||
c0 = int (hColor[0] * 255);
|
|
||||||
c1 = int (hColor[1] * 255);
|
|
||||||
c2 = int (hColor[2] * 255);
|
|
||||||
selection.setRgb(c0, c1, c2);
|
|
||||||
|
|
||||||
vtkFloatingPointType phColor[3];
|
|
||||||
anActor->GetPreHighlightColor(phColor[0], phColor[1], phColor[2]);
|
|
||||||
c0 = int (phColor[0] * 255);
|
|
||||||
c1 = int (phColor[1] * 255);
|
|
||||||
c2 = int (phColor[2] * 255);
|
|
||||||
preselection.setRgb(c0, c1, c2);
|
|
||||||
|
|
||||||
size0D = (int)anActor->Get0DSize();
|
|
||||||
if(size0D == 0)
|
|
||||||
size0D = 1;
|
|
||||||
ballSize = (int)anActor->GetBallSize();
|
|
||||||
if(ballSize == 0)
|
|
||||||
ballSize = 1;
|
|
||||||
Edgewidth = (int)anActor->GetLineWidth();
|
|
||||||
if(Edgewidth == 0)
|
|
||||||
Edgewidth = 1;
|
|
||||||
Shrink = anActor->GetShrinkFactor();
|
|
||||||
|
|
||||||
vtkFloatingPointType faces_orientation_color[3];
|
|
||||||
anActor->GetFacesOrientationColor(faces_orientation_color);
|
|
||||||
c0 = int (faces_orientation_color[0] * 255);
|
|
||||||
c1 = int (faces_orientation_color[1] * 255);
|
|
||||||
c2 = int (faces_orientation_color[2] * 255);
|
|
||||||
o.setRgb(c0, c1, c2);
|
|
||||||
|
|
||||||
faces_orientation_scale = anActor->GetFacesOrientationScale();
|
|
||||||
faces_orientation_3dvectors = anActor->GetFacesOrientation3DVectors();
|
|
||||||
|
|
||||||
aMarkerTypeCurrent = anActor->GetMarkerType();
|
|
||||||
aMarkerScaleCurrent = anActor->GetMarkerScale();
|
|
||||||
aMarkerTextureCurrent = anActor->GetMarkerTexture();
|
|
||||||
|
|
||||||
// even if there are multiple objects in the selection,
|
|
||||||
// we need only the first one to get values for the dialog
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
SMESHGUI_Preferences_ColorDlg *aDlg =
|
|
||||||
new SMESHGUI_Preferences_ColorDlg( SMESHGUI::GetSMESHGUI() );
|
|
||||||
aDlg->SetBooleanValue(1, faces_orientation_3dvectors);
|
|
||||||
aDlg->SetColor(1, c);
|
|
||||||
aDlg->SetColor(2, e);
|
|
||||||
aDlg->SetColor(3, n);
|
|
||||||
aDlg->SetColor(4, outl);
|
|
||||||
aDlg->SetColor(5, c0D);
|
|
||||||
aDlg->SetColor(6, cBall);
|
|
||||||
aDlg->SetColor(7, o);
|
|
||||||
aDlg->SetColor(8, selection);
|
|
||||||
aDlg->SetColor(9, preselection);
|
|
||||||
aDlg->SetDeltaBrightness(delta);
|
|
||||||
aDlg->SetDoubleValue(1, faces_orientation_scale);
|
|
||||||
aDlg->SetIntValue(1, Edgewidth);
|
|
||||||
aDlg->SetIntValue(2, int(Shrink*100.));
|
|
||||||
aDlg->SetIntValue(3, size0D);
|
|
||||||
aDlg->SetIntValue(4, ballSize);
|
|
||||||
|
|
||||||
aDlg->setCustomMarkerMap( theMarkerMap[ aStudy->StudyId() ] );
|
|
||||||
|
|
||||||
if( aMarkerTypeCurrent != VTK::MT_USER )
|
|
||||||
aDlg->setStandardMarker( aMarkerTypeCurrent, aMarkerScaleCurrent );
|
|
||||||
else
|
else
|
||||||
aDlg->setCustomMarker( aMarkerTextureCurrent );
|
dlg.setNodeCustomMarker( markerId );
|
||||||
|
// edges: color, line width
|
||||||
|
dlg.setEdgeColor( edgeColor );
|
||||||
|
dlg.setEdgeWidth( edgeWidth );
|
||||||
|
// faces: front color, back color
|
||||||
|
dlg.setFaceColor( faceColor, deltaF );
|
||||||
|
// volumes: normal color, reversed color
|
||||||
|
dlg.setVolumeColor( volumeColor, deltaV );
|
||||||
|
// outlines: color, line width
|
||||||
|
dlg.setOutlineColor( outlineColor );
|
||||||
|
dlg.setOutlineWidth( outlineWidth );
|
||||||
|
// 0d elements: color, size
|
||||||
|
dlg.setElem0dColor( elem0dColor );
|
||||||
|
dlg.setElem0dSize( elem0dSize );
|
||||||
|
// balls: color, size
|
||||||
|
dlg.setBallColor( ballColor );
|
||||||
|
dlg.setBallSize( ballSize );
|
||||||
|
// orientation: color, scale, 3d flag
|
||||||
|
dlg.setOrientationColor( orientationColor );
|
||||||
|
dlg.setOrientationSize( int( orientationScale * 100. ) );
|
||||||
|
dlg.setOrientation3d( orientation3d );
|
||||||
|
// shrink: scale factor
|
||||||
|
dlg.setShrinkCoef( int( shrinkCoef * 100. ) );
|
||||||
|
// hide unused controls
|
||||||
|
dlg.showControls( presentEntities, hasNodes );
|
||||||
|
|
||||||
|
if ( dlg.exec() ) {
|
||||||
|
nodeColor = dlg.nodeColor();
|
||||||
|
markerType = dlg.nodeMarkerType();
|
||||||
|
markerScale = dlg.nodeMarkerScale();
|
||||||
|
markerId = dlg.nodeMarkerId();
|
||||||
|
edgeColor = dlg.edgeColor();
|
||||||
|
edgeWidth = dlg.edgeWidth();
|
||||||
|
faceColor = dlg.faceColor();
|
||||||
|
deltaF = dlg.faceColorDelta();
|
||||||
|
volumeColor = dlg.volumeColor();
|
||||||
|
deltaV = dlg.volumeColorDelta();
|
||||||
|
outlineColor = dlg.outlineColor();
|
||||||
|
outlineWidth = dlg.outlineWidth();
|
||||||
|
elem0dColor = dlg.elem0dColor();
|
||||||
|
elem0dSize = dlg.elem0dSize();
|
||||||
|
ballColor = dlg.ballColor();
|
||||||
|
ballSize = dlg.ballSize();
|
||||||
|
orientationColor = dlg.orientationColor();
|
||||||
|
orientationScale = dlg.orientationSize() / 100.;
|
||||||
|
orientation3d = dlg.orientation3d();
|
||||||
|
shrinkCoef = dlg.shrinkCoef() / 100.;
|
||||||
|
|
||||||
if(aDlg->exec()){
|
// store point markers map that might be changed by the user
|
||||||
QColor color = aDlg->GetColor(1);
|
theMarkerMap[ aStudy->StudyId() ] = dlg.customMarkers();
|
||||||
QColor edgecolor = aDlg->GetColor(2);
|
|
||||||
QColor nodecolor = aDlg->GetColor(3);
|
|
||||||
QColor outlinecolor = aDlg->GetColor(4);
|
|
||||||
QColor color0D = aDlg->GetColor(5);
|
|
||||||
QColor ballcolor = aDlg->GetColor(6);
|
|
||||||
QColor faces_orientation_color = aDlg->GetColor(7);
|
|
||||||
QColor selectioncolor = aDlg->GetColor(8);
|
|
||||||
QColor preSelectioncolor = aDlg->GetColor(9);
|
|
||||||
int delta = aDlg->GetDeltaBrightness();
|
|
||||||
|
|
||||||
/* Point marker */
|
|
||||||
theMarkerMap[ aStudy->StudyId() ] = aDlg->getCustomMarkerMap();
|
|
||||||
|
|
||||||
|
// set properties from dialog box to the presentations
|
||||||
SALOME_ListIteratorOfListIO It( selected );
|
SALOME_ListIteratorOfListIO It( selected );
|
||||||
for( ; It.More(); It.Next()){
|
for ( ; It.More(); It.Next() ) {
|
||||||
Handle(SALOME_InteractiveObject) IObject = It.Value();
|
Handle(SALOME_InteractiveObject) IObject = It.Value();
|
||||||
if(IObject->hasEntry()){
|
if ( !IObject->hasEntry() ) continue;
|
||||||
if(SMESH_Actor *anActor = SMESH::FindActorByEntry(IObject->getEntry())){
|
SMESH_Actor* anActor = SMESH::FindActorByEntry( IObject->getEntry() );
|
||||||
/* actor color and backface color */
|
if ( !anActor ) continue;
|
||||||
anActor->SetSufaceColor(vtkFloatingPointType (color.red()) / 255.,
|
|
||||||
vtkFloatingPointType (color.green()) / 255.,
|
// nodes: color, marker
|
||||||
vtkFloatingPointType (color.blue()) / 255.,
|
anActor->SetNodeColor( nodeColor.redF(), nodeColor.greenF(), nodeColor.blueF() );
|
||||||
delta);
|
if ( markerType != VTK::MT_USER ) {
|
||||||
/* edge color */
|
anActor->SetMarkerStd( markerType, markerScale );
|
||||||
anActor->SetEdgeColor(vtkFloatingPointType (edgecolor.red()) / 255.,
|
}
|
||||||
vtkFloatingPointType (edgecolor.green()) / 255.,
|
else {
|
||||||
vtkFloatingPointType (edgecolor.blue()) / 255.);
|
const VTK::MarkerMap& markerMap = theMarkerMap[ aStudy->StudyId() ];
|
||||||
/* edge outline */
|
VTK::MarkerMap::const_iterator iter = markerMap.find( markerId );
|
||||||
anActor->SetOutlineColor(vtkFloatingPointType (outlinecolor.red()) / 255.,
|
if ( iter != markerMap.end() )
|
||||||
vtkFloatingPointType (outlinecolor.green()) / 255.,
|
anActor->SetMarkerTexture( markerId, iter->second.second );
|
||||||
vtkFloatingPointType (outlinecolor.blue()) / 255.);
|
}
|
||||||
|
// volumes: normal color, reversed color (delta)
|
||||||
|
anActor->SetVolumeColor( volumeColor.redF(), volumeColor.greenF(), volumeColor.blueF(), deltaV );
|
||||||
|
// faces: front color, back color (delta)
|
||||||
|
anActor->SetSufaceColor( faceColor.redF(), faceColor.greenF(), faceColor.blueF(), deltaF );
|
||||||
|
// edges: color, width
|
||||||
|
anActor->SetEdgeColor( edgeColor.redF(), edgeColor.greenF(), edgeColor.blueF() );
|
||||||
|
anActor->SetLineWidth( edgeWidth );
|
||||||
|
// outlines: color
|
||||||
|
anActor->SetOutlineColor( outlineColor.redF(), outlineColor.greenF(), outlineColor.blueF() );
|
||||||
|
anActor->SetOutlineWidth( outlineWidth );
|
||||||
|
// 0D elements: color, size
|
||||||
|
anActor->Set0DColor( elem0dColor.redF(), elem0dColor.greenF(), elem0dColor.blueF() );
|
||||||
|
anActor->Set0DSize( elem0dSize );
|
||||||
|
// balls: color, size
|
||||||
|
anActor->SetBallColor( ballColor.redF(), ballColor.greenF(), ballColor.blueF() );
|
||||||
|
anActor->SetBallSize( ballSize );
|
||||||
|
// orientation: color, scale, 3d flag
|
||||||
|
anActor->SetFacesOrientationColor( orientationColor.redF(), orientationColor.greenF(), orientationColor.blueF() );
|
||||||
|
anActor->SetFacesOrientationScale( orientationScale );
|
||||||
|
anActor->SetFacesOrientation3DVectors( orientation3d );
|
||||||
|
// shrink factor
|
||||||
|
anActor->SetShrinkFactor( shrinkCoef );
|
||||||
|
|
||||||
/* selection */
|
// for groups, set also proper color
|
||||||
anActor->SetHighlightColor(vtkFloatingPointType (selectioncolor.red()) / 255.,
|
SMESH::SMESH_GroupBase_var aGroupObject = SMESH::IObjectToInterface<SMESH::SMESH_GroupBase>(IObject);
|
||||||
vtkFloatingPointType (selectioncolor.green()) / 255.,
|
if ( !aGroupObject->_is_nil() ) {
|
||||||
vtkFloatingPointType (selectioncolor.blue()) / 255.);
|
SMESH::ElementType anElementType = aGroupObject->GetType();
|
||||||
/* pre-selection */
|
QColor aColor;
|
||||||
anActor->SetPreHighlightColor(vtkFloatingPointType (preSelectioncolor.red()) / 255.,
|
switch( anElementType ) {
|
||||||
vtkFloatingPointType (preSelectioncolor.green()) / 255.,
|
case SMESH::NODE:
|
||||||
vtkFloatingPointType (preSelectioncolor.blue()) / 255.);
|
aColor = nodeColor; break;
|
||||||
|
case SMESH::EDGE:
|
||||||
|
aColor = edgeColor; break;
|
||||||
/* Shrink factor and size edges */
|
case SMESH::FACE:
|
||||||
anActor->SetShrinkFactor(aDlg->GetIntValue(2) / 100.);
|
aColor = faceColor; break;
|
||||||
anActor->SetLineWidth(aDlg->GetIntValue(1));
|
case SMESH::VOLUME:
|
||||||
|
aColor = volumeColor; break;
|
||||||
/* Nodes color and size */
|
case SMESH::ELEM0D:
|
||||||
anActor->SetNodeColor(vtkFloatingPointType (nodecolor.red()) / 255.,
|
aColor = elem0dColor; break;
|
||||||
vtkFloatingPointType (nodecolor.green()) / 255.,
|
case SMESH::BALL:
|
||||||
vtkFloatingPointType (nodecolor.blue()) / 255.);
|
aColor = ballColor; break;
|
||||||
|
default: break;
|
||||||
/* 0D elements */
|
}
|
||||||
anActor->Set0DColor(vtkFloatingPointType (color0D.red()) / 255.,
|
|
||||||
vtkFloatingPointType (color0D.green()) / 255.,
|
if ( aColor.isValid() ) {
|
||||||
vtkFloatingPointType (color0D.blue()) / 255.);
|
SALOMEDS::Color aGroupColor;
|
||||||
anActor->Set0DSize(aDlg->GetIntValue(3));
|
aGroupColor.R = aColor.redF();
|
||||||
|
aGroupColor.G = aColor.greenF();
|
||||||
/* Ball elements */
|
aGroupColor.B = aColor.blueF();
|
||||||
anActor->SetBallColor(vtkFloatingPointType (ballcolor.red()) / 255.,
|
aGroupObject->SetColor( aGroupColor );
|
||||||
vtkFloatingPointType (ballcolor.green()) / 255.,
|
}
|
||||||
vtkFloatingPointType (ballcolor.blue()) / 255.);
|
} // if ( !aGroupObject->_is_nil() )
|
||||||
anActor->SetBallSize(aDlg->GetIntValue(4));
|
} // for ( ; It.More(); It.Next() )
|
||||||
|
SMESH::RepaintCurrentView();
|
||||||
/* Faces orientation */
|
} // if ( dlg.exec() )
|
||||||
vtkFloatingPointType c[3] = {vtkFloatingPointType(faces_orientation_color.redF()),
|
|
||||||
vtkFloatingPointType(faces_orientation_color.greenF()),
|
|
||||||
vtkFloatingPointType(faces_orientation_color.blueF())};
|
|
||||||
anActor->SetFacesOrientationColor(c);
|
|
||||||
anActor->SetFacesOrientationScale(aDlg->GetDoubleValue(1));
|
|
||||||
anActor->SetFacesOrientation3DVectors(aDlg->GetBooleanValue(1));
|
|
||||||
|
|
||||||
VTK::MarkerType aMarkerTypeNew = aDlg->getMarkerType();
|
|
||||||
VTK::MarkerScale aMarkerScaleNew = aDlg->getStandardMarkerScale();
|
|
||||||
int aMarkerTextureNew = aDlg->getCustomMarkerID();
|
|
||||||
if( aMarkerTypeNew != VTK::MT_USER )
|
|
||||||
anActor->SetMarkerStd( aMarkerTypeNew, aMarkerScaleNew );
|
|
||||||
else {
|
|
||||||
const VTK::MarkerMap& aMarkerMap = theMarkerMap[ aStudy->StudyId() ];
|
|
||||||
VTK::MarkerMap::const_iterator anIter = aMarkerMap.find( aMarkerTextureNew );
|
|
||||||
if( anIter != aMarkerMap.end() )
|
|
||||||
anActor->SetMarkerTexture( aMarkerTextureNew, anIter->second.second );
|
|
||||||
}
|
|
||||||
|
|
||||||
SMESH::SMESH_GroupBase_var aGroupObject = SMESH::IObjectToInterface<SMESH::SMESH_GroupBase>(IObject);
|
|
||||||
if( !aGroupObject->_is_nil() )
|
|
||||||
{
|
|
||||||
SMESH::ElementType anElementType = aGroupObject->GetType();
|
|
||||||
QColor aColor;
|
|
||||||
switch( anElementType )
|
|
||||||
{
|
|
||||||
case SMESH::NODE: aColor = nodecolor; break;
|
|
||||||
case SMESH::EDGE: aColor = edgecolor; break;
|
|
||||||
default: aColor = color; break;
|
|
||||||
}
|
|
||||||
|
|
||||||
SALOMEDS::Color aGroupColor;
|
|
||||||
aGroupColor.R = (float)aColor.red() / 255.0;
|
|
||||||
aGroupColor.G = (float)aColor.green() / 255.0;
|
|
||||||
aGroupColor.B = (float)aColor.blue() / 255.0;
|
|
||||||
aGroupObject->SetColor( aGroupColor );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
SMESH::RepaintCurrentView();
|
|
||||||
}
|
|
||||||
delete aDlg;
|
|
||||||
return;
|
return;
|
||||||
}
|
} // case 1132:
|
||||||
}
|
} // switch(theCommandID)
|
||||||
SALOME_ListIteratorOfListIO It( selected );
|
SALOME_ListIteratorOfListIO It( selected );
|
||||||
for( ; It.More(); It.Next()){
|
for( ; It.More(); It.Next()){
|
||||||
Handle(SALOME_InteractiveObject) IObject = It.Value();
|
Handle(SALOME_InteractiveObject) IObject = It.Value();
|
||||||
@ -4813,15 +4791,17 @@ void SMESHGUI::createPreferences()
|
|||||||
setPreferenceProperty( markerScale, "indexes", aMarkerScaleIndicesList );
|
setPreferenceProperty( markerScale, "indexes", aMarkerScaleIndicesList );
|
||||||
|
|
||||||
int elemGroup = addPreference( tr( "PREF_GROUP_ELEMENTS" ), meshTab );
|
int elemGroup = addPreference( tr( "PREF_GROUP_ELEMENTS" ), meshTab );
|
||||||
setPreferenceProperty( elemGroup, "columns", 2 );
|
//setPreferenceProperty( elemGroup, "columns", 2 );
|
||||||
|
|
||||||
int ColorId = addPreference( tr( "PREF_FILL" ), elemGroup, LightApp_Preferences::BiColor, "SMESH", "fill_color" );
|
int ColorId = addPreference( tr( "PREF_FILL" ), elemGroup, LightApp_Preferences::BiColor, "SMESH", "fill_color" );
|
||||||
|
setPreferenceProperty( ColorId, "text", tr("PREF_BACKFACE") );
|
||||||
|
ColorId = addPreference( tr( "PREF_VOLUME" ), elemGroup, LightApp_Preferences::BiColor, "SMESH", "volume_color" );
|
||||||
|
setPreferenceProperty( ColorId, "text", tr("PREF_REVERSEDVOLUME") );
|
||||||
addPreference( tr( "PREF_COLOR_0D" ), elemGroup, LightApp_Preferences::Color, "SMESH", "elem0d_color" );
|
addPreference( tr( "PREF_COLOR_0D" ), elemGroup, LightApp_Preferences::Color, "SMESH", "elem0d_color" );
|
||||||
addPreference( tr( "PREF_BALL_COLOR" ), elemGroup, LightApp_Preferences::Color, "SMESH", "ball_elem_color" );
|
addPreference( tr( "PREF_BALL_COLOR" ), elemGroup, LightApp_Preferences::Color, "SMESH", "ball_elem_color" );
|
||||||
addPreference( tr( "PREF_OUTLINE" ), elemGroup, LightApp_Preferences::Color, "SMESH", "outline_color" );
|
addPreference( tr( "PREF_OUTLINE" ), elemGroup, LightApp_Preferences::Color, "SMESH", "outline_color" );
|
||||||
addPreference( tr( "PREF_WIREFRAME" ), elemGroup, LightApp_Preferences::Color, "SMESH", "wireframe_color" );
|
addPreference( tr( "PREF_WIREFRAME" ), elemGroup, LightApp_Preferences::Color, "SMESH", "wireframe_color" );
|
||||||
|
|
||||||
setPreferenceProperty( ColorId, "text", tr("PREF_BACKFACE") );
|
|
||||||
|
|
||||||
int grpGroup = addPreference( tr( "PREF_GROUP_GROUPS" ), meshTab );
|
int grpGroup = addPreference( tr( "PREF_GROUP_GROUPS" ), meshTab );
|
||||||
setPreferenceProperty( grpGroup, "columns", 2 );
|
setPreferenceProperty( grpGroup, "columns", 2 );
|
||||||
@ -4835,6 +4815,8 @@ void SMESHGUI::createPreferences()
|
|||||||
LightApp_Preferences::IntSpin, "SMESH", "ball_elem_size");
|
LightApp_Preferences::IntSpin, "SMESH", "ball_elem_size");
|
||||||
int elemW = addPreference(tr("PREF_WIDTH"), elemGroup,
|
int elemW = addPreference(tr("PREF_WIDTH"), elemGroup,
|
||||||
LightApp_Preferences::IntSpin, "SMESH", "element_width");
|
LightApp_Preferences::IntSpin, "SMESH", "element_width");
|
||||||
|
int outW = addPreference(tr("PREF_OUTLINE_WIDTH"), elemGroup,
|
||||||
|
LightApp_Preferences::IntSpin, "SMESH", "outline_width");
|
||||||
int shrink = addPreference(tr("PREF_SHRINK_COEFF"), elemGroup,
|
int shrink = addPreference(tr("PREF_SHRINK_COEFF"), elemGroup,
|
||||||
LightApp_Preferences::IntSpin, "SMESH", "shrink_coeff");
|
LightApp_Preferences::IntSpin, "SMESH", "shrink_coeff");
|
||||||
|
|
||||||
@ -4847,6 +4829,9 @@ void SMESHGUI::createPreferences()
|
|||||||
setPreferenceProperty( elemW, "min", 1 );
|
setPreferenceProperty( elemW, "min", 1 );
|
||||||
setPreferenceProperty( elemW, "max", 5 );
|
setPreferenceProperty( elemW, "max", 5 );
|
||||||
|
|
||||||
|
setPreferenceProperty( outW, "min", 1 );
|
||||||
|
setPreferenceProperty( outW, "max", 5 );
|
||||||
|
|
||||||
setPreferenceProperty( shrink, "min", 0 );
|
setPreferenceProperty( shrink, "min", 0 );
|
||||||
setPreferenceProperty( shrink, "max", 100 );
|
setPreferenceProperty( shrink, "max", 100 );
|
||||||
|
|
||||||
@ -5222,9 +5207,9 @@ SALOMEDS::Color SMESHGUI::getUniqueColor( const QList<SALOMEDS::Color>& theReser
|
|||||||
aColor.setHsv( aHue, 255, 255 );
|
aColor.setHsv( aHue, 255, 255 );
|
||||||
|
|
||||||
SALOMEDS::Color aSColor;
|
SALOMEDS::Color aSColor;
|
||||||
aSColor.R = (double)aColor.red() / 255.0;
|
aSColor.R = aColor.redF();
|
||||||
aSColor.G = (double)aColor.green() / 255.0;
|
aSColor.G = aColor.greenF();
|
||||||
aSColor.B = (double)aColor.blue() / 255.0;
|
aSColor.B = aColor.blueF();
|
||||||
|
|
||||||
return aSColor;
|
return aSColor;
|
||||||
}
|
}
|
||||||
|
@ -1126,17 +1126,21 @@ bool SMESHGUI_GroupDlg::onApply()
|
|||||||
if ( aMeshGroupSO )
|
if ( aMeshGroupSO )
|
||||||
if(SMESH_Actor *anActor = SMESH::FindActorByEntry(aMeshGroupSO->GetID().c_str())) {
|
if(SMESH_Actor *anActor = SMESH::FindActorByEntry(aMeshGroupSO->GetID().c_str())) {
|
||||||
anActor->setName(myName->text().toLatin1().data());
|
anActor->setName(myName->text().toLatin1().data());
|
||||||
|
QColor c;
|
||||||
|
int delta;
|
||||||
switch ( myTypeId ) {
|
switch ( myTypeId ) {
|
||||||
case grpNodeSelection: anActor->SetNodeColor( aColor.R, aColor.G, aColor.B ); break;
|
case grpNodeSelection: anActor->SetNodeColor( aColor.R, aColor.G, aColor.B ); break;
|
||||||
case grpBallSelection: anActor->SetBallColor( aColor.R, aColor.G, aColor.B ); break;
|
case grpBallSelection: anActor->SetBallColor( aColor.R, aColor.G, aColor.B ); break;
|
||||||
case grpEdgeSelection: anActor->SetEdgeColor( aColor.R, aColor.G, aColor.B ); break;
|
case grpEdgeSelection: anActor->SetEdgeColor( aColor.R, aColor.G, aColor.B ); break;
|
||||||
case grpFaceSelection:
|
|
||||||
case grpVolumeSelection:
|
case grpVolumeSelection:
|
||||||
|
SMESH::GetColor("SMESH", "volume_color", c , delta, "255,0,170|-100");
|
||||||
|
anActor->SetVolumeColor( aColor.R, aColor.G, aColor.B, delta ); break;
|
||||||
|
break;
|
||||||
|
case grpFaceSelection:
|
||||||
default:
|
default:
|
||||||
QColor c;
|
|
||||||
int delta;
|
|
||||||
SMESH::GetColor("SMESH", "fill_color", c , delta, "0,170,255|-100");
|
SMESH::GetColor("SMESH", "fill_color", c , delta, "0,170,255|-100");
|
||||||
anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B, delta ); break;
|
anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B, delta ); break;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,574 +0,0 @@
|
|||||||
// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
|
|
||||||
//
|
|
||||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
|
||||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
|
||||||
//
|
|
||||||
// This library is free software; you can redistribute it and/or
|
|
||||||
// modify it under the terms of the GNU Lesser General Public
|
|
||||||
// License as published by the Free Software Foundation; either
|
|
||||||
// version 2.1 of the License.
|
|
||||||
//
|
|
||||||
// This library is distributed in the hope that it will be useful,
|
|
||||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
// Lesser General Public License for more details.
|
|
||||||
//
|
|
||||||
// You should have received a copy of the GNU Lesser General Public
|
|
||||||
// License along with this library; if not, write to the Free Software
|
|
||||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
//
|
|
||||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
|
||||||
//
|
|
||||||
|
|
||||||
// SMESH SMESHGUI : GUI for SMESH component
|
|
||||||
// File : SMESHGUI_Preferences_ColorDlg.cxx
|
|
||||||
// Author : Nicolas REJNERI, Open CASCADE S.A.S.
|
|
||||||
// SMESH includes
|
|
||||||
//
|
|
||||||
#include "SMESHGUI_Preferences_ColorDlg.h"
|
|
||||||
|
|
||||||
#include "SMESHGUI.h"
|
|
||||||
#include "SMESHGUI_SpinBox.h"
|
|
||||||
#include "SMESHGUI_Utils.h"
|
|
||||||
|
|
||||||
// SALOME GUI includes
|
|
||||||
#include <SUIT_Desktop.h>
|
|
||||||
#include <SUIT_MessageBox.h>
|
|
||||||
#include <SUIT_ResourceMgr.h>
|
|
||||||
#include <SUIT_Session.h>
|
|
||||||
#include <QtxColorButton.h>
|
|
||||||
#include <VTKViewer_MarkerWidget.h>
|
|
||||||
#include <LightApp_Application.h>
|
|
||||||
#include <SalomeApp_IntSpinBox.h>
|
|
||||||
|
|
||||||
// Qt includes
|
|
||||||
#include <QGroupBox>
|
|
||||||
#include <QLabel>
|
|
||||||
#include <QPushButton>
|
|
||||||
#include <QVBoxLayout>
|
|
||||||
#include <QHBoxLayout>
|
|
||||||
#include <QGridLayout>
|
|
||||||
#include <QCheckBox>
|
|
||||||
#include <QKeyEvent>
|
|
||||||
|
|
||||||
#define SPACING 6
|
|
||||||
#define MARGIN 11
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : SMESHGUI_Preferences_ColorDlg()
|
|
||||||
// purpose : Constructs a SMESHGUI_Preferences_ColorDlg which is a child
|
|
||||||
// of 'parent', with the name 'name' and widget flags set to 'f'
|
|
||||||
// The dialog will by default be modeless, unless you
|
|
||||||
// set'modal' to true to construct a modal dialog.
|
|
||||||
//=================================================================================
|
|
||||||
SMESHGUI_Preferences_ColorDlg::SMESHGUI_Preferences_ColorDlg( SMESHGUI* theModule )
|
|
||||||
: QDialog( SMESH::GetDesktop( theModule ) ),
|
|
||||||
mySMESHGUI( theModule )
|
|
||||||
{
|
|
||||||
setModal( true );
|
|
||||||
setWindowTitle( tr( "DIALOG_TITLE" ) );
|
|
||||||
setSizeGripEnabled( true );
|
|
||||||
|
|
||||||
// -------------------------------
|
|
||||||
QVBoxLayout* topLayout = new QVBoxLayout( this );
|
|
||||||
topLayout->setSpacing( SPACING );
|
|
||||||
topLayout->setMargin( MARGIN );
|
|
||||||
|
|
||||||
// -------------------------------
|
|
||||||
QGroupBox* ButtonGroup1 = new QGroupBox( tr( "GRP_ELEMENTS" ), this );
|
|
||||||
QGridLayout* ButtonGroup1Layout = new QGridLayout( ButtonGroup1 );
|
|
||||||
ButtonGroup1Layout->setSpacing( SPACING );
|
|
||||||
ButtonGroup1Layout->setMargin( MARGIN );
|
|
||||||
|
|
||||||
QLabel* TextLabel_Fill = new QLabel( tr( "SURFACE_COLOR_LBL" ), ButtonGroup1 );
|
|
||||||
|
|
||||||
toolSurfColor = new QtxBiColorTool(ButtonGroup1);
|
|
||||||
toolSurfColor->setText( tr( "BACKSURFACE_COLOR_LBL" ));
|
|
||||||
|
|
||||||
QLabel* TextLabel_Outline = new QLabel( tr( "OUTLINE_COLOR_LBL" ), ButtonGroup1 );
|
|
||||||
btnOutlineColor = new QtxColorButton( ButtonGroup1 );
|
|
||||||
|
|
||||||
QLabel* TextLabel_Wireframe = new QLabel( tr( "WIREFRAME_COLOR_LBL" ), ButtonGroup1 );
|
|
||||||
btnWireframeColor = new QtxColorButton( ButtonGroup1 );
|
|
||||||
|
|
||||||
QLabel* TextLabel_0DElements_Color = new QLabel( tr( "0D_ELEMENTS_COLOR_LBL" ), ButtonGroup1 );
|
|
||||||
btn0DElementsColor = new QtxColorButton( ButtonGroup1 );
|
|
||||||
|
|
||||||
QLabel* TextLabel_0DElements_Size = new QLabel( tr( "0D_ELEMENTS_SIZE_LBL" ), ButtonGroup1 );
|
|
||||||
SpinBox_0DElements_Size = new SalomeApp_IntSpinBox( ButtonGroup1 );
|
|
||||||
SpinBox_0DElements_Size->setAcceptNames( false ); // No Notebook variables allowed
|
|
||||||
SpinBox_0DElements_Size->setRange( 1, 10 );
|
|
||||||
SpinBox_0DElements_Size->setSingleStep( 1 );
|
|
||||||
SpinBox_0DElements_Size->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
|
|
||||||
SpinBox_0DElements_Size->setButtonSymbols( QSpinBox::PlusMinus );
|
|
||||||
|
|
||||||
QLabel* TextLabel_BallElem_Color = new QLabel( tr( "BALL_ELEMENTS_COLOR_LBL" ), ButtonGroup1 );
|
|
||||||
btnBallElemColor = new QtxColorButton( ButtonGroup1 );
|
|
||||||
|
|
||||||
QLabel* TextLabel_BallElem_Size = new QLabel( tr( "BALL_ELEMENTS_SIZE_LBL" ), ButtonGroup1 );
|
|
||||||
SpinBox_BallElem_Size = new SalomeApp_IntSpinBox( ButtonGroup1 );
|
|
||||||
SpinBox_BallElem_Size->setAcceptNames( false ); // No Notebook variables allowed
|
|
||||||
SpinBox_BallElem_Size->setRange( 1, 10 );
|
|
||||||
SpinBox_BallElem_Size->setSingleStep( 1 );
|
|
||||||
SpinBox_BallElem_Size->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
|
|
||||||
SpinBox_BallElem_Size->setButtonSymbols( QSpinBox::PlusMinus );
|
|
||||||
|
|
||||||
QLabel* TextLabel_Width = new QLabel( tr( "LINE_WIDTH_LBL" ), ButtonGroup1 );
|
|
||||||
SpinBox_Width = new SalomeApp_IntSpinBox( ButtonGroup1 );
|
|
||||||
SpinBox_Width->setAcceptNames( false ); // No Notebook variables allowed
|
|
||||||
SpinBox_Width->setRange( 1, 5 );
|
|
||||||
SpinBox_Width->setSingleStep( 1 );
|
|
||||||
SpinBox_Width->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
|
|
||||||
SpinBox_Width->setButtonSymbols( QSpinBox::PlusMinus );
|
|
||||||
|
|
||||||
QLabel* TextLabel_ShrinkCoeff = new QLabel( tr( "SHRINK_COEF_LBL" ), ButtonGroup1 );
|
|
||||||
SpinBox_Shrink = new SalomeApp_IntSpinBox( ButtonGroup1 );
|
|
||||||
SpinBox_Shrink->setAcceptNames( false ); // No Notebook variables allowed
|
|
||||||
SpinBox_Shrink->setRange( 20, 100 );
|
|
||||||
SpinBox_Shrink->setSingleStep( 1 );
|
|
||||||
SpinBox_Shrink->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
|
|
||||||
SpinBox_Shrink->setButtonSymbols( QSpinBox::PlusMinus );
|
|
||||||
|
|
||||||
int row = 0;
|
|
||||||
ButtonGroup1Layout->addWidget( TextLabel_Fill, row, 0 );
|
|
||||||
ButtonGroup1Layout->addWidget( toolSurfColor, row++, 1, 1, 3 );
|
|
||||||
|
|
||||||
ButtonGroup1Layout->addWidget( TextLabel_Outline, row, 0 );
|
|
||||||
ButtonGroup1Layout->addWidget( btnOutlineColor, row, 1 );
|
|
||||||
ButtonGroup1Layout->addWidget( TextLabel_Wireframe, row, 2 );
|
|
||||||
ButtonGroup1Layout->addWidget( btnWireframeColor, row++, 3 );
|
|
||||||
|
|
||||||
ButtonGroup1Layout->addWidget( TextLabel_0DElements_Color, row, 0 );
|
|
||||||
ButtonGroup1Layout->addWidget( btn0DElementsColor, row, 1 );
|
|
||||||
|
|
||||||
ButtonGroup1Layout->addWidget( TextLabel_0DElements_Size, row, 2 );
|
|
||||||
ButtonGroup1Layout->addWidget( SpinBox_0DElements_Size, row++, 3 );
|
|
||||||
|
|
||||||
ButtonGroup1Layout->addWidget( TextLabel_BallElem_Color, row, 0 );
|
|
||||||
ButtonGroup1Layout->addWidget( btnBallElemColor, row, 1 );
|
|
||||||
|
|
||||||
ButtonGroup1Layout->addWidget( TextLabel_BallElem_Size, row, 2 );
|
|
||||||
ButtonGroup1Layout->addWidget( SpinBox_BallElem_Size, row++, 3 );
|
|
||||||
|
|
||||||
ButtonGroup1Layout->addWidget( TextLabel_Width, row, 0 );
|
|
||||||
ButtonGroup1Layout->addWidget( SpinBox_Width, row, 1 );
|
|
||||||
ButtonGroup1Layout->addWidget( TextLabel_ShrinkCoeff, row, 2 );
|
|
||||||
ButtonGroup1Layout->addWidget( SpinBox_Shrink, row, 3 );
|
|
||||||
|
|
||||||
// -------------------------------
|
|
||||||
QGroupBox* ButtonGroup2 = new QGroupBox( tr( "GRP_NODES" ), this );
|
|
||||||
QGridLayout* ButtonGroup2Layout = new QGridLayout( ButtonGroup2 );
|
|
||||||
ButtonGroup2Layout->setSpacing( SPACING );
|
|
||||||
ButtonGroup2Layout->setMargin( MARGIN );
|
|
||||||
|
|
||||||
QLabel* TextLabel_Nodes_Color = new QLabel( tr( "NODES_COLOR_LBL" ), ButtonGroup2 );
|
|
||||||
btnNodeColor = new QtxColorButton( ButtonGroup2 );
|
|
||||||
|
|
||||||
QGroupBox* MarkerGroup = new QGroupBox( tr( "NODES_MARKER_LBL" ), ButtonGroup2 );
|
|
||||||
QVBoxLayout* MarkerGroupLayout = new QVBoxLayout( MarkerGroup );
|
|
||||||
MarkerGroupLayout->setSpacing( 0 );
|
|
||||||
MarkerGroupLayout->setMargin( 0 );
|
|
||||||
|
|
||||||
MarkerWidget = new VTKViewer_MarkerWidget( MarkerGroup );
|
|
||||||
|
|
||||||
MarkerGroupLayout->addWidget( MarkerWidget );
|
|
||||||
|
|
||||||
row = 0;
|
|
||||||
ButtonGroup2Layout->addWidget( TextLabel_Nodes_Color, row, 0 );
|
|
||||||
ButtonGroup2Layout->addWidget( btnNodeColor, row++, 1 );
|
|
||||||
ButtonGroup2Layout->addWidget( MarkerGroup, row++, 0, 1, 3 );
|
|
||||||
ButtonGroup2Layout->setColumnStretch( row, 1 );
|
|
||||||
|
|
||||||
// -------------------------------
|
|
||||||
QGroupBox* ButtonGroup3 = new QGroupBox( tr( "GRP_ORIENTATION" ), this );
|
|
||||||
QGridLayout* ButtonGroup3Layout = new QGridLayout( ButtonGroup3 );
|
|
||||||
ButtonGroup3Layout->setSpacing( SPACING );
|
|
||||||
ButtonGroup3Layout->setMargin( MARGIN );
|
|
||||||
|
|
||||||
QLabel* TextLabel_Orientation_Color = new QLabel( tr( "ORIENTATION_COLOR_LBL" ), ButtonGroup3 );
|
|
||||||
btnOrientationColor = new QtxColorButton( ButtonGroup3 );
|
|
||||||
|
|
||||||
QLabel* TextLabel_Orientation_Scale = new QLabel( tr( "ORIENTATION_SCALE_LBL" ), ButtonGroup3 );
|
|
||||||
SpinBox_Orientation_Scale = new SMESHGUI_SpinBox( ButtonGroup3 );
|
|
||||||
SpinBox_Orientation_Scale->setAcceptNames( false ); // No Notebook variables allowed
|
|
||||||
SpinBox_Orientation_Scale->RangeStepAndValidator( .05, .5, .05, "parametric_precision" );
|
|
||||||
SpinBox_Orientation_Scale->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
|
|
||||||
SpinBox_Orientation_Scale->setButtonSymbols( QSpinBox::PlusMinus );
|
|
||||||
|
|
||||||
CheckBox_Orientation_3DVectors = new QCheckBox( tr( "3D_VECTORS_LBL" ), ButtonGroup3 );
|
|
||||||
|
|
||||||
row = 0;
|
|
||||||
ButtonGroup3Layout->addWidget( TextLabel_Orientation_Color, row, 0 );
|
|
||||||
ButtonGroup3Layout->addWidget( btnOrientationColor, row, 1 );
|
|
||||||
ButtonGroup3Layout->addWidget( TextLabel_Orientation_Scale, row, 2 );
|
|
||||||
ButtonGroup3Layout->addWidget( SpinBox_Orientation_Scale, row++, 3 );
|
|
||||||
ButtonGroup3Layout->addWidget( CheckBox_Orientation_3DVectors, row, 0, 1, 4 );
|
|
||||||
|
|
||||||
// -------------------------------
|
|
||||||
QGroupBox* ButtonGroup4 = new QGroupBox( tr( "GRP_SELECTION" ), this );
|
|
||||||
QGridLayout* ButtonGroup4Layout = new QGridLayout( ButtonGroup4 );
|
|
||||||
ButtonGroup3Layout->setSpacing( SPACING );
|
|
||||||
ButtonGroup3Layout->setMargin( MARGIN );
|
|
||||||
|
|
||||||
QLabel* TextLabel_Selection_Color = new QLabel( tr( "SELECTION_COLOR_LBL" ), ButtonGroup4 );
|
|
||||||
btnSelectionColor = new QtxColorButton( ButtonGroup4 );
|
|
||||||
|
|
||||||
QLabel* TextLabel_Preselection_Color = new QLabel( tr( "PRESELECTION_COLOR_LBL" ), ButtonGroup4 );
|
|
||||||
btnPreselectionColor = new QtxColorButton( ButtonGroup4 );
|
|
||||||
|
|
||||||
row = 0;
|
|
||||||
ButtonGroup4Layout->addWidget( TextLabel_Selection_Color, row, 0 );
|
|
||||||
ButtonGroup4Layout->addWidget( btnSelectionColor, row, 1 );
|
|
||||||
ButtonGroup4Layout->addWidget( TextLabel_Preselection_Color, row, 2 );
|
|
||||||
ButtonGroup4Layout->addWidget( btnPreselectionColor, row, 3 );
|
|
||||||
|
|
||||||
// -------------------------------
|
|
||||||
QGroupBox* GroupButtons = new QGroupBox( this );
|
|
||||||
QHBoxLayout* GroupButtonsLayout = new QHBoxLayout( GroupButtons );
|
|
||||||
GroupButtonsLayout->setSpacing( SPACING );
|
|
||||||
GroupButtonsLayout->setMargin( MARGIN );
|
|
||||||
|
|
||||||
QPushButton* buttonOk = new QPushButton( tr( "SMESH_BUT_OK" ), GroupButtons );
|
|
||||||
buttonOk->setAutoDefault( true );
|
|
||||||
buttonOk->setDefault( true );
|
|
||||||
|
|
||||||
QPushButton* buttonCancel = new QPushButton( tr( "SMESH_BUT_CANCEL" ), GroupButtons );
|
|
||||||
buttonCancel->setAutoDefault( true );
|
|
||||||
|
|
||||||
QPushButton* buttonHelp = new QPushButton( tr( "SMESH_BUT_HELP" ), GroupButtons );
|
|
||||||
buttonHelp->setAutoDefault( true );
|
|
||||||
|
|
||||||
GroupButtonsLayout->addWidget( buttonOk );
|
|
||||||
GroupButtonsLayout->addSpacing( 10 );
|
|
||||||
GroupButtonsLayout->addStretch();
|
|
||||||
GroupButtonsLayout->addWidget( buttonCancel );
|
|
||||||
GroupButtonsLayout->addWidget( buttonHelp );
|
|
||||||
|
|
||||||
// -------------------------------
|
|
||||||
topLayout->addWidget( ButtonGroup1 );
|
|
||||||
topLayout->addWidget( ButtonGroup2 );
|
|
||||||
topLayout->addWidget( ButtonGroup3 );
|
|
||||||
// rnv: Selection and preselection colors are defined only in the Preferences
|
|
||||||
// topLayout->addWidget( ButtonGroup4 );
|
|
||||||
ButtonGroup4->hide();
|
|
||||||
topLayout->addWidget( GroupButtons );
|
|
||||||
|
|
||||||
// -------------------------------
|
|
||||||
mySMESHGUI->SetActiveDialogBox( this );
|
|
||||||
|
|
||||||
myHelpFileName = "colors_size_page.html";
|
|
||||||
|
|
||||||
/* signals and slots connections */
|
|
||||||
connect( buttonOk, SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) );
|
|
||||||
connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( ClickOnCancel() ) );
|
|
||||||
connect( buttonHelp, SIGNAL( clicked() ), this, SLOT( ClickOnHelp() ) );
|
|
||||||
|
|
||||||
connect( mySMESHGUI, SIGNAL ( SignalDeactivateActiveDialog() ),
|
|
||||||
this, SLOT( DeactivateActiveDialog() ) );
|
|
||||||
/* to close dialog if study change */
|
|
||||||
connect( mySMESHGUI, SIGNAL ( SignalCloseAllDialogs() ),
|
|
||||||
this, SLOT( ClickOnCancel() ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : ~SMESHGUI_Preferences_ColorDlg()
|
|
||||||
// purpose : Destructor
|
|
||||||
//=================================================================================
|
|
||||||
SMESHGUI_Preferences_ColorDlg::~SMESHGUI_Preferences_ColorDlg()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : ClickOnOk()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::ClickOnOk()
|
|
||||||
{
|
|
||||||
mySMESHGUI->ResetState();
|
|
||||||
accept();
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : ClickOnCancel()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::ClickOnCancel()
|
|
||||||
{
|
|
||||||
mySMESHGUI->ResetState();
|
|
||||||
reject();
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : ClickOnHelp()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::ClickOnHelp()
|
|
||||||
{
|
|
||||||
LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
|
|
||||||
if (app)
|
|
||||||
app->onHelpContextModule(mySMESHGUI ? app->moduleName(mySMESHGUI->moduleName()) : QString(""), myHelpFileName);
|
|
||||||
else {
|
|
||||||
QString platform;
|
|
||||||
#ifdef WIN32
|
|
||||||
platform = "winapplication";
|
|
||||||
#else
|
|
||||||
platform = "application";
|
|
||||||
#endif
|
|
||||||
SUIT_MessageBox::warning(this, tr("WRN_WARNING"),
|
|
||||||
tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
|
|
||||||
arg(app->resourceMgr()->stringValue("ExternalBrowser",
|
|
||||||
platform)).
|
|
||||||
arg(myHelpFileName));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : DeactivateActiveDialog()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::DeactivateActiveDialog()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : closeEvent()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::closeEvent( QCloseEvent* )
|
|
||||||
{
|
|
||||||
ClickOnCancel(); /* same than click on cancel button */
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : ActivateThisDialog()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::ActivateThisDialog()
|
|
||||||
{
|
|
||||||
/* Emit a signal to deactivate any active dialog */
|
|
||||||
mySMESHGUI->EmitSignalDeactivateDialog();
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : SetColor()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::SetColor( int type, const QColor& color )
|
|
||||||
{
|
|
||||||
switch ( type ) {
|
|
||||||
case 1 : toolSurfColor->setMainColor( color ); break; // fill
|
|
||||||
case 2 : btnWireframeColor->setColor( color ); break; // wireframe
|
|
||||||
case 3 : btnNodeColor->setColor( color ); break; // node
|
|
||||||
case 4 : btnOutlineColor->setColor( color ); break; // outline
|
|
||||||
case 5 : btn0DElementsColor->setColor( color ); break; // 0d elements
|
|
||||||
case 6 : btnBallElemColor->setColor( color ); break; // ball elements
|
|
||||||
case 7 : btnOrientationColor->setColor( color ); break; // orientation of faces
|
|
||||||
case 8 : btnSelectionColor->setColor( color ); break; // selection color
|
|
||||||
case 9 : btnPreselectionColor->setColor( color ); break; // pre-selection color
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : GetColor()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
QColor SMESHGUI_Preferences_ColorDlg::GetColor( int type )
|
|
||||||
{
|
|
||||||
QColor color;
|
|
||||||
switch ( type ) {
|
|
||||||
case 1 : color = toolSurfColor->mainColor(); break; // fill
|
|
||||||
case 2 : color = btnWireframeColor->color(); break; // outline
|
|
||||||
case 3 : color = btnNodeColor->color(); break; // node
|
|
||||||
case 4 : color = btnOutlineColor->color(); break; // node
|
|
||||||
case 5 : color = btn0DElementsColor->color(); break; // 0d elements
|
|
||||||
case 6 : color = btnBallElemColor->color(); break; // 0d elements
|
|
||||||
case 7 : color = btnOrientationColor->color(); break; // orientation of faces
|
|
||||||
case 8 : color = btnSelectionColor->color(); break; // selection color
|
|
||||||
case 9 : color = btnPreselectionColor->color(); break; // pre-selection color
|
|
||||||
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
return color;
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : SetIntValue()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::SetIntValue( int type, int value )
|
|
||||||
{
|
|
||||||
switch ( type ) {
|
|
||||||
case 1 : SpinBox_Width->setValue( value ); break; // width
|
|
||||||
case 2 : SpinBox_Shrink->setValue( value ); break; // shrink coeff
|
|
||||||
case 3 : SpinBox_0DElements_Size->setValue( value ); break; // 0d elements
|
|
||||||
case 4 : SpinBox_BallElem_Size->setValue( value ); break; // 0d elements
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : GetIntValue()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
int SMESHGUI_Preferences_ColorDlg::GetIntValue( int type )
|
|
||||||
{
|
|
||||||
int res = 0;
|
|
||||||
switch ( type ) {
|
|
||||||
case 1 : res = SpinBox_Width->value(); break; // width
|
|
||||||
case 2 : res = SpinBox_Shrink->value(); break; // shrink coeff
|
|
||||||
case 3 : res = SpinBox_0DElements_Size->value(); break; // 0d elements
|
|
||||||
case 4 : res = SpinBox_BallElem_Size->value(); break; // 0d elements
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : SetDoubleValue()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::SetDoubleValue( int type, double value )
|
|
||||||
{
|
|
||||||
switch ( type ) {
|
|
||||||
case 1 : SpinBox_Orientation_Scale->setValue( value ); break; // orientation scale
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : GetDoubleValue()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
double SMESHGUI_Preferences_ColorDlg::GetDoubleValue( int type )
|
|
||||||
{
|
|
||||||
double res = 0;
|
|
||||||
switch ( type ) {
|
|
||||||
case 1 : res = SpinBox_Orientation_Scale->value(); break; // orientation scale
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : SetBooleanValue()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::SetBooleanValue( int type, bool value )
|
|
||||||
{
|
|
||||||
switch ( type ) {
|
|
||||||
case 1 : CheckBox_Orientation_3DVectors->setChecked( value ); break; // 3D vectors
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : GetBooleanValue()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
bool SMESHGUI_Preferences_ColorDlg::GetBooleanValue( int type )
|
|
||||||
{
|
|
||||||
bool res = false;
|
|
||||||
switch ( type ) {
|
|
||||||
case 1 : res = CheckBox_Orientation_3DVectors->isChecked(); break; // 3D vectors
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : setCustomMarkerMap()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::setCustomMarkerMap( VTK::MarkerMap theMarkerMap )
|
|
||||||
{
|
|
||||||
MarkerWidget->setCustomMarkerMap( theMarkerMap );
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : getCustomMarkerMap()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
VTK::MarkerMap SMESHGUI_Preferences_ColorDlg::getCustomMarkerMap()
|
|
||||||
{
|
|
||||||
return MarkerWidget->getCustomMarkerMap();
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : setStandardMarker()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::setStandardMarker( VTK::MarkerType theMarkerType,
|
|
||||||
VTK::MarkerScale theMarkerScale )
|
|
||||||
{
|
|
||||||
MarkerWidget->setStandardMarker( theMarkerType, theMarkerScale );
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : setCustomMarker()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::setCustomMarker( int theId )
|
|
||||||
{
|
|
||||||
MarkerWidget->setCustomMarker( theId );
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : getMarkerType()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
VTK::MarkerType SMESHGUI_Preferences_ColorDlg::getMarkerType() const
|
|
||||||
{
|
|
||||||
return MarkerWidget->getMarkerType();
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : getStandardMarkerScale()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
VTK::MarkerScale SMESHGUI_Preferences_ColorDlg::getStandardMarkerScale() const
|
|
||||||
{
|
|
||||||
return MarkerWidget->getStandardMarkerScale();
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : getCustomMarkerID()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
int SMESHGUI_Preferences_ColorDlg::getCustomMarkerID() const
|
|
||||||
{
|
|
||||||
return MarkerWidget->getCustomMarkerID();
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : SetDeltaBrightness(int)
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::SetDeltaBrightness(int delta)
|
|
||||||
{
|
|
||||||
toolSurfColor->setDelta(delta);
|
|
||||||
}
|
|
||||||
//=================================================================================
|
|
||||||
// function : GetDeltaBrightness()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
int SMESHGUI_Preferences_ColorDlg::GetDeltaBrightness()
|
|
||||||
{
|
|
||||||
return toolSurfColor->delta();
|
|
||||||
}
|
|
||||||
|
|
||||||
//=================================================================================
|
|
||||||
// function : keyPressEvent()
|
|
||||||
// purpose :
|
|
||||||
//=================================================================================
|
|
||||||
void SMESHGUI_Preferences_ColorDlg::keyPressEvent( QKeyEvent* e )
|
|
||||||
{
|
|
||||||
QDialog::keyPressEvent( e );
|
|
||||||
if ( e->isAccepted() )
|
|
||||||
return;
|
|
||||||
|
|
||||||
if ( e->key() == Qt::Key_F1 ) {
|
|
||||||
e->accept();
|
|
||||||
ClickOnHelp();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,110 +0,0 @@
|
|||||||
// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
|
|
||||||
//
|
|
||||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
|
||||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
|
||||||
//
|
|
||||||
// This library is free software; you can redistribute it and/or
|
|
||||||
// modify it under the terms of the GNU Lesser General Public
|
|
||||||
// License as published by the Free Software Foundation; either
|
|
||||||
// version 2.1 of the License.
|
|
||||||
//
|
|
||||||
// This library is distributed in the hope that it will be useful,
|
|
||||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
// Lesser General Public License for more details.
|
|
||||||
//
|
|
||||||
// You should have received a copy of the GNU Lesser General Public
|
|
||||||
// License along with this library; if not, write to the Free Software
|
|
||||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
//
|
|
||||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
|
||||||
//
|
|
||||||
|
|
||||||
// SMESH SMESHGUI : GUI for SMESH component
|
|
||||||
// File : SMESHGUI_Preferences_ColorDlg.h
|
|
||||||
// Author : Nicolas REJNERI, Open CASCADE S.A.S.
|
|
||||||
//
|
|
||||||
#ifndef SMESHGUI_PREFERENCES_COLORDLG_H
|
|
||||||
#define SMESHGUI_PREFERENCES_COLORDLG_H
|
|
||||||
|
|
||||||
// SMESH includes
|
|
||||||
#include "SMESH_SMESHGUI.hxx"
|
|
||||||
|
|
||||||
// SALOME GUI includes
|
|
||||||
#include <VTKViewer_MarkerDef.h>
|
|
||||||
#include <QtxBiColorTool.h>
|
|
||||||
|
|
||||||
// Qt includes
|
|
||||||
#include <QDialog>
|
|
||||||
|
|
||||||
class QCheckBox;
|
|
||||||
class SMESHGUI;
|
|
||||||
class SMESHGUI_SpinBox;
|
|
||||||
class SalomeApp_IntSpinBox;
|
|
||||||
class QtxColorButton;
|
|
||||||
class VTKViewer_MarkerWidget;
|
|
||||||
|
|
||||||
class SMESHGUI_EXPORT SMESHGUI_Preferences_ColorDlg : public QDialog
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
SMESHGUI_Preferences_ColorDlg( SMESHGUI* );
|
|
||||||
~SMESHGUI_Preferences_ColorDlg();
|
|
||||||
|
|
||||||
void SetColor( int, const QColor& );
|
|
||||||
QColor GetColor( int );
|
|
||||||
void SetIntValue( int, int );
|
|
||||||
int GetIntValue( int );
|
|
||||||
void SetDoubleValue( int, double );
|
|
||||||
double GetDoubleValue( int );
|
|
||||||
void SetBooleanValue( int, bool );
|
|
||||||
bool GetBooleanValue( int );
|
|
||||||
|
|
||||||
void setCustomMarkerMap( VTK::MarkerMap );
|
|
||||||
VTK::MarkerMap getCustomMarkerMap();
|
|
||||||
|
|
||||||
void SetDeltaBrightness(int);
|
|
||||||
int GetDeltaBrightness();
|
|
||||||
|
|
||||||
void setStandardMarker( VTK::MarkerType, VTK::MarkerScale );
|
|
||||||
void setCustomMarker( int );
|
|
||||||
VTK::MarkerType getMarkerType() const;
|
|
||||||
VTK::MarkerScale getStandardMarkerScale() const;
|
|
||||||
int getCustomMarkerID() const;
|
|
||||||
|
|
||||||
protected:
|
|
||||||
void closeEvent( QCloseEvent* );
|
|
||||||
void keyPressEvent( QKeyEvent* );
|
|
||||||
|
|
||||||
private slots:
|
|
||||||
void ClickOnOk();
|
|
||||||
void ClickOnCancel();
|
|
||||||
void ClickOnHelp();
|
|
||||||
void DeactivateActiveDialog();
|
|
||||||
void ActivateThisDialog();
|
|
||||||
|
|
||||||
private:
|
|
||||||
SMESHGUI* mySMESHGUI;
|
|
||||||
|
|
||||||
QtxBiColorTool* toolSurfColor;
|
|
||||||
QtxColorButton* btnWireframeColor;
|
|
||||||
QtxColorButton* btnOutlineColor;
|
|
||||||
QtxColorButton* btn0DElementsColor;
|
|
||||||
QtxColorButton* btnBallElemColor;
|
|
||||||
SalomeApp_IntSpinBox* SpinBox_0DElements_Size;
|
|
||||||
SalomeApp_IntSpinBox* SpinBox_BallElem_Size;
|
|
||||||
SalomeApp_IntSpinBox* SpinBox_Width;
|
|
||||||
SalomeApp_IntSpinBox* SpinBox_Shrink;
|
|
||||||
QtxColorButton* btnNodeColor;
|
|
||||||
VTKViewer_MarkerWidget* MarkerWidget;
|
|
||||||
QtxColorButton* btnOrientationColor;
|
|
||||||
SMESHGUI_SpinBox* SpinBox_Orientation_Scale;
|
|
||||||
QCheckBox* CheckBox_Orientation_3DVectors;
|
|
||||||
QtxColorButton* btnPreselectionColor;
|
|
||||||
QtxColorButton* btnSelectionColor;
|
|
||||||
|
|
||||||
QString myHelpFileName;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // SMESHGUI_PREFERENCES_COLORDLG_H
|
|
636
src/SMESHGUI/SMESHGUI_PropertiesDlg.cxx
Normal file
636
src/SMESHGUI/SMESHGUI_PropertiesDlg.cxx
Normal file
@ -0,0 +1,636 @@
|
|||||||
|
// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||||
|
//
|
||||||
|
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||||
|
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||||
|
//
|
||||||
|
// This library is free software; you can redistribute it and/or
|
||||||
|
// modify it under the terms of the GNU Lesser General Public
|
||||||
|
// License as published by the Free Software Foundation; either
|
||||||
|
// version 2.1 of the License.
|
||||||
|
//
|
||||||
|
// This library is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
// Lesser General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU Lesser General Public
|
||||||
|
// License along with this library; if not, write to the Free Software
|
||||||
|
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
//
|
||||||
|
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||||
|
//
|
||||||
|
// File : SMESHGUI_PropertiesDlg.cxx
|
||||||
|
// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
|
||||||
|
|
||||||
|
#include "SMESHGUI_PropertiesDlg.h"
|
||||||
|
#include "SMESH_Actor.h"
|
||||||
|
|
||||||
|
#include <QCheckBox>
|
||||||
|
#include <QFrame>
|
||||||
|
#include <QGroupBox>
|
||||||
|
#include <QHBoxLayout>
|
||||||
|
#include <QLabel>
|
||||||
|
|
||||||
|
#include <QtxBiColorTool.h>
|
||||||
|
#include <QtxColorButton.h>
|
||||||
|
#include <QtxIntSpinBox.h>
|
||||||
|
#include <VTKViewer_MarkerWidget.h>
|
||||||
|
|
||||||
|
const int MARGIN = 9;
|
||||||
|
const int SPACING = 6;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\class SMESHGUI_PropertiesDlg
|
||||||
|
\brief Dialog box to set-up mesh presentation properties: colors,
|
||||||
|
sizes of elements, width of lines etc
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
\brief Constructor
|
||||||
|
\param customMarkers custom node markers
|
||||||
|
\param parent parent widget
|
||||||
|
*/
|
||||||
|
SMESHGUI_PropertiesDlg::SMESHGUI_PropertiesDlg( const VTK::MarkerMap& customMarkers, QWidget* parent )
|
||||||
|
: SMESHGUI_Dialog( parent, true, true, Standard )
|
||||||
|
{
|
||||||
|
// set title
|
||||||
|
setWindowTitle( tr( "TITLE" ) );
|
||||||
|
|
||||||
|
// create widgets
|
||||||
|
|
||||||
|
QHBoxLayout* hl;
|
||||||
|
int widthLab1 = 0, widthLab2 = 0;
|
||||||
|
|
||||||
|
// -- node controls
|
||||||
|
myNodeGrp = new QGroupBox( tr( "NODES" ), mainFrame() );
|
||||||
|
QLabel* nodeColorLab = new QLabel( tr( "COLOR" ), myNodeGrp );
|
||||||
|
myNodeColor = new QtxColorButton( myNodeGrp );
|
||||||
|
myNodeMarker = new VTKViewer_MarkerWidget( myNodeGrp );
|
||||||
|
hl = new QHBoxLayout( myNodeGrp );
|
||||||
|
hl->setMargin( MARGIN );
|
||||||
|
hl->setSpacing( SPACING );
|
||||||
|
hl->addWidget( nodeColorLab );
|
||||||
|
hl->addWidget( myNodeColor );
|
||||||
|
hl->addWidget( myNodeMarker );
|
||||||
|
widthLab1 = qMax( widthLab1, nodeColorLab->minimumSizeHint().width() );
|
||||||
|
widthLab2 = qMax( widthLab2, myNodeMarker->typeLabel()->minimumSizeHint().width() );
|
||||||
|
|
||||||
|
// -- edge controls
|
||||||
|
myEdgeGrp = new QGroupBox( tr( "EDGES" ), mainFrame() );
|
||||||
|
QLabel* edgeColorLab = new QLabel( tr( "COLOR" ), myEdgeGrp );
|
||||||
|
myEdgeColor = new QtxColorButton( myEdgeGrp );
|
||||||
|
QLabel* edgeWidthLab = new QLabel( tr( "WIDTH" ), myEdgeGrp );
|
||||||
|
myEdgeWidth = new QtxIntSpinBox( myEdgeGrp );
|
||||||
|
hl = new QHBoxLayout( myEdgeGrp );
|
||||||
|
hl->setMargin( MARGIN );
|
||||||
|
hl->setSpacing( SPACING );
|
||||||
|
hl->addWidget( edgeColorLab );
|
||||||
|
hl->addWidget( myEdgeColor );
|
||||||
|
hl->addWidget( edgeWidthLab );
|
||||||
|
hl->addWidget( myEdgeWidth );
|
||||||
|
widthLab1 = qMax( widthLab1, edgeColorLab->minimumSizeHint().width() );
|
||||||
|
widthLab2 = qMax( widthLab2, edgeWidthLab->minimumSizeHint().width() );
|
||||||
|
|
||||||
|
// -- face controls
|
||||||
|
myFaceGrp = new QGroupBox( tr( "FACES" ), mainFrame() );
|
||||||
|
QLabel* faceColorLab = new QLabel( tr( "FACE_FRONT" ), myFaceGrp );
|
||||||
|
myFaceColor = new QtxBiColorTool( myFaceGrp );
|
||||||
|
myFaceColor->label()->setText( tr( "FACE_BACK" ) );
|
||||||
|
hl = new QHBoxLayout( myFaceGrp );
|
||||||
|
hl->setMargin( MARGIN );
|
||||||
|
hl->setSpacing( SPACING );
|
||||||
|
hl->addWidget( faceColorLab );
|
||||||
|
hl->addWidget( myFaceColor );
|
||||||
|
widthLab1 = qMax( widthLab1, faceColorLab->minimumSizeHint().width() );
|
||||||
|
widthLab2 = qMax( widthLab2, myFaceColor->label()->minimumSizeHint().width() );
|
||||||
|
|
||||||
|
// -- volumes
|
||||||
|
myVolumeGrp = new QGroupBox( tr( "VOLUMES" ), mainFrame() );
|
||||||
|
QLabel* volumeColorLab = new QLabel( tr( "VOLUME_NORMAL" ), myVolumeGrp );
|
||||||
|
myVolumeColor = new QtxBiColorTool( myVolumeGrp );
|
||||||
|
myVolumeColor->label()->setText( tr( "VOLUME_REVERSED" ) );
|
||||||
|
hl = new QHBoxLayout( myVolumeGrp );
|
||||||
|
hl->setMargin( MARGIN );
|
||||||
|
hl->setSpacing( SPACING );
|
||||||
|
hl->addWidget( volumeColorLab );
|
||||||
|
hl->addWidget( myVolumeColor );
|
||||||
|
widthLab1 = qMax( widthLab1, volumeColorLab->minimumSizeHint().width() );
|
||||||
|
widthLab2 = qMax( widthLab2, myVolumeColor->label()->minimumSizeHint().width() );
|
||||||
|
|
||||||
|
// -- outline controls
|
||||||
|
myOutlineGrp = new QGroupBox( tr( "OUTLINES" ), mainFrame() );
|
||||||
|
QLabel* outlineColorLab = new QLabel( tr( "COLOR" ), myOutlineGrp );
|
||||||
|
myOutlineColor = new QtxColorButton( myOutlineGrp );
|
||||||
|
QLabel* outlineWidthLab = new QLabel( tr( "WIDTH" ), myOutlineGrp );
|
||||||
|
myOutlineWidth = new QtxIntSpinBox( myOutlineGrp );
|
||||||
|
hl = new QHBoxLayout( myOutlineGrp );
|
||||||
|
hl->setMargin( MARGIN );
|
||||||
|
hl->setSpacing( SPACING );
|
||||||
|
hl->addWidget( outlineColorLab );
|
||||||
|
hl->addWidget( myOutlineColor );
|
||||||
|
hl->addWidget( outlineWidthLab );
|
||||||
|
hl->addWidget( myOutlineWidth );
|
||||||
|
widthLab1 = qMax( widthLab1, outlineColorLab->minimumSizeHint().width() );
|
||||||
|
widthLab2 = qMax( widthLab2, outlineWidthLab->minimumSizeHint().width() );
|
||||||
|
|
||||||
|
// -- 0d element controls
|
||||||
|
myElem0dGrp = new QGroupBox( tr( "0D_ELEMENTS" ), mainFrame() );
|
||||||
|
QLabel* elem0dColorLab = new QLabel( tr( "COLOR" ), myElem0dGrp );
|
||||||
|
myElem0dColor = new QtxColorButton( myElem0dGrp );
|
||||||
|
QLabel* elem0dSizeLab = new QLabel( tr( "SIZE" ), myElem0dGrp );
|
||||||
|
myElem0dSize = new QtxIntSpinBox( myElem0dGrp );
|
||||||
|
hl = new QHBoxLayout( myElem0dGrp );
|
||||||
|
hl->setMargin( MARGIN );
|
||||||
|
hl->setSpacing( SPACING );
|
||||||
|
hl->addWidget( elem0dColorLab );
|
||||||
|
hl->addWidget( myElem0dColor );
|
||||||
|
hl->addWidget( elem0dSizeLab );
|
||||||
|
hl->addWidget( myElem0dSize );
|
||||||
|
widthLab1 = qMax( widthLab1, elem0dColorLab->minimumSizeHint().width() );
|
||||||
|
widthLab2 = qMax( widthLab2, elem0dSizeLab->minimumSizeHint().width() );
|
||||||
|
|
||||||
|
// -- ball controls
|
||||||
|
myBallGrp = new QGroupBox( tr( "BALLS" ), mainFrame() );
|
||||||
|
QLabel* ballColorLab = new QLabel( tr( "COLOR" ), myBallGrp );
|
||||||
|
myBallColor = new QtxColorButton( myBallGrp );
|
||||||
|
QLabel* ballSizeLab = new QLabel( tr( "SIZE" ), myBallGrp );
|
||||||
|
myBallSize = new QtxIntSpinBox( myBallGrp );
|
||||||
|
hl = new QHBoxLayout( myBallGrp );
|
||||||
|
hl->setMargin( MARGIN );
|
||||||
|
hl->setSpacing( SPACING );
|
||||||
|
hl->addWidget( ballColorLab );
|
||||||
|
hl->addWidget( myBallColor );
|
||||||
|
hl->addWidget( ballSizeLab );
|
||||||
|
hl->addWidget( myBallSize );
|
||||||
|
widthLab1 = qMax( widthLab1, ballColorLab->minimumSizeHint().width() );
|
||||||
|
widthLab2 = qMax( widthLab2, ballSizeLab->minimumSizeHint().width() );
|
||||||
|
|
||||||
|
// -- orientation vector controls
|
||||||
|
myOrientationGrp = new QGroupBox( tr( "ORIENTATIONS" ), mainFrame() );
|
||||||
|
QLabel* orientationColorLab = new QLabel( tr( "COLOR" ), myOrientationGrp );
|
||||||
|
myOrientationColor = new QtxColorButton( myOrientationGrp );
|
||||||
|
QLabel* orientationScaleLab = new QLabel( tr( "ORIENTATION_SCALE" ), myOrientationGrp );
|
||||||
|
myOrientationSize = new QtxIntSpinBox( myOrientationGrp );
|
||||||
|
myOrientationSize->setSuffix( "% ");
|
||||||
|
myOrientation3d = new QCheckBox( tr("ORIENTATION_3D"), myOrientationGrp );
|
||||||
|
hl = new QHBoxLayout( myOrientationGrp );
|
||||||
|
hl->setMargin( MARGIN );
|
||||||
|
hl->setSpacing( SPACING );
|
||||||
|
hl->addWidget( orientationColorLab );
|
||||||
|
hl->addWidget( myOrientationColor );
|
||||||
|
hl->addWidget( orientationScaleLab );
|
||||||
|
hl->addWidget( myOrientationSize );
|
||||||
|
hl->addWidget( myOrientation3d );
|
||||||
|
widthLab1 = qMax( widthLab1, orientationColorLab->minimumSizeHint().width() );
|
||||||
|
widthLab2 = qMax( widthLab2, orientationScaleLab->minimumSizeHint().width() );
|
||||||
|
|
||||||
|
// -- other controls
|
||||||
|
myExtraGrp = new QFrame( mainFrame() );
|
||||||
|
QLabel* shrinkSizeLab = new QLabel( tr( "SHRINK" ), myExtraGrp );
|
||||||
|
myShrinkSize = new QtxIntSpinBox( myExtraGrp );
|
||||||
|
myShrinkSize->setSuffix( "% ");
|
||||||
|
hl = new QHBoxLayout( myExtraGrp );
|
||||||
|
hl->setMargin( MARGIN );
|
||||||
|
hl->setSpacing( SPACING );
|
||||||
|
hl->addWidget( shrinkSizeLab );
|
||||||
|
hl->addWidget( myShrinkSize );
|
||||||
|
hl->addStretch();
|
||||||
|
widthLab1 = qMax( widthLab1, shrinkSizeLab->minimumSizeHint().width() );
|
||||||
|
|
||||||
|
// layout widgets
|
||||||
|
QVBoxLayout* vl = new QVBoxLayout( mainFrame() );
|
||||||
|
vl->setMargin( 0 );
|
||||||
|
vl->setSpacing( SPACING );
|
||||||
|
vl->addWidget( myNodeGrp );
|
||||||
|
vl->addWidget( myEdgeGrp );
|
||||||
|
vl->addWidget( myFaceGrp );
|
||||||
|
vl->addWidget( myVolumeGrp );
|
||||||
|
vl->addWidget( myOutlineGrp );
|
||||||
|
vl->addWidget( myElem0dGrp );
|
||||||
|
vl->addWidget( myBallGrp );
|
||||||
|
vl->addWidget( myOrientationGrp );
|
||||||
|
vl->addWidget( myExtraGrp );
|
||||||
|
|
||||||
|
nodeColorLab->setMinimumWidth( widthLab1 );
|
||||||
|
edgeColorLab->setMinimumWidth( widthLab1 );
|
||||||
|
faceColorLab->setMinimumWidth( widthLab1 );
|
||||||
|
volumeColorLab->setMinimumWidth( widthLab1 );
|
||||||
|
outlineColorLab->setMinimumWidth( widthLab1 );
|
||||||
|
elem0dColorLab->setMinimumWidth( widthLab1 );
|
||||||
|
ballColorLab->setMinimumWidth( widthLab1 );
|
||||||
|
orientationColorLab->setMinimumWidth( widthLab1 );
|
||||||
|
shrinkSizeLab->setMinimumWidth( widthLab1 );
|
||||||
|
|
||||||
|
myNodeMarker->typeLabel()->setMinimumWidth( widthLab2 );
|
||||||
|
edgeWidthLab->setMinimumWidth( widthLab2 );
|
||||||
|
myFaceColor->label()->setMinimumWidth( widthLab2 );
|
||||||
|
myVolumeColor->label()->setMinimumWidth( widthLab2 );
|
||||||
|
outlineWidthLab->setMinimumWidth( widthLab2 );
|
||||||
|
elem0dSizeLab->setMinimumWidth( widthLab2 );
|
||||||
|
ballSizeLab->setMinimumWidth( widthLab2 );
|
||||||
|
orientationScaleLab->setMinimumWidth( widthLab2 );
|
||||||
|
|
||||||
|
myEdgeWidth->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
|
||||||
|
myOutlineWidth->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
|
||||||
|
myElem0dSize->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
|
||||||
|
myBallSize->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
|
||||||
|
myOrientationSize->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
|
||||||
|
myShrinkSize->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
|
||||||
|
|
||||||
|
// initialize widgets
|
||||||
|
myNodeMarker->setCustomMarkers( customMarkers );
|
||||||
|
myElem0dSize->setRange( 1, 10 );
|
||||||
|
myBallSize->setRange( 1, 10 );
|
||||||
|
myEdgeWidth->setRange( 1, 5 );
|
||||||
|
myOutlineWidth->setRange( 1, 5 );
|
||||||
|
myShrinkSize->setRange( 20, 100 );
|
||||||
|
myOrientationSize->setRange( 5, 100 );
|
||||||
|
|
||||||
|
button( OK )->setText( tr( "SMESH_BUT_OK" ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
\brief Destructor: clean-up resources if necessary
|
||||||
|
*/
|
||||||
|
SMESHGUI_PropertiesDlg::~SMESHGUI_PropertiesDlg()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set nodes color
|
||||||
|
\param color nodes color
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setNodeColor( const QColor& color )
|
||||||
|
{
|
||||||
|
myNodeColor->setColor( color );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get nodes color
|
||||||
|
\return current nodes color
|
||||||
|
*/
|
||||||
|
QColor SMESHGUI_PropertiesDlg::nodeColor() const
|
||||||
|
{
|
||||||
|
return myNodeColor->color();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set standard nodes marker
|
||||||
|
\param type standard nodes marker type
|
||||||
|
\param scale standard nodes marker scale
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setNodeMarker( VTK::MarkerType type, VTK::MarkerScale scale )
|
||||||
|
{
|
||||||
|
myNodeMarker->setMarker( type, scale );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set custom nodes marker
|
||||||
|
\param id custom nodes marker id
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setNodeCustomMarker( int id )
|
||||||
|
{
|
||||||
|
myNodeMarker->setCustomMarker( id );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get nodes marker type.
|
||||||
|
For custom marker, VTK::MT_USER is returned and markerId() function
|
||||||
|
then returns its identifier.
|
||||||
|
\return currently selected nodes marker type
|
||||||
|
*/
|
||||||
|
VTK::MarkerType SMESHGUI_PropertiesDlg::nodeMarkerType() const
|
||||||
|
{
|
||||||
|
return myNodeMarker->markerType();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get nodes marker scale.
|
||||||
|
For custom marker return value is undefined.
|
||||||
|
\return currently selected nodes marker scale
|
||||||
|
*/
|
||||||
|
VTK::MarkerScale SMESHGUI_PropertiesDlg::nodeMarkerScale() const
|
||||||
|
{
|
||||||
|
return myNodeMarker->markerScale();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get custom nodes marker.
|
||||||
|
For standard markers return value is VTK::MT_NONE.
|
||||||
|
\return custom nodes marker id
|
||||||
|
*/
|
||||||
|
int SMESHGUI_PropertiesDlg::nodeMarkerId() const
|
||||||
|
{
|
||||||
|
return myNodeMarker->markerId();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set edges (wireframe) color
|
||||||
|
\param color edges color
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setEdgeColor( const QColor& color )
|
||||||
|
{
|
||||||
|
myEdgeColor->setColor( color );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get edges (wireframe) color
|
||||||
|
\return current edges color
|
||||||
|
*/
|
||||||
|
QColor SMESHGUI_PropertiesDlg::edgeColor() const
|
||||||
|
{
|
||||||
|
return myEdgeColor->color();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set edges width
|
||||||
|
\param width edges width
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setEdgeWidth( int width )
|
||||||
|
{
|
||||||
|
myEdgeWidth->setValue( width );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get edges width
|
||||||
|
\return current edges width
|
||||||
|
*/
|
||||||
|
int SMESHGUI_PropertiesDlg::edgeWidth() const
|
||||||
|
{
|
||||||
|
return myEdgeWidth->value();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set faces colors
|
||||||
|
\param color front faces color
|
||||||
|
\param delta back faces coloring delta
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setFaceColor( const QColor& color, int delta )
|
||||||
|
{
|
||||||
|
myFaceColor->setMainColor( color );
|
||||||
|
myFaceColor->setDelta( delta );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get front faces color
|
||||||
|
\return current front faces color
|
||||||
|
*/
|
||||||
|
QColor SMESHGUI_PropertiesDlg::faceColor() const
|
||||||
|
{
|
||||||
|
return myFaceColor->mainColor();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get back faces coloring delta
|
||||||
|
\return current back faces coloring delta
|
||||||
|
*/
|
||||||
|
int SMESHGUI_PropertiesDlg::faceColorDelta() const
|
||||||
|
{
|
||||||
|
return myFaceColor->delta();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set volumes colors
|
||||||
|
\param color normal volumes color
|
||||||
|
\param delta reversed volumes coloring delta
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setVolumeColor( const QColor& color, int delta )
|
||||||
|
{
|
||||||
|
myVolumeColor->setMainColor( color );
|
||||||
|
myVolumeColor->setDelta( delta );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get normal volumes color
|
||||||
|
\return current normal volumes color
|
||||||
|
*/
|
||||||
|
QColor SMESHGUI_PropertiesDlg::volumeColor() const
|
||||||
|
{
|
||||||
|
return myVolumeColor->mainColor();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get reversed volumes coloring delta
|
||||||
|
\return current reversed volumes coloring delta
|
||||||
|
*/
|
||||||
|
int SMESHGUI_PropertiesDlg::volumeColorDelta() const
|
||||||
|
{
|
||||||
|
return myVolumeColor->delta();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set outlines color
|
||||||
|
\param color outlines color
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setOutlineColor( const QColor& color )
|
||||||
|
{
|
||||||
|
myOutlineColor->setColor( color );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get outlines color
|
||||||
|
\return current outlines color
|
||||||
|
*/
|
||||||
|
QColor SMESHGUI_PropertiesDlg::outlineColor() const
|
||||||
|
{
|
||||||
|
return myOutlineColor->color();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set outlines width
|
||||||
|
\param width outlines width
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setOutlineWidth( int width )
|
||||||
|
{
|
||||||
|
myOutlineWidth->setValue( width );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get outlines width
|
||||||
|
\return current outlines width
|
||||||
|
*/
|
||||||
|
int SMESHGUI_PropertiesDlg::outlineWidth() const
|
||||||
|
{
|
||||||
|
return myOutlineWidth->value();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set 0D elements color
|
||||||
|
\param color 0D elements color
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setElem0dColor( const QColor& color )
|
||||||
|
{
|
||||||
|
myElem0dColor->setColor( color );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get 0D elements color
|
||||||
|
\return current 0D elements color
|
||||||
|
*/
|
||||||
|
QColor SMESHGUI_PropertiesDlg::elem0dColor() const
|
||||||
|
{
|
||||||
|
return myElem0dColor->color();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set 0D elements size
|
||||||
|
\param size 0D elements size
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setElem0dSize( int size )
|
||||||
|
{
|
||||||
|
myElem0dSize->setValue( size );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get 0D elements size
|
||||||
|
\return current 0D elements size
|
||||||
|
*/
|
||||||
|
int SMESHGUI_PropertiesDlg::elem0dSize() const
|
||||||
|
{
|
||||||
|
return myElem0dSize->value();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set discrete elements (balls) color
|
||||||
|
\param color discrete elements (balls) color
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setBallColor( const QColor& color )
|
||||||
|
{
|
||||||
|
myBallColor->setColor( color );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get discrete elements (balls) color
|
||||||
|
\return current discrete elements (balls) color
|
||||||
|
*/
|
||||||
|
QColor SMESHGUI_PropertiesDlg::ballColor() const
|
||||||
|
{
|
||||||
|
return myBallColor->color();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set discrete elements (balls) size
|
||||||
|
\param size discrete elements (balls) size
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setBallSize( int size )
|
||||||
|
{
|
||||||
|
myBallSize->setValue( size );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get discrete elements (balls) size
|
||||||
|
\return current discrete elements (balls) size
|
||||||
|
*/
|
||||||
|
int SMESHGUI_PropertiesDlg::ballSize() const
|
||||||
|
{
|
||||||
|
return myBallSize->value();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set orientation vectors color
|
||||||
|
\param color orientation vectors color
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setOrientationColor( const QColor& color )
|
||||||
|
{
|
||||||
|
myOrientationColor->setColor( color );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get orientation vectors color
|
||||||
|
\return current orientation vectors color
|
||||||
|
*/
|
||||||
|
QColor SMESHGUI_PropertiesDlg::orientationColor() const
|
||||||
|
{
|
||||||
|
return myOrientationColor->color();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set orientation vectors scale (percent)
|
||||||
|
\param scale orientation vectors scale
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setOrientationSize( int scale )
|
||||||
|
{
|
||||||
|
myOrientationSize->setValue( scale );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get orientation vectors scale (percent)
|
||||||
|
\return current orientation vectors scale
|
||||||
|
*/
|
||||||
|
int SMESHGUI_PropertiesDlg::orientationSize() const
|
||||||
|
{
|
||||||
|
return myOrientationSize->value();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set orientation vectors 3d flag
|
||||||
|
\param on orientation vectors 3d flag value
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setOrientation3d( bool on )
|
||||||
|
{
|
||||||
|
myOrientation3d->setChecked( on );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get orientation vectors 3d flag
|
||||||
|
\return orientation vectors 3d flag value
|
||||||
|
*/
|
||||||
|
bool SMESHGUI_PropertiesDlg::orientation3d() const
|
||||||
|
{
|
||||||
|
return myOrientation3d->isChecked();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Set shrink coefficient (percent)
|
||||||
|
\param coef shrink coefficient
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::setShrinkCoef( int coef )
|
||||||
|
{
|
||||||
|
myShrinkSize->setValue( coef );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Get shrink coefficient (percent)
|
||||||
|
\return current shrink coefficient
|
||||||
|
*/
|
||||||
|
int SMESHGUI_PropertiesDlg::shrinkCoef() const
|
||||||
|
{
|
||||||
|
return myShrinkSize->value();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
\brief Get custom markers
|
||||||
|
\return custom markers map
|
||||||
|
*/
|
||||||
|
VTK::MarkerMap SMESHGUI_PropertiesDlg::customMarkers() const
|
||||||
|
{
|
||||||
|
return myNodeMarker->customMarkers();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Show / hide controls for specified entity type
|
||||||
|
\param elements mesh element types (an or-ed combination of flags)
|
||||||
|
\param nodes mesh nodes presence flag
|
||||||
|
*/
|
||||||
|
void SMESHGUI_PropertiesDlg::showControls( int elements, bool nodes )
|
||||||
|
{
|
||||||
|
// node controls are supposed to be shown if at least any element type is present
|
||||||
|
// or if there are only nodes
|
||||||
|
myNodeGrp->setVisible( nodes || elements & SMESH_Actor::eAllEntity );
|
||||||
|
// edge controls are shown only if there are edges
|
||||||
|
myEdgeGrp->setVisible( elements & SMESH_Actor::eEdges );
|
||||||
|
// face controls are shown only if there are faces
|
||||||
|
myFaceGrp->setVisible( elements & SMESH_Actor::eFaces );
|
||||||
|
// volume controls are shown only if there are volumes
|
||||||
|
myVolumeGrp->setVisible( elements & SMESH_Actor::eVolumes );
|
||||||
|
// 0d elements controls are shown only if there are 0d elements
|
||||||
|
myElem0dGrp->setVisible( elements & SMESH_Actor::e0DElements );
|
||||||
|
// ball controls are shown only if there are balls
|
||||||
|
myBallGrp->setVisible( elements & SMESH_Actor::eBallElem );
|
||||||
|
// outline controls are needed for faces and volumes
|
||||||
|
myOutlineGrp->setVisible( elements & ( SMESH_Actor::eFaces | SMESH_Actor::eVolumes ) );
|
||||||
|
// orientation controls are needed for faces and volumes
|
||||||
|
myOrientationGrp->setVisible( elements & ( SMESH_Actor::eFaces | SMESH_Actor::eVolumes ) );
|
||||||
|
// shrink factor is shown if there are edges and/or faces and/or volumes
|
||||||
|
myExtraGrp->setVisible( elements & ( SMESH_Actor::eEdges | SMESH_Actor::eFaces | SMESH_Actor::eVolumes ) );
|
||||||
|
}
|
140
src/SMESHGUI/SMESHGUI_PropertiesDlg.h
Normal file
140
src/SMESHGUI/SMESHGUI_PropertiesDlg.h
Normal file
@ -0,0 +1,140 @@
|
|||||||
|
// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||||
|
//
|
||||||
|
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||||
|
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||||
|
//
|
||||||
|
// This library is free software; you can redistribute it and/or
|
||||||
|
// modify it under the terms of the GNU Lesser General Public
|
||||||
|
// License as published by the Free Software Foundation; either
|
||||||
|
// version 2.1 of the License.
|
||||||
|
//
|
||||||
|
// This library is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
// Lesser General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU Lesser General Public
|
||||||
|
// License along with this library; if not, write to the Free Software
|
||||||
|
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
//
|
||||||
|
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||||
|
//
|
||||||
|
// File : SMESHGUI_PropertiesDlg.h
|
||||||
|
// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
|
||||||
|
|
||||||
|
#ifndef SMESHGUI_PROPERTIESDLG_H
|
||||||
|
#define SMESHGUI_PROPERTIESDLG_H
|
||||||
|
|
||||||
|
#include "SMESH_SMESHGUI.hxx"
|
||||||
|
#include "SMESHGUI_Dialog.h"
|
||||||
|
|
||||||
|
#include <VTKViewer_MarkerDef.h>
|
||||||
|
#include <SALOMEconfig.h>
|
||||||
|
#include CORBA_CLIENT_HEADER(SMESH_Mesh)
|
||||||
|
|
||||||
|
class QCheckBox;
|
||||||
|
class QFrame;
|
||||||
|
class QGroupBox;
|
||||||
|
class QtxColorButton;
|
||||||
|
class QtxBiColorTool;
|
||||||
|
class QtxIntSpinBox;
|
||||||
|
class VTKViewer_MarkerWidget;
|
||||||
|
|
||||||
|
class SMESHGUI_EXPORT SMESHGUI_PropertiesDlg : public SMESHGUI_Dialog
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
SMESHGUI_PropertiesDlg( const VTK::MarkerMap&, QWidget* parent );
|
||||||
|
~SMESHGUI_PropertiesDlg();
|
||||||
|
|
||||||
|
void setNodeColor( const QColor& );
|
||||||
|
QColor nodeColor() const;
|
||||||
|
void setNodeMarker( VTK::MarkerType, VTK::MarkerScale );
|
||||||
|
void setNodeCustomMarker( int );
|
||||||
|
VTK::MarkerType nodeMarkerType() const;
|
||||||
|
VTK::MarkerScale nodeMarkerScale() const;
|
||||||
|
int nodeMarkerId() const;
|
||||||
|
|
||||||
|
void setEdgeColor( const QColor& );
|
||||||
|
QColor edgeColor() const;
|
||||||
|
void setEdgeWidth( int );
|
||||||
|
int edgeWidth() const;
|
||||||
|
|
||||||
|
void setFaceColor( const QColor&, int );
|
||||||
|
QColor faceColor() const;
|
||||||
|
int faceColorDelta() const;
|
||||||
|
|
||||||
|
void setVolumeColor( const QColor&, int );
|
||||||
|
QColor volumeColor() const;
|
||||||
|
int volumeColorDelta() const;
|
||||||
|
|
||||||
|
void setOutlineColor( const QColor& );
|
||||||
|
QColor outlineColor() const;
|
||||||
|
void setOutlineWidth( int );
|
||||||
|
int outlineWidth() const;
|
||||||
|
|
||||||
|
void setElem0dColor( const QColor& );
|
||||||
|
QColor elem0dColor() const;
|
||||||
|
void setElem0dSize( int );
|
||||||
|
int elem0dSize() const;
|
||||||
|
|
||||||
|
void setBallColor( const QColor& );
|
||||||
|
QColor ballColor() const;
|
||||||
|
void setBallSize( int );
|
||||||
|
int ballSize() const;
|
||||||
|
|
||||||
|
void setOrientationColor( const QColor& );
|
||||||
|
QColor orientationColor() const;
|
||||||
|
void setOrientationSize( int );
|
||||||
|
int orientationSize() const;
|
||||||
|
void setOrientation3d( bool );
|
||||||
|
bool orientation3d() const;
|
||||||
|
|
||||||
|
void setShrinkCoef( int );
|
||||||
|
int shrinkCoef() const;
|
||||||
|
|
||||||
|
VTK::MarkerMap customMarkers() const;
|
||||||
|
|
||||||
|
void showControls( int, bool );
|
||||||
|
|
||||||
|
private:
|
||||||
|
// group boxes
|
||||||
|
QGroupBox* myNodeGrp;
|
||||||
|
QGroupBox* myEdgeGrp;
|
||||||
|
QGroupBox* myFaceGrp;
|
||||||
|
QGroupBox* myVolumeGrp;
|
||||||
|
QGroupBox* myOutlineGrp;
|
||||||
|
QGroupBox* myElem0dGrp;
|
||||||
|
QGroupBox* myBallGrp;
|
||||||
|
QGroupBox* myOrientationGrp;
|
||||||
|
QFrame* myExtraGrp;
|
||||||
|
// widgets
|
||||||
|
// - nodes
|
||||||
|
QtxColorButton* myNodeColor;
|
||||||
|
VTKViewer_MarkerWidget* myNodeMarker;
|
||||||
|
// - edges
|
||||||
|
QtxColorButton* myEdgeColor;
|
||||||
|
QtxIntSpinBox* myEdgeWidth;
|
||||||
|
// - faces
|
||||||
|
QtxBiColorTool* myFaceColor;
|
||||||
|
// - volumes
|
||||||
|
QtxBiColorTool* myVolumeColor;
|
||||||
|
// - outlines
|
||||||
|
QtxColorButton* myOutlineColor;
|
||||||
|
QtxIntSpinBox* myOutlineWidth;
|
||||||
|
// - 0d elements
|
||||||
|
QtxColorButton* myElem0dColor;
|
||||||
|
QtxIntSpinBox* myElem0dSize;
|
||||||
|
// - balls
|
||||||
|
QtxColorButton* myBallColor;
|
||||||
|
QtxIntSpinBox* myBallSize;
|
||||||
|
// - orientation vectors
|
||||||
|
QtxColorButton* myOrientationColor;
|
||||||
|
QtxIntSpinBox* myOrientationSize;
|
||||||
|
QCheckBox* myOrientation3d;
|
||||||
|
// - shrink coefficient
|
||||||
|
QtxIntSpinBox* myShrinkSize;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // SMESHGUI_PROPERTIESDLG_H
|
@ -610,14 +610,17 @@ namespace SMESH
|
|||||||
SMESH::SMESH_GroupBase_var aGroup = SMESH::SMESH_GroupBase::_narrow( SMESH::SObjectToObject( aSObj ));
|
SMESH::SMESH_GroupBase_var aGroup = SMESH::SMESH_GroupBase::_narrow( SMESH::SObjectToObject( aSObj ));
|
||||||
if(!CORBA::is_nil(aGroup) && anActor)
|
if(!CORBA::is_nil(aGroup) && anActor)
|
||||||
{
|
{
|
||||||
QColor c;int delta;
|
QColor c;
|
||||||
SMESH::GetColor( "SMESH", "fill_color", c, delta, "0,170,255|-100" );
|
int deltaF, deltaV;
|
||||||
|
SMESH::GetColor( "SMESH", "fill_color", c, deltaF, "0,170,255|-100" );
|
||||||
|
SMESH::GetColor( "SMESH", "volume_color", c, deltaV, "255,0,170|-100" );
|
||||||
|
SMESH::GetColor( "SMESH", "default_grp_color", c );
|
||||||
SALOMEDS::Color aColor = aGroup->GetColor();
|
SALOMEDS::Color aColor = aGroup->GetColor();
|
||||||
if( !( aColor.R > 0 || aColor.G > 0 || aColor.B > 0 ))
|
if( !( aColor.R > 0 || aColor.G > 0 || aColor.B > 0 ))
|
||||||
{
|
{
|
||||||
aColor.R = (float)c.red() / 255.0;
|
aColor.R = c.redF();
|
||||||
aColor.G = (float)c.green() / 255.0;
|
aColor.G = c.greenF();
|
||||||
aColor.B = (float)c.blue() / 255.0;
|
aColor.B = c.blueF();
|
||||||
aGroup->SetColor( aColor );
|
aGroup->SetColor( aColor );
|
||||||
}
|
}
|
||||||
if( aGroup->GetType() == SMESH::NODE )
|
if( aGroup->GetType() == SMESH::NODE )
|
||||||
@ -628,8 +631,10 @@ namespace SMESH
|
|||||||
anActor->Set0DColor( aColor.R, aColor.G, aColor.B );
|
anActor->Set0DColor( aColor.R, aColor.G, aColor.B );
|
||||||
else if( aGroup->GetType() == SMESH::BALL )
|
else if( aGroup->GetType() == SMESH::BALL )
|
||||||
anActor->SetBallColor( aColor.R, aColor.G, aColor.B );
|
anActor->SetBallColor( aColor.R, aColor.G, aColor.B );
|
||||||
|
else if( aGroup->GetType() == SMESH::VOLUME )
|
||||||
|
anActor->SetVolumeColor( aColor.R, aColor.G, aColor.B, deltaV );
|
||||||
else
|
else
|
||||||
anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B, delta );
|
anActor->SetSufaceColor( aColor.R, aColor.G, aColor.B, deltaF );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1337,7 +1342,7 @@ namespace SMESH
|
|||||||
|
|
||||||
if( !anIsOk )
|
if( !anIsOk )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
DistanceToPosition( theBounds, theNormal, theDist, theOrigin );
|
DistanceToPosition( theBounds, theNormal, theDist, theOrigin );
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -4063,6 +4063,14 @@ Please, create VTK viewer and try again</translation>
|
|||||||
<source>PREF_BACKFACE</source>
|
<source>PREF_BACKFACE</source>
|
||||||
<translation>Back surface color</translation>
|
<translation>Back surface color</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>PREF_VOLUME</source>
|
||||||
|
<translation>Volume color</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>PREF_REVERSEDVOLUME</source>
|
||||||
|
<translation>Reversed volume color</translation>
|
||||||
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>PREF_WIREFRAME</source>
|
<source>PREF_WIREFRAME</source>
|
||||||
<translation>Wireframe color</translation>
|
<translation>Wireframe color</translation>
|
||||||
@ -4305,7 +4313,11 @@ Please, create VTK viewer and try again</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>PREF_WIDTH</source>
|
<source>PREF_WIDTH</source>
|
||||||
<translation>Width</translation>
|
<translation>Line width</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>PREF_OUTLINE_WIDTH</source>
|
||||||
|
<translation>Outline width</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>PREF_PREVIEW_CHUNK_SIZE</source>
|
<source>PREF_PREVIEW_CHUNK_SIZE</source>
|
||||||
@ -6859,97 +6871,6 @@ as they are of improper type:
|
|||||||
<translation>%1-%2 from %3 items shown</translation>
|
<translation>%1-%2 from %3 items shown</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
|
||||||
<name>SMESHGUI_Preferences_ColorDlg</name>
|
|
||||||
<message>
|
|
||||||
<source>DIALOG_TITLE</source>
|
|
||||||
<translation>Properties (color, line width, shrink size, ...)</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>GRP_ELEMENTS</source>
|
|
||||||
<translation>Elements</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>SURFACE_COLOR_LBL</source>
|
|
||||||
<translation>Surface color</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>BACKSURFACE_COLOR_LBL</source>
|
|
||||||
<translation>Back surface color</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>OUTLINE_COLOR_LBL</source>
|
|
||||||
<translation>Outline color</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>WIREFRAME_COLOR_LBL</source>
|
|
||||||
<translation>Wireframe color</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>0D_ELEMENTS_COLOR_LBL</source>
|
|
||||||
<translation>0D elements</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>0D_ELEMENTS_SIZE_LBL</source>
|
|
||||||
<translation>Size of 0D elements</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>BALL_ELEMENTS_COLOR_LBL</source>
|
|
||||||
<translation>Ball elements</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>BALL_ELEMENTS_SIZE_LBL</source>
|
|
||||||
<translation>Size of balls</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>LINE_WIDTH_LBL</source>
|
|
||||||
<translation>Line width</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>SHRINK_COEF_LBL</source>
|
|
||||||
<translation>Shrink coef.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>GRP_NODES</source>
|
|
||||||
<translation>Nodes</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>NODES_COLOR_LBL</source>
|
|
||||||
<translation>Color</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>NODES_MARKER_LBL</source>
|
|
||||||
<translation>Marker</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>GRP_ORIENTATION</source>
|
|
||||||
<translation>Orientation of faces</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>ORIENTATION_COLOR_LBL</source>
|
|
||||||
<translation>Color</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>ORIENTATION_SCALE_LBL</source>
|
|
||||||
<translation>Scale</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>3D_VECTORS_LBL</source>
|
|
||||||
<translation>3D vectors</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>GRP_SELECTION</source>
|
|
||||||
<translation>Selection</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>SELECTION_COLOR_LBL</source>
|
|
||||||
<translation>Selection color</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>PRESELECTION_COLOR_LBL</source>
|
|
||||||
<translation>Pre-selection color</translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
<context>
|
||||||
<name>SMESHGUI_ReorientFacesDlg</name>
|
<name>SMESHGUI_ReorientFacesDlg</name>
|
||||||
<message>
|
<message>
|
||||||
@ -7008,4 +6929,83 @@ as they are of improper type:
|
|||||||
<translation>%1 faces reversed</translation>
|
<translation>%1 faces reversed</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>SMESHGUI_PropertiesDlg</name>
|
||||||
|
<message>
|
||||||
|
<source>TITLE</source>
|
||||||
|
<translation>Properties</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>NODES</source>
|
||||||
|
<translation>Nodes</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>EDGES</source>
|
||||||
|
<translation>Edges / wireframe</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>FACES</source>
|
||||||
|
<translation>Faces</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>VOLUMES</source>
|
||||||
|
<translation>Volumes</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>OUTLINES</source>
|
||||||
|
<translation>Outlines</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>0D_ELEMENTS</source>
|
||||||
|
<translation>0D elements</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>BALLS</source>
|
||||||
|
<translation>Balls</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>ORIENTATIONS</source>
|
||||||
|
<translation>Orientation vectors</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>COLOR</source>
|
||||||
|
<translation>Color:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>WIDTH</source>
|
||||||
|
<translation>Width:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>FACE_FRONT</source>
|
||||||
|
<translation>Front:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>FACE_BACK</source>
|
||||||
|
<translation>Back:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>VOLUME_NORMAL</source>
|
||||||
|
<translation>Normal:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>VOLUME_REVERSED</source>
|
||||||
|
<translation>Reversed:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>SIZE</source>
|
||||||
|
<translation>Size:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>ORIENTATION_SCALE</source>
|
||||||
|
<translation>Scale:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>ORIENTATION_3D</source>
|
||||||
|
<translation>3D vectors</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>SHRINK</source>
|
||||||
|
<translation>Shrink coef:</translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
</TS>
|
</TS>
|
||||||
|
@ -4031,6 +4031,14 @@ Ouvrez une fenêtre VTK et essayez de nouveau</translation>
|
|||||||
<source>PREF_BACKFACE</source>
|
<source>PREF_BACKFACE</source>
|
||||||
<translation>Face arrière</translation>
|
<translation>Face arrière</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>PREF_VOLUME</source>
|
||||||
|
<translation type="unfinished">Volume color</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>PREF_REVERSEDVOLUME</source>
|
||||||
|
<translation type="unfinished">Reversed volume color</translation>
|
||||||
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>PREF_WIREFRAME</source>
|
<source>PREF_WIREFRAME</source>
|
||||||
<translation>Couleur de contour</translation>
|
<translation>Couleur de contour</translation>
|
||||||
@ -4273,7 +4281,11 @@ Ouvrez une fenêtre VTK et essayez de nouveau</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>PREF_WIDTH</source>
|
<source>PREF_WIDTH</source>
|
||||||
<translation>Epaisseur</translation>
|
<translation type="unfinished">Line width</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>PREF_OUTLINE_WIDTH</source>
|
||||||
|
<translation type="unfinished">Outline width</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>PREF_PREVIEW_CHUNK_SIZE</source>
|
<source>PREF_PREVIEW_CHUNK_SIZE</source>
|
||||||
@ -6820,97 +6832,6 @@ en raison de leurs types incompatibles:
|
|||||||
<translation>%1-%2 sur %3 éléments affichés</translation>
|
<translation>%1-%2 sur %3 éléments affichés</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
|
||||||
<name>SMESHGUI_Preferences_ColorDlg</name>
|
|
||||||
<message>
|
|
||||||
<source>DIALOG_TITLE</source>
|
|
||||||
<translation>Propriétés (couleur, épaisseur des traits, taille des éléments réduits, ...)</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>GRP_ELEMENTS</source>
|
|
||||||
<translation>Eléments</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>SURFACE_COLOR_LBL</source>
|
|
||||||
<translation>Couleur de surface</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>BACKSURFACE_COLOR_LBL</source>
|
|
||||||
<translation>Couleur arrière</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>OUTLINE_COLOR_LBL</source>
|
|
||||||
<translation>Couleur de contour</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>WIREFRAME_COLOR_LBL</source>
|
|
||||||
<translation>Couleur en mode fil de fer</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>0D_ELEMENTS_COLOR_LBL</source>
|
|
||||||
<translation>Eléments 0D</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>0D_ELEMENTS_SIZE_LBL</source>
|
|
||||||
<translation>Taille des éléments 0D</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>BALL_ELEMENTS_COLOR_LBL</source>
|
|
||||||
<translation>Eléments particulaires</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>BALL_ELEMENTS_SIZE_LBL</source>
|
|
||||||
<translation>Taille des éléments particulaires</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>LINE_WIDTH_LBL</source>
|
|
||||||
<translation>Epaisseur des traits</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>SHRINK_COEF_LBL</source>
|
|
||||||
<translation>Coef. de contraction</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>GRP_NODES</source>
|
|
||||||
<translation>Nœuds</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>NODES_COLOR_LBL</source>
|
|
||||||
<translation>Couleur</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>NODES_MARKER_LBL</source>
|
|
||||||
<translation>Marqueur</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>GRP_ORIENTATION</source>
|
|
||||||
<translation>Orientation des faces</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>ORIENTATION_COLOR_LBL</source>
|
|
||||||
<translation>Couleur</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>ORIENTATION_SCALE_LBL</source>
|
|
||||||
<translation>Facteur d'échelle</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>3D_VECTORS_LBL</source>
|
|
||||||
<translation>Vecteurs 3D</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>GRP_SELECTION</source>
|
|
||||||
<translation>Sélection</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>SELECTION_COLOR_LBL</source>
|
|
||||||
<translation>Couleur de sélection</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>PRESELECTION_COLOR_LBL</source>
|
|
||||||
<translation>Couleur de pré-sélection</translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
<context>
|
||||||
<name>SMESHGUI_ReorientFacesDlg</name>
|
<name>SMESHGUI_ReorientFacesDlg</name>
|
||||||
<message>
|
<message>
|
||||||
@ -6969,4 +6890,83 @@ en raison de leurs types incompatibles:
|
|||||||
<translation>%1 face(s) inversée(s)</translation>
|
<translation>%1 face(s) inversée(s)</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>SMESHGUI_PropertiesDlg</name>
|
||||||
|
<message>
|
||||||
|
<source>TITLE</source>
|
||||||
|
<translation type="unfinished">Properties</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>NODES</source>
|
||||||
|
<translation type="unfinished">Nodes</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>EDGES</source>
|
||||||
|
<translation type="unfinished">Edges / wireframe</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>FACES</source>
|
||||||
|
<translation type="unfinished">Faces</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>VOLUMES</source>
|
||||||
|
<translation type="unfinished">Volumes</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>OUTLINES</source>
|
||||||
|
<translation type="unfinished">Outlines</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>0D_ELEMENTS</source>
|
||||||
|
<translation type="unfinished">0D elements</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>BALLS</source>
|
||||||
|
<translation type="unfinished">Balls</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>ORIENTATIONS</source>
|
||||||
|
<translation type="unfinished">Orientation vectors</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>COLOR</source>
|
||||||
|
<translation type="unfinished">Color:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>WIDTH</source>
|
||||||
|
<translation type="unfinished">Width:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>FACE_FRONT</source>
|
||||||
|
<translation type="unfinished">Front:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>FACE_BACK</source>
|
||||||
|
<translation type="unfinished">Back:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>VOLUME_NORMAL</source>
|
||||||
|
<translation type="unfinished">Normal:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>VOLUME_REVERSED</source>
|
||||||
|
<translation type="unfinished">Reversed:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>SIZE</source>
|
||||||
|
<translation type="unfinished">Size:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>ORIENTATION_SCALE</source>
|
||||||
|
<translation type="unfinished">Scale:</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>ORIENTATION_3D</source>
|
||||||
|
<translation type="unfinished">3D vectors</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>SHRINK</source>
|
||||||
|
<translation type="unfinished">Shrink coef:</translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
</TS>
|
</TS>
|
||||||
|
Loading…
Reference in New Issue
Block a user