Base: Quantity: return std::string
This commit is contained in:
committed by
Yorik van Havre
parent
c11b37e312
commit
2ea8a633ac
@@ -473,12 +473,12 @@ const std::string TaskFemConstraintContact::getReferences() const
|
||||
|
||||
const std::string TaskFemConstraintContact::getSlope() const
|
||||
{
|
||||
return ui->spbSlope->value().getSafeUserString().toStdString();
|
||||
return ui->spbSlope->value().getSafeUserString();
|
||||
}
|
||||
|
||||
const std::string TaskFemConstraintContact::getAdjust() const
|
||||
{
|
||||
return ui->spbAdjust->value().getSafeUserString().toStdString();
|
||||
return ui->spbAdjust->value().getSafeUserString();
|
||||
}
|
||||
|
||||
bool TaskFemConstraintContact::getFriction() const
|
||||
@@ -493,7 +493,7 @@ double TaskFemConstraintContact::getFrictionCoeff() const
|
||||
|
||||
const std::string TaskFemConstraintContact::getStickSlope() const
|
||||
{
|
||||
return ui->spbStickSlope->value().getSafeUserString().toStdString();
|
||||
return ui->spbStickSlope->value().getSafeUserString();
|
||||
}
|
||||
|
||||
void TaskFemConstraintContact::changeEvent(QEvent*)
|
||||
|
||||
@@ -378,32 +378,32 @@ const std::string TaskFemConstraintDisplacement::getReferences() const
|
||||
|
||||
std::string TaskFemConstraintDisplacement::get_spinxDisplacement() const
|
||||
{
|
||||
return ui->spinxDisplacement->value().getSafeUserString().toStdString();
|
||||
return ui->spinxDisplacement->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintDisplacement::get_spinyDisplacement() const
|
||||
{
|
||||
return ui->spinyDisplacement->value().getSafeUserString().toStdString();
|
||||
return ui->spinyDisplacement->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintDisplacement::get_spinzDisplacement() const
|
||||
{
|
||||
return ui->spinzDisplacement->value().getSafeUserString().toStdString();
|
||||
return ui->spinzDisplacement->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintDisplacement::get_spinxRotation() const
|
||||
{
|
||||
return ui->spinxRotation->value().getSafeUserString().toStdString();
|
||||
return ui->spinxRotation->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintDisplacement::get_spinyRotation() const
|
||||
{
|
||||
return ui->spinyRotation->value().getSafeUserString().toStdString();
|
||||
return ui->spinyRotation->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintDisplacement::get_spinzRotation() const
|
||||
{
|
||||
return ui->spinzRotation->value().getSafeUserString().toStdString();
|
||||
return ui->spinzRotation->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintDisplacement::get_xFormula() const
|
||||
|
||||
@@ -338,7 +338,7 @@ void TaskFemConstraintForce::onCheckReverse(const bool pressed)
|
||||
|
||||
const std::string TaskFemConstraintForce::getForce() const
|
||||
{
|
||||
return ui->spinForce->value().getSafeUserString().toStdString();
|
||||
return ui->spinForce->value().getSafeUserString();
|
||||
}
|
||||
|
||||
const std::string TaskFemConstraintForce::getReferences() const
|
||||
|
||||
@@ -401,29 +401,24 @@ const std::string TaskFemConstraintHeatflux::getReferences() const
|
||||
|
||||
std::string TaskFemConstraintHeatflux::getAmbientTemp() const
|
||||
{
|
||||
std::string temp;
|
||||
if (ui->rb_convection->isChecked()) {
|
||||
temp = ui->qsb_ambienttemp_conv->value().getSafeUserString().toStdString();
|
||||
return ui->qsb_ambienttemp_conv->value().getSafeUserString();
|
||||
}
|
||||
else if (ui->rb_radiation->isChecked()) {
|
||||
temp = ui->qsb_ambienttemp_rad->value().getSafeUserString().toStdString();
|
||||
if (ui->rb_radiation->isChecked()) {
|
||||
return ui->qsb_ambienttemp_rad->value().getSafeUserString();
|
||||
}
|
||||
else {
|
||||
auto obj = ConstraintView->getObject<Fem::ConstraintHeatflux>();
|
||||
temp = obj->AmbientTemp.getQuantityValue().getSafeUserString().toStdString();
|
||||
}
|
||||
|
||||
return temp;
|
||||
auto obj = ConstraintView->getObject<Fem::ConstraintHeatflux>();
|
||||
return obj->AmbientTemp.getQuantityValue().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintHeatflux::getFilmCoef() const
|
||||
{
|
||||
return ui->qsb_film_coef->value().getSafeUserString().toStdString();
|
||||
return ui->qsb_film_coef->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintHeatflux::getDFlux() const
|
||||
{
|
||||
return ui->qsb_heat_flux->value().getSafeUserString().toStdString();
|
||||
return ui->qsb_heat_flux->value().getSafeUserString();
|
||||
}
|
||||
|
||||
double TaskFemConstraintHeatflux::getEmissivity() const
|
||||
|
||||
@@ -70,7 +70,7 @@ TaskFemConstraintInitialTemperature::~TaskFemConstraintInitialTemperature() = de
|
||||
|
||||
std::string TaskFemConstraintInitialTemperature::get_temperature() const
|
||||
{
|
||||
return ui->if_temperature->value().getSafeUserString().toStdString();
|
||||
return ui->if_temperature->value().getSafeUserString();
|
||||
}
|
||||
|
||||
void TaskFemConstraintInitialTemperature::changeEvent(QEvent*)
|
||||
|
||||
@@ -250,7 +250,7 @@ const std::string TaskFemConstraintPressure::getReferences() const
|
||||
|
||||
std::string TaskFemConstraintPressure::getPressure() const
|
||||
{
|
||||
return ui->if_pressure->value().getSafeUserString().toStdString();
|
||||
return ui->if_pressure->value().getSafeUserString();
|
||||
}
|
||||
|
||||
bool TaskFemConstraintPressure::getReverse() const
|
||||
|
||||
@@ -116,7 +116,7 @@ TaskFemConstraintRigidBody::TaskFemConstraintRigidBody(
|
||||
Base::Vector3d rotDir;
|
||||
double rotAngleRad;
|
||||
pcConstraint->Rotation.getValue().getValue(rotDir, rotAngleRad);
|
||||
Base::Quantity rotAngle(rotAngleRad, QString::fromUtf8("rad"));
|
||||
Base::Quantity rotAngle(rotAngleRad, "rad");
|
||||
Base::Quantity forceX = pcConstraint->ForceX.getQuantityValue();
|
||||
Base::Quantity forceY = pcConstraint->ForceY.getQuantityValue();
|
||||
Base::Quantity forceZ = pcConstraint->ForceZ.getQuantityValue();
|
||||
@@ -581,18 +581,18 @@ Base::Rotation TaskFemConstraintRigidBody::getRotation() const
|
||||
|
||||
std::vector<std::string> TaskFemConstraintRigidBody::getForce() const
|
||||
{
|
||||
std::string x = ui->qsb_force_x->value().getSafeUserString().toStdString();
|
||||
std::string y = ui->qsb_force_y->value().getSafeUserString().toStdString();
|
||||
std::string z = ui->qsb_force_z->value().getSafeUserString().toStdString();
|
||||
std::string x = ui->qsb_force_x->value().getSafeUserString();
|
||||
std::string y = ui->qsb_force_y->value().getSafeUserString();
|
||||
std::string z = ui->qsb_force_z->value().getSafeUserString();
|
||||
|
||||
return {x, y, z};
|
||||
}
|
||||
|
||||
std::vector<std::string> TaskFemConstraintRigidBody::getMoment() const
|
||||
{
|
||||
std::string x = ui->qsb_moment_x->value().getSafeUserString().toStdString();
|
||||
std::string y = ui->qsb_moment_y->value().getSafeUserString().toStdString();
|
||||
std::string z = ui->qsb_moment_z->value().getSafeUserString().toStdString();
|
||||
std::string x = ui->qsb_moment_x->value().getSafeUserString();
|
||||
std::string y = ui->qsb_moment_y->value().getSafeUserString();
|
||||
std::string z = ui->qsb_moment_z->value().getSafeUserString();
|
||||
|
||||
return std::vector<std::string>({x, y, z});
|
||||
}
|
||||
|
||||
@@ -248,12 +248,12 @@ const std::string TaskFemConstraintSpring::getReferences() const
|
||||
|
||||
std::string TaskFemConstraintSpring::getNormalStiffness() const
|
||||
{
|
||||
return ui->qsb_norm->value().getSafeUserString().toStdString();
|
||||
return ui->qsb_norm->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintSpring::getTangentialStiffness() const
|
||||
{
|
||||
return ui->qsb_tan->value().getSafeUserString().toStdString();
|
||||
return ui->qsb_tan->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintSpring::getElmerStiffness() const
|
||||
|
||||
@@ -306,12 +306,12 @@ const std::string TaskFemConstraintTemperature::getReferences() const
|
||||
|
||||
std::string TaskFemConstraintTemperature::get_temperature() const
|
||||
{
|
||||
return ui->qsb_temperature->value().getSafeUserString().toStdString();
|
||||
return ui->qsb_temperature->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintTemperature::get_cflux() const
|
||||
{
|
||||
return ui->qsb_cflux->value().getSafeUserString().toStdString();
|
||||
return ui->qsb_cflux->value().getSafeUserString();
|
||||
}
|
||||
|
||||
std::string TaskFemConstraintTemperature::get_constraint_type() const
|
||||
|
||||
@@ -118,7 +118,7 @@ TaskFemConstraintTransform::TaskFemConstraintTransform(
|
||||
ui->spb_rot_axis_x->setValue(axis.x);
|
||||
ui->spb_rot_axis_y->setValue(axis.y);
|
||||
ui->spb_rot_axis_z->setValue(axis.z);
|
||||
Base::Quantity rotAngle(angle, QString::fromUtf8("rad"));
|
||||
Base::Quantity rotAngle(angle, "rad");
|
||||
ui->qsb_rot_angle->setValue(rotAngle.getValueAs(Base::Quantity::Degree));
|
||||
|
||||
ui->spb_rot_axis_x->bind(
|
||||
@@ -406,7 +406,7 @@ void TaskFemConstraintTransform::addToSelection()
|
||||
ui->spb_rot_axis_x->setValue(axis.x);
|
||||
ui->spb_rot_axis_y->setValue(axis.y);
|
||||
ui->spb_rot_axis_z->setValue(axis.z);
|
||||
Base::Quantity rotAngle(angle, QString::fromUtf8("rad"));
|
||||
Base::Quantity rotAngle(angle, "rad");
|
||||
ui->qsb_rot_angle->setValue(rotAngle.getValueAs(Base::Quantity::Degree));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,8 +115,7 @@ std::shared_ptr<Material2DArray> MaterialYamlEntry::read2DArray(const YAML::Node
|
||||
|
||||
auto row = std::make_shared<QList<QVariant>>();
|
||||
for (std::size_t j = 0; j < yamlRow.size(); j++) {
|
||||
Base::Quantity qq =
|
||||
Base::Quantity::parse(QString::fromStdString(yamlRow[j].as<std::string>()));
|
||||
Base::Quantity qq = Base::Quantity::parse(yamlRow[j].as<std::string>());
|
||||
qq.setFormat(MaterialValue::getQuantityFormat());
|
||||
row->push_back(QVariant::fromValue(qq));
|
||||
}
|
||||
@@ -142,10 +141,8 @@ std::shared_ptr<Material3DArray> MaterialYamlEntry::read3DArray(const YAML::Node
|
||||
for (std::size_t depth = 0; depth < yamlArray.size(); depth++) {
|
||||
auto yamlDepth = yamlArray[depth];
|
||||
for (auto it = yamlDepth.begin(); it != yamlDepth.end(); it++) {
|
||||
auto depthValue =
|
||||
Base::Quantity::parse(QString::fromStdString(it->first.as<std::string>()));
|
||||
auto depthValue = Base::Quantity::parse(it->first.as<std::string>());
|
||||
depthValue.setFormat(MaterialValue::getQuantityFormat());
|
||||
|
||||
array3d->addDepth(depth, depthValue);
|
||||
|
||||
auto yamlTable = it->second;
|
||||
@@ -154,8 +151,7 @@ std::shared_ptr<Material3DArray> MaterialYamlEntry::read3DArray(const YAML::Node
|
||||
|
||||
auto row = std::make_shared<QList<Base::Quantity>>();
|
||||
for (std::size_t j = 0; j < yamlRow.size(); j++) {
|
||||
auto qq = Base::Quantity::parse(
|
||||
QString::fromStdString(yamlRow[j].as<std::string>()));
|
||||
auto qq = Base::Quantity::parse(yamlRow[j].as<std::string>());
|
||||
qq.setFormat(MaterialValue::getQuantityFormat());
|
||||
row->push_back(qq);
|
||||
}
|
||||
|
||||
@@ -288,7 +288,7 @@ QString MaterialValue::getYAMLString() const
|
||||
}
|
||||
if (getType() == MaterialValue::Quantity) {
|
||||
auto quantity = getValue().value<Base::Quantity>();
|
||||
yaml += quantity.getUserString();
|
||||
yaml += QString::fromStdString(quantity.getUserString());
|
||||
}
|
||||
else if (getType() == MaterialValue::Float) {
|
||||
auto value = getValue();
|
||||
@@ -500,7 +500,7 @@ QString Material2DArray::getYAMLString() const
|
||||
}
|
||||
yaml += QString::fromStdString("\"");
|
||||
auto quantity = column.value<Base::Quantity>();
|
||||
yaml += quantity.getUserString();
|
||||
yaml += QString::fromStdString(quantity.getUserString());
|
||||
yaml += QString::fromStdString("\"");
|
||||
}
|
||||
|
||||
@@ -814,7 +814,7 @@ QString Material3DArray::getYAMLString() const
|
||||
}
|
||||
|
||||
yaml += QString::fromStdString("\"");
|
||||
auto value = getDepthValue(depth).getUserString();
|
||||
auto value = QString::fromStdString(getDepthValue(depth).getUserString());
|
||||
yaml += value;
|
||||
yaml += QString::fromStdString("\": [");
|
||||
|
||||
@@ -844,7 +844,7 @@ QString Material3DArray::getYAMLString() const
|
||||
}
|
||||
yaml += QString::fromStdString("\"");
|
||||
// Base::Quantity quantity = column.value<Base::Quantity>();
|
||||
yaml += column.getUserString();
|
||||
yaml += QString::fromStdString(column.getUserString());
|
||||
yaml += QString::fromStdString("\"");
|
||||
}
|
||||
|
||||
|
||||
@@ -125,7 +125,7 @@ QString MaterialProperty::getString() const
|
||||
}
|
||||
if (getType() == MaterialValue::Quantity) {
|
||||
auto quantity = getValue().value<Base::Quantity>();
|
||||
return quantity.getUserString();
|
||||
return QString::fromStdString(quantity.getUserString());
|
||||
}
|
||||
if (getType() == MaterialValue::Float) {
|
||||
auto value = getValue();
|
||||
@@ -266,7 +266,7 @@ QVariant MaterialProperty::getColumnNull(int column) const
|
||||
|
||||
switch (valueType) {
|
||||
case MaterialValue::Quantity: {
|
||||
Base::Quantity quant = Base::Quantity(0, getColumnUnits(column));
|
||||
Base::Quantity quant = Base::Quantity(0, getColumnUnits(column).toStdString());
|
||||
return QVariant::fromValue(quant);
|
||||
}
|
||||
|
||||
@@ -306,7 +306,7 @@ void MaterialProperty::setValue(const QString& value)
|
||||
}
|
||||
else if (_valuePtr->getType() == MaterialValue::Quantity) {
|
||||
try {
|
||||
setQuantity(Base::Quantity::parse(value));
|
||||
setQuantity(Base::Quantity::parse(value.toStdString()));
|
||||
}
|
||||
catch (const Base::ParserError& e) {
|
||||
Base::Console().Log("MaterialProperty::setValue Error '%s' - '%s'\n",
|
||||
@@ -392,12 +392,12 @@ void MaterialProperty::setQuantity(const Base::Quantity& value)
|
||||
|
||||
void MaterialProperty::setQuantity(double value, const QString& units)
|
||||
{
|
||||
setQuantity(Base::Quantity(value, units));
|
||||
setQuantity(Base::Quantity(value, units.toStdString()));
|
||||
}
|
||||
|
||||
void MaterialProperty::setQuantity(const QString& value)
|
||||
{
|
||||
setQuantity(Base::Quantity::parse(value));
|
||||
setQuantity(Base::Quantity::parse(value.toStdString()));
|
||||
}
|
||||
|
||||
void MaterialProperty::setList(const QList<QVariant>& value)
|
||||
@@ -1038,7 +1038,7 @@ Material::getValueString(const std::map<QString, std::shared_ptr<MaterialPropert
|
||||
if (value.isNull()) {
|
||||
return {};
|
||||
}
|
||||
return value.value<Base::Quantity>().getUserString();
|
||||
return QString::fromStdString(value.value<Base::Quantity>().getUserString());
|
||||
}
|
||||
if (property->getType() == MaterialValue::Float) {
|
||||
auto value = property->getValue();
|
||||
|
||||
@@ -72,16 +72,13 @@ void ArrayDelegate::paint(QPainter* painter,
|
||||
auto* tableModel = dynamic_cast<const AbstractArrayModel*>(index.model());
|
||||
painter->save();
|
||||
|
||||
if (tableModel->newRow(index)) {
|
||||
painter->drawText(option.rect, 0, QString());
|
||||
}
|
||||
else {
|
||||
QString text;
|
||||
if (!tableModel->newRow(index)) {
|
||||
QVariant item = tableModel->data(index);
|
||||
auto quantity = item.value<Base::Quantity>();
|
||||
QString text = quantity.getUserString();
|
||||
painter->drawText(option.rect, 0, text);
|
||||
text = QString::fromStdString(quantity.getUserString());
|
||||
}
|
||||
|
||||
painter->drawText(option.rect, 0, text);
|
||||
painter->restore();
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -93,7 +93,7 @@ QVariant Array2DModel::data(const QModelIndex& index, int role) const
|
||||
try {
|
||||
auto column = _property->getColumnType(index.column());
|
||||
if (column == Materials::MaterialValue::Quantity) {
|
||||
Base::Quantity qq = Base::Quantity(0, _property->getColumnUnits(index.column()));
|
||||
Base::Quantity qq = Base::Quantity(0, _property->getColumnUnits(index.column()).toStdString());
|
||||
qq.setFormat(Materials::MaterialValue::getQuantityFormat());
|
||||
return QVariant::fromValue(qq);
|
||||
}
|
||||
@@ -237,7 +237,7 @@ QVariant Array3DDepthModel::data(const QModelIndex& index, int role) const
|
||||
}
|
||||
|
||||
try {
|
||||
Base::Quantity qq = Base::Quantity(0, _property->getColumnUnits(0));
|
||||
Base::Quantity qq = Base::Quantity(0, _property->getColumnUnits(0).toStdString());
|
||||
qq.setFormat(Materials::MaterialValue::getQuantityFormat());
|
||||
return QVariant::fromValue(qq);
|
||||
}
|
||||
@@ -293,7 +293,7 @@ bool Array3DDepthModel::insertRows(int row, int count, const QModelIndex& parent
|
||||
beginInsertRows(parent, row, row + count - 1);
|
||||
|
||||
for (int i = 0; i < count; i++) {
|
||||
auto qq = Base::Quantity(0, _property->getColumnUnits(0));
|
||||
auto qq = Base::Quantity(0, _property->getColumnUnits(0).toStdString());
|
||||
qq.setFormat(Materials::MaterialValue::getQuantityFormat());
|
||||
_value->addDepth(row, qq);
|
||||
}
|
||||
@@ -395,7 +395,7 @@ QVariant Array3DModel::data(const QModelIndex& index, int role) const
|
||||
}
|
||||
|
||||
try {
|
||||
Base::Quantity qq = Base::Quantity(0, _property->getColumnUnits(index.column() + 1));
|
||||
Base::Quantity qq = Base::Quantity(0, _property->getColumnUnits(index.column() + 1).toStdString());
|
||||
qq.setFormat(Materials::MaterialValue::getQuantityFormat());
|
||||
return QVariant::fromValue(qq);
|
||||
}
|
||||
|
||||
@@ -103,15 +103,13 @@ void BaseDelegate::paintQuantity(QPainter* painter,
|
||||
painter->drawText(option.rect, 0, QString());
|
||||
}
|
||||
else {
|
||||
QString text;
|
||||
QVariant item = getValue(index);
|
||||
auto quantity = item.value<Base::Quantity>();
|
||||
if (quantity.isValid()) {
|
||||
QString text = quantity.getUserString();
|
||||
painter->drawText(option.rect, 0, text);
|
||||
}
|
||||
else {
|
||||
painter->drawText(option.rect, 0, QString());
|
||||
text = QString::fromStdString(quantity.getUserString());
|
||||
}
|
||||
painter->drawText(option.rect, 0, text);
|
||||
}
|
||||
|
||||
painter->restore();
|
||||
|
||||
@@ -180,7 +180,8 @@ QString MeasureBase::getResultString()
|
||||
}
|
||||
|
||||
if (prop->isDerivedFrom(App::PropertyQuantity::getClassTypeId())) {
|
||||
return static_cast<App::PropertyQuantity*>(prop)->getQuantityValue().getUserString();
|
||||
return QString::fromStdString(
|
||||
static_cast<App::PropertyQuantity*>(prop)->getQuantityValue().getUserString());
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -179,12 +179,23 @@ void QuickMeasure::addSelectionToMeasurement()
|
||||
}
|
||||
}
|
||||
|
||||
static QString areaStr(double value)
|
||||
{
|
||||
Base::Quantity area(value, Base::Unit::Area);
|
||||
return QString::fromStdString(area.getUserString());
|
||||
}
|
||||
|
||||
static QString lenghtStr(double value)
|
||||
{
|
||||
Base::Quantity dist(value, Base::Unit::Length);
|
||||
return QString::fromStdString(dist.getUserString());
|
||||
}
|
||||
|
||||
void QuickMeasure::printResult()
|
||||
{
|
||||
MeasureType mtype = measurement->getType();
|
||||
if (mtype == MeasureType::Surfaces) {
|
||||
Base::Quantity area(measurement->area(), Base::Unit::Area);
|
||||
print(tr("Total area: %1").arg(area.getUserString()));
|
||||
print(tr("Total area: %1").arg(areaStr(measurement->area())));
|
||||
}
|
||||
/* deactivated because computing the volumes/area of solids makes a significant
|
||||
slow down in selection of complex solids.
|
||||
@@ -195,48 +206,37 @@ void QuickMeasure::printResult()
|
||||
%2").arg(vol.getSafeUserString()).arg(area.getSafeUserString()));
|
||||
}*/
|
||||
else if (mtype == MeasureType::TwoPlanes) {
|
||||
Base::Quantity dist(measurement->planePlaneDistance(), Base::Unit::Length);
|
||||
print(tr("Nominal distance: %1").arg(dist.getSafeUserString()));
|
||||
print(tr("Nominal distance: %1").arg(lenghtStr(measurement->planePlaneDistance())));
|
||||
}
|
||||
else if (mtype == MeasureType::Cone || mtype == MeasureType::Plane) {
|
||||
Base::Quantity area(measurement->area(), Base::Unit::Area);
|
||||
print(tr("Area: %1").arg(area.getUserString()));
|
||||
print(tr("Area: %1").arg(areaStr(measurement->area())));
|
||||
}
|
||||
else if (mtype == MeasureType::Cylinder || mtype == MeasureType::Sphere
|
||||
|| mtype == MeasureType::Torus) {
|
||||
Base::Quantity area(measurement->area(), Base::Unit::Area);
|
||||
Base::Quantity rad(measurement->radius(), Base::Unit::Length);
|
||||
print(tr("Area: %1, Radius: %2").arg(area.getSafeUserString(), rad.getSafeUserString()));
|
||||
print(tr("Area: %1, Radius: %2")
|
||||
.arg(areaStr(measurement->area()), lenghtStr(measurement->radius())));
|
||||
}
|
||||
else if (mtype == MeasureType::Edges) {
|
||||
Base::Quantity dist(measurement->length(), Base::Unit::Length);
|
||||
print(tr("Total length: %1").arg(dist.getSafeUserString()));
|
||||
print(tr("Total length: %1").arg(lenghtStr(measurement->length())));
|
||||
}
|
||||
else if (mtype == MeasureType::TwoParallelLines) {
|
||||
Base::Quantity dist(measurement->lineLineDistance(), Base::Unit::Length);
|
||||
print(tr("Nominal distance: %1").arg(dist.getSafeUserString()));
|
||||
print(tr("Nominal distance: %1").arg(lenghtStr(measurement->lineLineDistance())));
|
||||
}
|
||||
else if (mtype == MeasureType::TwoLines) {
|
||||
Base::Quantity angle(measurement->angle(), Base::Unit::Length);
|
||||
Base::Quantity dist(measurement->length(), Base::Unit::Length);
|
||||
print(tr("Angle: %1, Total length: %2")
|
||||
.arg(angle.getSafeUserString(), dist.getSafeUserString()));
|
||||
.arg(lenghtStr(measurement->angle()), lenghtStr(measurement->length())));
|
||||
}
|
||||
else if (mtype == MeasureType::Line) {
|
||||
Base::Quantity dist(measurement->length(), Base::Unit::Length);
|
||||
print(tr("Length: %1").arg(dist.getSafeUserString()));
|
||||
print(tr("Length: %1").arg(lenghtStr(measurement->length())));
|
||||
}
|
||||
else if (mtype == MeasureType::Circle) {
|
||||
Base::Quantity dist(measurement->radius(), Base::Unit::Length);
|
||||
print(tr("Radius: %1").arg(dist.getSafeUserString()));
|
||||
print(tr("Radius: %1").arg(lenghtStr(measurement->radius())));
|
||||
}
|
||||
else if (mtype == MeasureType::PointToPoint) {
|
||||
Base::Quantity dist(measurement->length(), Base::Unit::Length);
|
||||
print(tr("Distance: %1").arg(dist.getSafeUserString()));
|
||||
print(tr("Distance: %1").arg(lenghtStr(measurement->length())));
|
||||
}
|
||||
else if (mtype == MeasureType::PointToEdge || mtype == MeasureType::PointToSurface) {
|
||||
Base::Quantity dist(measurement->length(), Base::Unit::Length);
|
||||
print(tr("Minimum distance: %1").arg(dist.getSafeUserString()));
|
||||
print(tr("Minimum distance: %1").arg(lenghtStr(measurement->length())));
|
||||
}
|
||||
else {
|
||||
print(QString::fromLatin1(""));
|
||||
|
||||
@@ -263,7 +263,7 @@ void ViewProviderMeasureBase::draggerChangedCallback(void* data, SoDragger*)
|
||||
|
||||
void ViewProviderMeasureBase::setLabelValue(const Base::Quantity& value)
|
||||
{
|
||||
pLabel->string.setValue(value.getUserString().toUtf8().constData());
|
||||
pLabel->string.setValue(value.getUserString().c_str());
|
||||
}
|
||||
|
||||
void ViewProviderMeasureBase::setLabelValue(const QString& value)
|
||||
|
||||
@@ -478,23 +478,23 @@ void ViewProviderMeasureDistance::redrawAnnotation()
|
||||
|
||||
auto propDistance =
|
||||
dynamic_cast<App::PropertyDistance*>(pcObject->getPropertyByName("Distance"));
|
||||
setLabelValue(propDistance->getQuantityValue().getUserString());
|
||||
setLabelValue(QString::fromStdString(propDistance->getQuantityValue().getUserString()));
|
||||
|
||||
// Set delta distance
|
||||
auto propDistanceX =
|
||||
static_cast<App::PropertyDistance*>(getMeasureObject()->getPropertyByName("DistanceX"));
|
||||
static_cast<DimensionLinear*>(pDeltaDimensionSwitch->getChild(0))
|
||||
->text.setValue("Δx: " + propDistanceX->getQuantityValue().getUserString().toUtf8());
|
||||
->text.setValue(("Δx: " + propDistanceX->getQuantityValue().getUserString()).c_str());
|
||||
|
||||
auto propDistanceY =
|
||||
static_cast<App::PropertyDistance*>(getMeasureObject()->getPropertyByName("DistanceY"));
|
||||
static_cast<DimensionLinear*>(pDeltaDimensionSwitch->getChild(1))
|
||||
->text.setValue("Δy: " + propDistanceY->getQuantityValue().getUserString().toUtf8());
|
||||
->text.setValue(("Δy: " + propDistanceY->getQuantityValue().getUserString()).c_str());
|
||||
|
||||
auto propDistanceZ =
|
||||
static_cast<App::PropertyDistance*>(getMeasureObject()->getPropertyByName("DistanceZ"));
|
||||
static_cast<DimensionLinear*>(pDeltaDimensionSwitch->getChild(2))
|
||||
->text.setValue("Δz: " + propDistanceZ->getQuantityValue().getUserString().toUtf8());
|
||||
->text.setValue(("Δz: " + propDistanceZ->getQuantityValue().getUserString()).c_str());
|
||||
|
||||
// Set matrix
|
||||
SbMatrix matrix = getMatrix();
|
||||
@@ -529,7 +529,6 @@ void ViewProviderMeasureDistance::onChanged(const App::Property* prop)
|
||||
->backgroundColor.setValue(bColor.r, bColor.g, bColor.g);
|
||||
}
|
||||
|
||||
|
||||
ViewProviderMeasureBase::onChanged(prop);
|
||||
}
|
||||
|
||||
|
||||
@@ -155,7 +155,7 @@ QVariant FilletRadiusModel::data(const QModelIndex& index, int role) const
|
||||
QVariant value = QStandardItemModel::data(index, role);
|
||||
if (role == Qt::DisplayRole && index.column() >= 1) {
|
||||
Base::Quantity q = value.value<Base::Quantity>();
|
||||
QString str = q.getUserString();
|
||||
QString str = QString::fromStdString(q.getUserString());
|
||||
return str;
|
||||
}
|
||||
return value;
|
||||
|
||||
@@ -111,6 +111,11 @@ const char* gce_ErrorStatusText(gce_ErrorType et)
|
||||
}
|
||||
}
|
||||
|
||||
static QString safeQuantityQString(Gui::QuantitySpinBox *qs)
|
||||
{
|
||||
return QString::fromStdString(qs->value().getSafeUserString());
|
||||
}
|
||||
|
||||
void Picker::createPrimitive(QWidget* widget, const QString& descr, Gui::Document* doc)
|
||||
{
|
||||
try {
|
||||
@@ -268,8 +273,8 @@ QString PlanePrimitive::create(const QString& objectName, const QString& placeme
|
||||
"App.ActiveDocument.%1.Placement=%4\n"
|
||||
"App.ActiveDocument.%1.Label='%5'\n")
|
||||
.arg(objectName,
|
||||
ui->planeLength->value().getSafeUserString(),
|
||||
ui->planeWidth->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->planeLength),
|
||||
safeQuantityQString(ui->planeWidth),
|
||||
placement,
|
||||
DlgPrimitives::tr("Plane"));
|
||||
}
|
||||
@@ -281,8 +286,8 @@ QString PlanePrimitive::change(const QString& objectName, const QString& placeme
|
||||
"%1.Width='%3'\n"
|
||||
"%1.Placement=%4\n")
|
||||
.arg(objectName,
|
||||
ui->planeLength->value().getSafeUserString(),
|
||||
ui->planeWidth->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->planeLength),
|
||||
safeQuantityQString(ui->planeWidth),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -342,9 +347,9 @@ QString BoxPrimitive::create(const QString& objectName, const QString& placement
|
||||
"App.ActiveDocument.%1.Placement=%5\n"
|
||||
"App.ActiveDocument.%1.Label='%6'\n")
|
||||
.arg(objectName,
|
||||
ui->boxLength->value().getSafeUserString(),
|
||||
ui->boxWidth->value().getSafeUserString(),
|
||||
ui->boxHeight->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->boxLength),
|
||||
safeQuantityQString(ui->boxWidth),
|
||||
safeQuantityQString(ui->boxHeight),
|
||||
placement,
|
||||
DlgPrimitives::tr("Box"));
|
||||
}
|
||||
@@ -357,9 +362,9 @@ QString BoxPrimitive::change(const QString& objectName, const QString& placement
|
||||
"%1.Height='%4'\n"
|
||||
"%1.Placement=%5\n")
|
||||
.arg(objectName,
|
||||
ui->boxLength->value().getSafeUserString(),
|
||||
ui->boxWidth->value().getSafeUserString(),
|
||||
ui->boxHeight->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->boxLength),
|
||||
safeQuantityQString(ui->boxWidth),
|
||||
safeQuantityQString(ui->boxHeight),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -430,11 +435,11 @@ QString CylinderPrimitive::create(const QString& objectName, const QString& plac
|
||||
"App.ActiveDocument.%1.Placement=%7\n"
|
||||
"App.ActiveDocument.%1.Label='%8'\n")
|
||||
.arg(objectName,
|
||||
ui->cylinderRadius->value().getSafeUserString(),
|
||||
ui->cylinderHeight->value().getSafeUserString(),
|
||||
ui->cylinderAngle->value().getSafeUserString(),
|
||||
ui->cylinderXSkew->value().getSafeUserString(),
|
||||
ui->cylinderYSkew->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->cylinderRadius),
|
||||
safeQuantityQString(ui->cylinderHeight),
|
||||
safeQuantityQString(ui->cylinderAngle),
|
||||
safeQuantityQString(ui->cylinderXSkew),
|
||||
safeQuantityQString(ui->cylinderYSkew),
|
||||
placement,
|
||||
DlgPrimitives::tr("Cylinder"));
|
||||
}
|
||||
@@ -449,11 +454,11 @@ QString CylinderPrimitive::change(const QString& objectName, const QString& plac
|
||||
"%1.SecondAngle='%6'\n"
|
||||
"%1.Placement=%7\n")
|
||||
.arg(objectName,
|
||||
ui->cylinderRadius->value().getSafeUserString(),
|
||||
ui->cylinderHeight->value().getSafeUserString(),
|
||||
ui->cylinderAngle->value().getSafeUserString(),
|
||||
ui->cylinderXSkew->value().getSafeUserString(),
|
||||
ui->cylinderYSkew->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->cylinderRadius),
|
||||
safeQuantityQString(ui->cylinderHeight),
|
||||
safeQuantityQString(ui->cylinderAngle),
|
||||
safeQuantityQString(ui->cylinderXSkew),
|
||||
safeQuantityQString(ui->cylinderYSkew),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -527,10 +532,10 @@ QString ConePrimitive::create(const QString& objectName, const QString& placemen
|
||||
"App.ActiveDocument.%1.Placement=%6\n"
|
||||
"App.ActiveDocument.%1.Label='%7'\n")
|
||||
.arg(objectName,
|
||||
ui->coneRadius1->value().getSafeUserString(),
|
||||
ui->coneRadius2->value().getSafeUserString(),
|
||||
ui->coneHeight->value().getSafeUserString(),
|
||||
ui->coneAngle->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->coneRadius1),
|
||||
safeQuantityQString(ui->coneRadius2),
|
||||
safeQuantityQString(ui->coneHeight),
|
||||
safeQuantityQString(ui->coneAngle),
|
||||
placement,
|
||||
DlgPrimitives::tr("Cone"));
|
||||
}
|
||||
@@ -544,10 +549,10 @@ QString ConePrimitive::change(const QString& objectName, const QString& placemen
|
||||
"%1.Angle='%5'\n"
|
||||
"%1.Placement=%6\n")
|
||||
.arg(objectName,
|
||||
ui->coneRadius1->value().getSafeUserString(),
|
||||
ui->coneRadius2->value().getSafeUserString(),
|
||||
ui->coneHeight->value().getSafeUserString(),
|
||||
ui->coneAngle->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->coneRadius1),
|
||||
safeQuantityQString(ui->coneRadius2),
|
||||
safeQuantityQString(ui->coneHeight),
|
||||
safeQuantityQString(ui->coneAngle),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -618,10 +623,10 @@ QString SpherePrimitive::create(const QString& objectName, const QString& placem
|
||||
"App.ActiveDocument.%1.Placement=%6\n"
|
||||
"App.ActiveDocument.%1.Label='%7'\n")
|
||||
.arg(objectName,
|
||||
ui->sphereRadius->value().getSafeUserString(),
|
||||
ui->sphereAngle1->value().getSafeUserString(),
|
||||
ui->sphereAngle2->value().getSafeUserString(),
|
||||
ui->sphereAngle3->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->sphereRadius),
|
||||
safeQuantityQString(ui->sphereAngle1),
|
||||
safeQuantityQString(ui->sphereAngle2),
|
||||
safeQuantityQString(ui->sphereAngle3),
|
||||
placement,
|
||||
DlgPrimitives::tr("Sphere"));
|
||||
}
|
||||
@@ -635,10 +640,10 @@ QString SpherePrimitive::change(const QString& objectName, const QString& placem
|
||||
"%1.Angle3='%5'\n"
|
||||
"%1.Placement=%6\n")
|
||||
.arg(objectName,
|
||||
ui->sphereRadius->value().getSafeUserString(),
|
||||
ui->sphereAngle1->value().getSafeUserString(),
|
||||
ui->sphereAngle2->value().getSafeUserString(),
|
||||
ui->sphereAngle3->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->sphereRadius),
|
||||
safeQuantityQString(ui->sphereAngle1),
|
||||
safeQuantityQString(ui->sphereAngle2),
|
||||
safeQuantityQString(ui->sphereAngle3),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -720,12 +725,12 @@ QString EllipsoidPrimitive::create(const QString& objectName, const QString& pla
|
||||
"App.ActiveDocument.%1.Placement=%8\n"
|
||||
"App.ActiveDocument.%1.Label='%9'\n")
|
||||
.arg(objectName,
|
||||
ui->ellipsoidRadius1->value().getSafeUserString(),
|
||||
ui->ellipsoidRadius2->value().getSafeUserString(),
|
||||
ui->ellipsoidRadius3->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle1->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle2->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle3->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->ellipsoidRadius1),
|
||||
safeQuantityQString(ui->ellipsoidRadius2),
|
||||
safeQuantityQString(ui->ellipsoidRadius3),
|
||||
safeQuantityQString(ui->ellipsoidAngle1),
|
||||
safeQuantityQString(ui->ellipsoidAngle2),
|
||||
safeQuantityQString(ui->ellipsoidAngle3),
|
||||
placement,
|
||||
DlgPrimitives::tr("Ellipsoid"));
|
||||
}
|
||||
@@ -741,12 +746,12 @@ QString EllipsoidPrimitive::change(const QString& objectName, const QString& pla
|
||||
"%1.Angle3='%7'\n"
|
||||
"%1.Placement=%8\n")
|
||||
.arg(objectName,
|
||||
ui->ellipsoidRadius1->value().getSafeUserString(),
|
||||
ui->ellipsoidRadius2->value().getSafeUserString(),
|
||||
ui->ellipsoidRadius3->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle1->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle2->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle3->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->ellipsoidRadius1),
|
||||
safeQuantityQString(ui->ellipsoidRadius2),
|
||||
safeQuantityQString(ui->ellipsoidRadius3),
|
||||
safeQuantityQString(ui->ellipsoidAngle1),
|
||||
safeQuantityQString(ui->ellipsoidAngle2),
|
||||
safeQuantityQString(ui->ellipsoidAngle3),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -828,11 +833,11 @@ QString TorusPrimitive::create(const QString& objectName, const QString& placeme
|
||||
"App.ActiveDocument.%1.Placement=%7\n"
|
||||
"App.ActiveDocument.%1.Label='%8'\n")
|
||||
.arg(objectName,
|
||||
ui->torusRadius1->value().getSafeUserString(),
|
||||
ui->torusRadius2->value().getSafeUserString(),
|
||||
ui->torusAngle1->value().getSafeUserString(),
|
||||
ui->torusAngle2->value().getSafeUserString(),
|
||||
ui->torusAngle3->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->torusRadius1),
|
||||
safeQuantityQString(ui->torusRadius2),
|
||||
safeQuantityQString(ui->torusAngle1),
|
||||
safeQuantityQString(ui->torusAngle2),
|
||||
safeQuantityQString(ui->torusAngle3),
|
||||
placement,
|
||||
DlgPrimitives::tr("Torus"));
|
||||
}
|
||||
@@ -847,11 +852,11 @@ QString TorusPrimitive::change(const QString& objectName, const QString& placeme
|
||||
"%1.Angle3='%6'\n"
|
||||
"%1.Placement=%7\n")
|
||||
.arg(objectName,
|
||||
ui->torusRadius1->value().getSafeUserString(),
|
||||
ui->torusRadius2->value().getSafeUserString(),
|
||||
ui->torusAngle1->value().getSafeUserString(),
|
||||
ui->torusAngle2->value().getSafeUserString(),
|
||||
ui->torusAngle3->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->torusRadius1),
|
||||
safeQuantityQString(ui->torusRadius2),
|
||||
safeQuantityQString(ui->torusAngle1),
|
||||
safeQuantityQString(ui->torusAngle2),
|
||||
safeQuantityQString(ui->torusAngle3),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -927,10 +932,10 @@ QString PrismPrimitive::create(const QString& objectName, const QString& placeme
|
||||
"App.ActiveDocument.%1.Label='%8'\n")
|
||||
.arg(objectName,
|
||||
QString::number(ui->prismPolygon->value()),
|
||||
ui->prismCircumradius->value().getSafeUserString(),
|
||||
ui->prismHeight->value().getSafeUserString(),
|
||||
ui->prismXSkew->value().getSafeUserString(),
|
||||
ui->prismYSkew->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->prismCircumradius),
|
||||
safeQuantityQString(ui->prismHeight),
|
||||
safeQuantityQString(ui->prismXSkew),
|
||||
safeQuantityQString(ui->prismYSkew),
|
||||
placement,
|
||||
DlgPrimitives::tr("Prism"));
|
||||
}
|
||||
@@ -946,10 +951,10 @@ QString PrismPrimitive::change(const QString& objectName, const QString& placeme
|
||||
"%1.Placement=%7\n")
|
||||
.arg(objectName,
|
||||
QString::number(ui->prismPolygon->value()),
|
||||
ui->prismCircumradius->value().getSafeUserString(),
|
||||
ui->prismHeight->value().getSafeUserString(),
|
||||
ui->prismXSkew->value().getSafeUserString(),
|
||||
ui->prismYSkew->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->prismCircumradius),
|
||||
safeQuantityQString(ui->prismHeight),
|
||||
safeQuantityQString(ui->prismXSkew),
|
||||
safeQuantityQString(ui->prismYSkew),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -1063,16 +1068,16 @@ QString WedgePrimitive::create(const QString& objectName, const QString& placeme
|
||||
"App.ActiveDocument.%1.Placement=%12\n"
|
||||
"App.ActiveDocument.%1.Label='%13'\n")
|
||||
.arg(objectName,
|
||||
ui->wedgeXmin->value().getSafeUserString(),
|
||||
ui->wedgeYmin->value().getSafeUserString(),
|
||||
ui->wedgeZmin->value().getSafeUserString(),
|
||||
ui->wedgeX2min->value().getSafeUserString(),
|
||||
ui->wedgeZ2min->value().getSafeUserString(),
|
||||
ui->wedgeXmax->value().getSafeUserString(),
|
||||
ui->wedgeYmax->value().getSafeUserString())
|
||||
.arg(ui->wedgeZmax->value().getSafeUserString(),
|
||||
ui->wedgeX2max->value().getSafeUserString(),
|
||||
ui->wedgeZ2max->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->wedgeXmin),
|
||||
safeQuantityQString(ui->wedgeYmin),
|
||||
safeQuantityQString(ui->wedgeZmin),
|
||||
safeQuantityQString(ui->wedgeX2min),
|
||||
safeQuantityQString(ui->wedgeZ2min),
|
||||
safeQuantityQString(ui->wedgeXmax),
|
||||
safeQuantityQString(ui->wedgeYmax))
|
||||
.arg(safeQuantityQString(ui->wedgeZmax),
|
||||
safeQuantityQString(ui->wedgeX2max),
|
||||
safeQuantityQString(ui->wedgeZ2max),
|
||||
placement,
|
||||
DlgPrimitives::tr("Wedge"));
|
||||
}
|
||||
@@ -1092,16 +1097,16 @@ QString WedgePrimitive::change(const QString& objectName, const QString& placeme
|
||||
"%1.Z2max='%11'\n"
|
||||
"%1.Placement=%12\n")
|
||||
.arg(objectName,
|
||||
ui->wedgeXmin->value().getSafeUserString(),
|
||||
ui->wedgeYmin->value().getSafeUserString(),
|
||||
ui->wedgeZmin->value().getSafeUserString(),
|
||||
ui->wedgeX2min->value().getSafeUserString(),
|
||||
ui->wedgeZ2min->value().getSafeUserString(),
|
||||
ui->wedgeXmax->value().getSafeUserString(),
|
||||
ui->wedgeYmax->value().getSafeUserString(),
|
||||
ui->wedgeZmax->value().getSafeUserString())
|
||||
.arg(ui->wedgeX2max->value().getSafeUserString(),
|
||||
ui->wedgeZ2max->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->wedgeXmin),
|
||||
safeQuantityQString(ui->wedgeYmin),
|
||||
safeQuantityQString(ui->wedgeZmin),
|
||||
safeQuantityQString(ui->wedgeX2min),
|
||||
safeQuantityQString(ui->wedgeZ2min),
|
||||
safeQuantityQString(ui->wedgeXmax),
|
||||
safeQuantityQString(ui->wedgeYmax),
|
||||
safeQuantityQString(ui->wedgeZmax))
|
||||
.arg(safeQuantityQString(ui->wedgeX2max),
|
||||
safeQuantityQString(ui->wedgeZ2max),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -1194,10 +1199,10 @@ QString HelixPrimitive::create(const QString& objectName, const QString& placeme
|
||||
"App.ActiveDocument.%1.Placement=%7\n"
|
||||
"App.ActiveDocument.%1.Label='%8'\n")
|
||||
.arg(objectName,
|
||||
ui->helixPitch->value().getSafeUserString(),
|
||||
ui->helixHeight->value().getSafeUserString(),
|
||||
ui->helixRadius->value().getSafeUserString(),
|
||||
ui->helixAngle->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->helixPitch),
|
||||
safeQuantityQString(ui->helixHeight),
|
||||
safeQuantityQString(ui->helixRadius),
|
||||
safeQuantityQString(ui->helixAngle),
|
||||
QString::number(ui->helixLocalCS->currentIndex()),
|
||||
placement,
|
||||
DlgPrimitives::tr("Helix"));
|
||||
@@ -1213,10 +1218,10 @@ QString HelixPrimitive::change(const QString& objectName, const QString& placeme
|
||||
"%1.LocalCoord=%6\n"
|
||||
"%1.Placement=%7\n")
|
||||
.arg(objectName,
|
||||
ui->helixPitch->value().getSafeUserString(),
|
||||
ui->helixHeight->value().getSafeUserString(),
|
||||
ui->helixRadius->value().getSafeUserString(),
|
||||
ui->helixAngle->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->helixPitch),
|
||||
safeQuantityQString(ui->helixHeight),
|
||||
safeQuantityQString(ui->helixRadius),
|
||||
safeQuantityQString(ui->helixAngle),
|
||||
QString::number(ui->helixLocalCS->currentIndex()),
|
||||
placement);
|
||||
}
|
||||
@@ -1285,9 +1290,9 @@ QString SpiralPrimitive::create(const QString& objectName, const QString& placem
|
||||
"App.ActiveDocument.%1.Placement=%5\n"
|
||||
"App.ActiveDocument.%1.Label='%6'\n")
|
||||
.arg(objectName,
|
||||
ui->spiralGrowth->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->spiralGrowth),
|
||||
QString::number(ui->spiralRotation->value()),
|
||||
ui->spiralRadius->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->spiralRadius),
|
||||
placement,
|
||||
DlgPrimitives::tr("Spiral"));
|
||||
}
|
||||
@@ -1300,9 +1305,9 @@ QString SpiralPrimitive::change(const QString& objectName, const QString& placem
|
||||
"%1.Radius='%4'\n"
|
||||
"%1.Placement=%5\n")
|
||||
.arg(objectName,
|
||||
ui->spiralGrowth->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->spiralGrowth),
|
||||
QString::number(ui->spiralRotation->value()),
|
||||
ui->spiralRadius->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->spiralRadius),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -1365,9 +1370,9 @@ QString CirclePrimitive::create(const QString& objectName, const QString& placem
|
||||
"App.ActiveDocument.%1.Placement=%5\n"
|
||||
"App.ActiveDocument.%1.Label='%6'\n")
|
||||
.arg(objectName,
|
||||
ui->circleRadius->value().getSafeUserString(),
|
||||
ui->circleAngle1->value().getSafeUserString(),
|
||||
ui->circleAngle2->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->circleRadius),
|
||||
safeQuantityQString(ui->circleAngle1),
|
||||
safeQuantityQString(ui->circleAngle2),
|
||||
placement,
|
||||
DlgPrimitives::tr("Circle"));
|
||||
}
|
||||
@@ -1380,9 +1385,9 @@ QString CirclePrimitive::change(const QString& objectName, const QString& placem
|
||||
"%1.Angle2='%4'\n"
|
||||
"%1.Placement=%5\n")
|
||||
.arg(objectName,
|
||||
ui->circleRadius->value().getSafeUserString(),
|
||||
ui->circleAngle1->value().getSafeUserString(),
|
||||
ui->circleAngle2->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->circleRadius),
|
||||
safeQuantityQString(ui->circleAngle1),
|
||||
safeQuantityQString(ui->circleAngle2),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -1450,10 +1455,10 @@ QString EllipsePrimitive::create(const QString& objectName, const QString& place
|
||||
"App.ActiveDocument.%1.Placement=%6\n"
|
||||
"App.ActiveDocument.%1.Label='%7'\n")
|
||||
.arg(objectName,
|
||||
ui->ellipseMajorRadius->value().getSafeUserString(),
|
||||
ui->ellipseMinorRadius->value().getSafeUserString(),
|
||||
ui->ellipseAngle1->value().getSafeUserString(),
|
||||
ui->ellipseAngle2->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->ellipseMajorRadius),
|
||||
safeQuantityQString(ui->ellipseMinorRadius),
|
||||
safeQuantityQString(ui->ellipseAngle1),
|
||||
safeQuantityQString(ui->ellipseAngle2),
|
||||
placement,
|
||||
DlgPrimitives::tr("Ellipse"));
|
||||
}
|
||||
@@ -1467,10 +1472,10 @@ QString EllipsePrimitive::change(const QString& objectName, const QString& place
|
||||
"%1.Angle2='%5'\n"
|
||||
"%1.Placement=%6\n")
|
||||
.arg(objectName,
|
||||
ui->ellipseMajorRadius->value().getSafeUserString(),
|
||||
ui->ellipseMinorRadius->value().getSafeUserString(),
|
||||
ui->ellipseAngle1->value().getSafeUserString(),
|
||||
ui->ellipseAngle2->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->ellipseMajorRadius),
|
||||
safeQuantityQString(ui->ellipseMinorRadius),
|
||||
safeQuantityQString(ui->ellipseAngle1),
|
||||
safeQuantityQString(ui->ellipseAngle2),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -1530,7 +1535,7 @@ QString PolygonPrimitive::create(const QString& objectName, const QString& place
|
||||
"App.ActiveDocument.%1.Label='%5'\n")
|
||||
.arg(objectName,
|
||||
QString::number(ui->regularPolygonPolygon->value()),
|
||||
ui->regularPolygonCircumradius->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->regularPolygonCircumradius),
|
||||
placement,
|
||||
DlgPrimitives::tr("Regular polygon"));
|
||||
}
|
||||
@@ -1543,7 +1548,7 @@ QString PolygonPrimitive::change(const QString& objectName, const QString& place
|
||||
"%1.Placement=%4\n")
|
||||
.arg(objectName,
|
||||
QString::number(ui->regularPolygonPolygon->value()),
|
||||
ui->regularPolygonCircumradius->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->regularPolygonCircumradius),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -1624,12 +1629,12 @@ QString LinePrimitive::create(const QString& objectName, const QString& placemen
|
||||
"App.ActiveDocument.%1.Placement=%8\n"
|
||||
"App.ActiveDocument.%1.Label='%9'\n")
|
||||
.arg(objectName,
|
||||
ui->edgeX1->value().getSafeUserString(),
|
||||
ui->edgeY1->value().getSafeUserString(),
|
||||
ui->edgeZ1->value().getSafeUserString(),
|
||||
ui->edgeX2->value().getSafeUserString(),
|
||||
ui->edgeY2->value().getSafeUserString(),
|
||||
ui->edgeZ2->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->edgeX1),
|
||||
safeQuantityQString(ui->edgeY1),
|
||||
safeQuantityQString(ui->edgeZ1),
|
||||
safeQuantityQString(ui->edgeX2),
|
||||
safeQuantityQString(ui->edgeY2),
|
||||
safeQuantityQString(ui->edgeZ2),
|
||||
placement,
|
||||
DlgPrimitives::tr("Line"));
|
||||
}
|
||||
@@ -1645,12 +1650,12 @@ QString LinePrimitive::change(const QString& objectName, const QString& placemen
|
||||
"%1.Z2='%7'\n"
|
||||
"%1.Placement=%8\n")
|
||||
.arg(objectName,
|
||||
ui->edgeX1->value().getSafeUserString(),
|
||||
ui->edgeY1->value().getSafeUserString(),
|
||||
ui->edgeZ1->value().getSafeUserString(),
|
||||
ui->edgeX2->value().getSafeUserString(),
|
||||
ui->edgeY2->value().getSafeUserString(),
|
||||
ui->edgeZ2->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->edgeX1),
|
||||
safeQuantityQString(ui->edgeY1),
|
||||
safeQuantityQString(ui->edgeZ1),
|
||||
safeQuantityQString(ui->edgeX2),
|
||||
safeQuantityQString(ui->edgeY2),
|
||||
safeQuantityQString(ui->edgeZ2),
|
||||
placement);
|
||||
}
|
||||
|
||||
@@ -1725,9 +1730,9 @@ QString VertexPrimitive::create(const QString& objectName, const QString& placem
|
||||
"App.ActiveDocument.%1.Placement=%5\n"
|
||||
"App.ActiveDocument.%1.Label='%6'\n")
|
||||
.arg(objectName,
|
||||
ui->vertexX->value().getSafeUserString(),
|
||||
ui->vertexY->value().getSafeUserString(),
|
||||
ui->vertexZ->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->vertexX),
|
||||
safeQuantityQString(ui->vertexY),
|
||||
safeQuantityQString(ui->vertexZ),
|
||||
placement,
|
||||
DlgPrimitives::tr("Vertex"));
|
||||
}
|
||||
@@ -1740,9 +1745,9 @@ QString VertexPrimitive::change(const QString& objectName, const QString& placem
|
||||
"%1.Z='%4'\n"
|
||||
"%1.Placement=%5\n")
|
||||
.arg(objectName,
|
||||
ui->vertexX->value().getSafeUserString(),
|
||||
ui->vertexY->value().getSafeUserString(),
|
||||
ui->vertexZ->value().getSafeUserString(),
|
||||
safeQuantityQString(ui->vertexX),
|
||||
safeQuantityQString(ui->vertexY),
|
||||
safeQuantityQString(ui->vertexZ),
|
||||
placement);
|
||||
}
|
||||
|
||||
|
||||
@@ -811,103 +811,103 @@ void TaskBoxPrimitives::onWedgeZmaxChanged(double v)
|
||||
bool TaskBoxPrimitives::setPrimitive(App::DocumentObject* obj)
|
||||
{
|
||||
try {
|
||||
QString name(QString::fromLatin1(Gui::Command::getObjectCmd(obj).c_str()));
|
||||
QString cmd;
|
||||
App::Document* doc = App::GetApplication().getActiveDocument();
|
||||
if (!doc) {
|
||||
return false;
|
||||
}
|
||||
|
||||
std::string cmd;
|
||||
std::string name(Gui::Command::getObjectCmd(obj));
|
||||
Base::QuantityFormat format(Base::QuantityFormat::Fixed, Base::UnitsApi::getDecimals());
|
||||
switch (ui->widgetStack->currentIndex()) {
|
||||
case 1: // box
|
||||
cmd = QString::fromLatin1("%1.Length='%2'\n"
|
||||
"%1.Width='%3'\n"
|
||||
"%1.Height='%4'\n")
|
||||
.arg(name,
|
||||
ui->boxLength->value().getSafeUserString(),
|
||||
ui->boxWidth->value().getSafeUserString(),
|
||||
ui->boxHeight->value().getSafeUserString());
|
||||
cmd = fmt::format("{0}.Length='{1}'\n"
|
||||
"{0}.Width='{2}'\n"
|
||||
"{0}.Height='{3}'\n",
|
||||
name,
|
||||
ui->boxLength->value().getSafeUserString(),
|
||||
ui->boxWidth->value().getSafeUserString(),
|
||||
ui->boxHeight->value().getSafeUserString());
|
||||
break;
|
||||
|
||||
case 2: // cylinder
|
||||
cmd = QString::fromLatin1("%1.Radius='%2'\n"
|
||||
"%1.Height='%3'\n"
|
||||
"%1.Angle='%4'\n"
|
||||
"%1.FirstAngle='%5'\n"
|
||||
"%1.SecondAngle='%6'\n")
|
||||
.arg(name,
|
||||
ui->cylinderRadius->value().getSafeUserString(),
|
||||
ui->cylinderHeight->value().getSafeUserString(),
|
||||
ui->cylinderAngle->value().getSafeUserString(),
|
||||
ui->cylinderXSkew->value().getSafeUserString(),
|
||||
ui->cylinderYSkew->value().getSafeUserString());
|
||||
cmd = fmt::format("{0}.Radius='{1}'\n"
|
||||
"{0}.Height='{2}'\n"
|
||||
"{0}.Angle='{3}'\n"
|
||||
"{0}.FirstAngle='{4}'\n"
|
||||
"{0}.SecondAngle='{5}'\n",
|
||||
name,
|
||||
ui->cylinderRadius->value().getSafeUserString(),
|
||||
ui->cylinderHeight->value().getSafeUserString(),
|
||||
ui->cylinderAngle->value().getSafeUserString(),
|
||||
ui->cylinderXSkew->value().getSafeUserString(),
|
||||
ui->cylinderYSkew->value().getSafeUserString());
|
||||
break;
|
||||
|
||||
case 3: // cone
|
||||
cmd = QString::fromLatin1("%1.Radius1='%2'\n"
|
||||
"%1.Radius2='%3'\n"
|
||||
"%1.Height='%4'\n"
|
||||
"%1.Angle='%5'\n")
|
||||
.arg(name,
|
||||
ui->coneRadius1->value().getSafeUserString(),
|
||||
ui->coneRadius2->value().getSafeUserString(),
|
||||
ui->coneHeight->value().getSafeUserString(),
|
||||
ui->coneAngle->value().getSafeUserString());
|
||||
cmd = fmt::format("{0}.Radius1='{1}'\n"
|
||||
"{0}.Radius2='{2}'\n"
|
||||
"{0}.Height='{3}'\n"
|
||||
"{0}.Angle='{4}'\n",
|
||||
name,
|
||||
ui->coneRadius1->value().getSafeUserString(),
|
||||
ui->coneRadius2->value().getSafeUserString(),
|
||||
ui->coneHeight->value().getSafeUserString(),
|
||||
ui->coneAngle->value().getSafeUserString());
|
||||
break;
|
||||
|
||||
case 4: // sphere
|
||||
cmd = QString::fromLatin1("%1.Radius='%2'\n"
|
||||
"%1.Angle1='%3'\n"
|
||||
"%1.Angle2='%4'\n"
|
||||
"%1.Angle3='%5'\n")
|
||||
.arg(name,
|
||||
ui->sphereRadius->value().getSafeUserString(),
|
||||
ui->sphereAngle1->value().getSafeUserString(),
|
||||
ui->sphereAngle2->value().getSafeUserString(),
|
||||
ui->sphereAngle3->value().getSafeUserString());
|
||||
cmd = fmt::format("{0}.Radius='{1}'\n"
|
||||
"{0}.Angle1='{2}'\n"
|
||||
"{0}.Angle2='{3}'\n"
|
||||
"{0}.Angle3='{4}'\n",
|
||||
name,
|
||||
ui->sphereRadius->value().getSafeUserString(),
|
||||
ui->sphereAngle1->value().getSafeUserString(),
|
||||
ui->sphereAngle2->value().getSafeUserString(),
|
||||
ui->sphereAngle3->value().getSafeUserString());
|
||||
break;
|
||||
case 5: // ellipsoid
|
||||
cmd = QString::fromLatin1("%1.Radius1='%2'\n"
|
||||
"%1.Radius2='%3'\n"
|
||||
"%1.Radius3='%4'\n"
|
||||
"%1.Angle1='%5'\n"
|
||||
"%1.Angle2='%6'\n"
|
||||
"%1.Angle3='%7'\n")
|
||||
.arg(name,
|
||||
ui->ellipsoidRadius1->value().getSafeUserString(),
|
||||
ui->ellipsoidRadius2->value().getSafeUserString(),
|
||||
ui->ellipsoidRadius3->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle1->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle2->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle3->value().getSafeUserString());
|
||||
cmd = fmt::format("{0}.Radius1='{1}'\n"
|
||||
"{0}.Radius2='{2}'\n"
|
||||
"{0}.Radius3='{3}'\n"
|
||||
"{0}.Angle1='{4}'\n"
|
||||
"{0}.Angle2='{5}'\n"
|
||||
"{0}.Angle3='{6}'\n",
|
||||
name,
|
||||
ui->ellipsoidRadius1->value().getSafeUserString(),
|
||||
ui->ellipsoidRadius2->value().getSafeUserString(),
|
||||
ui->ellipsoidRadius3->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle1->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle2->value().getSafeUserString(),
|
||||
ui->ellipsoidAngle3->value().getSafeUserString());
|
||||
break;
|
||||
|
||||
case 6: // torus
|
||||
cmd = QString::fromLatin1("%1.Radius1='%2'\n"
|
||||
"%1.Radius2='%3'\n"
|
||||
"%1.Angle1='%4'\n"
|
||||
"%1.Angle2='%5'\n"
|
||||
"%1.Angle3='%6'\n")
|
||||
.arg(name,
|
||||
ui->torusRadius1->value().getSafeUserString(),
|
||||
ui->torusRadius2->value().getSafeUserString(),
|
||||
ui->torusAngle1->value().getSafeUserString(),
|
||||
ui->torusAngle2->value().getSafeUserString(),
|
||||
ui->torusAngle3->value().getSafeUserString());
|
||||
cmd = fmt::format("{0}.Radius1='{1}'\n"
|
||||
"{0}.Radius2='{2}'\n"
|
||||
"{0}.Angle1='{3}'\n"
|
||||
"{0}.Angle2='{4}'\n"
|
||||
"{0}.Angle3='{5}'\n",
|
||||
name,
|
||||
ui->torusRadius1->value().getSafeUserString(),
|
||||
ui->torusRadius2->value().getSafeUserString(),
|
||||
ui->torusAngle1->value().getSafeUserString(),
|
||||
ui->torusAngle2->value().getSafeUserString(),
|
||||
ui->torusAngle3->value().getSafeUserString());
|
||||
break;
|
||||
case 7: // prism
|
||||
cmd = QString::fromLatin1("%1.Polygon=%2\n"
|
||||
"%1.Circumradius='%3'\n"
|
||||
"%1.Height='%4'\n"
|
||||
"%1.FirstAngle='%5'\n"
|
||||
"%1.SecondAngle='%6'\n")
|
||||
.arg(name,
|
||||
QString::number(ui->prismPolygon->value()),
|
||||
ui->prismCircumradius->value().getSafeUserString(),
|
||||
ui->prismHeight->value().getSafeUserString(),
|
||||
ui->prismXSkew->value().getSafeUserString(),
|
||||
ui->prismYSkew->value().getSafeUserString());
|
||||
cmd = fmt::format("{0}.Polygon={1}\n"
|
||||
"{0}.Circumradius='{2}'\n"
|
||||
"{0}.Height='{3}'\n"
|
||||
"{0}.FirstAngle='{4}'\n"
|
||||
"{0}.SecondAngle='{5}'\n",
|
||||
name,
|
||||
ui->prismPolygon->value(),
|
||||
ui->prismCircumradius->value().getSafeUserString(),
|
||||
ui->prismHeight->value().getSafeUserString(),
|
||||
ui->prismXSkew->value().getSafeUserString(),
|
||||
ui->prismYSkew->value().getSafeUserString());
|
||||
break;
|
||||
case 8: // wedge
|
||||
// Xmin/max, Ymin/max and Zmin/max must each not be equal
|
||||
@@ -929,27 +929,27 @@ bool TaskBoxPrimitives::setPrimitive(App::DocumentObject* obj)
|
||||
tr("Z min must not be equal to Z max!"));
|
||||
return false;
|
||||
}
|
||||
cmd = QString::fromLatin1("%1.Xmin='%2'\n"
|
||||
"%1.Ymin='%3'\n"
|
||||
"%1.Zmin='%4'\n"
|
||||
"%1.X2min='%5'\n"
|
||||
"%1.Z2min='%6'\n"
|
||||
"%1.Xmax='%7'\n"
|
||||
"%1.Ymax='%8'\n"
|
||||
"%1.Zmax='%9'\n"
|
||||
"%1.X2max='%10'\n"
|
||||
"%1.Z2max='%11'\n")
|
||||
.arg(name,
|
||||
ui->wedgeXmin->value().getSafeUserString(),
|
||||
ui->wedgeYmin->value().getSafeUserString(),
|
||||
ui->wedgeZmin->value().getSafeUserString(),
|
||||
ui->wedgeX2min->value().getSafeUserString(),
|
||||
ui->wedgeZ2min->value().getSafeUserString(),
|
||||
ui->wedgeXmax->value().getSafeUserString(),
|
||||
ui->wedgeYmax->value().getSafeUserString(),
|
||||
ui->wedgeZmax->value().getSafeUserString())
|
||||
.arg(ui->wedgeX2max->value().getSafeUserString(),
|
||||
ui->wedgeZ2max->value().getSafeUserString());
|
||||
cmd = fmt::format("{0}.Xmin='{1}'\n"
|
||||
"{0}.Ymin='{2}'\n"
|
||||
"{0}.Zmin='{3}'\n"
|
||||
"{0}.X2min='{4}'\n"
|
||||
"{0}.Z2min='{5}'\n"
|
||||
"{0}.Xmax='{6}'\n"
|
||||
"{0}.Ymax='{7}'\n"
|
||||
"{0}.Zmax='{8}'\n"
|
||||
"{0}.X2max='{9}'\n"
|
||||
"{0}.Z2max='{10}'\n",
|
||||
name,
|
||||
ui->wedgeXmin->value().getSafeUserString(),
|
||||
ui->wedgeYmin->value().getSafeUserString(),
|
||||
ui->wedgeZmin->value().getSafeUserString(),
|
||||
ui->wedgeX2min->value().getSafeUserString(),
|
||||
ui->wedgeZ2min->value().getSafeUserString(),
|
||||
ui->wedgeXmax->value().getSafeUserString(),
|
||||
ui->wedgeYmax->value().getSafeUserString(),
|
||||
ui->wedgeZmax->value().getSafeUserString(),
|
||||
ui->wedgeX2max->value().getSafeUserString(),
|
||||
ui->wedgeZ2max->value().getSafeUserString());
|
||||
break;
|
||||
|
||||
default:
|
||||
@@ -959,7 +959,7 @@ bool TaskBoxPrimitives::setPrimitive(App::DocumentObject* obj)
|
||||
// Execute the Python block
|
||||
// No need to open a transaction because this is already done in the command
|
||||
// class or when starting to edit a primitive.
|
||||
Gui::Command::runCommand(Gui::Command::Doc, cmd.toUtf8());
|
||||
Gui::Command::runCommand(Gui::Command::Doc, cmd.c_str());
|
||||
Gui::Command::runCommand(Gui::Command::Doc, "App.ActiveDocument.recompute()");
|
||||
}
|
||||
catch (const Base::PyException& e) {
|
||||
|
||||
@@ -765,8 +765,8 @@ PyObject* SketchObjectPy::setDatum(PyObject* args)
|
||||
str << "Cannot set the datum because the sketch contains conflicting constraints";
|
||||
}
|
||||
else if (err == -2) {
|
||||
str << "Datum " << (const char*)Quantity.getUserString().toUtf8()
|
||||
<< " for the constraint with index " << Index << " is invalid";
|
||||
str << "Datum " << Quantity.getUserString() << " for the constraint with index "
|
||||
<< Index << " is invalid";
|
||||
}
|
||||
else if (err == -4) {
|
||||
str << "Negative datum values are not valid for the constraint with index " << Index;
|
||||
@@ -778,8 +778,7 @@ PyObject* SketchObjectPy::setDatum(PyObject* args)
|
||||
str << "Cannot set the datum because of invalid geometry";
|
||||
}
|
||||
else {
|
||||
str << "Unexpected problem at setting datum "
|
||||
<< (const char*)Quantity.getUserString().toUtf8()
|
||||
str << "Unexpected problem at setting datum " << Quantity.getUserString()
|
||||
<< " for the constraint with index " << Index;
|
||||
}
|
||||
PyErr_SetString(PyExc_ValueError, str.str().c_str());
|
||||
|
||||
@@ -2095,11 +2095,10 @@ void EditModeConstraintCoinManager::rebuildConstraintNodes(
|
||||
|
||||
QString EditModeConstraintCoinManager::getPresentationString(const Constraint* constraint)
|
||||
{
|
||||
QString nameStr; // name parameter string
|
||||
std::string nameStr; // name parameter string
|
||||
QString valueStr; // dimensional value string
|
||||
QString presentationStr; // final return string
|
||||
QString unitStr; // the actual unit string
|
||||
QString baseUnitStr; // the expected base unit string
|
||||
std::string unitStr; // the actual unit string
|
||||
std::string baseUnitStr; // the expected base unit string
|
||||
double factor; // unit scaling factor, currently not used
|
||||
Base::UnitSystem unitSys; // current unit system
|
||||
|
||||
@@ -2108,10 +2107,11 @@ QString EditModeConstraintCoinManager::getPresentationString(const Constraint* c
|
||||
}
|
||||
|
||||
// Get the current name parameter string of the constraint
|
||||
nameStr = QString::fromStdString(constraint->Name);
|
||||
nameStr = constraint->Name;
|
||||
|
||||
// Get the current value string including units
|
||||
valueStr = constraint->getPresentationValue().getUserString(factor, unitStr);
|
||||
valueStr =
|
||||
QString::fromStdString(constraint->getPresentationValue().getUserString(factor, unitStr));
|
||||
|
||||
// Hide units if user has requested it, is being displayed in the base
|
||||
// units, and the schema being used has a clear base unit in the first
|
||||
@@ -2127,19 +2127,19 @@ QString EditModeConstraintCoinManager::getPresentationString(const Constraint* c
|
||||
switch (unitSys) {
|
||||
case Base::UnitSystem::SI1:
|
||||
case Base::UnitSystem::MmMin:
|
||||
baseUnitStr = QString::fromLatin1("mm");
|
||||
baseUnitStr = "mm";
|
||||
break;
|
||||
|
||||
case Base::UnitSystem::SI2:
|
||||
baseUnitStr = QString::fromLatin1("m");
|
||||
baseUnitStr = "m";
|
||||
break;
|
||||
|
||||
case Base::UnitSystem::ImperialDecimal:
|
||||
baseUnitStr = QString::fromLatin1("in");
|
||||
baseUnitStr = "in";
|
||||
break;
|
||||
|
||||
case Base::UnitSystem::Centimeters:
|
||||
baseUnitStr = QString::fromLatin1("cm");
|
||||
baseUnitStr = "cm";
|
||||
break;
|
||||
|
||||
default:
|
||||
@@ -2147,9 +2147,9 @@ QString EditModeConstraintCoinManager::getPresentationString(const Constraint* c
|
||||
break;
|
||||
}
|
||||
|
||||
if (!baseUnitStr.isEmpty()) {
|
||||
if (!baseUnitStr.empty()) {
|
||||
// expected unit string matches actual unit string. remove.
|
||||
if (QString::compare(baseUnitStr, unitStr) == 0) {
|
||||
if (baseUnitStr.compare(unitStr) == 0) {
|
||||
// Example code from: Mod/TechDraw/App/DrawViewDimension.cpp:372
|
||||
QRegularExpression rxUnits(
|
||||
QString::fromUtf8(" \\D*$")); // space + any non digits at end of string
|
||||
@@ -2171,17 +2171,19 @@ QString EditModeConstraintCoinManager::getPresentationString(const Constraint* c
|
||||
%N - the constraint name parameter
|
||||
%V - the value of the dimensional constraint, including any unit characters
|
||||
*/
|
||||
if (constraintParameters.bShowDimensionalName && !nameStr.isEmpty()) {
|
||||
if (constraintParameters.bShowDimensionalName && !nameStr.empty()) {
|
||||
QString presentationStr;
|
||||
if (constraintParameters.sDimensionalStringFormat.contains(QLatin1String("%V"))
|
||||
|| constraintParameters.sDimensionalStringFormat.contains(QLatin1String("%N"))) {
|
||||
presentationStr = constraintParameters.sDimensionalStringFormat;
|
||||
presentationStr.replace(QLatin1String("%N"), nameStr);
|
||||
presentationStr.replace(QLatin1String("%N"), QString::fromStdString(nameStr));
|
||||
presentationStr.replace(QLatin1String("%V"), valueStr);
|
||||
}
|
||||
else {
|
||||
// user defined format string does not contain any valid parameter, using default format
|
||||
// "%N = %V"
|
||||
presentationStr = nameStr + QLatin1String(" = ") + valueStr;
|
||||
presentationStr =
|
||||
QString::fromStdString(nameStr) + QString::fromLatin1(" = ") + valueStr;
|
||||
}
|
||||
|
||||
return presentationStr;
|
||||
|
||||
@@ -50,8 +50,7 @@ PropertyConstraintListItem::~PropertyConstraintListItem()
|
||||
QVariant PropertyConstraintListItem::toString(const QVariant& prop) const
|
||||
{
|
||||
const QList<Base::Quantity>& value = prop.value<QList<Base::Quantity>>();
|
||||
QString str;
|
||||
QTextStream out(&str);
|
||||
std::stringstream out;
|
||||
out << "[";
|
||||
for (QList<Base::Quantity>::const_iterator it = value.begin(); it != value.end(); ++it) {
|
||||
if (it != value.begin()) {
|
||||
@@ -60,7 +59,7 @@ QVariant PropertyConstraintListItem::toString(const QVariant& prop) const
|
||||
out << it->getUserString();
|
||||
}
|
||||
out << "]";
|
||||
return QVariant(str);
|
||||
return QVariant(QString::fromStdString(out.str()));
|
||||
}
|
||||
|
||||
void PropertyConstraintListItem::initialize()
|
||||
|
||||
@@ -158,7 +158,8 @@ public:
|
||||
case Sketcher::Diameter:
|
||||
case Sketcher::Angle:
|
||||
name = QString::fromLatin1("%1 (%2)").arg(
|
||||
name, constraint->getPresentationValue().getUserString());
|
||||
name,
|
||||
QString::fromStdString(constraint->getPresentationValue().getUserString()));
|
||||
break;
|
||||
case Sketcher::SnellsLaw: {
|
||||
double v = constraint->getPresentationValue().getValue();
|
||||
|
||||
@@ -719,10 +719,10 @@ std::string SketcherGui::lengthToDisplayFormat(double value, int digits)
|
||||
Base::Quantity asQuantity;
|
||||
asQuantity.setValue(value);
|
||||
asQuantity.setUnit(Base::Unit::Length);
|
||||
QString qUserString = asQuantity.getUserString();
|
||||
std::string userString = asQuantity.getUserString();
|
||||
if (Base::UnitsApi::isMultiUnitLength() || (!hideUnits() && useSystemDecimals())) {
|
||||
// just return the user string
|
||||
return qUserString.toStdString();
|
||||
return userString;
|
||||
}
|
||||
|
||||
// find the unit of measure
|
||||
@@ -734,26 +734,26 @@ std::string SketcherGui::lengthToDisplayFormat(double value, int digits)
|
||||
// get the numeric part of the user string
|
||||
QRegularExpression rxNoUnits(
|
||||
QString::fromUtf8("(.*) \\D*$")); // text before space + any non digits at end of string
|
||||
QRegularExpressionMatch match = rxNoUnits.match(qUserString);
|
||||
QRegularExpressionMatch match = rxNoUnits.match(QString::fromStdString(userString));
|
||||
if (!match.hasMatch()) {
|
||||
// no units in userString?
|
||||
return qUserString.toStdString();
|
||||
return userString;
|
||||
}
|
||||
QString matched = match.captured(1); // matched is the numeric part of user string
|
||||
auto smatched = matched.toStdString();
|
||||
int dpPos = matched.indexOf(QLocale().decimalPoint());
|
||||
if (dpPos < 0) {
|
||||
auto ret = matched.toStdString();
|
||||
// no decimal separator (ie an integer), return all the digits
|
||||
if (!hideUnits()) {
|
||||
ret.append(unitPart.toStdString());
|
||||
smatched.append(unitPart.toStdString());
|
||||
}
|
||||
return ret;
|
||||
return smatched;
|
||||
}
|
||||
|
||||
// real number
|
||||
if (useSystemDecimals() && hideUnits()) {
|
||||
// return just the numeric part of the user string
|
||||
return matched.toStdString();
|
||||
return smatched;
|
||||
}
|
||||
|
||||
// real number and not using system decimals
|
||||
@@ -779,7 +779,7 @@ std::string SketcherGui::angleToDisplayFormat(double value, int digits)
|
||||
Base::Quantity asQuantity;
|
||||
asQuantity.setValue(value);
|
||||
asQuantity.setUnit(Base::Unit::Angle);
|
||||
QString qUserString = asQuantity.getUserString();
|
||||
QString qUserString = QString::fromStdString(asQuantity.getUserString());
|
||||
if (Base::UnitsApi::isMultiUnitAngle()) {
|
||||
// just return the user string
|
||||
// Coin SbString doesn't handle utf8 well, so we convert to ascii
|
||||
@@ -794,7 +794,7 @@ std::string SketcherGui::angleToDisplayFormat(double value, int digits)
|
||||
|
||||
// we always use use U+00B0 (°) as the unit of measure for angles in
|
||||
// single unit schema. Will need a change to support rads or grads.
|
||||
auto qUnitString = QString::fromUtf8("°");
|
||||
std::string unitString = "°";
|
||||
auto decimalSep = QLocale().decimalPoint();
|
||||
|
||||
// get the numeric part of the user string
|
||||
@@ -806,18 +806,12 @@ std::string SketcherGui::angleToDisplayFormat(double value, int digits)
|
||||
return qUserString.toStdString();
|
||||
}
|
||||
QString matched = match.captured(1); // matched is the numeric part of user string
|
||||
auto smatched = matched.toStdString();
|
||||
auto sUnitString = qUnitString.toStdString();
|
||||
int dpPos = matched.indexOf(decimalSep);
|
||||
if (dpPos < 0) {
|
||||
// no decimal separator (ie an integer), return all the digits
|
||||
return smatched + sUnitString;
|
||||
}
|
||||
|
||||
// real number
|
||||
if (useSystemDecimals()) {
|
||||
// return just the numeric part of the user string + degree symbol
|
||||
return smatched + sUnitString;
|
||||
if (dpPos < 0 || useSystemDecimals()) {
|
||||
// just the numeric part of the user string + degree symbol
|
||||
auto angle = matched.toStdString();
|
||||
angle.append(unitString);
|
||||
return angle;
|
||||
}
|
||||
|
||||
// real number and not using system decimals
|
||||
@@ -827,7 +821,7 @@ std::string SketcherGui::angleToDisplayFormat(double value, int digits)
|
||||
requiredLength = matched.size();
|
||||
}
|
||||
auto numericPart = matched.left(requiredLength).toStdString();
|
||||
numericPart.append(sUnitString);
|
||||
numericPart.append(unitString);
|
||||
return numericPart;
|
||||
}
|
||||
|
||||
|
||||
@@ -158,8 +158,7 @@ void ViewProviderSketch::ParameterObserver::updateGridSize(const std::string& st
|
||||
"User parameter:BaseApp/Preferences/Mod/Sketcher/General");
|
||||
|
||||
Client.GridSize.setValue(
|
||||
Base::Quantity::parse(
|
||||
QString::fromLatin1(hGrp->GetGroup("GridSize")->GetASCII("GridSize", "10.0").c_str()))
|
||||
Base::Quantity::parse(hGrp->GetGroup("GridSize")->GetASCII("GridSize", "10.0"))
|
||||
.getValue());
|
||||
}
|
||||
|
||||
|
||||
@@ -378,7 +378,7 @@ QVariant SheetModel::data(const QModelIndex& index, int role) const
|
||||
// When displaying a quantity then use the globally set scheme
|
||||
// See: https://forum.freecad.org/viewtopic.php?f=3&t=50078
|
||||
Base::Quantity value = floatProp->getQuantityValue();
|
||||
v = value.getUserString();
|
||||
v = QString::fromStdString(value.getUserString());
|
||||
}
|
||||
return formatCellDisplay(v, cell);
|
||||
}
|
||||
|
||||
@@ -78,9 +78,9 @@ std::string DimensionFormatter::formatValue(const qreal value,
|
||||
asQuantity.setUnit(Base::Unit::Length);
|
||||
}
|
||||
|
||||
QString qUserString = asQuantity.getUserString(); // this handles mm to inch/km/parsec etc
|
||||
// and decimal positions but won't give more than
|
||||
// Global_Decimals precision
|
||||
// this handles mm to inch/km/parsec etc and decimal positions but
|
||||
// won't give more than Global_Decimals precision
|
||||
QString qUserString = QString::fromStdString(asQuantity.getUserString());
|
||||
|
||||
//get formatSpec prefix/suffix/specifier
|
||||
QStringList qsl = getPrefixSuffixSpec(qFormatSpec);
|
||||
@@ -132,7 +132,7 @@ std::string DimensionFormatter::formatValue(const qreal value,
|
||||
qBasicUnit = QString::fromUtf8("°");
|
||||
}
|
||||
else {
|
||||
double convertValue = Base::Quantity::parse(QString::fromLatin1("1") + qBasicUnit).getValue();
|
||||
double convertValue = Base::Quantity::parse("1" + qBasicUnit.toStdString()).getValue();
|
||||
userVal = asQuantity.getValue() / convertValue;
|
||||
if (areaMeasure) {
|
||||
userVal = userVal / convertValue; // divide again as area is length²
|
||||
|
||||
@@ -182,13 +182,13 @@ void DrawSVGTemplate::extractTemplateAttributes(QDomDocument& templateDocument)
|
||||
|
||||
// Obtain the width
|
||||
QString str = docElement.attribute(QString::fromLatin1("width"));
|
||||
quantity = Base::Quantity::parse(str);
|
||||
quantity = Base::Quantity::parse(str.toStdString());
|
||||
quantity.setUnit(Base::Unit::Length);
|
||||
|
||||
Width.setValue(quantity.getValue());
|
||||
|
||||
str = docElement.attribute(QString::fromLatin1("height"));
|
||||
quantity = Base::Quantity::parse(str);
|
||||
quantity = Base::Quantity::parse(str.toStdString());
|
||||
quantity.setUnit(Base::Unit::Length);
|
||||
|
||||
Height.setValue(quantity.getValue());
|
||||
|
||||
@@ -272,8 +272,7 @@ std::string DrawViewSpreadsheet::getSheetImage()
|
||||
if (prop && cell) {
|
||||
if (prop->isDerivedFrom(App::PropertyQuantity::getClassTypeId())) {
|
||||
auto contentAsQuantity = static_cast<App::PropertyQuantity*>(prop)->getQuantityValue();
|
||||
auto ustring = contentAsQuantity.getUserString();
|
||||
field << ustring.toStdString();
|
||||
field << contentAsQuantity.getUserString();
|
||||
} else if (prop->isDerivedFrom(App::PropertyFloat::getClassTypeId()) ||
|
||||
prop->isDerivedFrom(App::PropertyInteger::getClassTypeId())) {
|
||||
std::string temp = cell->getFormattedQuantity();
|
||||
|
||||
@@ -1840,7 +1840,7 @@ void CmdTechDrawExtensionAreaAnnotation::activated(int iMsg)
|
||||
asQuantity.setValue(totalArea);
|
||||
asQuantity.setUnit(Base::Unit::Area);
|
||||
|
||||
QString qUserString = asQuantity.getUserString();
|
||||
QString qUserString = QString::fromStdString(asQuantity.getUserString());
|
||||
if (qUserString.endsWith(QString::fromUtf8("^2"))) {
|
||||
qUserString.chop(2);
|
||||
qUserString.append(QString::fromUtf8("²"));
|
||||
|
||||
Reference in New Issue
Block a user