Exemplo n.º 1
0
        private EtabsAreaObject EatParent(string name, cSapModel activeModel)
        {
            EtabsAreaObject area       = new EtabsAreaObject();
            int             pointCount = new Int32();

            string[] pointNames = null;
            activeModel.AreaObj.GetPoints(name, ref pointCount, ref pointNames);
            List <EtabsPoint> points = new List <EtabsPoint>();

            foreach (string pointName in pointNames)
            {
                double x = new double();
                double y = new double();
                double z = new double();
                activeModel.PointObj.GetCoordCartesian(pointName, ref x, ref y, ref z);
                EtabsPoint point = new EtabsPoint();
                point.X = x;
                point.Y = y;
                point.Z = z;
                points.Add(point);
            }
            area.Name   = name;
            area.Points = points;
            return(area);
        }
Exemplo n.º 2
0
        public MainWindow()
        {
            InitializeComponent();
            try
            {
                this.etabsModel    = new MT();
                this.label.Content = "Mesh Tool will run on " + etabsModel.modelName + " Model";
            }

            catch (Exception)
            {
                this.label.Content = "Please Open an ETABS2016 Model and re-start this application";
            }
            if (etabsModel != null)
            {
                int      ret;
                int      areaCount  = new Int32();
                int[]    objectType = null;
                string[] areaNames  = null;
                ret = this.etabsModel.activeModel.AreaObj.SetSelected("ALL", true, ETABS2016.eItemType.Group);
                ret = this.etabsModel.activeModel.SelectObj.GetSelected(ref areaCount, ref objectType, ref areaNames);

                foreach (string name in areaNames)
                {
                    EtabsAreaObject parent = EatParent(name, this.etabsModel.activeModel);
                    if (Parents == null)
                    {
                        List <EtabsAreaObject> first = new List <EtabsAreaObject>();
                        first.Add(parent);
                        Parents = first;
                    }
                    else
                    {
                        Parents.Add(parent);
                    }
                }

                foreach (EtabsAreaObject area in Parents)
                {
                    string statement = area.Name + " - ";
                    foreach (EtabsPoint point in area.Points)
                    {
                        statement += "( ";
                        statement += point.X.ToString() + ", ";
                        statement += point.Y.ToString() + ", ";
                        statement += point.Z.ToString() + ")";
                    }
                    listBox.Items.Add(statement);
                }
            }
        }