mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2024-12-24 16:30:35 +05:00
PAL7770
This commit is contained in:
parent
9bb681b800
commit
01283434b5
@ -452,6 +452,19 @@ void BasicGUI_MarkerDlg::onSelectionDone()
|
|||||||
|
|
||||||
myEditCurrentArgument->setText( aName );
|
myEditCurrentArgument->setText( aName );
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
myData[ X ]->SetValue( 0 );
|
||||||
|
myData[ Y ]->SetValue( 0 );
|
||||||
|
myData[ Z ]->SetValue( 0 );
|
||||||
|
|
||||||
|
myData[ DX1 ]->SetValue( 0 );
|
||||||
|
myData[ DY1 ]->SetValue( 0 );
|
||||||
|
myData[ DZ1 ]->SetValue( 0 );
|
||||||
|
|
||||||
|
myData[ DX2 ]->SetValue( 0 );
|
||||||
|
myData[ DY2 ]->SetValue( 0 );
|
||||||
|
myData[ DZ2 ]->SetValue( 0 );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if ( getConstructorId() == 2 ) {
|
else if ( getConstructorId() == 2 ) {
|
||||||
if (myEditCurrentArgument == Group2->LineEdit1) {
|
if (myEditCurrentArgument == Group2->LineEdit1) {
|
||||||
@ -462,6 +475,11 @@ void BasicGUI_MarkerDlg::onSelectionDone()
|
|||||||
myData[ Z ]->SetValue( aPnt.Z() );
|
myData[ Z ]->SetValue( aPnt.Z() );
|
||||||
myEditCurrentArgument->setText( aName );
|
myEditCurrentArgument->setText( aName );
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
myData[ X ]->SetValue( 0 );
|
||||||
|
myData[ Y ]->SetValue( 0 );
|
||||||
|
myData[ Z ]->SetValue( 0 );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (myEditCurrentArgument == Group2->LineEdit2) {
|
else if (myEditCurrentArgument == Group2->LineEdit2) {
|
||||||
if ( !aShape.IsNull() && aShape.ShapeType() == TopAbs_EDGE ) {
|
if ( !aShape.IsNull() && aShape.ShapeType() == TopAbs_EDGE ) {
|
||||||
@ -474,6 +492,11 @@ void BasicGUI_MarkerDlg::onSelectionDone()
|
|||||||
myData[ DZ1 ]->SetValue( aDir.Z() );
|
myData[ DZ1 ]->SetValue( aDir.Z() );
|
||||||
myEditCurrentArgument->setText( aName );
|
myEditCurrentArgument->setText( aName );
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
myData[ DX1 ]->SetValue( 0 );
|
||||||
|
myData[ DY1 ]->SetValue( 0 );
|
||||||
|
myData[ DZ1 ]->SetValue( 0 );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (myEditCurrentArgument == Group2->LineEdit3) {
|
else if (myEditCurrentArgument == Group2->LineEdit3) {
|
||||||
if ( !aShape.IsNull() && aShape.ShapeType() == TopAbs_EDGE ) {
|
if ( !aShape.IsNull() && aShape.ShapeType() == TopAbs_EDGE ) {
|
||||||
@ -486,11 +509,48 @@ void BasicGUI_MarkerDlg::onSelectionDone()
|
|||||||
myData[ DZ2 ]->SetValue( aDir.Z() );
|
myData[ DZ2 ]->SetValue( aDir.Z() );
|
||||||
myEditCurrentArgument->setText( aName );
|
myEditCurrentArgument->setText( aName );
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
myData[ DX2 ]->SetValue( 0 );
|
||||||
|
myData[ DY2 ]->SetValue( 0 );
|
||||||
|
myData[ DZ2 ]->SetValue( 0 );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
if ( getConstructorId() == 1 ) {
|
||||||
|
myData[ X ]->SetValue( 0 );
|
||||||
|
myData[ Y ]->SetValue( 0 );
|
||||||
|
myData[ Z ]->SetValue( 0 );
|
||||||
|
|
||||||
|
myData[ DX1 ]->SetValue( 0 );
|
||||||
|
myData[ DY1 ]->SetValue( 0 );
|
||||||
|
myData[ DZ1 ]->SetValue( 0 );
|
||||||
|
|
||||||
|
myData[ DX2 ]->SetValue( 0 );
|
||||||
|
myData[ DY2 ]->SetValue( 0 );
|
||||||
|
myData[ DZ2 ]->SetValue( 0 );
|
||||||
|
}
|
||||||
|
else if ( getConstructorId() == 2 ) {
|
||||||
|
if (myEditCurrentArgument == Group2->LineEdit1) {
|
||||||
|
myData[ X ]->SetValue( 0 );
|
||||||
|
myData[ Y ]->SetValue( 0 );
|
||||||
|
myData[ Z ]->SetValue( 0 );
|
||||||
|
}
|
||||||
|
else if (myEditCurrentArgument == Group2->LineEdit2) {
|
||||||
|
myData[ DX1 ]->SetValue( 0 );
|
||||||
|
myData[ DY1 ]->SetValue( 0 );
|
||||||
|
myData[ DZ1 ]->SetValue( 0 );
|
||||||
|
}
|
||||||
|
else if (myEditCurrentArgument == Group2->LineEdit3) {
|
||||||
|
myData[ DX2 ]->SetValue( 0 );
|
||||||
|
myData[ DY2 ]->SetValue( 0 );
|
||||||
|
myData[ DZ2 ]->SetValue( 0 );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
displayPreview();
|
displayPreview();
|
||||||
}
|
}
|
||||||
@ -586,21 +646,25 @@ bool BasicGUI_MarkerDlg::isValid( QString& msg )
|
|||||||
gp_Vec v1( myData[ DX1 ]->GetValue(), myData[ DY1 ]->GetValue(), myData[ DZ1 ]->GetValue() ),
|
gp_Vec v1( myData[ DX1 ]->GetValue(), myData[ DY1 ]->GetValue(), myData[ DZ1 ]->GetValue() ),
|
||||||
v2( myData[ DX2 ]->GetValue(), myData[ DY2 ]->GetValue(), myData[ DZ2 ]->GetValue() );
|
v2( myData[ DX2 ]->GetValue(), myData[ DY2 ]->GetValue(), myData[ DZ2 ]->GetValue() );
|
||||||
|
|
||||||
bool isOrthogonal = false;
|
bool isOk = false;
|
||||||
// we will got exception if the magnitude of any of the 2 vectors <= gp::Resolution()
|
// we will got exception if the magnitude of any of the 2 vectors <= gp::Resolution()
|
||||||
if ( v1.Magnitude() > gp::Resolution() && v2.Magnitude() > gp::Resolution() )
|
// Vectors shouldn't be checked for being orthogonal here!
|
||||||
isOrthogonal = v1.IsNormal( v2, Precision::Confusion() );
|
if ( v1.Magnitude() > gp::Resolution() && v2.Magnitude() > gp::Resolution() ) {
|
||||||
|
isOk = !v1.IsParallel( v2, Precision::Angular() );
|
||||||
|
if ( !isOk )
|
||||||
|
msg += tr( "VEC_PARALLEL" );
|
||||||
|
}
|
||||||
|
|
||||||
switch ( id )
|
switch ( id )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
return isOrthogonal;
|
return isOk;
|
||||||
case 1:
|
case 1:
|
||||||
return !Group1->LineEdit1->text().isEmpty() && isOrthogonal;
|
return !Group1->LineEdit1->text().isEmpty() && isOk;
|
||||||
case 2:
|
case 2:
|
||||||
return !Group2->LineEdit1->text().isEmpty() &&
|
return !Group2->LineEdit1->text().isEmpty() &&
|
||||||
!Group2->LineEdit2->text().isEmpty() &&
|
!Group2->LineEdit2->text().isEmpty() &&
|
||||||
!Group2->LineEdit3->text().isEmpty() && isOrthogonal;
|
!Group2->LineEdit3->text().isEmpty() && isOk;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -1865,6 +1865,8 @@ msgstr "Dz"
|
|||||||
msgid "BasicGUI_MarkerDlg::LCS_NAME"
|
msgid "BasicGUI_MarkerDlg::LCS_NAME"
|
||||||
msgstr "LocalCS"
|
msgstr "LocalCS"
|
||||||
|
|
||||||
|
msgid "BasicGUI_MarkerDlg::VEC_PARALLEL"
|
||||||
|
msgstr "Coordinate system axes cannot be parallel"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user