mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-12 10:33:20 +00:00
Fixes problem with evaluating point on vertical alignment
Fixes evaluation of IfcLine parent curve for IfcGradientCurve. See https://github.com/IfcOpenShell/IfcOpenShell/discussions/5587
This commit is contained in:
@@ -696,6 +696,14 @@ class curve_segment_evaluator {
|
||||
auto pcDx = dr[0];
|
||||
auto pcDy = dr[1];
|
||||
|
||||
if (segment_type_ == ST_VERTICAL && placement_) {
|
||||
// the general algorithm for mapping parent curve onto curve segment doesn't
|
||||
// exactly work for IfcLine. This is easily overcome by usnig the curve segment
|
||||
// placement for the IfcLine direction
|
||||
pcDx = (*placement_)(0, 0);
|
||||
pcDy = (*placement_)(1, 0);
|
||||
}
|
||||
|
||||
if (segment_type_ == ST_HORIZONTAL || segment_type_ == ST_VERTICAL || segment_type_ == ST_CANT) {
|
||||
std::function<double(double)> convert_u;
|
||||
if (segment_type_ == ST_HORIZONTAL || segment_type_ == ST_CANT) {
|
||||
|
||||
Reference in New Issue
Block a user