├── .gitignore ├── LICENSE ├── README.md ├── StpViewer.sln └── StpViewer ├── CADBrower.cs ├── MainForm.Designer.cs ├── MainForm.cs ├── MainForm.resx ├── Program.cs ├── Properties ├── AssemblyInfo.cs ├── Resources.Designer.cs ├── Resources.resx ├── Settings.Designer.cs └── Settings.settings ├── StpViewer.csproj └── packages.config /.gitignore: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # This .gitignore file was automatically created by Microsoft(R) Visual Studio. 3 | ################################################################################ 4 | 5 | /.vs 6 | /packages 7 | obj 8 | bin 9 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | GNU LESSER GENERAL PUBLIC LICENSE 2 | Version 3, 29 June 2007 3 | 4 | Copyright (C) 2007 Free Software Foundation, Inc. 5 | Everyone is permitted to copy and distribute verbatim copies 6 | of this license document, but changing it is not allowed. 7 | 8 | 9 | This version of the GNU Lesser General Public License incorporates 10 | the terms and conditions of version 3 of the GNU General Public 11 | License, supplemented by the additional permissions listed below. 12 | 13 | 0. Additional Definitions. 14 | 15 | As used herein, "this License" refers to version 3 of the GNU Lesser 16 | General Public License, and the "GNU GPL" refers to version 3 of the GNU 17 | General Public License. 18 | 19 | "The Library" refers to a covered work governed by this License, 20 | other than an Application or a Combined Work as defined below. 21 | 22 | An "Application" is any work that makes use of an interface provided 23 | by the Library, but which is not otherwise based on the Library. 24 | Defining a subclass of a class defined by the Library is deemed a mode 25 | of using an interface provided by the Library. 26 | 27 | A "Combined Work" is a work produced by combining or linking an 28 | Application with the Library. The particular version of the Library 29 | with which the Combined Work was made is also called the "Linked 30 | Version". 31 | 32 | The "Minimal Corresponding Source" for a Combined Work means the 33 | Corresponding Source for the Combined Work, excluding any source code 34 | for portions of the Combined Work that, considered in isolation, are 35 | based on the Application, and not on the Linked Version. 36 | 37 | The "Corresponding Application Code" for a Combined Work means the 38 | object code and/or source code for the Application, including any data 39 | and utility programs needed for reproducing the Combined Work from the 40 | Application, but excluding the System Libraries of the Combined Work. 41 | 42 | 1. Exception to Section 3 of the GNU GPL. 43 | 44 | You may convey a covered work under sections 3 and 4 of this License 45 | without being bound by section 3 of the GNU GPL. 46 | 47 | 2. Conveying Modified Versions. 48 | 49 | If you modify a copy of the Library, and, in your modifications, a 50 | facility refers to a function or data to be supplied by an Application 51 | that uses the facility (other than as an argument passed when the 52 | facility is invoked), then you may convey a copy of the modified 53 | version: 54 | 55 | a) under this License, provided that you make a good faith effort to 56 | ensure that, in the event an Application does not supply the 57 | function or data, the facility still operates, and performs 58 | whatever part of its purpose remains meaningful, or 59 | 60 | b) under the GNU GPL, with none of the additional permissions of 61 | this License applicable to that copy. 62 | 63 | 3. Object Code Incorporating Material from Library Header Files. 64 | 65 | The object code form of an Application may incorporate material from 66 | a header file that is part of the Library. You may convey such object 67 | code under terms of your choice, provided that, if the incorporated 68 | material is not limited to numerical parameters, data structure 69 | layouts and accessors, or small macros, inline functions and templates 70 | (ten or fewer lines in length), you do both of the following: 71 | 72 | a) Give prominent notice with each copy of the object code that the 73 | Library is used in it and that the Library and its use are 74 | covered by this License. 75 | 76 | b) Accompany the object code with a copy of the GNU GPL and this license 77 | document. 78 | 79 | 4. Combined Works. 80 | 81 | You may convey a Combined Work under terms of your choice that, 82 | taken together, effectively do not restrict modification of the 83 | portions of the Library contained in the Combined Work and reverse 84 | engineering for debugging such modifications, if you also do each of 85 | the following: 86 | 87 | a) Give prominent notice with each copy of the Combined Work that 88 | the Library is used in it and that the Library and its use are 89 | covered by this License. 90 | 91 | b) Accompany the Combined Work with a copy of the GNU GPL and this license 92 | document. 93 | 94 | c) For a Combined Work that displays copyright notices during 95 | execution, include the copyright notice for the Library among 96 | these notices, as well as a reference directing the user to the 97 | copies of the GNU GPL and this license document. 98 | 99 | d) Do one of the following: 100 | 101 | 0) Convey the Minimal Corresponding Source under the terms of this 102 | License, and the Corresponding Application Code in a form 103 | suitable for, and under terms that permit, the user to 104 | recombine or relink the Application with a modified version of 105 | the Linked Version to produce a modified Combined Work, in the 106 | manner specified by section 6 of the GNU GPL for conveying 107 | Corresponding Source. 108 | 109 | 1) Use a suitable shared library mechanism for linking with the 110 | Library. A suitable mechanism is one that (a) uses at run time 111 | a copy of the Library already present on the user's computer 112 | system, and (b) will operate properly with a modified version 113 | of the Library that is interface-compatible with the Linked 114 | Version. 115 | 116 | e) Provide Installation Information, but only if you would otherwise 117 | be required to provide such information under section 6 of the 118 | GNU GPL, and only to the extent that such information is 119 | necessary to install and execute a modified version of the 120 | Combined Work produced by recombining or relinking the 121 | Application with a modified version of the Linked Version. (If 122 | you use option 4d0, the Installation Information must accompany 123 | the Minimal Corresponding Source and Corresponding Application 124 | Code. If you use option 4d1, you must provide the Installation 125 | Information in the manner specified by section 6 of the GNU GPL 126 | for conveying Corresponding Source.) 127 | 128 | 5. Combined Libraries. 129 | 130 | You may place library facilities that are a work based on the 131 | Library side by side in a single library together with other library 132 | facilities that are not Applications and are not covered by this 133 | License, and convey such a combined library under terms of your 134 | choice, if you do both of the following: 135 | 136 | a) Accompany the combined library with a copy of the same work based 137 | on the Library, uncombined with any other library facilities, 138 | conveyed under the terms of this License. 139 | 140 | b) Give prominent notice with the combined library that part of it 141 | is a work based on the Library, and explaining where to find the 142 | accompanying uncombined form of the same work. 143 | 144 | 6. Revised Versions of the GNU Lesser General Public License. 145 | 146 | The Free Software Foundation may publish revised and/or new versions 147 | of the GNU Lesser General Public License from time to time. Such new 148 | versions will be similar in spirit to the present version, but may 149 | differ in detail to address new problems or concerns. 150 | 151 | Each version is given a distinguishing version number. If the 152 | Library as you received it specifies that a certain numbered version 153 | of the GNU Lesser General Public License "or any later version" 154 | applies to it, you have the option of following the terms and 155 | conditions either of that published version or of any later version 156 | published by the Free Software Foundation. If the Library as you 157 | received it does not specify a version number of the GNU Lesser 158 | General Public License, you may choose any version of the GNU Lesser 159 | General Public License ever published by the Free Software Foundation. 160 | 161 | If the Library as you received it specifies that a proxy can decide 162 | whether future versions of the GNU Lesser General Public License shall 163 | apply, that proxy's public statement of acceptance of any version is 164 | permanent authorization for you to choose that version for the 165 | Library. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | StpViewer 2 | ========= 3 | 4 | The STEP File Viewer based on AnyCAD .Net Graphics Platform 5 | -------------------------------------------------------------------------------- /StpViewer.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 16 4 | VisualStudioVersion = 16.0.30011.22 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StpViewer", "StpViewer\StpViewer.csproj", "{B4AD4738-657A-4BDF-A224-CF51AD629490}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|x64 = Debug|x64 11 | Debug|x86 = Debug|x86 12 | Release|x64 = Release|x64 13 | Release|x86 = Release|x86 14 | EndGlobalSection 15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 16 | {B4AD4738-657A-4BDF-A224-CF51AD629490}.Debug|x64.ActiveCfg = Debug|x64 17 | {B4AD4738-657A-4BDF-A224-CF51AD629490}.Debug|x64.Build.0 = Debug|x64 18 | {B4AD4738-657A-4BDF-A224-CF51AD629490}.Debug|x86.ActiveCfg = Debug|x86 19 | {B4AD4738-657A-4BDF-A224-CF51AD629490}.Debug|x86.Build.0 = Debug|x86 20 | {B4AD4738-657A-4BDF-A224-CF51AD629490}.Release|x64.ActiveCfg = Release|x64 21 | {B4AD4738-657A-4BDF-A224-CF51AD629490}.Release|x64.Build.0 = Release|x64 22 | {B4AD4738-657A-4BDF-A224-CF51AD629490}.Release|x86.ActiveCfg = Release|x86 23 | {B4AD4738-657A-4BDF-A224-CF51AD629490}.Release|x86.Build.0 = Release|x86 24 | EndGlobalSection 25 | GlobalSection(SolutionProperties) = preSolution 26 | HideSolutionNode = FALSE 27 | EndGlobalSection 28 | GlobalSection(ExtensibilityGlobals) = postSolution 29 | SolutionGuid = {EE0994A0-D58E-4A56-BE0E-082E1223EE51} 30 | EndGlobalSection 31 | EndGlobal 32 | -------------------------------------------------------------------------------- /StpViewer/CADBrower.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using AnyCAD.Platform; 6 | using AnyCAD.Presentation; 7 | 8 | namespace StpViewer 9 | { 10 | class CADBrower : AnyCAD.Platform.TopoShapeReaderContext 11 | { 12 | private System.Windows.Forms.TreeView treeView = null; 13 | private AnyCAD.Presentation.RenderWindow3d renderView = null; 14 | private Stack nodeStack = new Stack(); 15 | private int nShapeCount = 100; 16 | private FaceStyle faceStyle; 17 | private System.Collections.Generic.Dictionary faceStyleDict = new System.Collections.Generic.Dictionary(); 18 | public CADBrower(String name, System.Windows.Forms.TreeView _treeView, AnyCAD.Presentation.RenderWindow3d _renderView) 19 | { 20 | treeView = _treeView; 21 | renderView = _renderView; 22 | faceStyle = new FaceStyle(); 23 | 24 | System.Windows.Forms.TreeNode node = treeView.Nodes.Add(name); 25 | nodeStack.Push(node); 26 | } 27 | 28 | public override void OnSetFaceColor(ColorValue clr) 29 | { 30 | if (clr.ToRGBA() == faceStyle.GetColor().ToRGBA()) 31 | return; 32 | 33 | if (!faceStyleDict.TryGetValue(clr.ToRGBA(), out faceStyle)) 34 | { 35 | faceStyle = new FaceStyle(); 36 | faceStyle.SetColor(clr); 37 | faceStyleDict.Add(clr.ToRGBA(), faceStyle); 38 | } 39 | } 40 | 41 | public override void OnBeginGroup(String name) 42 | { 43 | if (name.Length == 0) 44 | { 45 | name = ""; 46 | } 47 | 48 | if (nodeStack.Count == 0) 49 | { 50 | System.Windows.Forms.TreeNode node = treeView.Nodes.Add(name); 51 | nodeStack.Push(node); 52 | } 53 | else 54 | { 55 | nodeStack.Push(nodeStack.Peek().Nodes.Add(name)); 56 | } 57 | } 58 | 59 | public override void OnEndGroup() 60 | { 61 | nodeStack.Pop(); 62 | } 63 | 64 | public override bool OnBeiginComplexShape(TopoShape shape) 65 | { 66 | nodeStack.Push(nodeStack.Peek().Nodes.Add(String.Format("{0}", nShapeCount), "Shape")); 67 | return true; 68 | } 69 | 70 | public override void OnEndComplexShape() 71 | { 72 | nodeStack.Pop(); 73 | } 74 | 75 | public override void OnFace(TopoShape shape) 76 | { 77 | ++nShapeCount; 78 | nodeStack.Peek().Nodes.Add(String.Format("{0}", nShapeCount), "Face"); 79 | SceneNode node = renderView.ShowGeometry(shape, nShapeCount); 80 | node.SetFaceStyle(faceStyle); 81 | } 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /StpViewer/MainForm.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace StpViewer 2 | { 3 | partial class MainForm 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | this.splitContainer1 = new System.Windows.Forms.SplitContainer(); 32 | this.treeViewStp = new System.Windows.Forms.TreeView(); 33 | this.menuStrip1 = new System.Windows.Forms.MenuStrip(); 34 | this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); 35 | this.openToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); 36 | this.openIGESToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); 37 | ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); 38 | this.splitContainer1.Panel1.SuspendLayout(); 39 | this.splitContainer1.SuspendLayout(); 40 | this.menuStrip1.SuspendLayout(); 41 | this.SuspendLayout(); 42 | // 43 | // splitContainer1 44 | // 45 | this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; 46 | this.splitContainer1.Location = new System.Drawing.Point(0, 0); 47 | this.splitContainer1.Name = "splitContainer1"; 48 | // 49 | // splitContainer1.Panel1 50 | // 51 | this.splitContainer1.Panel1.Controls.Add(this.treeViewStp); 52 | this.splitContainer1.Panel1.Controls.Add(this.menuStrip1); 53 | this.splitContainer1.Size = new System.Drawing.Size(717, 494); 54 | this.splitContainer1.SplitterDistance = 239; 55 | this.splitContainer1.TabIndex = 0; 56 | // 57 | // treeViewStp 58 | // 59 | this.treeViewStp.Dock = System.Windows.Forms.DockStyle.Fill; 60 | this.treeViewStp.Location = new System.Drawing.Point(0, 25); 61 | this.treeViewStp.Name = "treeViewStp"; 62 | this.treeViewStp.Size = new System.Drawing.Size(239, 469); 63 | this.treeViewStp.TabIndex = 0; 64 | this.treeViewStp.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeViewStp_AfterSelect); 65 | // 66 | // menuStrip1 67 | // 68 | this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { 69 | this.fileToolStripMenuItem}); 70 | this.menuStrip1.Location = new System.Drawing.Point(0, 0); 71 | this.menuStrip1.Name = "menuStrip1"; 72 | this.menuStrip1.Size = new System.Drawing.Size(239, 25); 73 | this.menuStrip1.TabIndex = 1; 74 | this.menuStrip1.Text = "menuStrip1"; 75 | // 76 | // fileToolStripMenuItem 77 | // 78 | this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { 79 | this.openToolStripMenuItem, 80 | this.openIGESToolStripMenuItem}); 81 | this.fileToolStripMenuItem.Name = "fileToolStripMenuItem"; 82 | this.fileToolStripMenuItem.Size = new System.Drawing.Size(39, 21); 83 | this.fileToolStripMenuItem.Text = "File"; 84 | // 85 | // openToolStripMenuItem 86 | // 87 | this.openToolStripMenuItem.Name = "openToolStripMenuItem"; 88 | this.openToolStripMenuItem.Size = new System.Drawing.Size(152, 22); 89 | this.openToolStripMenuItem.Text = "Open STEP"; 90 | this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click); 91 | // 92 | // openIGESToolStripMenuItem 93 | // 94 | this.openIGESToolStripMenuItem.Name = "openIGESToolStripMenuItem"; 95 | this.openIGESToolStripMenuItem.Size = new System.Drawing.Size(152, 22); 96 | this.openIGESToolStripMenuItem.Text = "Open IGES"; 97 | this.openIGESToolStripMenuItem.Click += new System.EventHandler(this.openIGESToolStripMenuItem_Click); 98 | // 99 | // MainForm 100 | // 101 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); 102 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 103 | this.ClientSize = new System.Drawing.Size(717, 494); 104 | this.Controls.Add(this.splitContainer1); 105 | this.MainMenuStrip = this.menuStrip1; 106 | this.Name = "MainForm"; 107 | this.Text = "StpViewer - Powered by AnyCAD .Net Graphics Platform"; 108 | this.Load += new System.EventHandler(this.MainForm_Load); 109 | this.Resize += new System.EventHandler(this.MainForm_Resize); 110 | this.splitContainer1.Panel1.ResumeLayout(false); 111 | this.splitContainer1.Panel1.PerformLayout(); 112 | ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); 113 | this.splitContainer1.ResumeLayout(false); 114 | this.menuStrip1.ResumeLayout(false); 115 | this.menuStrip1.PerformLayout(); 116 | this.ResumeLayout(false); 117 | 118 | } 119 | 120 | #endregion 121 | 122 | private System.Windows.Forms.SplitContainer splitContainer1; 123 | private System.Windows.Forms.TreeView treeViewStp; 124 | private System.Windows.Forms.MenuStrip menuStrip1; 125 | private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem; 126 | private System.Windows.Forms.ToolStripMenuItem openToolStripMenuItem; 127 | private System.Windows.Forms.ToolStripMenuItem openIGESToolStripMenuItem; 128 | } 129 | } 130 | 131 | -------------------------------------------------------------------------------- /StpViewer/MainForm.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Data; 5 | using System.Drawing; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Windows.Forms; 9 | using AnyCAD.Platform; 10 | namespace StpViewer 11 | { 12 | public partial class MainForm : Form 13 | { 14 | private AnyCAD.Presentation.RenderWindow3d renderView = null; 15 | 16 | public MainForm() 17 | { 18 | InitializeComponent(); 19 | 20 | this.renderView = new AnyCAD.Presentation.RenderWindow3d(); 21 | this.renderView.Dock = DockStyle.Fill; 22 | this.renderView.TabIndex = 1; 23 | this.splitContainer1.Panel2.Controls.Add(this.renderView); 24 | 25 | this.renderView.MouseClick += new System.Windows.Forms.MouseEventHandler(this.OnRenderWindow_MouseClick); 26 | } 27 | 28 | private void OnRenderWindow_MouseClick(object sender, MouseEventArgs e) 29 | { 30 | } 31 | 32 | private void MainForm_Resize(object sender, EventArgs e) 33 | { 34 | 35 | } 36 | 37 | private void MainForm_Load(object sender, EventArgs e) 38 | { 39 | this.renderView.ShowCoordinateAxis(true); 40 | renderView.ExecuteCommand("ShadeWithEdgeMode"); 41 | this.renderView.RequestDraw(); 42 | 43 | renderView.View3d.ShowCoordinateAxis(false); 44 | } 45 | 46 | private void openToolStripMenuItem_Click(object sender, EventArgs e) 47 | { 48 | OpenFileDialog dlg = new OpenFileDialog(); 49 | dlg.Filter = "STEP File(*.stp;*.step)|*.stp;*.step|All Files(*.*)|*.*"; 50 | 51 | if (DialogResult.OK == dlg.ShowDialog()) 52 | { 53 | CADBrower browser = new CADBrower(dlg.SafeFileName, this.treeViewStp, this.renderView); 54 | AnyCAD.Exchange.StepReader reader = new AnyCAD.Exchange.StepReader(); 55 | reader.Read(dlg.FileName, browser); 56 | } 57 | 58 | renderView.FitAll(); 59 | } 60 | 61 | private void treeViewStp_AfterSelect(object sender, TreeViewEventArgs e) 62 | { 63 | 64 | } 65 | 66 | private void openIGESToolStripMenuItem_Click(object sender, EventArgs e) 67 | { 68 | OpenFileDialog dlg = new OpenFileDialog(); 69 | dlg.Filter = "IGES File(*.iges;*.igs)|*.iges;*.igs"; 70 | 71 | if (DialogResult.OK == dlg.ShowDialog()) 72 | { 73 | CADBrower browser = new CADBrower(dlg.SafeFileName, this.treeViewStp, this.renderView); 74 | AnyCAD.Exchange.IgesReader reader = new AnyCAD.Exchange.IgesReader(); 75 | reader.Read(dlg.FileName, browser); 76 | } 77 | 78 | renderView.View3d.FitAll(); 79 | } 80 | } 81 | 82 | 83 | } 84 | -------------------------------------------------------------------------------- /StpViewer/MainForm.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 17, 17 122 | 123 | -------------------------------------------------------------------------------- /StpViewer/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Windows.Forms; 5 | 6 | namespace StpViewer 7 | { 8 | static class Program 9 | { 10 | /// 11 | /// The main entry point for the application. 12 | /// 13 | [STAThread] 14 | static void Main() 15 | { 16 | Application.EnableVisualStyles(); 17 | Application.SetCompatibleTextRenderingDefault(false); 18 | Application.Run(new MainForm()); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /StpViewer/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("StpViewer")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("StpViewer")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2014")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("21da7a2d-517c-44c8-8881-82938e55cb5e")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /StpViewer/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.18444 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace StpViewer.Properties 12 | { 13 | 14 | 15 | /// 16 | /// A strongly-typed resource class, for looking up localized strings, etc. 17 | /// 18 | // This class was auto-generated by the StronglyTypedResourceBuilder 19 | // class via a tool like ResGen or Visual Studio. 20 | // To add or remove a member, edit your .ResX file then rerun ResGen 21 | // with the /str option, or rebuild your VS project. 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources 26 | { 27 | 28 | private static global::System.Resources.ResourceManager resourceMan; 29 | 30 | private static global::System.Globalization.CultureInfo resourceCulture; 31 | 32 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 33 | internal Resources() 34 | { 35 | } 36 | 37 | /// 38 | /// Returns the cached ResourceManager instance used by this class. 39 | /// 40 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 41 | internal static global::System.Resources.ResourceManager ResourceManager 42 | { 43 | get 44 | { 45 | if ((resourceMan == null)) 46 | { 47 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("StpViewer.Properties.Resources", typeof(Resources).Assembly); 48 | resourceMan = temp; 49 | } 50 | return resourceMan; 51 | } 52 | } 53 | 54 | /// 55 | /// Overrides the current thread's CurrentUICulture property for all 56 | /// resource lookups using this strongly typed resource class. 57 | /// 58 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 59 | internal static global::System.Globalization.CultureInfo Culture 60 | { 61 | get 62 | { 63 | return resourceCulture; 64 | } 65 | set 66 | { 67 | resourceCulture = value; 68 | } 69 | } 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /StpViewer/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | text/microsoft-resx 107 | 108 | 109 | 2.0 110 | 111 | 112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 113 | 114 | 115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | -------------------------------------------------------------------------------- /StpViewer/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.18444 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace StpViewer.Properties 12 | { 13 | 14 | 15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")] 17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase 18 | { 19 | 20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 21 | 22 | public static Settings Default 23 | { 24 | get 25 | { 26 | return defaultInstance; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /StpViewer/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /StpViewer/StpViewer.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | Debug 6 | x86 7 | 8.0.30703 8 | 2.0 9 | {B4AD4738-657A-4BDF-A224-CF51AD629490} 10 | WinExe 11 | Properties 12 | StpViewer 13 | StpViewer 14 | v4.0 15 | Client 16 | 512 17 | 18 | 19 | 20 | 21 | x86 22 | true 23 | full 24 | false 25 | bin\Debug\ 26 | DEBUG;TRACE 27 | prompt 28 | 4 29 | 30 | 31 | x86 32 | pdbonly 33 | true 34 | bin\Release\ 35 | TRACE 36 | prompt 37 | 4 38 | 39 | 40 | true 41 | bin\x64\Debug\ 42 | DEBUG;TRACE 43 | full 44 | x64 45 | ..\..\..\..\bin\Debug\StpViewer.exe.CodeAnalysisLog.xml 46 | true 47 | GlobalSuppressions.cs 48 | prompt 49 | MinimumRecommendedRules.ruleset 50 | ;D:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets 51 | true 52 | ;D:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules 53 | true 54 | 55 | 56 | bin\x64\Release\ 57 | TRACE 58 | true 59 | pdbonly 60 | x64 61 | ..\..\..\..\bin\Release\StpViewer.exe.CodeAnalysisLog.xml 62 | true 63 | GlobalSuppressions.cs 64 | prompt 65 | MinimumRecommendedRules.ruleset 66 | ;D:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets 67 | true 68 | ;D:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules 69 | true 70 | 71 | 72 | 73 | ..\packages\AnyCAD.Net.Pro.2020.0.2\lib\x64\AnyCAD.Exchange.Net.dll 74 | 75 | 76 | ..\packages\AnyCAD.Net.Pro.2020.0.2\lib\x64\AnyCAD.Foundation.Net.dll 77 | 78 | 79 | ..\packages\AnyCAD.Net.Pro.2020.0.2\lib\x64\AnyCAD.Presentation.Net.dll 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | Form 95 | 96 | 97 | MainForm.cs 98 | 99 | 100 | 101 | 102 | 103 | MainForm.cs 104 | 105 | 106 | ResXFileCodeGenerator 107 | Resources.Designer.cs 108 | Designer 109 | 110 | 111 | True 112 | Resources.resx 113 | 114 | 115 | 116 | SettingsSingleFileGenerator 117 | Settings.Designer.cs 118 | 119 | 120 | True 121 | Settings.settings 122 | True 123 | 124 | 125 | 126 | 127 | 128 | This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. 129 | 130 | 131 | 132 | 139 | -------------------------------------------------------------------------------- /StpViewer/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | --------------------------------------------------------------------------------