├── .gitattributes ├── .gitignore ├── AutoCAD.ProfileViewer.csproj ├── AutoCAD.ProfileViewer.csproj.user ├── Commands.Designer.cs ├── Commands.cs ├── Commands.resx ├── Main.cs ├── ProfileViewer_Form.Designer.cs ├── ProfileViewer_Form.cs ├── ProfileViewer_Form.resx ├── Properties └── AssemblyInfo.cs ├── bin ├── Debug │ ├── AutoCAD.ProfileViewer.dll │ ├── Drawing1.dwl │ ├── Drawing1.dwl2 │ ├── Template AutoCAD PlugIn.dll │ ├── Template AutoCAD PlugIn.pdb │ └── acad.err └── Release │ ├── AutoCAD.ProfileViewer.dll │ ├── AutoCAD.ProfileViewer.pdb │ ├── PresentationCore.dll │ ├── Template AutoCAD PlugIn.dll │ └── Template AutoCAD PlugIn.pdb └── obj ├── Debug ├── AutoCAD.ProfileViewer.csproj.FileListAbsolute.txt ├── AutoCAD.ProfileViewer.csproj.GenerateResource.Cache ├── AutoCAD.ProfileViewer.csprojResolveAssemblyReference.cache ├── AutoCAD.ProfileViewer.dll ├── AutoCAD.ProfileViewer.pdb ├── DesignTimeResolveAssemblyReferences.cache ├── DesignTimeResolveAssemblyReferencesInput.cache ├── ProfileViewer.MyCommands.resources ├── ProfileViewer.ProfileViewer_Form.resources ├── TempPE │ └── Commands.Designer.cs.dll ├── Template AutoCAD PlugIn.csproj.FileListAbsolute.txt ├── Template AutoCAD PlugIn.csproj.GenerateResource.Cache ├── Template AutoCAD PlugIn.csprojResolveAssemblyReference.cache ├── Template AutoCAD PlugIn.dll ├── Template AutoCAD PlugIn.pdb ├── Template_AutoCAD_PlugIn.MyCommands.resources ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs └── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs └── Release ├── AutoCAD.ProfileViewer.csproj.FileListAbsolute.txt ├── AutoCAD.ProfileViewer.csproj.GenerateResource.Cache ├── AutoCAD.ProfileViewer.csprojResolveAssemblyReference.cache ├── AutoCAD.ProfileViewer.dll ├── AutoCAD.ProfileViewer.pdb ├── DesignTimeResolveAssemblyReferencesInput.cache ├── ProfileViewer.MyCommands.resources ├── ProfileViewer.ProfileViewer_Form.resources ├── TempPE └── Commands.Designer.cs.dll ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs └── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Windows image file caches 2 | Thumbs.db 3 | ehthumbs.db 4 | 5 | # Folder config file 6 | Desktop.ini 7 | 8 | # Recycle Bin used on file shares 9 | $RECYCLE.BIN/ 10 | 11 | # Windows Installer files 12 | *.cab 13 | *.msi 14 | *.msm 15 | *.msp 16 | 17 | # Windows shortcuts 18 | *.lnk 19 | 20 | # ========================= 21 | # Operating System Files 22 | # ========================= 23 | 24 | # OSX 25 | # ========================= 26 | 27 | .DS_Store 28 | .AppleDouble 29 | .LSOverride 30 | 31 | # Thumbnails 32 | ._* 33 | 34 | # Files that might appear in the root of a volume 35 | .DocumentRevisions-V100 36 | .fseventsd 37 | .Spotlight-V100 38 | .TemporaryItems 39 | .Trashes 40 | .VolumeIcon.icns 41 | 42 | # Directories potentially created on remote AFP share 43 | .AppleDB 44 | .AppleDesktop 45 | Network Trash Folder 46 | Temporary Items 47 | .apdisk 48 | bin/Debug/AcDbMgd.dll 49 | bin/Debug/AcTcMgd.dll 50 | bin/Debug/AcCoreMgd.dll 51 | bin/Debug/AcMgd.dll 52 | bin/Debug/AdWindows.dll 53 | bin/Debug/AcCui.dll 54 | bin/Debug/AutoCAD.ProfileViewer.pdb 55 | bin/Debug/AcWindows.dll 56 | bin/Debug/AcDx.dll 57 | bin/Debug/PresentationCore.dll 58 | bin/Release/AcCoreMgd.dll 59 | bin/Release/AcCui.dll 60 | bin/Release/AcTcMgd.dll 61 | bin/Release/AdWindows.dll 62 | bin/Release/AcMgd.dll 63 | bin/Release/AcWindows.dll 64 | bin/Release/AcDbMgd.dll 65 | bin/Release/acad.err 66 | bin/Release/AcDx.dll 67 | -------------------------------------------------------------------------------- /AutoCAD.ProfileViewer.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Debug 5 | AnyCPU 6 | 7 | 8 | 9 | 10 | {38A0EF3B-0219-48BF-BBBD-2ECF4DCA74AE} 11 | Library 12 | Properties 13 | ProfileViewer 14 | AutoCAD.ProfileViewer 15 | v4.5 16 | 512 17 | {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 18 | 19 | 20 | 21 | publish\ 22 | true 23 | Disk 24 | false 25 | Foreground 26 | 7 27 | Days 28 | false 29 | false 30 | true 31 | 0 32 | 1.0.0.%2a 33 | false 34 | false 35 | true 36 | 37 | 38 | true 39 | full 40 | false 41 | bin\Debug\ 42 | DEBUG;TRACE 43 | prompt 44 | 4 45 | AllRules.ruleset 46 | 47 | 48 | pdbonly 49 | true 50 | bin\Release\ 51 | TRACE 52 | prompt 53 | 4 54 | AllRules.ruleset 55 | 56 | 57 | 58 | False 59 | True 60 | 61 | 62 | False 63 | True 64 | 65 | 66 | False 67 | True 68 | 69 | 70 | False 71 | True 72 | 73 | 74 | False 75 | True 76 | 77 | 78 | False 79 | True 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 4.5 88 | 89 | 90 | 91 | 92 | 4.5 93 | 94 | 95 | 4.5 96 | 97 | 98 | 99 | 100 | 101 | True 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | True 111 | True 112 | Commands.resx 113 | 114 | 115 | 116 | Form 117 | 118 | 119 | ProfileViewer_Form.cs 120 | 121 | 122 | 123 | 124 | 125 | Commands.cs 126 | ResXFileCodeGenerator 127 | Commands.Designer.cs 128 | 129 | 130 | ProfileViewer_Form.cs 131 | 132 | 133 | 134 | 135 | False 136 | Microsoft .NET Framework 4 %28x86 and x64%29 137 | true 138 | 139 | 140 | False 141 | .NET Framework 3.5 SP1 Client Profile 142 | false 143 | 144 | 145 | False 146 | .NET Framework 3.5 SP1 147 | false 148 | 149 | 150 | False 151 | Windows Installer 3.1 152 | true 153 | 154 | 155 | 156 | 163 | -------------------------------------------------------------------------------- /AutoCAD.ProfileViewer.csproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | C:\Autodesk\Autodesk_ObjectARX_2014_Win_64_and_32Bit\inc;C:\Autodesk\Autodesk_ObjectARX_2014_Win_64_and_32Bit\inc-x64 5 | 6 | 7 | C:\Program Files\Autodesk\AutoCAD 2016\acad.exe 8 | Program 9 | 10 | -------------------------------------------------------------------------------- /Commands.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 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 ProfileViewer { 12 | using System; 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 Commands { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal Commands() { 33 | } 34 | 35 | /// 36 | /// Returns the cached ResourceManager instance used by this class. 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ProfileViewer.Commands", typeof(Commands).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// Overrides the current thread's CurrentUICulture property for all 51 | /// resource lookups using this strongly typed resource class. 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | 63 | /// 64 | /// Looks up a localized string similar to MyCommand. 65 | /// 66 | internal static string MyCommandLocal { 67 | get { 68 | return ResourceManager.GetString("MyCommandLocal", resourceCulture); 69 | } 70 | } 71 | 72 | /// 73 | /// Looks up a localized string similar to MyLispFunction. 74 | /// 75 | internal static string MyLispFunctionLocal { 76 | get { 77 | return ResourceManager.GetString("MyLispFunctionLocal", resourceCulture); 78 | } 79 | } 80 | 81 | /// 82 | /// Looks up a localized string similar to MyPickFirst. 83 | /// 84 | internal static string MyPickFirstLocal { 85 | get { 86 | return ResourceManager.GetString("MyPickFirstLocal", resourceCulture); 87 | } 88 | } 89 | 90 | /// 91 | /// Looks up a localized string similar to MySessionCmd. 92 | /// 93 | internal static string MySessionCmdLocal { 94 | get { 95 | return ResourceManager.GetString("MySessionCmdLocal", resourceCulture); 96 | } 97 | } 98 | } 99 | } 100 | -------------------------------------------------------------------------------- /Commands.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Autodesk.AutoCAD.Runtime; 3 | using Autodesk.AutoCAD.ApplicationServices; 4 | using Autodesk.AutoCAD.DatabaseServices; 5 | using Autodesk.AutoCAD.Geometry; 6 | using Autodesk.AutoCAD.EditorInput; 7 | 8 | [assembly: CommandClass(typeof(ProfileViewer.MyCommands))] 9 | 10 | namespace ProfileViewer 11 | { 12 | public class MyCommands 13 | { 14 | [CommandMethod("PROFILEVIEWER", CommandFlags.Modal)] 15 | public void ProfileViewer() 16 | { 17 | Document doc = Application.DocumentManager.MdiActiveDocument; 18 | Editor ed; 19 | if (doc != null) 20 | { 21 | ed = doc.Editor; 22 | ProfileViewer_Form pvwr = new ProfileViewer_Form(); 23 | pvwr.ShowDialog(); 24 | } 25 | } 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /Commands.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=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | MyCommand 122 | 123 | 124 | MyLispFunction 125 | 126 | 127 | MyPickFirst 128 | 129 | 130 | MySessionCmd 131 | 132 | -------------------------------------------------------------------------------- /Main.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Autodesk.AutoCAD.Runtime; 7 | using Autodesk.AutoCAD.ApplicationServices; 8 | using Autodesk.AutoCAD.DatabaseServices; 9 | using Autodesk.AutoCAD.Geometry; 10 | using Autodesk.AutoCAD.EditorInput; 11 | using Autodesk.AutoCAD.Colors; 12 | 13 | namespace ProfileViewer 14 | { 15 | class Main 16 | { 17 | public static ObjectId SelectPolyline(out string entType) 18 | { 19 | entType = ""; 20 | ObjectId nullObjId = ObjectId.Null; 21 | Document doc = Application.DocumentManager.MdiActiveDocument; 22 | Database db = doc.Database; 23 | Editor ed = doc.Editor; 24 | if (ed != null) 25 | { 26 | PromptEntityResult prmtEnt = ed.GetEntity("\nSELECT PROFILE LINE "); 27 | if (prmtEnt.Status == PromptStatus.OK) 28 | { 29 | using (Transaction tr = db.TransactionManager.StartTransaction()) 30 | { 31 | DBObject obj = tr.GetObject(prmtEnt.ObjectId, OpenMode.ForRead); 32 | Polyline lPline = obj as Polyline; 33 | Polyline2d pline2d = obj as Polyline2d; 34 | Entity ent = obj as Entity; 35 | if(lPline != null || pline2d !=null) 36 | { 37 | entType = ent.GetType().ToString(); 38 | entType = entType.Substring(34, entType.Count() - 34); 39 | return obj.ObjectId; 40 | } 41 | else 42 | { 43 | ed.WriteMessage("\n Unsupported entity type \n\n Please select a 2d Polyline"); 44 | } 45 | } 46 | } 47 | } 48 | return nullObjId; 49 | } 50 | 51 | public static List GetLayerNames() 52 | { 53 | List layerNames = new List(); 54 | Document doc = Application.DocumentManager.MdiActiveDocument; 55 | Database db = doc.Database; 56 | using (Transaction tr = db.TransactionManager.StartTransaction()) 57 | { 58 | LayerTable layerTable = (LayerTable)tr.GetObject(db.LayerTableId, OpenMode.ForWrite); 59 | foreach(ObjectId id in layerTable) 60 | { 61 | LayerTableRecord layer = tr.GetObject(id, OpenMode.ForRead) as LayerTableRecord; 62 | layerNames.Add(layer.Name); 63 | } 64 | } 65 | return layerNames; 66 | } 67 | 68 | public static void GetProfile(ObjectId profileLine, string majorContLayer, string minorContLayer) 69 | { 70 | Document doc = Application.DocumentManager.MdiActiveDocument; 71 | Database db = doc.Database; 72 | Editor ed = doc.Editor; 73 | using (Transaction tr = db.TransactionManager.StartTransaction()) 74 | { 75 | List contoursId = new List(); 76 | ObjectIdCollection majorEnts = SelectByLayer(majorContLayer); 77 | ObjectIdCollection minorEnts = SelectByLayer(minorContLayer); 78 | List> intersectDist = new List>(); 79 | double maxElevation = 0; 80 | double profileLength = 0; 81 | #region Combining two selection collection together into one single list 82 | if (majorEnts != null) 83 | { 84 | foreach(ObjectId id in majorEnts) 85 | { 86 | contoursId.Add(id); 87 | } 88 | if(GlobalVars.majorOnly == false) 89 | { 90 | foreach(ObjectId id in minorEnts) 91 | { 92 | contoursId.Add(id); 93 | } 94 | } 95 | #endregion 96 | foreach (ObjectId id in contoursId) 97 | { 98 | using (DocumentLock doclock = doc.LockDocument()) 99 | { 100 | BlockTableRecord btr = (BlockTableRecord)tr.GetObject(db.CurrentSpaceId, OpenMode.ForRead); 101 | Polyline ent = tr.GetObject(profileLine, OpenMode.ForRead) as Polyline; 102 | //Label start and end of section 103 | CreateLayer("PROFILEVIEWER.PROFILE LABEL", 10); 104 | DrawText(new Point2d(ent.StartPoint.X, ent.StartPoint.Y), GlobalVars.textHeight * 2, 0, "A", "PROFILEVIEWER.PROFILE LABEL", 10); 105 | DrawText(new Point2d(ent.EndPoint.X, ent.EndPoint.Y), GlobalVars.textHeight * 2, 0, "A'", "PROFILEVIEWER.PROFILE LABEL", 10); 106 | Polyline ent2 = tr.GetObject(id, OpenMode.ForWrite) as Polyline; 107 | double elav = ent2.Elevation; //store elevation temporary 108 | ent2.Elevation = 0; 109 | 110 | if (maxElevation < elav) 111 | { 112 | maxElevation = elav; 113 | } 114 | profileLength = ent.Length; 115 | 116 | /// SET ELEVATION TO ZERO TEMPORARY THEN PUT IT BACk 117 | Point3dCollection intersectionPoints = new Point3dCollection(); 118 | ent.IntersectWith(ent2, Intersect.OnBothOperands, intersectionPoints, IntPtr.Zero, IntPtr.Zero); 119 | foreach (Point3d pt in intersectionPoints) 120 | { 121 | Point3d ptOnProfile = ent.GetClosestPointTo(pt, true); 122 | double ptParameter = ent.GetParameterAtPoint(ptOnProfile); 123 | double a = ent.GetDistanceAtParameter(ptParameter); 124 | double b = ent.GetDistanceAtParameter(ent.StartParam); 125 | double distance = a - b; 126 | //double distance = ent.GetDistAtPoint(pt); 127 | Tuple xsectPt = new Tuple(distance, elav); 128 | intersectDist.Add(xsectPt); 129 | } 130 | ent2.Elevation = elav; //set it back 131 | } 132 | } 133 | if (intersectDist.Count > 0) 134 | { 135 | intersectDist.Sort(); //sort to get the start and end points 136 | double profileStartY = intersectDist[0].Item2; 137 | double profileEndY = intersectDist[intersectDist.Count - 1].Item2; 138 | Tuple xsectStart = new Tuple(0, profileStartY); //start of profile 139 | Tuple xsectEnd = new Tuple(profileLength, profileEndY); //end of profile 140 | intersectDist.Add(xsectStart); 141 | intersectDist.Add(xsectEnd); 142 | intersectDist.Sort(); //have to resort after adding new points 143 | Polyline profile = new Polyline(); 144 | for (int i = 0; i < intersectDist.Count; i++) 145 | { 146 | profile.AddVertexAt(i, new Point2d(intersectDist[i].Item1 + GlobalVars.insertionPt.X, intersectDist[i].Item2 + GlobalVars.insertionPt.Y), 0, 0, 0); 147 | double elevationGrid = DrawLine(new Point3d(intersectDist[i].Item1 + GlobalVars.insertionPt.X, intersectDist[i].Item2 + GlobalVars.insertionPt.Y, 0), new Point3d(intersectDist[i].Item1 + GlobalVars.insertionPt.X, GlobalVars.insertionPt.Y, 0), "PROFILEVIEWER.GRIDLINES", 252); 148 | decimal elevLabel = Convert.ToDecimal(intersectDist[i].Item2); 149 | DrawText(new Point2d(intersectDist[i].Item1 + GlobalVars.insertionPt.X, GlobalVars.insertionPt.Y), GlobalVars.textHeight, 1.5708, elevLabel.ToString("#.##"), "PROFILEVIEWER.LABELS", 10); 150 | if (i == intersectDist.Count - 1) 151 | { 152 | using (DocumentLock docLock = doc.LockDocument()) 153 | { 154 | CreateLayer("PROFILEVIEWER.PROFILE", 255); 155 | profile.Layer = "PROFILEVIEWER.PROFILE"; 156 | BlockTableRecord btr = (BlockTableRecord)tr.GetObject(db.CurrentSpaceId, OpenMode.ForWrite); 157 | btr.AppendEntity(profile); 158 | tr.AddNewlyCreatedDBObject(profile, true); 159 | } 160 | } 161 | } 162 | 163 | double datumY = profileLength; 164 | //Datum line 165 | Polyline guides = new Polyline(); 166 | guides.AddVertexAt(0, new Point2d(GlobalVars.insertionPt.X, GlobalVars.insertionPt.Y + profileStartY), 0, 0, 0); 167 | guides.AddVertexAt(1, new Point2d(GlobalVars.insertionPt.X, GlobalVars.insertionPt.Y), 0, 0, 0); 168 | DrawText(new Point2d(GlobalVars.insertionPt.X, GlobalVars.insertionPt.Y), GlobalVars.textHeight * 2, 0, "A", "PROFILEVIEWER.DATUMLINE"); 169 | guides.AddVertexAt(2, new Point2d(GlobalVars.insertionPt.X + profileLength, GlobalVars.insertionPt.Y), 0, 0, 0); 170 | DrawText(new Point2d(GlobalVars.insertionPt.X + profileLength, GlobalVars.insertionPt.Y), GlobalVars.textHeight * 2, 0, "A'", "PROFILEVIEWER.DATUMLINE"); 171 | guides.AddVertexAt(3, new Point2d(GlobalVars.insertionPt.X + profileLength, GlobalVars.insertionPt.Y + profileEndY), 0, 0, 0); 172 | CreateLayer("PROFILEVIEWER.DATUMLINE", 251); 173 | guides.Layer = "PROFILEVIEWER.DATUMLINE"; 174 | 175 | using (DocumentLock docLock = doc.LockDocument()) 176 | { 177 | BlockTableRecord btr = (BlockTableRecord)tr.GetObject(db.CurrentSpaceId, OpenMode.ForWrite); 178 | btr.AppendEntity(guides); 179 | tr.AddNewlyCreatedDBObject(guides, true); 180 | } 181 | } 182 | tr.Commit(); 183 | ed.WriteMessage("Successfully created profile."); 184 | } 185 | else 186 | { 187 | ed.WriteMessage("No Polyline in selected layer"); 188 | } 189 | } 190 | } 191 | 192 | private static void CreateLayer(string layerName, short colour) 193 | { 194 | 195 | Document doc = Application.DocumentManager.MdiActiveDocument; 196 | Database currentDB = doc.Database; 197 | using (Transaction tr = currentDB.TransactionManager.StartTransaction()) 198 | { 199 | LayerTable layerTable = (LayerTable)tr.GetObject(currentDB.LayerTableId, OpenMode.ForWrite); 200 | if (!layerTable.Has(layerName)) 201 | { 202 | LayerTableRecord layer = new LayerTableRecord(); 203 | layer.Name = layerName; 204 | layer.Color = Color.FromColorIndex(ColorMethod.ByLayer, colour); 205 | ObjectId layerID = layerTable.Add(layer); 206 | tr.AddNewlyCreatedDBObject(layer, true); 207 | tr.Commit(); 208 | } 209 | } 210 | } 211 | 212 | public static double DrawLine(Point3d pt1, Point3d pt2, string layerName, short colour = 255) 213 | { 214 | Document doc = Application.DocumentManager.MdiActiveDocument; 215 | Database currentDB = doc.Database; 216 | CreateLayer(layerName, colour); 217 | using (Transaction tr = currentDB.TransactionManager.StartTransaction()) 218 | { 219 | BlockTable blckTable = tr.GetObject(currentDB.BlockTableId, OpenMode.ForRead) as BlockTable; 220 | BlockTableRecord blockTableRec = tr.GetObject(blckTable[BlockTableRecord.ModelSpace], OpenMode.ForWrite) as BlockTableRecord; 221 | Line line = new Line(); 222 | line.StartPoint = pt1; 223 | line.EndPoint = pt2; 224 | line.Layer = layerName; 225 | blockTableRec.AppendEntity(line); 226 | tr.AddNewlyCreatedDBObject(line, true); 227 | tr.Commit(); 228 | return line.Length; 229 | } 230 | } 231 | 232 | public static void DrawText(Point2d pt1, double textHeight, double rotation, string textVal, string layerName, short colour = 255) 233 | { 234 | Document doc = Application.DocumentManager.MdiActiveDocument; 235 | Database currentDB = doc.Database; 236 | CreateLayer(layerName, colour); 237 | Entity entCreated; 238 | double actualHeight = 0; 239 | using (Transaction tr = currentDB.TransactionManager.StartTransaction()) 240 | { 241 | BlockTable blckTable = tr.GetObject(currentDB.BlockTableId, OpenMode.ForRead) as BlockTable; 242 | BlockTableRecord blockTableRec = tr.GetObject(blckTable[BlockTableRecord.ModelSpace], OpenMode.ForWrite) as BlockTableRecord; 243 | MText text = new MText(); 244 | text.Contents = textVal; 245 | text.Rotation = rotation; 246 | text.TextHeight = textHeight; 247 | text.Location = new Point3d(pt1.X, pt1.Y, 0); 248 | text.Layer = layerName; 249 | text.Color = Color.FromColorIndex(ColorMethod.ByLayer, colour); 250 | blockTableRec.AppendEntity(text); 251 | tr.AddNewlyCreatedDBObject(text, true); 252 | actualHeight = text.ActualHeight; 253 | tr.Commit(); 254 | entCreated = text; 255 | } 256 | } 257 | 258 | public static ObjectIdCollection SelectByLayer(string layerName) 259 | { 260 | Document doc = Application.DocumentManager.MdiActiveDocument; 261 | Editor ed = doc.Editor; 262 | ObjectIdCollection selectedObjects = new ObjectIdCollection(); 263 | TypedValue[] typedVals = new TypedValue[] 264 | { 265 | //Selection using dxf codes 266 | new TypedValue((int)DxfCode.Operator, ""), 271 | new TypedValue((int)DxfCode.Operator, ""), 275 | new TypedValue((int)DxfCode.Operator, "or>") 276 | }; 277 | SelectionFilter selectFilter = new SelectionFilter(typedVals); 278 | PromptSelectionResult selection = ed.SelectAll(selectFilter); 279 | if (selection.Status == PromptStatus.OK) 280 | { 281 | selectedObjects = new ObjectIdCollection(selection.Value.GetObjectIds()); 282 | } 283 | 284 | return selectedObjects; 285 | } 286 | 287 | public static string GetInsertionPoint() 288 | { 289 | Document doc = Application.DocumentManager.MdiActiveDocument; 290 | Editor ed = doc.Editor; 291 | PromptPointOptions prmptPtOptions = new PromptPointOptions("\n\nPick insertion point...."); 292 | PromptPointResult result = ed.GetPoint(prmptPtOptions); 293 | GlobalVars.insertionPt = result.Value; 294 | Decimal x = Convert.ToDecimal(result.Value.X); 295 | Decimal y = Convert.ToDecimal(result.Value.Y); 296 | string res = string.Format("{0}, {1}", x.ToString("#.##"), y.ToString("#.##")); 297 | return res; 298 | } 299 | } 300 | 301 | 302 | class GlobalVars 303 | { 304 | public static ObjectId profileLineId = ObjectId.Null; 305 | public static Point3d insertionPt = new Point3d(); 306 | public static double textHeight = 1; 307 | public static bool majorOnly = false; 308 | } 309 | } 310 | -------------------------------------------------------------------------------- /ProfileViewer_Form.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace ProfileViewer 2 | { 3 | partial class ProfileViewer_Form 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.groupBox1 = new System.Windows.Forms.GroupBox(); 32 | this.label1 = new System.Windows.Forms.Label(); 33 | this.selectPline_btn = new System.Windows.Forms.Button(); 34 | this.label2 = new System.Windows.Forms.Label(); 35 | this.majorCont_cmbx = new System.Windows.Forms.ComboBox(); 36 | this.groupBox2 = new System.Windows.Forms.GroupBox(); 37 | this.majorOnly_chbx = new System.Windows.Forms.CheckBox(); 38 | this.minorCont_cmbx = new System.Windows.Forms.ComboBox(); 39 | this.label3 = new System.Windows.Forms.Label(); 40 | this.plot_btn = new System.Windows.Forms.Button(); 41 | this.Profile = new System.Windows.Forms.GroupBox(); 42 | this.insertionButton = new System.Windows.Forms.Button(); 43 | this.label4 = new System.Windows.Forms.Label(); 44 | this.groupBox1.SuspendLayout(); 45 | this.groupBox2.SuspendLayout(); 46 | this.Profile.SuspendLayout(); 47 | this.SuspendLayout(); 48 | // 49 | // groupBox1 50 | // 51 | this.groupBox1.Controls.Add(this.label1); 52 | this.groupBox1.Controls.Add(this.selectPline_btn); 53 | this.groupBox1.Location = new System.Drawing.Point(13, 13); 54 | this.groupBox1.Name = "groupBox1"; 55 | this.groupBox1.Size = new System.Drawing.Size(351, 55); 56 | this.groupBox1.TabIndex = 0; 57 | this.groupBox1.TabStop = false; 58 | this.groupBox1.Text = "Profile Polyline"; 59 | // 60 | // label1 61 | // 62 | this.label1.AutoSize = true; 63 | this.label1.Location = new System.Drawing.Point(6, 24); 64 | this.label1.Name = "label1"; 65 | this.label1.Size = new System.Drawing.Size(62, 13); 66 | this.label1.TabIndex = 0; 67 | this.label1.Text = "Profile Line:"; 68 | // 69 | // selectPline_btn 70 | // 71 | this.selectPline_btn.Location = new System.Drawing.Point(74, 19); 72 | this.selectPline_btn.Name = "selectPline_btn"; 73 | this.selectPline_btn.Size = new System.Drawing.Size(261, 23); 74 | this.selectPline_btn.TabIndex = 1; 75 | this.selectPline_btn.Text = "......."; 76 | this.selectPline_btn.UseVisualStyleBackColor = true; 77 | this.selectPline_btn.Click += new System.EventHandler(this.selectPline_btn_Click); 78 | // 79 | // label2 80 | // 81 | this.label2.AutoSize = true; 82 | this.label2.Location = new System.Drawing.Point(6, 22); 83 | this.label2.Name = "label2"; 84 | this.label2.Size = new System.Drawing.Size(36, 13); 85 | this.label2.TabIndex = 0; 86 | this.label2.Text = "Major:"; 87 | // 88 | // majorCont_cmbx 89 | // 90 | this.majorCont_cmbx.FormattingEnabled = true; 91 | this.majorCont_cmbx.Location = new System.Drawing.Point(74, 19); 92 | this.majorCont_cmbx.Name = "majorCont_cmbx"; 93 | this.majorCont_cmbx.Size = new System.Drawing.Size(261, 21); 94 | this.majorCont_cmbx.TabIndex = 2; 95 | // 96 | // groupBox2 97 | // 98 | this.groupBox2.Controls.Add(this.majorOnly_chbx); 99 | this.groupBox2.Controls.Add(this.minorCont_cmbx); 100 | this.groupBox2.Controls.Add(this.label3); 101 | this.groupBox2.Controls.Add(this.majorCont_cmbx); 102 | this.groupBox2.Controls.Add(this.label2); 103 | this.groupBox2.Location = new System.Drawing.Point(13, 74); 104 | this.groupBox2.Name = "groupBox2"; 105 | this.groupBox2.Size = new System.Drawing.Size(351, 129); 106 | this.groupBox2.TabIndex = 3; 107 | this.groupBox2.TabStop = false; 108 | this.groupBox2.Text = "Contour Layers"; 109 | // 110 | // majorOnly_chbx 111 | // 112 | this.majorOnly_chbx.AutoSize = true; 113 | this.majorOnly_chbx.Location = new System.Drawing.Point(74, 54); 114 | this.majorOnly_chbx.Name = "majorOnly_chbx"; 115 | this.majorOnly_chbx.Size = new System.Drawing.Size(145, 17); 116 | this.majorOnly_chbx.TabIndex = 3; 117 | this.majorOnly_chbx.Text = "Major Contour Layer Only"; 118 | this.majorOnly_chbx.UseVisualStyleBackColor = true; 119 | this.majorOnly_chbx.CheckedChanged += new System.EventHandler(this.majorOnly_chbx_CheckedChanged); 120 | // 121 | // minorCont_cmbx 122 | // 123 | this.minorCont_cmbx.FormattingEnabled = true; 124 | this.minorCont_cmbx.Location = new System.Drawing.Point(74, 77); 125 | this.minorCont_cmbx.Name = "minorCont_cmbx"; 126 | this.minorCont_cmbx.Size = new System.Drawing.Size(261, 21); 127 | this.minorCont_cmbx.TabIndex = 2; 128 | // 129 | // label3 130 | // 131 | this.label3.AutoSize = true; 132 | this.label3.Location = new System.Drawing.Point(6, 80); 133 | this.label3.Name = "label3"; 134 | this.label3.Size = new System.Drawing.Size(36, 13); 135 | this.label3.TabIndex = 0; 136 | this.label3.Text = "Minor:"; 137 | // 138 | // plot_btn 139 | // 140 | this.plot_btn.Location = new System.Drawing.Point(59, 287); 141 | this.plot_btn.Name = "plot_btn"; 142 | this.plot_btn.Size = new System.Drawing.Size(263, 23); 143 | this.plot_btn.TabIndex = 4; 144 | this.plot_btn.Text = "PLOT"; 145 | this.plot_btn.UseVisualStyleBackColor = true; 146 | this.plot_btn.Click += new System.EventHandler(this.plot_btn_Click); 147 | // 148 | // Profile 149 | // 150 | this.Profile.Controls.Add(this.insertionButton); 151 | this.Profile.Controls.Add(this.label4); 152 | this.Profile.Location = new System.Drawing.Point(13, 210); 153 | this.Profile.Name = "Profile"; 154 | this.Profile.Size = new System.Drawing.Size(351, 60); 155 | this.Profile.TabIndex = 5; 156 | this.Profile.TabStop = false; 157 | this.Profile.Text = "Profile"; 158 | // 159 | // insertionButton 160 | // 161 | this.insertionButton.Location = new System.Drawing.Point(115, 20); 162 | this.insertionButton.Name = "insertionButton"; 163 | this.insertionButton.Size = new System.Drawing.Size(220, 23); 164 | this.insertionButton.TabIndex = 1; 165 | this.insertionButton.Text = "0,0,0"; 166 | this.insertionButton.UseVisualStyleBackColor = true; 167 | this.insertionButton.Click += new System.EventHandler(this.insertionButton_Click); 168 | // 169 | // label4 170 | // 171 | this.label4.AutoSize = true; 172 | this.label4.Location = new System.Drawing.Point(7, 25); 173 | this.label4.Name = "label4"; 174 | this.label4.Size = new System.Drawing.Size(77, 13); 175 | this.label4.TabIndex = 0; 176 | this.label4.Text = "Insertion Point:"; 177 | // 178 | // ProfileViewer_Form 179 | // 180 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 181 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 182 | this.ClientSize = new System.Drawing.Size(375, 321); 183 | this.Controls.Add(this.Profile); 184 | this.Controls.Add(this.plot_btn); 185 | this.Controls.Add(this.groupBox2); 186 | this.Controls.Add(this.groupBox1); 187 | this.Name = "ProfileViewer_Form"; 188 | this.Text = "ProfileViewer_Form"; 189 | this.groupBox1.ResumeLayout(false); 190 | this.groupBox1.PerformLayout(); 191 | this.groupBox2.ResumeLayout(false); 192 | this.groupBox2.PerformLayout(); 193 | this.Profile.ResumeLayout(false); 194 | this.Profile.PerformLayout(); 195 | this.ResumeLayout(false); 196 | 197 | } 198 | 199 | #endregion 200 | 201 | private System.Windows.Forms.GroupBox groupBox1; 202 | private System.Windows.Forms.Label label1; 203 | private System.Windows.Forms.Button selectPline_btn; 204 | private System.Windows.Forms.Label label2; 205 | private System.Windows.Forms.ComboBox majorCont_cmbx; 206 | private System.Windows.Forms.GroupBox groupBox2; 207 | private System.Windows.Forms.CheckBox majorOnly_chbx; 208 | private System.Windows.Forms.ComboBox minorCont_cmbx; 209 | private System.Windows.Forms.Label label3; 210 | private System.Windows.Forms.Button plot_btn; 211 | private System.Windows.Forms.GroupBox Profile; 212 | private System.Windows.Forms.Button insertionButton; 213 | private System.Windows.Forms.Label label4; 214 | } 215 | } -------------------------------------------------------------------------------- /ProfileViewer_Form.cs: -------------------------------------------------------------------------------- 1 | using Autodesk.AutoCAD.DatabaseServices; 2 | using Autodesk.AutoCAD.Geometry; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.ComponentModel; 6 | using System.Data; 7 | using System.Drawing; 8 | using System.Linq; 9 | using System.Text; 10 | using System.Threading.Tasks; 11 | using System.Windows.Forms; 12 | 13 | namespace ProfileViewer 14 | { 15 | public partial class ProfileViewer_Form : Form 16 | { 17 | public ProfileViewer_Form() 18 | { 19 | InitializeComponent(); 20 | majorCont_cmbx.DataSource = Main.GetLayerNames(); 21 | minorCont_cmbx.DataSource = Main.GetLayerNames(); 22 | } 23 | 24 | private void selectPline_btn_Click(object sender, EventArgs e) 25 | { 26 | this.Hide(); 27 | string objType = ""; 28 | ObjectId profileLineId = Main.SelectPolyline(out objType); 29 | if (profileLineId != ObjectId.Null) 30 | { 31 | selectPline_btn.Text = objType + " SELECTED"; 32 | GlobalVars.profileLineId = profileLineId; 33 | } 34 | this.Show(); 35 | } 36 | 37 | private void majorOnly_chbx_CheckedChanged(object sender, EventArgs e) 38 | { 39 | if(majorOnly_chbx.CheckState == CheckState.Checked) 40 | { 41 | minorCont_cmbx.Enabled = false; 42 | GlobalVars.majorOnly = true; 43 | } 44 | else 45 | { 46 | minorCont_cmbx.Enabled = true; 47 | GlobalVars.majorOnly = false; 48 | } 49 | } 50 | 51 | private void plot_btn_Click(object sender, EventArgs e) 52 | { 53 | if (GlobalVars.profileLineId != ObjectId.Null) 54 | { 55 | plot_btn.Enabled = false; 56 | try 57 | { 58 | Main.GetProfile(GlobalVars.profileLineId, majorCont_cmbx.SelectedItem.ToString(), minorCont_cmbx.SelectedItem.ToString()); 59 | MessageBox.Show("Successfully created profile. Inserted at: " + insertionButton.Text); 60 | } 61 | catch(Exception ex) 62 | { 63 | MessageBox.Show("ERROR: " + ex.Message); 64 | } 65 | 66 | plot_btn.Enabled = true; 67 | } 68 | else 69 | { 70 | MessageBox.Show("Please select profile line and/or insertion point"); 71 | } 72 | } 73 | 74 | private void insertionButton_Click(object sender, EventArgs e) 75 | { 76 | insertionButton.Text = Main.GetInsertionPoint(); 77 | } 78 | } 79 | } 80 | -------------------------------------------------------------------------------- /ProfileViewer_Form.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 | -------------------------------------------------------------------------------- /Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 |  2 | using System.Reflection; 3 | using System.Runtime.CompilerServices; 4 | using System.Runtime.InteropServices; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("AutoCAD.ProfileViewer")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("Jericho Masigan")] 13 | [assembly: AssemblyProduct("AutoCAD.ProfileViewer")] 14 | [assembly: AssemblyCopyright("Copyright © Jericho Masigan")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | 18 | // Version information for an assembly consists of the following four values: 19 | // 20 | // Major Version 21 | // Minor Version 22 | // Build Number 23 | // Revision 24 | // 25 | // You can specify all the values or you can default the Build and Revision Numbers 26 | // by using the '*' as shown below: 27 | // [assembly: AssemblyVersion("1.0.*")] 28 | [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyFileVersion("1.0.0.0")] 30 | 31 | // In order to sign your assembly you must specify a key to use. Refer to the 32 | // Microsoft .NET Framework documentation for more information on assembly signing. 33 | // 34 | // Use the attributes below to control which key is used for signing. 35 | // 36 | // Notes: 37 | // (*) If no key is specified, the assembly is not signed. 38 | // (*) KeyName refers to a key that has been installed in the Crypto Service 39 | // Provider (CSP) on your machine. KeyFile refers to a file which contains 40 | // a key. 41 | // (*) If the KeyFile and the KeyName values are both specified, the 42 | // following processing occurs: 43 | // (1) If the KeyName can be found in the CSP, that key is used. 44 | // (2) If the KeyName does not exist and the KeyFile does exist, the key 45 | // in the KeyFile is installed into the CSP and used. 46 | // (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility. 47 | // When specifying the KeyFile, the location of the KeyFile should be 48 | // relative to the project output directory which is 49 | // %Project Directory%\obj\. For example, if your KeyFile is 50 | // located in the project directory, you would specify the AssemblyKeyFile 51 | // attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")] 52 | // (*) Delay Signing is an advanced option - see the Microsoft .NET Framework 53 | // documentation for more information on this. 54 | [assembly: AssemblyDelaySign(false)] 55 | [assembly: AssemblyKeyFile("")] 56 | [assembly: AssemblyKeyName("")] 57 | 58 | // Setting ComVisible to false makes the types in this assembly not visible 59 | // to COM components. If you need to access a type in this assembly from 60 | // COM, set the ComVisible attribute to true on that type. 61 | [assembly: ComVisible(false)] 62 | 63 | // The following GUID is for the ID of the typelib if this project is exposed to COM 64 | [assembly: Guid("051f4a3f-1a7f-4468-9da2-c1a9c9b7a8ef")] 65 | -------------------------------------------------------------------------------- /bin/Debug/AutoCAD.ProfileViewer.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/bin/Debug/AutoCAD.ProfileViewer.dll -------------------------------------------------------------------------------- /bin/Debug/Drawing1.dwl: -------------------------------------------------------------------------------- 1 | Jericho Masigan 2 | DESKTOP-RKU8OGE 3 | Wednesday, 8 June 2016 11:39:25 PM -------------------------------------------------------------------------------- /bin/Debug/Drawing1.dwl2: -------------------------------------------------------------------------------- 1 | 2 | 3 | Jericho Masigan 4 | DESKTOP-RKU8OGE 5 | 6 | Wednesday, 8 June 2016 11:39:25 PM 7 | -------------------------------------------------------------------------------- /bin/Debug/Template AutoCAD PlugIn.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/bin/Debug/Template AutoCAD PlugIn.dll -------------------------------------------------------------------------------- /bin/Debug/Template AutoCAD PlugIn.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/bin/Debug/Template AutoCAD PlugIn.pdb -------------------------------------------------------------------------------- /bin/Debug/acad.err: -------------------------------------------------------------------------------- 1 | 2 | 3 | INTERNAL ERROR: !dbobji.cpp@8615: eNotOpenForWrite 4 | 5 | 06/14/2016 at 21:02:46.561 Drawing: C:\Users\Jericho Masigan\Documents\Test Environment\Contour\AC_GIS_Data 8_6_2016\Contours.dxf 6 | ------------- 7 | -------------------------------------------------------------------------------- /bin/Release/AutoCAD.ProfileViewer.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/bin/Release/AutoCAD.ProfileViewer.dll -------------------------------------------------------------------------------- /bin/Release/AutoCAD.ProfileViewer.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/bin/Release/AutoCAD.ProfileViewer.pdb -------------------------------------------------------------------------------- /bin/Release/PresentationCore.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/bin/Release/PresentationCore.dll -------------------------------------------------------------------------------- /bin/Release/Template AutoCAD PlugIn.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/bin/Release/Template AutoCAD PlugIn.dll -------------------------------------------------------------------------------- /bin/Release/Template AutoCAD PlugIn.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/bin/Release/Template AutoCAD PlugIn.pdb -------------------------------------------------------------------------------- /obj/Debug/AutoCAD.ProfileViewer.csproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- 1 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Debug\AutoCAD.ProfileViewer.dll 2 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Debug\AutoCAD.ProfileViewer.pdb 3 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Debug\PresentationCore.dll 4 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Debug\AcTcMgd.dll 5 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Debug\AcCui.dll 6 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Debug\AutoCAD.ProfileViewer.csprojResolveAssemblyReference.cache 7 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Debug\ProfileViewer.MyCommands.resources 8 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Debug\ProfileViewer.ProfileViewer_Form.resources 9 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Debug\AutoCAD.ProfileViewer.csproj.GenerateResource.Cache 10 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Debug\AutoCAD.ProfileViewer.dll 11 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Debug\AutoCAD.ProfileViewer.pdb 12 | -------------------------------------------------------------------------------- /obj/Debug/AutoCAD.ProfileViewer.csproj.GenerateResource.Cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/AutoCAD.ProfileViewer.csproj.GenerateResource.Cache -------------------------------------------------------------------------------- /obj/Debug/AutoCAD.ProfileViewer.csprojResolveAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/AutoCAD.ProfileViewer.csprojResolveAssemblyReference.cache -------------------------------------------------------------------------------- /obj/Debug/AutoCAD.ProfileViewer.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/AutoCAD.ProfileViewer.dll -------------------------------------------------------------------------------- /obj/Debug/AutoCAD.ProfileViewer.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/AutoCAD.ProfileViewer.pdb -------------------------------------------------------------------------------- /obj/Debug/DesignTimeResolveAssemblyReferences.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/DesignTimeResolveAssemblyReferences.cache -------------------------------------------------------------------------------- /obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache -------------------------------------------------------------------------------- /obj/Debug/ProfileViewer.MyCommands.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/ProfileViewer.MyCommands.resources -------------------------------------------------------------------------------- /obj/Debug/ProfileViewer.ProfileViewer_Form.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/ProfileViewer.ProfileViewer_Form.resources -------------------------------------------------------------------------------- /obj/Debug/TempPE/Commands.Designer.cs.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/TempPE/Commands.Designer.cs.dll -------------------------------------------------------------------------------- /obj/Debug/Template AutoCAD PlugIn.csproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- 1 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\Template AutoCAD PlugIn.dll 2 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\Template AutoCAD PlugIn.pdb 3 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\AcCoreMgd.dll 4 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\AcDbMgd.dll 5 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\AcDx.dll 6 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\AcMgd.dll 7 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\AcWindows.dll 8 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\AdWindows.dll 9 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\PresentationCore.dll 10 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\AcTcMgd.dll 11 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\bin\Debug\AcCui.dll 12 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\obj\Debug\Template AutoCAD PlugIn.csprojResolveAssemblyReference.cache 13 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\obj\Debug\Template_AutoCAD_PlugIn.MyCommands.resources 14 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\obj\Debug\Template AutoCAD PlugIn.csproj.GenerateResource.Cache 15 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\obj\Debug\Template AutoCAD PlugIn.dll 16 | C:\Users\jmasigan\Documents\Portable\Template AutoCAD PlugIn\Template AutoCAD PlugIn\obj\Debug\Template AutoCAD PlugIn.pdb 17 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\bin\Debug\AutoCAD.ProfileViewer.dll 18 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\bin\Debug\AutoCAD.ProfileViewer.pdb 19 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\bin\Debug\PresentationCore.dll 20 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\bin\Debug\AcTcMgd.dll 21 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\bin\Debug\AcCui.dll 22 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\obj\Debug\Template AutoCAD PlugIn.csprojResolveAssemblyReference.cache 23 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\obj\Debug\ProfileViewer.MyCommands.resources 24 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\obj\Debug\ProfileViewer.ProfileViewer_Form.resources 25 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\obj\Debug\Template AutoCAD PlugIn.csproj.GenerateResource.Cache 26 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\obj\Debug\AutoCAD.ProfileViewer.dll 27 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\Template AutoCAD PlugIn\obj\Debug\AutoCAD.ProfileViewer.pdb 28 | -------------------------------------------------------------------------------- /obj/Debug/Template AutoCAD PlugIn.csproj.GenerateResource.Cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/Template AutoCAD PlugIn.csproj.GenerateResource.Cache -------------------------------------------------------------------------------- /obj/Debug/Template AutoCAD PlugIn.csprojResolveAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/Template AutoCAD PlugIn.csprojResolveAssemblyReference.cache -------------------------------------------------------------------------------- /obj/Debug/Template AutoCAD PlugIn.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/Template AutoCAD PlugIn.dll -------------------------------------------------------------------------------- /obj/Debug/Template AutoCAD PlugIn.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/Template AutoCAD PlugIn.pdb -------------------------------------------------------------------------------- /obj/Debug/Template_AutoCAD_PlugIn.MyCommands.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/Template_AutoCAD_PlugIn.MyCommands.resources -------------------------------------------------------------------------------- /obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs -------------------------------------------------------------------------------- /obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs -------------------------------------------------------------------------------- /obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs -------------------------------------------------------------------------------- /obj/Release/AutoCAD.ProfileViewer.csproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- 1 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Release\AutoCAD.ProfileViewer.dll 2 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Release\AutoCAD.ProfileViewer.pdb 3 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Release\PresentationCore.dll 4 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Release\AcTcMgd.dll 5 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\bin\Release\AcCui.dll 6 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Release\AutoCAD.ProfileViewer.csprojResolveAssemblyReference.cache 7 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Release\ProfileViewer.MyCommands.resources 8 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Release\ProfileViewer.ProfileViewer_Form.resources 9 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Release\AutoCAD.ProfileViewer.csproj.GenerateResource.Cache 10 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Release\AutoCAD.ProfileViewer.dll 11 | C:\Users\Jericho Masigan\Documents\Programming\AutoCAD.ProfileViewer\AutoCAD.ProfileViewer\obj\Release\AutoCAD.ProfileViewer.pdb 12 | -------------------------------------------------------------------------------- /obj/Release/AutoCAD.ProfileViewer.csproj.GenerateResource.Cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/AutoCAD.ProfileViewer.csproj.GenerateResource.Cache -------------------------------------------------------------------------------- /obj/Release/AutoCAD.ProfileViewer.csprojResolveAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/AutoCAD.ProfileViewer.csprojResolveAssemblyReference.cache -------------------------------------------------------------------------------- /obj/Release/AutoCAD.ProfileViewer.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/AutoCAD.ProfileViewer.dll -------------------------------------------------------------------------------- /obj/Release/AutoCAD.ProfileViewer.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/AutoCAD.ProfileViewer.pdb -------------------------------------------------------------------------------- /obj/Release/DesignTimeResolveAssemblyReferencesInput.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache -------------------------------------------------------------------------------- /obj/Release/ProfileViewer.MyCommands.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/ProfileViewer.MyCommands.resources -------------------------------------------------------------------------------- /obj/Release/ProfileViewer.ProfileViewer_Form.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/ProfileViewer.ProfileViewer_Form.resources -------------------------------------------------------------------------------- /obj/Release/TempPE/Commands.Designer.cs.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/TempPE/Commands.Designer.cs.dll -------------------------------------------------------------------------------- /obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs -------------------------------------------------------------------------------- /obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs -------------------------------------------------------------------------------- /obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jcomasigan/AutoCAD.ProfileViewer/d84bd0bd3a39aad490a8212179cd01d5a587bef0/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs --------------------------------------------------------------------------------