Beispiel #1
0
        internal void CopyContents(DisplayPipelineAttributes other)
        {
            IntPtr ptr_this        = NonConstPointer();
            IntPtr const_ptr_other = other.ConstPointer();

            UnsafeNativeMethods.CDisplayPipelineAttributes_CopyContents(ptr_this, const_ptr_other);
        }
Beispiel #2
0
        /// <summary>
        /// Capture View contents to a bitmap using display attributes to define how
        /// drawing is performed.
        /// </summary>
        /// <param name="size">The width and height of the returned bitmap.</param>
        /// <param name="attributes">The specific display mode attributes.</param>
        /// <returns>A new bitmap.</returns>
        /// <since>5.0</since>
        public System.Drawing.Bitmap CaptureToBitmap(System.Drawing.Size size, DisplayPipelineAttributes attributes)
        {
            IntPtr const_ptr_attributes = attributes.ConstPointer();

            using (var dib = new Runtime.InteropWrappers.RhinoDib())
            {
                var dib_pointer = dib.NonConstPointer;
                if (UnsafeNativeMethods.CRhinoView_CaptureToBitmap(m_runtime_serial_number, dib_pointer, size.Width, size.Height, const_ptr_attributes))
                {
                    var bitmap = dib.ToBitmap();
                    return(bitmap);
                }
            }
            return(null);
        }