【问题标题】:Ifc2x3 Equivalent for IfcExtrudedAreaSolidTaperedIfc2x3 等效于 IfcExtrudedAreaSolidTapered
【发布时间】:2018-10-05 00:25:49
【问题描述】:

我希望能够在 IFC 中实现截锥。我知道在 IFC 2x4 中使用 IfcExtrudedAreaSolidTapered 类有一种相当快速的方法来实现这一点。

谁能告诉我如何使用 Ifc 2x3 做到这一点?

这是我所拥有的:

IfcExtrudedAreaSolid CreateExtrudedAreaSolid(IfcStore model, IfcProfileDef 
profile,IfcAxis2Placement3D placement, double extrude)
{
    var extrusion = model.Instances.New<IfcExtrudedAreaSolid>();
    extrusion.Depth = extrude;
    extrusion.ExtrudedDirection = model.Instances.New<IfcDirection>(d => 
    d.SetXYZ(0, 0, 1));
    extrusion.Position = placement;
    extrusion.SweptArea = profile;
    return extrusion;
}

这里是我创建个人资料的地方:

private IfcCircleHollowProfileDef MakeCircleHollowProfileDef(IfcStore model, 
IfcAxis2Placement3D placement, double r, double wallThickness)
{
    var circleProfile = model.Instances.New<IfcCircleHollowProfileDef>();
    circleProfile.Position = ConvertToAxis2D(placement, model);
    circleProfile.Radius = r;
    circleProfile.WallThickness = wallThickness;
    return circleProfile;
}

有人知道如何以正确的方式做到这一点吗?

【问题讨论】:

    标签: c# ifc bim xbim


    【解决方案1】:

    我会选择cone 并用half space 剪掉它(通过BooleanResult)。您希望布尔运算为 DIFFERENCE,圆锥作为第一个操作数,半空间作为第二个操作数。

    我没有在 xBim 中实现它的代码(我使用 IfcPlusPlus),抱歉。根据您给定的代码,您需要计算的一个信息是圆锥体的全高,以将其切割回所需的高度。

    【讨论】:

      猜你喜欢
      • 2019-06-29
      • 2021-09-22
      • 1970-01-01
      • 2012-10-21
      • 2017-08-02
      • 2012-03-31
      • 2018-01-28
      • 2014-04-11
      • 2012-01-07
      相关资源
      最近更新 更多