Sketcher: External edges in constraint modes (distance)
This commit is contained in:
parent
39725ff777
commit
ab4a222dc6
|
@ -784,7 +784,7 @@ namespace SketcherGui {
|
||||||
(allowedSelTypes & (SelEdge | SelEdgeOrAxis) && element.substr(0,4) == "Edge") ||
|
(allowedSelTypes & (SelEdge | SelEdgeOrAxis) && element.substr(0,4) == "Edge") ||
|
||||||
(allowedSelTypes & (SelHAxis | SelEdgeOrAxis) && element.substr(0,6) == "H_Axis") ||
|
(allowedSelTypes & (SelHAxis | SelEdgeOrAxis) && element.substr(0,6) == "H_Axis") ||
|
||||||
(allowedSelTypes & (SelVAxis | SelEdgeOrAxis) && element.substr(0,6) == "V_Axis") ||
|
(allowedSelTypes & (SelVAxis | SelEdgeOrAxis) && element.substr(0,6) == "V_Axis") ||
|
||||||
(allowedSelTypes & SketcherGui::SelExternalEdge && element.substr(0,12) == "ExternalEdge"))
|
(allowedSelTypes & SelExternalEdge && element.substr(0,12) == "ExternalEdge"))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
@ -914,7 +914,9 @@ public:
|
||||||
}
|
}
|
||||||
else if (allowedSelTypes & SelExternalEdge) {
|
else if (allowedSelTypes & SelExternalEdge) {
|
||||||
//TODO: Figure out how this works
|
//TODO: Figure out how this works
|
||||||
|
selIdPair.GeoId = CrvId;
|
||||||
newSelType = SelExternalEdge;
|
newSelType = SelExternalEdge;
|
||||||
|
ss << "ExternalEdge" << Sketcher::GeoEnum::RefExt + 1 - CrvId;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (selIdPair.GeoId == Constraint::GeoUndef) {
|
if (selIdPair.GeoId == Constraint::GeoUndef) {
|
||||||
|
@ -1952,8 +1954,9 @@ CmdSketcherConstrainDistance::CmdSketcherConstrainDistance()
|
||||||
eType = ForEdit;
|
eType = ForEdit;
|
||||||
|
|
||||||
allowedSelSequences = {{SelVertex, SelVertexOrRoot}, {SelRoot, SelVertex},
|
allowedSelSequences = {{SelVertex, SelVertexOrRoot}, {SelRoot, SelVertex},
|
||||||
{SelEdge},
|
{SelEdge}, {SelExternalEdge},
|
||||||
{SelVertex, SelEdgeOrAxis}, {SelRoot, SelEdge}};
|
{SelVertex, SelEdgeOrAxis}, {SelRoot, SelEdge},
|
||||||
|
{SelVertex, SelExternalEdge}, {SelRoot, SelExternalEdge}};
|
||||||
constraintCursor = cursor_genericconstraint;
|
constraintCursor = cursor_genericconstraint;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2160,6 +2163,7 @@ void CmdSketcherConstrainDistance::applyConstraint(std::vector<SelIdPair> &selSe
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
case 2: // {SelEdge}
|
case 2: // {SelEdge}
|
||||||
|
case 3: // {SelExternalEdge}
|
||||||
{
|
{
|
||||||
GeoId1 = GeoId2 = selSeq.at(0).GeoId;
|
GeoId1 = GeoId2 = selSeq.at(0).GeoId;
|
||||||
PosId1 = Sketcher::start; PosId2 = Sketcher::end;
|
PosId1 = Sketcher::start; PosId2 = Sketcher::end;
|
||||||
|
@ -2192,8 +2196,10 @@ void CmdSketcherConstrainDistance::applyConstraint(std::vector<SelIdPair> &selSe
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
case 3: //{SelVertex, SelEdgeOrAxis}
|
case 4: // {SelVertex, SelEdgeOrAxis}
|
||||||
case 4: //{SelRoot, SelEdge}
|
case 5: // {SelRoot, SelEdge}
|
||||||
|
case 6: // {SelVertex, SelExternalEdge}
|
||||||
|
case 7: // {SelRoot, SelExternalEdge}
|
||||||
{
|
{
|
||||||
GeoId1 = selSeq.at(0).GeoId; GeoId2 = selSeq.at(1).GeoId;
|
GeoId1 = selSeq.at(0).GeoId; GeoId2 = selSeq.at(1).GeoId;
|
||||||
PosId1 = selSeq.at(0).PosId; PosId2 = selSeq.at(1).PosId;
|
PosId1 = selSeq.at(0).PosId; PosId2 = selSeq.at(1).PosId;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user