Set Plot Rotation Get Error.

Set Plot Rotation Get Error.

Anonymous
Not applicable
1,745 Views
3 Replies
Message 1 of 4

Set Plot Rotation Get Error.

Anonymous
Not applicable

I developed with c# based on autocad 2010.

 

My codes do batch plot.

 

If I change plot rotation with "psv.SetPlotRotation(ps, (PlotRotation)i);" at line 67, it give me error like:

Autodesk.AutoCAD.Runtime.Exception: eInvalidPlotInfo
    Autodesk.AutoCAD.Runtime.Interop.Check(Int32 returnValue)
    Autodesk.AutoCAD.PlottingServices.PlotEngine.BeginPage(PlotPageInfo pageInfo, PlotInfo plotInfo, Boolean lastPage, Object parameters)
    zxy.BatchPlot.BatchPlotCommand()
    Autodesk.AutoCAD.Runtime.CommandClass.InvokeWorker(MethodInfo mi, Object commandObject, Boolean bLispFunction)
    Autodesk.AutoCAD.Runtime.CommandClass.InvokeWorkerWithExceptionFilter(MethodInfo mi, Object commandObject, Boolean bLispFunction)
    Autodesk.AutoCAD.Runtime.CommandClass.Invoke(MethodInfo mi, Boolean bLispFunction)
    Autodesk.AutoCAD.Runtime.CommandClass.CommandThunk.Invoke()

 If I use same rotation every plot with "psv.SetPlotRotation(ps, (PlotRotation)0);" at line , it is fine.

 

Attachment contains codes, makefile and compiled dll. It is a rar file. But I have to rename it to txt file for post.

 

Thanks.

0 Likes
1,746 Views
3 Replies
Replies (3)
Message 2 of 4

fieldguy
Advisor
Advisor

Plotrotation is an enum with 4 values.  It looks like you could use an integer to specify the values as in:

0 = Degrees000

1 = Degrees090

2 = Degrees180

3 = Degrees270

VS2010 does not complain if you use "psv.SetPlotRotation(ps, 0)" so I am going to assume that will work to create a "non rotated" plot.  But, there are only 4 potential values.

 

I don't understand what are you trying to do with "for (int i = 0; i < printcount; ++i)" and then "psv.SetPlotRotation(ps, (PlotRotation)i)".  If your printcount is 20, plotrotation 20 will not work.

 

I have some batch plot routines but all plots are created at the same rotation (PlotRotation.Degrees000).  There are times when we need to change this, but so far that has been accomplished on the print device itself.  

0 Likes
Message 3 of 4

Anonymous
Not applicable

Thanks fieldguy.

 

In my sample code, I set "printcount = 2" just to change the plot rotation.

 

Reality, I will set plot rotation according to paper size.

 

You can try my dll and see the error.

0 Likes
Message 4 of 4

Balaji_Ram
Alumni
Alumni

Hello,

 

From the code it appears that you are trying to create a multi-sheet DWF.

I have previously come across a similar issue while creating a multi-sheet PDF and the "eInvalidPlotInfo" exception being thrown. We have a request logged for this behavior with our engineering team.

 

To create a multi-sheet DWF/PDF, the publish API is better suited.

Here is a blog post on this topic :

http://adndevblog.typepad.com/autocad/2012/05/how-to-use-the-autodeskautocadpublishingpublisherpubli...



Balaji
Developer Technical Services
Autodesk Developer Network

0 Likes