コード例 #1
1
        public static void Run(Tekla.Technology.Akit.IScript akit)
        {
            TSM.UI.ModelViewEnumerator views = TSM.UI.ViewHandler.GetSelectedViews();

            if (views.Count > 0)
            {
                while (views.MoveNext())
                {
                    TSM.UI.View activeView = views.Current;
                    TSM.UI.ModelObjectSelector selector = new Tekla.Structures.Model.UI.ModelObjectSelector();

                    ArrayList visibleParts = ItemSelector.getParts(activeView);
                    selector.Select(visibleParts);

                    akit.Callback("acmdViewTopInFormFace", "", "View_01 window_1");

                    ArrayList empty = new ArrayList();
                    selector.Select(empty);
                }
            }
            else
            {
                MessageBox.Show("Vaate aken peab olema aktiivne");
            }
        }
コード例 #2
0
        public static void Run(Tekla.Technology.Akit.IScript akit)
        {
            string fileName = @"Reports/test.csv";

            try
            {
                if (File.Exists(fileName))
                {
                    File.Delete(fileName);
                }
            }
            catch { }

            int drawingNr = 1;
            DrawingHandler myDrawingHandler = new DrawingHandler();
            DrawingEnumerator selectedDrawings = myDrawingHandler.GetDrawingSelector().GetSelected();

            var csv = new StringBuilder();

            foreach (Drawing currentDrawing in selectedDrawings)
            {
                string name = currentDrawing.Title1;
                string nr = currentDrawing.Name;

                DateTime dmtDate = new DateTime(1970, 1, 1);
                int dmtDateSeconds = 0;
                currentDrawing.GetUserProperty("DR_RESP_DSGNR_DATE", ref dmtDateSeconds);
                dmtDate = dmtDate.AddSeconds(dmtDateSeconds);

                DateTime revisionDate = new DateTime(1970, 1, 1);
                int revisionDateSeconds = 0;
                string revisionMark = "";
                DateLastMark(currentDrawing, out revisionMark, out revisionDateSeconds);
                revisionDate = revisionDate.AddSeconds(revisionDateSeconds);

                string newLine = string.Format("{0} ;{1} ;{2} ;{3} ;{4} ;", name, nr, revisionMark, dmtDate.ToShortDateString(), revisionDate.ToShortDateString());
                csv.AppendLine(newLine);

                //MessageBox.Show(newLine);

                drawingNr++;
            }

            try
            {
                File.WriteAllText(fileName, csv.ToString());
            }
            catch
            {
                MessageBox.Show("write failed");
            }
        }
コード例 #3
0
        public static void Run(Tekla.Technology.Akit.IScript akit)
        {
            Model myModel = new Model();

            ModelObjectEnumerator selectedObjects = getSelectedObjects();
            ArrayList selectedParts = getSelectedBooleans(selectedObjects);

            foreach (TSM.BooleanPart currentBoolean in selectedParts)
            {
                changeCut(currentBoolean);
            }

            myModel.CommitChanges();
        }
コード例 #4
0
        public static void Run(Tekla.Technology.Akit.IScript akit)
        {
            string XS_Variable = System.Environment.GetEnvironmentVariable("XSBIN");
            string TS_Plugin = @"\applications\Hopia\";
            string TS_Application="QuickReport.exe";

            if (System.IO.File.Exists(XS_Variable+TS_Plugin+TS_Application))
            {
                System.Diagnostics.Process Process = new System.Diagnostics.Process();
                Process.EnableRaisingEvents=false;
                Process.StartInfo.FileName=XS_Variable+TS_Plugin+TS_Application;
                Process.Start();
                Process.Close();
            }
            else
            {
                System.Windows.Forms.MessageBox.Show(TS_Application+" not found, application stopped!\n\nCheck the files in "+XS_Variable+TS_Plugin,"Tekla Structures", System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);
            }
        }
コード例 #5
0
        private static void changePartToSubAssembly(TSM.Assembly assembly, ArrayList wrongParts, Tekla.Technology.Akit.IScript akit)
        {
            TSM.UI.ModelObjectSelector selector = new TSM.UI.ModelObjectSelector();

            selector.Select(wrongParts);
            akit.Callback("acmdRemoveFromAssemblyActionCB", "", "View_01 window_1");

            //assembly.Modify();

            selector = new TSM.UI.ModelObjectSelector();
            TSM.ModelObjectEnumerator selectionEnum = selector.GetSelectedObjects();

            while (selectionEnum.MoveNext())
            {
                if (selectionEnum.Current is TSM.Part)
                {
                    TSM.Part newPart = selectionEnum.Current as TSM.Part;
                    TSM.Assembly partNewAssembly = newPart.GetAssembly() as TSM.Assembly;

                    ArrayList currentSelection = new ArrayList();
                    currentSelection.Add(assembly);
                    selector.Select(currentSelection);
                    TSM.ModelObjectEnumerator selectionEnum2 = selector.GetSelectedObjects();

                    while (selectionEnum2.MoveNext())
                    {
                        if (selectionEnum2.Current is TSM.Assembly)
                        {
                            TSM.Assembly newAssembly = selectionEnum2.Current as TSM.Assembly;
                            newAssembly.Add(partNewAssembly);
                            newAssembly.Modify();
                        }
                    }
                }
            }

            foreach (TSM.Part part in wrongParts)
            {
                TSM.Assembly newAssembly = part.GetAssembly() as TSM.Assembly;
                removeAssemblyPropertys(newAssembly, akit);
            }
        }
        public static void Run(Tekla.Technology.Akit.IScript akit)
        {
            // change the filepath below to where the .EXE file is located

            string DepFolder = @"c:\myDeploymentFolder\";
            string AppName = "ShowingAssembliesFromAssemblyDrawings.exe";

            if (System.IO.File.Exists(DepFolder + AppName))
            {
                System.Diagnostics.Process Process = new System.Diagnostics.Process();
                Process.EnableRaisingEvents = false;
                Process.StartInfo.FileName = DepFolder + AppName;
                Process.Start();
                Process.Close();
            }
            else
            {
                System.Windows.Forms.MessageBox.Show("Application .exe not found at the set location. It should exist here: " + DepFolder + "\n you can either change the path of where the exe is meant to be located by editing this .cs file using Notepad, or you can place the exe file in the correct location. Note: do not change the name of the exe file.");
            }
        }
コード例 #7
0
        public static void Run(Tekla.Technology.Akit.IScript akit)
        {
            DrawingHandler myDrawingHandler = new DrawingHandler();
            if (myDrawingHandler.GetConnectionStatus())
            {
                DrawingObjectEnumerator selectedObjects = myDrawingHandler.GetDrawingObjectSelector().GetSelected();
                while (selectedObjects.MoveNext())
                {
                    if (selectedObjects.Current is StraightDimensionSet)
                    {
                        StraightDimensionSet curDimSet = selectedObjects.Current as TSD.StraightDimensionSet;
                        TSD.ContainerElement LUT = curDimSet.Attributes.LeftUpperTag as TSD.ContainerElement;
                        TSD.ContainerElement RUT = curDimSet.Attributes.RightUpperTag as TSD.ContainerElement;

                        curDimSet.Attributes.LeftUpperTag = RUT;
                        curDimSet.Attributes.RightUpperTag = LUT;
                        curDimSet.Modify();
                    }
                }
            }
        }
コード例 #8
0
        public static ArrayList getParts(Tekla.Structures.Model.UI.View view)
        {
            ArrayList visibleParts = new ArrayList();

            Point min = new Point(-999999, -999999, -999999);
            Point max = new Point(999999, 999999, 999999);

            TSM.UI.ModelObjectSelector selector = new TSM.UI.ModelObjectSelector();
            TSM.ModelObjectEnumerator allObjects = selector.GetObjectsByBoundingBox(min, max, view);

            while (allObjects.MoveNext())
            {
                if (allObjects.Current is TSM.Part)
                {
                    if ((allObjects.Current as TSM.Part).Material.MaterialString.StartsWith("C"))
                    {
                        visibleParts.Add(allObjects.Current);
                    }

                }
            }

            return visibleParts;
        }
コード例 #9
0
        public static void Run(Tekla.Technology.Akit.IScript akit)
        {
            List<string> ignoreClasses = new List<string>();
            //ignoreClasses.Add("152");

            TSM.Model myModel = new TSM.Model();
            AssemblyToSubAssembly.main(ignoreClasses, akit);
            myModel.CommitChanges();
        }
コード例 #10
0
        private static void removeAssemblyPropertys(TSM.Assembly currentAssembly, Tekla.Technology.Akit.IScript akit)
        {
            ArrayList currentSelection = new ArrayList();
            currentSelection.Add(currentAssembly);

            TSM.UI.ModelObjectSelector selector = new TSM.UI.ModelObjectSelector();
            selector.Select(currentSelection);

            akit.Callback("acmd_display_selected_object_dialog", "", "View_01 window_1");
            TSM.Part currentMainPart = currentAssembly.GetMainPart() as TSM.Part;

            if (!currentMainPart.Material.MaterialString.StartsWith("C"))
            {
                akit.ValueChange("steelassembly_1", "AssemblyPrefix", "");
                akit.ValueChange("steelassembly_1", "AssemblyStartNumber", "");
                akit.ValueChange("steelassembly_1", "AssemblyName", "");
                akit.PushButton("modify_button", "steelassembly_1");
                akit.PushButton("OK_button", "steelassembly_1");
            }
            else
            {
                if (currentMainPart.CastUnitType == 0)
                {
                    akit.ValueChange("precastassembly_1", "AssemblyPrefix", "");
                    akit.ValueChange("precastassembly_1", "AssemblyStartNumber", "");
                    akit.ValueChange("precastassembly_1", "AssemblyName", "");
                    akit.PushButton("modify_button", "precastassembly_1");
                    akit.PushButton("OK_button", "precastassembly_1");
                }
                else
                {
                    akit.ValueChange("insituassembly_1", "AssemblyPrefix", "");
                    akit.ValueChange("insituassembly_1", "AssemblyStartNumber", "");
                    akit.ValueChange("insituassembly_1", "AssemblyName", "");
                    akit.PushButton("modify_button", "insituassembly_1");
                    akit.PushButton("OK_button", "insituassembly_1");
                }
            }
        }
コード例 #11
0
 public static void Run(Tekla.Technology.Akit.IScript akit)
 {
     SelectedAssemblysToIFC.main();
 }
コード例 #12
0
 public static void Run(Tekla.Technology.Akit.IScript akit)
 {
     Model myModel = new Model();
     PositionNumberToName.main();
     myModel.CommitChanges();
 }
コード例 #13
0
 public static void Run(Tekla.Technology.Akit.IScript akit)
 {
     NameToDrawingTitle program = new NameToDrawingTitle();
     program.main();
 }
コード例 #14
0
 public static void Run(Tekla.Technology.Akit.IScript akit)
 {
     Model myModel = new Model();
     ScaleToDrawingTitle3.main();
     myModel.CommitChanges();
 }
コード例 #15
0
ファイル: UT_Tekla.cs プロジェクト: PavelKhrapkin/TSmatch
 public void UT_isTeklaActive()
 {
     bool b = Tekla.isTeklaActive();
 }
コード例 #16
0
 public static void Run(Tekla.Technology.Akit.IScript akit)
 {
     new Magic();
 }
コード例 #17
0
 public static void Run(Tekla.Technology.Akit.IScript akit)
 {
     DrawingHandler drawingHandler = new DrawingHandler();
     if (drawingHandler.GetConnectionStatus())
     {
         CircleOpening program = new CircleOpening(drawingHandler);
         program.main();
     }
     else
     {
         MessageBox.Show("Ei leia joonist");
     }
 }
コード例 #18
0
 public static void Run(Tekla.Technology.Akit.IScript akit)
 {
     new PDLength();
 }
コード例 #19
0
 public static void Run(Tekla.Technology.Akit.IScript akit)
 {
     akit.Callback("acmdHideSelectedObjects", "", "View_01 window_1");
 }
コード例 #20
-1
        public static void main(List<string> ignoreClasses, Tekla.Technology.Akit.IScript akit)
        {
            int wrongPartsCount = 0;

            TSM.ModelObjectEnumerator selectedObjects = getSelectedObjects();
            List<TSM.Assembly> selectedAssemblys = getSelectedAssemblys(selectedObjects);

            foreach (TSM.Assembly currentAssembly in selectedAssemblys)
            {
                ArrayList wrongParts = findWrongParts(ignoreClasses, currentAssembly);

                if (wrongParts.Count > 0)
                {
                    changePartToSubAssembly(currentAssembly, wrongParts, akit);

                    TSM.Part mainpart = currentAssembly.GetMainPart() as TSM.Part;
                    if (currentAssembly.Name == mainpart.Name)
                    {
                        removeAssemblyPropertys(currentAssembly, akit);
                    }
                }

                wrongPartsCount += wrongParts.Count;

            }

            MessageBox.Show("Kontrollitud " + selectedAssemblys.Count.ToString() + " assembly." + Environment.NewLine +
                "Tõstetub ümber " + wrongPartsCount.ToString() + " vigast elementi.");
        }