Solid OffsetFromSurface not working

Hi Communities,

I'm relatively new to GC an I'm currently testing out the method of using an alignment and GC to create a tunnel wall. This is the way I am doing it:

  1. Referencing a Alignment.
  2. Creating range and creating polyline by the technique ByElementInRange.
  3. Creating coordinate systems at every 10m along the alignment.
  4. Then creating a circle at each CS.
  5. Loft the circles together.

I am then trying to create a solid by OffsetFromSurface. it works if I have a couple of circles but when I have more circles it doesn't create the solid.

I believe that I am following the instruction in January 2019 GC SIG "Alignment-Based Modeling"

I realise that it is hard to tell if you can see the graph. Is there a way if sharing it on the forum?

Other info:

I'm using version Select series 6 V08.11.09.436.

I look forward to hearing a response 

Thanks in advance 

Oliver 

  • Hi Oliver,

    Just from the information provided it is challenging to guess what causes this operation to fail in your case.

    When you mouse-over on the error badge on solid01, what is the information it provides?

    Easiest for analysis would be if you post the DGN file plus any reference files it may use (perhaps as ZIP-archive).

    Regards,

         Volker

       

  • Hi Volker,

    Sorry to take a while to get back to you. The error message that comes up with 'technique failed'. 

    Can you give me an email so I can send you a .zip?

    Thanks 

    Oliver 

  • Hi Oliver,

    Yes, it is Volker.Mueller (at) Bentley.com.

    Regards,

       Volker

       

  • Hi Volker,

    Have you been able to find the answer? I have the same problem following QuickStart GC101 in GC for OpenRoads Designer.

    Thanks,

    Merlijn

  • Hi Merlijn,

    It could be a error associated to the order of the Loft.

    I did a quick test and it produced the same error when I had the order of the surface at 2 or a segmented loft. when I changed it to order 3 it all works. See below.

      

    here is the example file

    transaction 1 stateChange 'Add baseCS'
    {
        gcModel
        {
            node User.Objects.baseCS Bentley.GC.NodeTypes.CoordinateSystem
            {
                Technique                 = 'AtDGNModelOrigin';
                DGNModelName              = 'Design Model';
                SymbolSize                = 1;
                GraphLocation             = <auto> {40.0, 40.0, 0.0, 116.37};
            }
        }
    }
    
    transaction 2 stateChange 'Add point1, point2, point3, point4'
    {
        gcModel
        {
            node User.Objects.point1 Bentley.GC.NodeTypes.Point
            {
                Technique                 = 'ByCartesianCoordinates';
                CoordinateSystem          = baseCS;
                XTranslation              = <free> 1860.73706739033;
                YTranslation              = <free> 0.0;
                ZTranslation              = <free> 0.0;
                GraphLocation             = <auto> {314.0, 40.0, 0.0, 155.43};
            }
            node User.Objects.point2 Bentley.GC.NodeTypes.Point
            {
                Technique                 = 'ByCartesianCoordinates';
                CoordinateSystem          = baseCS;
                XTranslation              = <free> 22500.7809644394;
                YTranslation              = <free> 6160.83502455083;
                ZTranslation              = <free> 0.0;
                GraphLocation             = <auto> {314.0, 235.43, 0.0, 155.43};
            }
            node User.Objects.point3 Bentley.GC.NodeTypes.Point
            {
                Technique                 = 'ByCartesianCoordinates';
                CoordinateSystem          = baseCS;
                XTranslation              = <free> 48648.6141214151;
                YTranslation              = <free> 402.041149214104;
                ZTranslation              = <free> 0.0;
                GraphLocation             = <auto> {314.0, 430.86, 0.0, 155.43};
            }
            node User.Objects.point4 Bentley.GC.NodeTypes.Point
            {
                Technique                 = 'ByCartesianCoordinates';
                CoordinateSystem          = baseCS;
                XTranslation              = <free> 81703.422074573;
                YTranslation              = <free> 9122.50044615258;
                ZTranslation              = <free> 0.0;
                GraphLocation             = <auto> {314.0, 626.29, 0.0, 155.43};
            }
        }
    }
    
    transaction 3 stateChange 'Add bsplineCurve1'
    {
        gcModel
        {
            node User.Objects.bsplineCurve1 Bentley.GC.NodeTypes.BSplineCurve
            {
                Technique                 = 'ByPoints';
                Points                    = {point1, point2, point3, point4};
                GraphLocation             = {827.131, 157.915};
            }
        }
    }
    
    transaction 4 stateChange 'Add coordinateSystem1'
    {
        gcModel
        {
            node User.Objects.coordinateSystem1 Bentley.GC.NodeTypes.CoordinateSystem
            {
                Technique                 = 'ByNumberAlongCurve';
                Curve                     = bsplineCurve1;
                NumberAlongCurve          = 10;
                NumberAlongCurveOption    = NumberAlongCurveOption.ArcLength;
                IncludeStart              = true;
                IncludeEnd                = true;
                UpVector                  = baseCS.ZDirection;
                GraphLocation             = {1042.119, 160.131, 0.0, 142.41};
            }
        }
    }
    
    transaction 5 stateChange 'Add circle1'
    {
        gcModel
        {
            node User.Objects.circle1 Bentley.GC.NodeTypes.Circle
            {
                Technique                 = 'ByCenterRadius';
                CenterPoint               = coordinateSystem1;
                Radius                    = 2000;
                Support                   = coordinateSystem1.YZPlane;
                Fill                      = false;
                GraphLocation             = {1312.785, 150.797, 0.0, 142.41};
            }
        }
    }
    
    transaction 6 stateChange 'Add bsplineSurface1'
    {
        gcModel
        {
            node User.Objects.bsplineSurface1 Bentley.GC.NodeTypes.BSplineSurface
            {
                Technique                 = 'LoftCurves';
                Curves                    = circle1;
                Order                     = 3;
                UCurveDisplay             = 4;
                VCurveDisplay             = 4;
                GraphLocation             = {1607.452, 174.13};
            }
        }
    }
    
    transaction 7 stateChange 'Add solid1'
    {
        gcModel
        {
            node User.Objects.solid1 Bentley.GC.NodeTypes.Solid
            {
                Technique                 = 'OffsetFromSurface';
                SurfaceToOffset           = bsplineSurface1;
                OffsetAboveSurface        = 100;
                OffsetBelowSurface        = 100;
                AutoHideInputs            = false;
                Density                   = 1.0;
                GraphLocation             = {1878.118, 162.13};
            }
        }
    }
    

    To use the text file just start a new GC file and open the transactions pane and click on the blue square to edit the transaction list.

    With the editor open > File > Insert Text from Text file.

    Hope that helps

    Wayne