Hi,
I’ve got an issue with the function .capturetobitmap : the elements drawn on my custom display conduit are not captured. How could I fix this?
I tried
Dim myview As Display.RhinoView = doc.Views.ActiveView
Dim Bmp As Drawing.Bitmap = myview.CaptureToBitmap(New Size(myview.Size.Width, myview.Size.Height), False, False, False)
and
Dim myview As Display.RhinoView = doc.Views.ActiveView
Dim view_capture = New Display.ViewCapture With {
.Width = myview.ActiveViewport.Size.Width,
.Height = myview.ActiveViewport.Size.Height,
.ScaleScreenItems = False,
.DrawAxes = False,
.DrawGrid = False,
.DrawGridAxes = False,
.TransparentBackground = True
}
Dim Bmp As Drawing.Bitmap = view_capture.CaptureToBitmap(myview)
but in both cases the display conduit elements are not captured.
Hi, I’m back on the subject, sorry for not answering last year, I had to put on hold this project to work on another one.
However, I still don’t know how to capture the things drawn in my custom display conduit. @stevebaer, I checked with a breackpoint as suggested, it does run through the displayconduit but it’s not included in the resulting bitmap…
What does your conduit code look like? I know this works because it is used for things like capturing Grasshopper previews so we need to figure out what is different.
Do you have a sample I could try to repeat the problem with?
Hi,
I’ve created this simplified version of my conduit in a new project, and it works when it is loaded alone in rhino. LWS-DemoBugCaptureToBitmap.zip (122.5 KB)
However, if my real plugin is also loaded with its conduit enabled, both are displayed as expected, but both commands using capturetoBitmap() fail to capture the displayConduits. There seems to be something in my code that prevent CaptureToBitmap to work properly even on other plugins!
I’m going to do more tests, please let me know if you have any idea.
One possibility is that an exception is being thrown which cancels other conduits. Did you run this in a debugger to see if exceptions were thrown from your conduit?
Thanks for your help @stevebaer
I am running Rhino6 SR26 like you, and I don’t have any exception raised in debug mode.
Anyway, the display in rhinoviews works just fine, wouldn’t it also fail in case of a runtime exception?