Extended support for tessellation parameter to more IFC shapes
parent
d4ead31c18
commit
bf2e2f7537
|
@ -258,7 +258,7 @@ void ProcessRevolvedAreaSolid(const IfcRevolvedAreaSolid& solid, TempMesh& resul
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const unsigned int cnt_segments = std::max(2u,static_cast<unsigned int>(16 * std::fabs(max_angle)/AI_MATH_HALF_PI_F));
|
const unsigned int cnt_segments = std::max(2u,static_cast<unsigned int>(conv.settings.cylindricalTessellation * std::fabs(max_angle)/AI_MATH_HALF_PI_F));
|
||||||
const IfcFloat delta = max_angle/cnt_segments;
|
const IfcFloat delta = max_angle/cnt_segments;
|
||||||
|
|
||||||
has_area = has_area && std::fabs(max_angle) < AI_MATH_TWO_PI_F*0.99;
|
has_area = has_area && std::fabs(max_angle) < AI_MATH_TWO_PI_F*0.99;
|
||||||
|
@ -327,7 +327,7 @@ void ProcessSweptDiskSolid(const IfcSweptDiskSolid solid, TempMesh& result, Conv
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const unsigned int cnt_segments = 16;
|
const unsigned int cnt_segments = conv.settings.cylindricalTessellation;
|
||||||
const IfcFloat deltaAngle = AI_MATH_TWO_PI/cnt_segments;
|
const IfcFloat deltaAngle = AI_MATH_TWO_PI/cnt_segments;
|
||||||
|
|
||||||
const size_t samples = curve->EstimateSampleCount(solid.StartParam,solid.EndParam);
|
const size_t samples = curve->EstimateSampleCount(solid.StartParam,solid.EndParam);
|
||||||
|
|
Loading…
Reference in New Issue