Create a new Inventor DWG drawing using VB.NET

Create a new Inventor DWG drawing using VB.NET

Anonymous
Not applicable
2,341 Views
5 Replies
Message 1 of 6

Create a new Inventor DWG drawing using VB.NET

Anonymous
Not applicable

Hello.

 

I'm trying to create a new DWG file in Inventor.

 

In the Inventor options I changed the default file type of drawing, but when I add a new document using the Add method from the Documents collection, always creates a file of type IDW.

 

I tried to force the option from code, but I get the same result.

 

I am using VB.net 2008 and Inventor 2010, this is the code:

 

InvApp = InventorGet()

InvApp.Visible = True

InvApp.DrawingOptions.DefaultDrawingFileType = DefaultDrawingFileTypeEnum.kDWGDefaultDrawingFileType

InvDoc = InvApp.Documents.Add(DocumentTypeEnum.kDrawingDocumentObject)

 

Any ideas? Thanks in advance

 

0 Likes
Accepted solutions (1)
2,342 Views
5 Replies
Replies (5)
Message 2 of 6

Dennis.Ossadnik
Autodesk Support
Autodesk Support

Hi jgaston,

you could use it like that and specify the template file:

 

Dim InvDoc As Document 

Set InvDoc = InvApp.Documents.Add(kDrawingDocumentObject, "C:\Templates\Norm.dwg", True)

 

Hope, this helps.



Dennis Ossadnik
Senior Technical Support Specialist
0 Likes
Message 3 of 6

Anonymous
Not applicable

Thanks Dennis, but hoped to use the default template and not have to deal with code to manage the routes.

If I understand, the help of the API says the method should work this way.

Regards

 

api.JPG

 

 

0 Likes
Message 4 of 6

Dennis.Ossadnik
Autodesk Support
Autodesk Support
Accepted solution

Hi jgaston

Here is an exaple how you can use the standard templates:

 

first set the option: DrawingOptions.DefaultDrawingFileType = kDWGDefaultDrawingFileType

then get your template: FileManager.GetTemplateFile(kDrawingDocumentObject, kDefaultSystemOfMeasure, kDefault_DraftingStandard, "{BBF9FDF1-52DC-11D0-8C04-0800090BE8EC}")

 

use this template in the way i mentioned:

Documents.Add(kDrawingDocumentObject, TemplateNameDWG, True)

 

Example:

This code will add two new drawing douments to inventor. One dwg, one idw.

 

Dim InvApp As Application
Set InvApp = ThisApplication

'Get name of DWG Tamplate
InvApp.DrawingOptions.DefaultDrawingFileType = kDWGDefaultDrawingFileType
Dim TemplateNameDWG As String
TemplateNameDWG = InvApp.FileManager.GetTemplateFile(kDrawingDocumentObject, kDefaultSystemOfMeasure, kDefault_DraftingStandard, "{BBF9FDF1-52DC-11D0-8C04-0800090BE8EC}")

'Get name of idw template
InvApp.DrawingOptions.DefaultDrawingFileType = kIDWDefaultDrawingFileType
Dim TemplateNameIDW As String
TemplateNameIDW = InvApp.FileManager.GetTemplateFile(kDrawingDocumentObject, kDefaultSystemOfMeasure, kDefault_DraftingStandard, "{BBF9FDF1-52DC-11D0-8C04-0800090BE8EC}")

'New DWG
Dim oDocDWG As Document
Set oDocDWG = InvApp.Documents.Add(kDrawingDocumentObject, TemplateNameDWG, True)

'New IDW

Dim oDocIdw As Document
Set oDocIdw = InvApp.Documents.Add(kDrawingDocumentObject, TemplateNameIDW, True)

 

 

I hope this works for you.



Dennis Ossadnik
Senior Technical Support Specialist
0 Likes
Message 5 of 6

Anonymous
Not applicable

Thank you very much Denis

I manage with this.

Just one question, the GUID "{BBF9FDF1-52DC-11D0-8C04-0800090BE8EC}" what type of document referred to? where I can find a list of GUID's valid for this function?

Best regards and thank you very much again.

0 Likes
Message 6 of 6

Josh_Hunt
Advocate
Advocate

Hi @Anonymous and @Dennis.Ossadnik 

A decade later and this is still a bug if the documentation https://help.autodesk.com/view/INVNTOR/2020/ENU/?guid=GUID-66A32241-D9C0-4E9D-B6D1-F4A9DA1F69F9 is correct.

 

Thank you for the workaround. However I now have to 'clean' the document of all Drawing Resources and styles before I can build from scratch.

 

BACKGROUND: I have a corrupt DWG template and I am trying to rebuild it using API to transfer all the content over. Not simple but possible.

Josh Hunt
0 Likes