OSArch Community

IfcSweptAreaSolid using a 2D shape along a 3D line

  1. S

    Hi,

    in comparison to what is shown here with the builder.create_swept_disk_solid() function:

    
    builder = ifcopenshell.util.shape_builder.ShapeBuilder(model)
    
    # Sweep a 10mm radius disk along a polyline with a couple of straight segments and an arc.
    
    curve = builder.polyline(
    
        [(0., 0., 0.), (100., 0., 0.), (171., 29., 0.), (200., 100., 0.), (200., 200., 0.)],
    
        arc_points=[2])
    
    swept_curve = builder.create_swept_disk_solid(curve, 10)
    
    # Create a body representation
    
    body = ifcopenshell.util.representation.get_context(model, "Model", "Body", "MODEL_VIEW")
    
    representation = builder.get_representation(body, swept_curve)
    

    would it also be possible to create an "IfcSweptAreaSolid" in ifcopenshell 0.8+ ?

    I know this is currently an abstract function in the IFC schema, but one may commonly need to sweep simple 2D shapes (such as squares, rectangles, T-shapes, L-shapes, etc) along a 3D line that is not necessarily defined on a unique plane in space.

    Such a function would therefore be extremely convenient.

    Thanks.

  2. T
  3. S

    @theoryshaw : I'm unfortunately not able to find out such function in ifcopenshell 0.8.0.

  4. T

Login or Register to reply.