AutoCAD Programming Using C#.NET - Beginner Course
Created by Arnold Higuit, Last Updated 23-Aug-2020, Language:English
AutoCAD Programming Using C#.NET - Beginner Course
This is your ultimate guide to learning C# programming in AutoCAD.
Created by Arnold Higuit, Last Updated 23-Aug-2020, Language:English
What Will I Get ?
- Learn and understand Fundamentals of C# Programming
- Understand .NET Framework and learn Visual Studio IDE 2017
- Learn and Understand AutoCAD .NET API structure
- Learn how to create your own AutoCAD Plugins
- Manipulate AutoCAD Objects using C#
- Create AutoCAD objects using C#
- Learn how to use Selection Sets and Filters using C#
- Develop 2 different projects: 1) Create your own Drawing TitleBlocks for different Paper Sizes through code 2) Create an Audit Program to count different entities in the drawing
Requirements
- Knowledge of AutoCAD
- Programming knowledge is advantageous but not necessary as we will go through the basics of C# Programming
Description
This course will guide you in every step to learn how to develop AutoCAD Plugins using C# and AutoCAD .NET API. If you don't have C# knowledge, I have created a separate section to learn C# fundamentals.
Course Content
-
Course Outline and Introduction
7 Lectures 00:09:40-
Course Outline
Preview00:03:23 -
Introduction
Preview00:00:32 -
Who is this course for?
00:00:50 -
What Will I Learn from this Course?
00:00:59 -
What is CSharp?
00:01:19 -
What is AutoCAD .NET API?
00:01:08 -
What are the advantages of programming in AutoCAD .NET API?
00:01:29
-
-
.Net Framework and Visual Studio 2017 Community Edition
6 Lectures 00:19:34-
Section Overview
00:00:59 -
.NET Framework Architecture Overview
Preview00:02:52 -
.NET Framework Class Library, Common Type System, Common Language Runtime
Preview00:03:25 -
More about.NET Framework Common Language Runtime (CLR)
00:02:04 -
Visual Studio 2017 Integrated Development Environment (IDE)
00:03:25 -
Visual Studio 2017 IDE Demo
00:06:49
-
-
C# Fundamentals
60 Lectures 04:21:09-
Section Overview
00:02:37 -
DataTypes and Variables - Value Types (signed/unsigned integers)
00:04:19 -
DataTypes and Variables - Signed and Unsigned Integer Demo
00:05:55 -
DataTypes and Variables - Floating Point and Decimal
00:01:54 -
DataTypes and Variables - Floating Point and Decimal Demo
00:03:46 -
DataTypes and Variables - Boolean
00:02:44 -
DataTypes and Variables - Reference Types
00:03:12 -
DataTypes and Variables - Class Type
00:03:21 -
DataTypes and Variables - Class Type - Demo
00:10:42 -
DataTypes and Variables - Interface Type
00:01:03 -
DataTypes and Variables - Array Type
Preview00:02:25 -
DataTypes and Variables - Array Type - Demo (Single Dimension)
00:08:17 -
DataTypes and Variables - Array Type - Demo (Multi Dimension)
00:10:26 -
C# Operators Overview
00:02:24 -
C# Assignment Operators
00:03:16 -
C# Assignment Operators - Demo
00:05:45 -
C# Unary Operators
00:01:56 -
C# Unary Operators - Demo
00:01:56 -
C# Primary Operators
00:02:41 -
C# Primary Operators - Demo
00:06:49 -
C# Equality Operators
00:01:22 -
C# Equality Operators - Demo
00:02:23 -
C# Additive Operators
00:01:33 -
C# Additive Operators - Demo
00:01:24 -
C# Multiplicative Operators
00:00:57 -
C# Multiplicative Operators - Demo
00:01:22 -
C# - Relational and Type Operators
00:03:44 -
C# - Logical, Conditional and Null Operators
00:03:30 -
C# - Logical, Conditional and Null Operators - Demo
00:07:21 -
C# Keywords (Reserved Words)
00:03:52 -
C# - Conditionals Overview
00:01:18 -
C# Conditionals - If-Then-Else Statement
00:02:34 -
C# Conditionals - If-Then-Else Statement - Demo
00:06:53 -
C# Conditionals - Switch Statement
00:02:52 -
C# Conditionals - Switch Statement - Demo
00:04:17 -
C# - Loops Overview
00:03:45 -
C# Loops - For Loop
00:02:11 -
C# Loops - For Loop - Demo
00:02:13 -
C# Loops - Foreach Loop
00:02:05 -
C# Loops - Foreach Loop - Demo
00:04:45 -
C# Loops - While Loop
00:01:53 -
C# Loops - While Loop - Demo
Preview00:01:47 -
C# Loops - Do While Loop
00:02:21 -
C# Loops - Do While Loop - Demo
00:02:32 -
Modifiers Overview
00:04:10 -
Debugging Overview
00:02:36 -
Debugging - Demo 1
Preview00:05:28 -
Debugging - Demo 2
00:06:39 -
Debugging - Demo 3
00:06:02 -
Error and Exception Handling - Overview
00:02:08 -
ExceptionHandling - Demo 1
00:07:19 -
ExceptionHandling - Demo 2
00:07:22 -
ExceptionHandling - Demo 3
00:12:53 -
Introduction to Object Oriented Programming (OOP)
00:04:03 -
OOP - Encapsulation - Demo (Part 1)
00:10:55 -
OOP - Encapsulation - Demo (Part 2)
Preview00:12:18 -
OOP - Inheritance - Demo (Part 1)
00:06:32 -
OOP - Inheritance - Demo (Part 2)
00:05:21 -
OOP - Polymorphism - Demo (Part 1)
00:10:25 -
OOP - Polymorphism - Demo (Part 2)
00:02:36
-
-
Exploring AutoCAD .NET API
8 Lectures 00:30:27-
AutoCAD .NET API - Overview
00:01:22 -
AutoCAD .NET API Assemblies
00:01:41 -
Using AutoCAD .NET API in C# - Hello AutoCAD Demo Part 1
00:11:42 -
Using AutoCAD .NET API in C# - Hello AutoCAD Demo - Part 2
00:03:57 -
AutoCAD .NET API Object Hierarchy
00:03:16 -
AutoCAD .NET API - Application Object Overview
00:03:13 -
AutoCAD .NET API - Document Object Overview
00:02:44 -
AutoCAD .NET API - Database Object Overview
00:02:32
-
-
Creating AutoCAD Objects using AutoCAD .NET API
7 Lectures 00:44:56-
Creating AutoCAD Objects using AutoCAD .NET API - Overview
00:00:46 -
Creating a Line Object - Lab (Part 1)
00:14:22 -
Creating a Line Object - Lab (Part 2)
Preview00:02:46 -
Creating a MText Object - Lab
00:10:00 -
Creating a Circle Object - Lab
00:06:30 -
Creating an Arc Object - Lab
00:05:03 -
Creating a LWPolyline Object - Lab
00:05:29
-
-
Manipulate AutoCAD Objects
27 Lectures 01:57:35-
Manipulate AutoCAD Objects - Overview
00:00:40 -
Copy Object using C# - Theory
00:00:47 -
Copy Object using C# - Lab (Part 1)
00:10:41 -
Copy Object using C# - Lab (Part 2)
00:01:30 -
Copy multiple objects using C# - Lab (Part 1)
00:09:11 -
Copy multiple objects using C# - Lab (Part 2)
Preview00:01:29 -
Erase Object using C# - Lab (Part 1)
00:06:21 -
Erase Object using C# - Lab (Part 2)
00:04:33 -
Move Object using C# - Lab (Part 1)
00:05:55 -
Move Object using C# - Lab (Part 2)
00:01:43 -
Mirror Object using C# - Lab (Part 1)
00:09:46 -
Mirror Object using C# - Lab (Part 2)
00:01:42 -
Rotate Object using C# - Lab (Part 1)
00:07:19 -
Rotate Object using C# - Lab (Part 2)
00:03:16 -
Scale Object using C# - Lab
00:05:19 -
Copy Object Exercise
00:02:07 -
Copy Object Solution
Preview00:05:51 -
Erase Object Exercise
00:01:39 -
Erase Object Solution
00:07:16 -
Move Object Exercise
00:01:56 -
Move Object Solution
00:05:48 -
Mirror Object Exercise
00:01:45 -
Mirror Object Solution
00:06:16 -
Rotate Object Exercise
00:01:45 -
Rotate Object Solution
00:06:12 -
Scale Object Exercise
00:01:25 -
Scale Object Solution
00:05:23
-
-
Exploring AutoCAD Dictionaries (Layers, LineTypes, TextStyles)
20 Lectures 01:47:20-
Exploring AutoCAD Dictionaries - Layers Overview
00:02:36 -
Listing all the Layers in the drawing using C#
00:10:48 -
Creating a Layer in AutoCAD using C#
00:09:25 -
Updating a Layer in AutoCAD using C#
00:09:11 -
Turning the Layer On/Off in AutoCAD using C#
00:04:41 -
Thawing/Freezing Layer in AutoCAD using C#
00:03:54 -
Deleting a Layer in AutoCAD using C#
00:03:23 -
Locking/UnLocking a Layer in AutoCAD using C#
00:04:59 -
Assigning a Layer to an AutoCAD object using C#
00:03:18 -
Exploring AutoCAD Dictionaries - LineTypes Overview
00:00:52 -
Listing all the LineTypes in the drawing using C#
00:06:51 -
Loading a LineType in the drawing using C#
Preview00:06:49 -
Setting the Current LineType in AutoCAD using C#
00:02:58 -
Deleting a LineType in AutoCAD using C#
00:03:03 -
Setting a LineType to an object using C#
00:03:50 -
Exploring AutoCAD Dictionaries - TextStyles Overview
00:00:50 -
Listing all the TextStyles in the drawing using C#
00:08:14 -
Updating current TextStyle Font in AutoCAD using C#
00:09:33 -
Setting the Current TextStyle in AutoCAD using C#
00:08:04 -
Setting a TextStyle to an object using C#
00:04:01
-
-
User Input Functions
6 Lectures 00:53:06-
Using GetString Method - Lab (Part 1)
00:13:06 -
Using GetString Method - Lab (Part 2)
00:09:51 -
Using GetPoint Method - Lab
00:11:46 -
Using GetDistance Method - Lab
00:03:38 -
Using GetKeyWords Method - Lab (Part 1)
Preview00:12:24 -
Using GetKeyWords Method - Lab (Part 2)
00:02:21
-
-
Selection Sets and Filters
18 Lectures 01:53:07-
Selection Sets and Filters - Overview
00:01:31 -
Using SelectAll Method - Lab (Part 1)
00:10:37 -
Using SelectAll Method - Lab (Part 2)
00:01:44 -
Using SelectOnScreen Method - Lab (Part 1)
00:06:02 -
Using SelectOnScreen Method - Lab (Part 2)
00:01:06 -
Using SelectWindow Method - Lab
00:08:17 -
Using SelectCrossingWindow Method - Lab
00:08:06 -
Using SelectFence Method - Lab
00:07:47 -
Using PickFirstSelection Method - Lab
00:11:16 -
Using SelectionSet Filters - Overview
00:11:16 -
Using SelectionSet Filters - Selecting Lines
00:09:22 -
Using SelectionSet Filters - Selecting MTexts Lab
00:06:41 -
Using SelectionSet Filters - Selecting Polylines Lab
00:03:09 -
Using SelectionSet Filters - Selecting Blocks (FrenchDoors) Lab
00:07:12 -
Using SelectionSet Filters - Selecting Blocks (BiFoldDoors) Lab
00:04:17 -
Using SelectionSet Filters - Selecting objects in a Layer (Walls) Lab
00:06:57 -
Using SelectionSet Filters - Selecting all objects in a Layer (Stairs) Lab
00:05:23 -
Using SelectionSets and Filters - Exercises
00:02:24
-
-
Developing Title Block Project - Hands On!
32 Lectures 04:25:46-
TitleBlock Project - Overview
00:05:19 -
Creating Project and TBlock Class - Lab
00:13:51 -
Creating Classes for each Paper Sizes - Lab
00:07:02 -
Creating TitleBlock Class - Lab
00:14:22 -
Handling User Selected Paper Size - Lab
00:04:33 -
Creating the TitleBlock Border Lines - Lab
00:05:30 -
Creating the Horizontal Partition Lines - Lab (Part 1)
00:10:37 -
Creating the Horizontal Partition Lines - Lab (Part 2)
00:05:04 -
Creating Vertical Partition Lines - Lab
00:11:05 -
Project Check on the Partition Lines - Lab
00:07:09 -
Creating the TitleBlock Labels - Lab (Part 1)
00:10:17 -
Creating the TitleBlock Labels - Lab (Part 2)
00:09:04 -
Creating the TitleBlock Labels - Lab (Part 3)
00:10:36 -
Project Check on the Labels
00:06:47 -
Creating Drawing Information Texts
00:08:03 -
Debugging the TitleBlock Project - Lab
00:09:33 -
Completing and Running the TitleBlock Plugin
00:05:25 -
Audit Drawing Project - Overview
Preview00:02:08 -
Audit Drawing Project - Demo
Preview00:06:37 -
Creating the AuditDrawing Project
00:11:08 -
Creating the AuditDrawing DisplayOnScreen Method
00:13:53 -
Creating the AuditDrawing Write to TXT File Method
00:08:18 -
Creating the AuditDrawing Write to CSV File Method
00:05:51 -
Creating the AuditDrawing Write to HTML File Method
00:14:07 -
AuditDrawing Plugin Demo
00:04:16 -
Creating the AuditBlock Method
00:04:49 -
Creating the AuditBlock GatherBlocksAndCount Method
00:15:59 -
Creating the AuditBlock DisplayOnScreen Method
00:05:46 -
Creating the AuditBlock WriteToTXTFile Method
00:05:11 -
Creating the AuditBlock WriteToCSVFile Method
00:04:31 -
Creating the AuditBlock WriteToHTMLFile Method
00:07:20 -
AuditBlock Completed Component - Demo
00:11:35
-
-
Conclusion
1 Lectures 00:01:09-
Conclusion
00:01:09
-

Arnold Higuit
Sr. Software Developer
A Sr. Software Developer and a Microsoft Certified Solutions Developer (MCSD) and Microsoft Certified Applications Developer (MCAD) with extensive knowledge on different technology in different industries.
I have worked on several companies ranging from Architectural, Engineering & Construction, Utilities, Marketing, Telecommunications, and now in Financial Corporation.
I have been exposed to many different Technologies and Frameworks and Programming Languages. Developing applications using C#, Java, AutoLISP, VB/VBA, GIS and CAD Applications. I also worked on many different Enterprise Databases (e.g. SQL Server, Oracle, Sybase).