Autodesk Inventor Programming in C++
0) Installing the SDK
1) How to use this help file (READ THIS FIRST)
2) Introduction
3) Connecting to Inventor from a Windows MFC app.
4) Pointers to Inventor and useful Inventor API objects.
5) Running Inventor programatically
6) Creating a part document and a sketch
7) Some tips for Autodesk Inventor C++ programmers
Right hand coordinate system
iLogic and VBA
iLogic editing
iLogic and suppression of parts in assemblies
Run an EXE from inside an iLogc rule
iLogic suppression of features in a part
iLogic and part parameters
iLogic to delete suppressed compoents
iLogic debugging statements, Trace
iLogic to change dimensions in sketches
iLogic to add parts to an assembly
iLogic iProperties example
Local or global VBA?
Listing documents open in Inventor with VBA
VBA document type
Inventor VBA and Excel
Update custom iproperty with VBA and iLogic
Shared global variables in iLogic
Declaring variables in iLogic
iLogic dialog form modification
iLogic, adding a new form
When do iLogic rules run?
Inventor from inside Access
Custom iProperties in component with VBA
Programming Inventor in C++
Get the name of a part
GetWorkPlaneName GetOccurrenceName
Investigating Asset Libraries Progamatically
Bounding box of a part occurrence in an assembly
Parallel planes programatically
Change size of a hole
Materials API
Model and User parameters programatically
FlipNormal failure
Adaptive geometry
Add a sketch to an assembly or part
How to get the value of a user parameter
Getting the value of a custom iProperty
Add a part to an assembly
Open an assembly part programatically
Landscape and Portrait orientation getting and setting
Adding a sheet to a drawing
Compile/Link Errors and how to correct them
_WIN32_WINNT error
error MSB3075: The command regsvr32 /s /c...
Error MK_E_UNAVAILABLE  0x800401e3
Include file paths
CLSIDFromProgID error resolution
C2064: term does not evaluate to a function taking 0 arguments
C2774 compile error
Failed to register
Four API methods warning when compiling for MFC
Open an Inventor part programatically
PutFullFileName exception
MessageBox vs MsgBox
InternalName vs DisplayName
Add a circle to a sketch function
Standard WorkPlane getting
Creating folders in the browser programatically
Getting the names of browser folders
How to set the BOM Reference property in a part occurrence
Listing the contents of a model view BOM
Static quantity in a BOM
Documents referenced by a 2d view in an IDW
Add a DrawingSketch to a DrawingDocument
Adding lines text and circles to a DrawingSketch
Constrain a sketch point to a coordinate
Get a Document from a Definition
CreateSafeStringArray and CreateSafeDoubleArray
Listing 2d points in a sketch
Add an iMate (based on a point) into an assembly
Part Lists programatically
Add an assembly into another assembly programatically
Hide a sketch in a part
Range BBox of a PartsList
Add a unitless user parameter into an assembly
Create an ObjectCollection of parts in an assembly
Delete a feature in a part
Loop over part occurences in an assembly
Add a rectangle to a sketch
Rectangular cut with extrusion
WorkAxis constraints
Getting hold of the standard workpoint called "Center Point"
Add a WorkPoint into an assembly programatically
Add a WorkPoint at the intersection of a line and a plane
Add grounded WorkAxis in an assembly
List iMates in an assembly
Filename of referenced doc
Referenced Document of a View
put_Name, how to use it
Retrievable Dimensions
DrawingDimensions vs GeneralDimensions
Negative Dimensions
Show a dimension programatically
Dimensions in a drawing sheet
Plane object, getting its geometry
Open a part from a view
getType and ObjectTypeEnum
Listing types of dimensions in a view
Getting the version of Inventor programatically
QueryInterface and Release Etc
CComQIPtr is better than QueryInterface
How to get iPart factory parent from child member
Counting the number of documents open in Inventor
CustomTables in Sheets and Drawings
Positioning objects in a Sheet.
New line within table cells
Create a drawing file (IDW or DWG)
How to add views to a drawing sheet (Inventor API)
Names of views programatically
Creating projected views from base views
Drawing View Styles
Close function for Parts and Assemblies
Getting the current document of Inventor
Add a mate constraint with two planes programatically
Proxies, why and what?
ErrorManager, errors and warnings, ShowCOMError and ReturnAndShowCOMError
Looping over views in sheets
Listing and checking constraints
Saving apparently disabled (SilentOperation)
WorkAxes in Inventor programs
Wrapping COM and C++
Units when programming Inventor
Exporting Paramenters
Placing objects in space Vector and Matrix
ObjectCollections in the Inventor API (transient object collections)
Creating a new Part Document
How to extrude a sketch programatically
Transient Geometry
Changing the application visibility
A matrix to rotate an object
Proxies, WorkAxes, Vectors and Points
WorkFeatures and iParts
What are PatternElements?
Listing the contents of Patterns
Pattern counts
What sort of WorkFeature is this?
AddByPlaneAndOffset example
Interrogating rectangular patterns
Name of part in a component occurrence
Add an occurrence to an assembly does not work
Listing constraints in an assembly programatically
Listing members in an iPartFactory programatically
PartComponentDefinition from an occurrence
Getting the workplanes of a part occurrence in an assembly
SaveAs function
Save programatically
FullDocumentName and GetLocationFoundIn
Close function, Inventor API
Making workfeatures of a part invisible in the assembly
Visibility programatically in Inventor
AddCustomiPartMember details and tips
Add in the occurrence of a custom iPart into an assembly
Occurrences and component definitions
How to get the parameters of an assembly
get_Item and Item, what sort of parameter?
Suppression and Unsuppression of features
Compute and Suppress from an iPart table programatically
Skipping missing components programatically
How to open a document programatically
Function calls in Autodesk Inventor C++ programming
Names of objects inside sketches
COM pointers when programming AutoDesk Inventor
ParameterPtr and get_XCount
Gettings objects by name
How to get the RectangularPatterns in a PartComponentDefinition
ObjectsEnumerator, a list of objects
Parameter types
Face Edge EdgeProxy
Inserting an extrusion in a Part
Optional parameters and empty COM values
Points and CenterPoints
Add a (planar) sketch to a workplane programatically
Component Definition
Adding a workplane to a Part programatically
Set the visibility of all workplanes in a part
Listing the names of axes in a part
Get and Set the name of an Inventor document
The .AddIn file
Adding a flush constraint programatically
Adding a flush constraint using workplanes
Constraints and parts from a programmer's point of view
Loading your DLL
Sketches in an Inventor Part
Default workplanes and default sketches programatically
Add a work point at a sketch point
Getting and setting the sketch name  (as well as other objects)
Occurences as Xrefs
rgs file for Inventor AddIns, what is it?
VBA, VB.NET, C# or C++
Profiles in sketches programatically
Creating an Assembly
Getting the project file location and other options programatically
What and where is the AddIn manager?
Adding a rectangle to a sketch programatically
get_ and Get ?
Difference between CComPtr and CComQIPtr?
VARIANT and CComVariant
Getting items from collections
Assembly.Document Assembly
64bit vs 32bit
Client Graphics
Hierarchy of objects
Getting or running an Inventor Instance
Add a part to an assembly programatically
Coordinates of a WorkAxis
Invisibilize components in a collection
Delete a WorkAxis
Add a plane by offset from another plane
Getting hold of the surfaces and faces of a solid object
Adding an AngleConstraint
Creating a 64 bit plugin using the Wizard
Purging Material Assets
View orientations
Functions for project files .IPT
Listing RevolveFeatures of a part programatically
Create a rectangular pattern of parts programatically
Suppression and Unsuppression of elements in a pattern
Accessing mass properties
Is Excel installed on your computer?
iProperties programatically
iProperties overview
Listing iProperties of an Inventor document
iProperties, add a custom value programatically
iProperties, create a new property set
iProperties, read the value of a custom property
Programming Inventor in C#
Starting Inventor in C#
MSB3277: Found conflicts between different versions
C# plugin making
C# plugins, adding a button and a command
Button Definition
C# plugin removal
C# message box
Custom iProperties using C#
Open an Inventor file using C#
ItemByName for Document
Get user parameters using C#
Looping over components inside an assembly in C#
GetActiveObject does not exist in Marshal
Calling iLogic from C#
Listing iLogic rules using C#
Save programatically in C#
"Member not found" error in C# add-in
Browser panes in C#
Assembly document or part document?
Listing parameters in an assembly, C#
Getting the value of a parameter in a part
Value of a Param
Getting the GUI language of Inventor
Changing parameters with C#
get_Units crashes
Listing holes in a face of folded metal
Listing holes in a face of folded metal VB
Direction of a workaxis
HoleFeature HoleFeatureProxy C#
Items in lists by string
Constrain work axes C#
Constrain work things of a part to the work things of the containing assembly
Bounding box of a part
Matrix Vector and SetTranslation, C#
WorkPlane orientation in C#
Standard WorkAxes in C#
Constrain a part to an assembly level work axis
Create an assembly document C#
Listing the profiles of a face in C#
List all planes in a part, C#
Get a WorkPlane by name
kReferenceFeatureObject is a derived part
Reading values from an iPart table in C#
Using Inventor manually
Parallel constraint, not coplanar
BOMs and Part Lists
BOM vs Parts List
Adding a flat parts list in a drawing
BOM Bill of materials
Remove something from a Parts List
Parts list modification
Parts Only (disabled) problem
Virtual components
Parts List Style (Default)
Alternative to a virtual component in a BOM
iParts general info
iPart - standard vs custom
iPart author
iPart Member and PartNumber
Custom iParts
Changing Custom Ipart Parameters
Suppression of features parametrically using the iPart Author
Changing from iPart back to normal part
Custom column in an iPart table
Create iPart icon is grey
Suppress and Level Of Detail
Offset of a point
Pack And Go
WorkAxes at assembly level
Insert constraint
Faces as objects
Show hidden lines in a drawing manually
Axis directions
Creating folders in the browser manually
Construction lines in sketches
Formulas inside parameter settings
Explode a pattern
Assembly WorkPoints and Part WorkPoints
Erase pattern elements
Axis perpendicular to sketch point, how to
Delete a dimension manually
Mass Volume Calculation
Add a WorkPlane in an Assembly
Add a feature to an existing pattern
Add a point to the surface of a tube manually
General Note and text
Add an angular dimension
Adding a Dimension in a sketch
Application Options Settings
Backup options for Inventor files
Add-In automatic load suppression
Strange material problem
Browser is missing! Get it back!
Change material / color of a solid
Change the offset elevation of a plane
Changing home view setting
Changing manipulator snap
Changing the default units
Completely and adequately constrained sketches
Constrain 2 pairs of axes
Constrain vertically and horizontally
Contact set
Contraints between 3D part objects
Crash when creating a new drawing
Create a sketch by default on creating a new part
Creating a big tube with holes in it
Creating a drawing of an assembly or part
Creating a workplane offset from another plane
Customizing the menu
Delete a parameter
Deleting, removing a constraint
Driven Dimensions and their Removal/Change
Editing a sketch flatly
Editing Model Parameters and how they are displayed
Enable and Disable parts and assemblies
Example of dimensions and parameters in a sketch
Extruding sketches with multiple concentric circles
Extruding with widening angles
File types
FlipNormal and WorkPlane constraints
Flush Mate And Axis Constraint Example
Free Move and Free Rotate
fx: and parameters and formulas
Get the browser pane back
Getting into and out of sketches
Getting to the constrain icon in Inventor
Grounded Parts
Holes in tubes
How to change the background of the Inventor screen
How to make a hollow tube
How to move a 3D object
Inches problem
Insert constraint
Inserting an inclined workplane
Inventor Apprentice
Mate vs Flush constraints
Mini tool bar autofade
No visible unadaptive sketches
Pattern inside a sketch
Patterns (arrays) of features
Plane on the surface of a tube at an angle
Problem when inserting iParts into Assemblies
Problems encountered while executing this command.
Problems with sketch extrusion and revsurf
Project files
Putting 2d dxf files in 3D assemblies, manually
Removing material with the cut extrusion command
Showing dimensions temporarily
Showing expressions in a sketch
Sketch plane
Sketches and Features
Suppression and mirrored features
Templates and Template files
The Marking Menu
Trim and Fillet
ul as a dimension
Units, Inches, Mm
View face command
Viewing Multiple Documents in Inventor
Work Axis Thru Circular Hole
Work Point in center of a hole (COPY)
Workplanes and Sketches, Creating a sketch on an arbitrary plane
WorkPoint in center of a hole
Yellow Dot Green Dot Constraints

(C) 2021 Owen F Ransen