Example #1
0
        internal static void AdjustBeamEnd(Autodesk.AdvanceSteel.Modelling.Beam beam, Autodesk.AdvanceSteel.Geometry.Point3d newPtStart)
        {
            Autodesk.AdvanceSteel.Geometry.Point3d beamPtStart = beam.GetPointAtStart();
            Autodesk.AdvanceSteel.Geometry.Point3d beamPtEnd   = beam.GetPointAtEnd();

            if (beamPtEnd.IsEqualTo(newPtStart))
            {
                Autodesk.AdvanceSteel.Geometry.Point3d newBeamEnd = beamPtEnd + (beamPtEnd - beamPtStart) * 0.5;
                beam.SetSysEnd(newBeamEnd);
            }
        }
Example #2
0
        private void createBeam(CSVField row, Line line)
        {
            Autodesk.AdvanceSteel.Geometry.Point3d startPoint = new Autodesk.AdvanceSteel.Geometry.Point3d(line.StartPoint.X, line.StartPoint.Y, line.StartPoint.Z);
            Autodesk.AdvanceSteel.Geometry.Point3d endPoint   = new Autodesk.AdvanceSteel.Geometry.Point3d(line.EndPoint.X, line.EndPoint.Y, line.EndPoint.Z);

            string beamFormat = String.Format("{0}#@§@#{1}", row.Table, row.Section);
            // string beamFormat = "AS-NZS SHS - CF C350#@§@#SHS 100x100x3.0";
            StraightBeam myBeam = new StraightBeam(beamFormat, startPoint, endPoint, Autodesk.AdvanceSteel.Geometry.Vector3d.kXAxis);

            myBeam.WriteToDb();
        }
Example #3
0
        static public Autodesk.DesignScript.Geometry.Point ToDynPoint(Autodesk.AdvanceSteel.Geometry.Point3d pt, bool bConvertFromAstUnits)
        {
            double factor = 1.0;

            if (bConvertFromAstUnits)
            {
                var units = DocumentManager.getCurrentDocument().CurrentDatabase.Units;
                factor = units.UnitOfDistance.Factor;
            }
            pt = pt * (1 / factor);
            return(Autodesk.DesignScript.Geometry.Point.ByCoordinates(pt.x, pt.y, pt.z));
        }
Example #4
0
        static public Autodesk.AdvanceSteel.Geometry.Point3d[] ToAstPoints(Autodesk.DesignScript.Geometry.Point[] pts, bool bConvertToAstUnits)
        {
            if (pts == null)
            {
                return(new Autodesk.AdvanceSteel.Geometry.Point3d[0]);
            }

            Autodesk.AdvanceSteel.Geometry.Point3d[] astPts = new Autodesk.AdvanceSteel.Geometry.Point3d[pts.Length];
            for (int nIdx = 0; nIdx < pts.Length; nIdx++)
            {
                astPts[nIdx] = ToAstPoint(pts[nIdx], bConvertToAstUnits);
            }

            return(astPts);
        }