// Token: 0x06000225 RID: 549 RVA: 0x0000F1B0 File Offset: 0x0000D3B0
        protected double GetActualSpacingForUnitechnik(Transform t1, Transform t2, short angle)
        {
            ItGeVector3d distributionLengthVector  = this.GetDistributionLengthVector(t1, t2);
            double       distributionDirectionSign = SteelGroupElementRebarBase.GetDistributionDirectionSign(distributionLengthVector, angle);

            return(distributionLengthVector.length() * distributionDirectionSign);
        }
        // Token: 0x06000214 RID: 532 RVA: 0x0000E8A4 File Offset: 0x0000CAA4
        public static ItGeVector3d GetNormalFromTwoSegments(ItGeCurve3d firstCurve, ItGeCurve3d nextCurve)
        {
            ItGeCircArc3d itGeCircArc3d = firstCurve as ItGeCircArc3d;
            ItGeLineSeg3d itGeLineSeg3d = firstCurve as ItGeLineSeg3d;
            bool          flag          = itGeCircArc3d != null;
            ItGeVector3d  result;

            if (flag)
            {
                result = itGeCircArc3d.normal();
            }
            else
            {
                ItGeVector3d  itGeVector3d   = itGeLineSeg3d.direction();
                ItGeCircArc3d itGeCircArc3d2 = nextCurve as ItGeCircArc3d;
                ItGeLineSeg3d itGeLineSeg3d2 = nextCurve as ItGeLineSeg3d;
                bool          flag2          = itGeCircArc3d2 != null;
                if (flag2)
                {
                    ItGeVector3d itGeVector3d2 = itGeCircArc3d2.normal();
                    ItGePlane    itGePlane     = new ItGePlane(ItGePoint3d.kOrigin, itGeVector3d2);
                    ItGePoint3d  itGePoint3d;
                    bool         flag3 = itGePlane.intersectWith(itGeLineSeg3d, out itGePoint3d, null);
                    if (flag3)
                    {
                        result = ItGeVector3d.kYAxis;
                    }
                    else
                    {
                        result = itGeVector3d2;
                    }
                }
                else
                {
                    bool flag4 = itGeLineSeg3d2 != null;
                    if (flag4)
                    {
                        ItGeVector3d vec           = itGeLineSeg3d2.direction();
                        ItGeVector3d itGeVector3d3 = itGeVector3d.crossProduct(vec);
                        bool         flag5         = itGeVector3d3.length().Gt(0.0, -1.0);
                        if (flag5)
                        {
                            return(itGeVector3d3);
                        }
                    }
                    result = null;
                }
            }
            return(result);
        }