.NET
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to save a file in DXF?

6 REPLIES 6
Reply
Message 1 of 7
NayaraFJ
671 Views, 6 Replies

How to save a file in DXF?

Please help!

6 REPLIES 6
Message 2 of 7
Alfred.NESWADBA
in reply to: NayaraFJ

Hi,

 

is that what you are missing?

   <Runtime.CommandMethod("ADESK_saveAsDxf")> _
   Public Shared Sub ADESK_saveAsDxf()
      Dim tFileName As String = "C:\TEMP\myDxfFileName.DXF"
      Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Database.DxfOut(tFileName, 6, Autodesk.AutoCAD.DatabaseServices.DwgVersion.Current)
   End Sub

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
Ingenieur Studio HOLLAUS ... www.hollaus.at ... blog.hollaus.at ... CDay 2024
------------------------------------------------------------------------------------
(not an Autodesk consultant)
Message 3 of 7
NayaraFJ
in reply to: Alfred.NESWADBA

I used this code:

 

        [CommandMethod("DrawingSaved")]
        public static void DrawingSaved()
        {
            Document acDoc = Application.DocumentManager.MdiActiveDocument;

            Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Database.DxfOut(acDoc.Name, 6, Autodesk.AutoCAD.DatabaseServices.DwgVersion.Current);

        }

 But it's giving error:  Exception was unhandles by user code

 

eFileAccessErr

Message 4 of 7
Alfred.NESWADBA
in reply to: NayaraFJ

Hi,

 

if you take acDoc.Name as name for your DXF-file you will recognize, that it will have included the extension ".DWG", but if you want to save it as DXF you should have DXF as extension 😉

 

   <Runtime.CommandMethod("ADESK_saveAsDxf")> _
   Public Shared Sub ADESK_saveAsDxf()
      Dim tAcadDoc As ApplicationServices.Document = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument
      Dim tFileName As String = tAcadDoc.Name
      If tFileName.ToUpper.EndsWith(".DWG") Then tFileName = Left(tAcadDoc.Name, tAcadDoc.Name.Length - 4) & ".DXF"
      tAcadDoc.Database.DxfOut(tFileName, 6, Autodesk.AutoCAD.DatabaseServices.DwgVersion.Current)
   End Sub

 HTH, - alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
Ingenieur Studio HOLLAUS ... www.hollaus.at ... blog.hollaus.at ... CDay 2024
------------------------------------------------------------------------------------
(not an Autodesk consultant)
Message 5 of 7
NayaraFJ
in reply to: NayaraFJ

My file was already in the extension. Dxf

🙂 Since yesterday I'm puzzling over it but nothing works 😞

 

It worked using the command line.

 

 

 

 acadDocument.SetVariable("FILEDIA", 0);

 acadDocument.SendCommand("SAVE " + FileTxt.FullName + "\nv\n2007\n16\nyes\n");

 acadDocument.SetVariable("FILEDIA", 1);

 

I was creating a dll just to save, so it is better not to have to create a dll.

 

 

Thank you!

Message 6 of 7
Alfred.NESWADBA
in reply to: NayaraFJ

Hi,

 

>> My file was already in the extension. Dxf

Ok, the more info, the better we can "debug" 😉

 

Well the DXFOUT-function exports the current drawing, but it is not to compare with SAVEAS, it's more like WBLOCK. And for WBLOCK you know, that if you are working on a drawing AA.DWG you cannot start WBLOCK and export some elements to AA.DWG ==> you have to take another filename.

And same situation is to use for DXFOUT, you cannot use the same name as you already have opened.

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
Ingenieur Studio HOLLAUS ... www.hollaus.at ... blog.hollaus.at ... CDay 2024
------------------------------------------------------------------------------------
(not an Autodesk consultant)
Message 7 of 7
NayaraFJ
in reply to: Alfred.NESWADBA

That must be what was wrong then.
Good to know, I'll try!
 Smiley Happy

 

 

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk DevCon in Munich May 28-29th


Autodesk Design & Make Report

”Boost