myName = "";
myIO = NULL;
- myColorMode = eNone;
+ myControlMode = eNone;
my1DColorMode = e1DNone;
myControlActor = my2DActor;
aPtsTextProp->SetShadow(0);
myPtsLabeledDataMapper->SetLabelTextProperty(aPtsTextProp);
aPtsTextProp->Delete();
-
+
myEntityMode = eAllEntity;
myIsPointsLabeled = false;
void SMESH_Actor::SetControlMode(eControl theMode){
- myColorMode = eNone;
+ myControlMode = eNone;
my1DColorMode = e1DNone;
my1DActor->GetMapper()->SetScalarVisibility(false);
myControlActor = my1DActor;
break;
}
+ case eLength:
+ {
+ aFunctor.reset(new SMESH::Controls::Length2D());
+ myControlActor = my2DActor;
+ break;
+ }
case eFreeBorders:
aFunctor.reset(new SMESH::Controls::FreeBorders());
myControlActor = my1DActor;
vtkUnstructuredGrid* aGrid = myControlActor->GetUnstructuredGrid();
vtkIdType aNbCells = aGrid->GetNumberOfCells();
if(aNbCells){
- myColorMode = theMode;
+ myControlMode = theMode;
if(theMode == eFreeBorders || theMode == eFreeEdges){
my1DColorMode = e1DHighlited;
my1DExtActor->SetExtControlMode(aFunctor,myControlActor);
- }else{
+ } else if (theMode == eLength){
+ my1DColorMode = e1DColored;
+ my1DExtActor->SetLength2DControlMode(aFunctor,myControlActor,myScalarBarActor,myLookupTable);
+ } else{
if(myControlActor == my1DActor)
my1DColorMode = e1DColored;
myControlActor->SetControlMode(aFunctor,myScalarBarActor,myLookupTable);
if(theIsUpdateRepersentation)
SetRepresentation(GetRepresentation());
- if(myColorMode != eNone){
- if(my1DColorMode == e1DHighlited)
+ if(myControlMode != eNone){
+ if(my1DColorMode == e1DHighlited || myControlMode == eLength)
my1DExtActor->VisibilityOn();
else if(myControlActor->GetUnstructuredGrid()->GetNumberOfCells())
myScalarBarActor->VisibilityOn();
Modified();
}
-
namespace{
inline bool UpdateEntityMode(unsigned int& theOutputMode,
myEntityMode = theMode;
}
-
void SMESH_Actor::SetRepresentation(int theMode){
int aNbEdges = myVisualObj->GetNbEntities(SMESH::EDGE);
int aNbFaces = myVisualObj->GetNbEntities(SMESH::FACE);
my3DActor->SetRepresentation(aReperesent);
my1DExtActor->SetVisibility(false);
- switch(my1DColorMode){
- case e1DColored:
+// switch(my1DColorMode){
+// case e1DColored:
+// aProp = aBackProp = my1DProp;
+// if(myRepresentation != ePoint)
+// aReperesent = SMESH_DeviceActor::eInsideframe;
+// break;
+// case e1DHighlited:
+// my1DExtActor->SetVisibility(true);
+// break;
+// }
+ if (my1DColorMode == e1DColored){
aProp = aBackProp = my1DProp;
if(myRepresentation != ePoint)
aReperesent = SMESH_DeviceActor::eInsideframe;
- break;
- case e1DHighlited:
+ } else if (my1DColorMode == e1DHighlited || myControlMode == eLength){
my1DExtActor->SetVisibility(true);
- break;
}
my1DActor->SetProperty(aProp);