Exemplo n.º 1
0
        public void run()
        {
            if (!File.Exists(xml_full))
            {
                throw new DMTException("[ERROR] Joonise kaustas ei ole XML faili nimega: " + name + ".xml");
            }
            if (File.Exists(xml_lock_full))
            {
                throw new DMTLockedException("[ERROR] XML fail nimega: " + name + ".xml" + " on lukkus!");
            }


            File.Create(xml_lock_full).Dispose();
            write("[XML] LOCK ON");

            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.Load(xml_full);
            xmlDoc = XML_Handle.removeEmptyNodes(xmlDoc);

            List <XmlNode> pages  = XML_Handle.getAllPages(xmlDoc);
            List <XmlNode> rebars = XML_Handle.getAllRebar(xmlDoc);

            if (rebars.Count > 0)
            {
                filtreeri(pages, rebars, xmlDoc);
                xmlDoc.Save(xml_output_full);
            }
        }
Exemplo n.º 2
0
        public void run(bool multy)
        {
            List <_Area_v1> areas = new List <_Area_v1>();

            if (multy == true)
            {
                areas = getAllAreas(boxNames);
            }
            else
            {
                areas = getSelectedAreas(boxNames);
            }

            if (areas.Count < 1)
            {
                string names = string.Join(", ", boxNames.ToArray());
                throw new DMTException("[ERROR] - (" + names + ") not found");
            }

            List <_Mark> allMarks = getAllMarks(markLayerName);

            if (allMarks.Count < 1)
            {
                throw new DMTException("ERROR - " + "Reinforcement marks" + " not found");
            }
            if (!File.Exists(xml_full))
            {
                throw new DMTException("[ERROR] Joonise kaustas ei ole XML faili nimega: " + name + ".xml");
            }
            if (File.Exists(xml_lock_full))
            {
                throw new DMTException("[ERROR] XML fail nimega: " + name + ".xml" + " on lukkus!");
            }


            File.Create(xml_lock_full).Dispose();
            write("[XML] LOCK ON");

            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.Load(xml_full);
            List <XmlNode> bending = XML_Handle.getAllRebar(xmlDoc);

            File.Delete(xml_lock_full);
            write("[XML] LOCK OFF");

            Dictionary <_Area_v1, List <_Mark> > local_reinforcement = matchMarkArea(areas, allMarks);

            local_stats = generateAllWeights(local_reinforcement, bending);

            return;
        }
Exemplo n.º 3
0
        private List <XmlNode> findSimilar(string filter, string diam, List <XmlNode> rebars, XmlDocument xmlDoc)
        {
            List <XmlNode> similar = new List <XmlNode>();

            _Mark   u       = new _Mark(0, 10, "", filter, 0);
            XmlNode newNode = XML_Handle.newNodeHandle(u, "", xmlDoc, _c.ed);

            newNode["B2aBar"]["Dim"].InnerText = diam;

            similar = XML_Handle.findSimilar(newNode, rebars);

            return(similar);
        }
Exemplo n.º 4
0
        private void printSimilar(List <XmlNode> rebars)
        {
            foreach (XmlNode row in rebars)
            {
                XmlNode rebar = row["B2aBar"];
                if (rebar == null)
                {
                    write("error reading");
                    continue;
                }

                string rebarString = XML_Handle.getXMLRebarString(rebar);
                write(rebarString);
            }

            write("[NB! Sümeetrilisust kontrollitakse B, C, D, F, N - tüüpi raudadel]");
        }
Exemplo n.º 5
0
        public void run()
        {
            if (!File.Exists(xml_full))
            {
                throw new DMTException("[ERROR] Joonise kaustas ei ole XML faili nimega: " + name + ".xml");
            }
            if (File.Exists(xml_lock_full))
            {
                throw new DMTLockedException("[ERROR] XML fail nimega: " + name + ".xml" + " on lukkus!");
            }


            string userFilter = promptFilter();

            if (userFilter == null)
            {
                return;
            }

            string userDiameter = promptDiameter();

            if (userDiameter == null || userDiameter == "")
            {
                userDiameter = "???";
            }

            File.Create(xml_lock_full).Dispose();
            write("[XML] LOCK ON");

            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.Load(xml_full);

            List <XmlNode> rows = XML_Handle.getAllRebar(xmlDoc);

            List <XmlNode> filteredRows = XML_Handle.filter(rows, userFilter);
            List <XmlNode> similar      = findSimilar(userFilter, userDiameter, filteredRows, xmlDoc);

            printSimilar(similar);
        }
Exemplo n.º 6
0
        private XmlNode matchMarkToXML(_Mark m, List <XmlNode> rows)
        {
            foreach (XmlNode row in rows)
            {
                XmlNode rebar = row["B2aBar"];

                if (rebar == null)
                {
                    return(null);
                }

                string type   = XML_Handle.emptyNodehandle(rebar, "Type");
                string pos_nr = XML_Handle.emptyNodehandle(rebar, "Litt");
                string diam   = XML_Handle.emptyNodehandle(rebar, "Dim");

                if (m.Position_Shape == type && m.Position_Nr.ToString() == pos_nr && m.Diameter.ToString() == diam)
                {
                    return(row);
                }
            }

            return(null);
        }
Exemplo n.º 7
0
        private double getRebarWeights(XmlNode row)
        {
            XmlNode rebar = row["B2aBar"];

            if (rebar == null)
            {
                return(0);
            }

            string weightString = XML_Handle.emptyNodehandle(rebar, "Weight");

            double weight = 0.0;

            try
            {
                weight = Double.Parse(weightString, System.Globalization.CultureInfo.InvariantCulture);
            }
            catch
            {
            }

            return(weight);
        }
Exemplo n.º 8
0
        public void run()
        {
            if (!File.Exists(xml_full))
            {
                throw new DMTException("[ERROR] Joonise kaustas ei ole XML faili nimega: " + name + ".xml");
            }
            if (File.Exists(xml_lock_full))
            {
                throw new DMTLockedException("[ERROR] XML fail nimega: " + name + ".xml" + " on lukkus!");
            }

            File.Create(xml_lock_full).Dispose();
            write("[XML] LOCK ON");

            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.Load(xml_full);

            List <XmlNode> rows = XML_Handle.getAllRebar(xmlDoc);

            string         userFilter   = promptFilter();
            List <XmlNode> filteredRows = XML_Handle.filter(rows, userFilter);

            foreach (XmlNode row in filteredRows)
            {
                XmlNode rebar = row["B2aBar"];
                if (rebar == null)
                {
                    write("error reading");
                    continue;
                }

                string rebarString = XML_Handle.getXMLRebarString(rebar);
                write(rebarString);
            }
        }