fix radius bug and add new imperial sketch grid cascading...

This commit is contained in:
jriegel 2013-12-18 18:18:39 +01:00
parent 9baf73c52f
commit 9c1c94c64e
2 changed files with 14 additions and 5 deletions

View File

@ -108,8 +108,10 @@ TaskSketcherGeneral::~TaskSketcherGeneral()
void TaskSketcherGeneral::fillGridCombo(void)
{
if(Base::UnitsApi::getSchema() == Base::Imperial1) {
if(Base::UnitsApi::getSchema() == Base::UnitSystem::Imperial1 ){
ui->comboBoxGridSize->addItem(QString::fromUtf8("1/1000 [thou] \""));
ui->comboBoxGridSize->addItem(QString::fromUtf8("1/128 \""));
ui->comboBoxGridSize->addItem(QString::fromUtf8("1/100 \""));
ui->comboBoxGridSize->addItem(QString::fromUtf8("1/64 \""));
ui->comboBoxGridSize->addItem(QString::fromUtf8("1/32 \""));
ui->comboBoxGridSize->addItem(QString::fromUtf8("1/16 \""));
@ -120,7 +122,16 @@ void TaskSketcherGeneral::fillGridCombo(void)
ui->comboBoxGridSize->addItem(QString::fromUtf8("2 \""));
ui->comboBoxGridSize->addItem(QString::fromUtf8("4 \""));
ui->comboBoxGridSize->addItem(QString::fromUtf8("8 \""));
ui->comboBoxGridSize->addItem(QString::fromUtf8("12 \" [foot]"));
ui->comboBoxGridSize->addItem(QString::fromUtf8("16 \""));
ui->comboBoxGridSize->addItem(QString::fromUtf8("36 \" [yard]"));
ui->comboBoxGridSize->addItem(QString::fromUtf8("72 \" [2 yards]"));
ui->comboBoxGridSize->addItem(QString::fromUtf8("144 \" [4 yards]"));
ui->comboBoxGridSize->addItem(QString::fromUtf8("396 \" [half chain]"));
ui->comboBoxGridSize->addItem(QString::fromUtf8("792 \" [chain]"));
ui->comboBoxGridSize->addItem(QString::fromUtf8("792 \" [2 chains]"));
ui->comboBoxGridSize->addItem(QString::fromUtf8("1584 \" [4 chains]"));
ui->comboBoxGridSize->addItem(QString::fromUtf8("3960 \" [half furlong]"));
ui->comboBoxGridSize->setCurrentIndex(ui->comboBoxGridSize->findText(QString::fromUtf8("1/4 \"")));
}else{

View File

@ -2425,10 +2425,8 @@ Restart:
Constr->FirstPos != Sketcher::none && Constr->Second == Constraint::GeoUndef)
// display negative sign for absolute coordinates
asciiText->string = SbString(Base::Quantity(Constr->Value,Base::Unit::Length).getUserString().toUtf8().constData());
//asciiText->string = SbString().sprintf("%.2f",Constr->Value);
else // hide negative sign
asciiText->string = SbString(Base::Quantity(std::abs(Constr->Value),Base::Unit::Length).getUserString().toUtf8().constData());
//asciiText->string = SbString().sprintf("%.2f",std::abs(Constr->Value));
if (Constr->Type == Distance)
asciiText->datumtype = SoDatumLabel::DISTANCE;
@ -2645,7 +2643,6 @@ Restart:
SoDatumLabel *asciiText = dynamic_cast<SoDatumLabel *>(sep->getChild(0));
asciiText->string = SbString(Base::Quantity(Base::toDegrees<double>(std::abs(Constr->Value)),Base::Unit::Angle).getUserString().toUtf8().constData());
//asciiText->string = SbString().sprintf("%.2f",Base::toDegrees<double>(std::abs(Constr->Value)));
asciiText->datumtype = SoDatumLabel::ANGLE;
asciiText->param1 = Constr->LabelDistance;
asciiText->param2 = startangle;
@ -2692,7 +2689,8 @@ Restart:
SbVec3f p2(pnt2.x,pnt2.y,zConstr);
SoDatumLabel *asciiText = dynamic_cast<SoDatumLabel *>(sep->getChild(0));
asciiText->string = SbString().sprintf("%.2f",Constr->Value);
asciiText->string = SbString(Base::Quantity(Constr->Value,Base::Unit::Length).getUserString().toUtf8().constData());
asciiText->datumtype = SoDatumLabel::RADIUS;
asciiText->param1 = Constr->LabelDistance;
asciiText->param2 = Constr->LabelPosition;