Rhino C++ API  7.24
Public Member Functions | Friends | List of all members
CRhinoDisplayPipeline_GDI Class Reference

#include <RhinoSdkDisplayPipeline_GDI.h>

Inheritance diagram for CRhinoDisplayPipeline_GDI:
CRhinoDisplayPipeline ON_Object

Public Member Functions

 CRhinoDisplayPipeline_GDI ()
 
 CRhinoDisplayPipeline_GDI (class CRhVectorEngine *, CRhinoViewport &)
 
 CRhinoDisplayPipeline_GDI (CRhinoView &, CRhinoViewport &)
 
 CRhinoDisplayPipeline_GDI (HDC, CRhinoViewport &)
 
virtual ~CRhinoDisplayPipeline_GDI ()
 
bool DrawBackground (void) override
 
bool DrawForeground (void) override
 
bool DrawMiddleground (void) override
 
void DrawTexturedSurface (const CRhinoObject *rhinoObject)
 
const ON_ClassIdEngineClass (void) override
 
bool SetupFrustum (const ClippingInfo &) override
 
- Public Member Functions inherited from CRhinoDisplayPipeline
 CRhinoDisplayPipeline ()
 
 CRhinoDisplayPipeline (CRhinoDoc *pDoc)
 
 CRhinoDisplayPipeline (CRhinoViewport &vp)
 
virtual ~CRhinoDisplayPipeline ()
 
int ActiveObjectIndex () const
 
int ActiveObjectNestingLevel (ON_SimpleArray< const CRhinoObject * > *stack=nullptr) const
 
int ActiveStereoProjection () const
 
const CRhinoObjectActiveTopLevelObject () const
 
ON_DEPRECATED bool AddObjectTransform (int index, const ON_Xform &xform)
 
void BlendMaterialWithColor (CDisplayPipelineMaterial &, COLORREF, double dBlend=0.5) const
 
virtual bool CalcBoundingBox (ON_BoundingBox &)
 
virtual bool CalcClippingPlanes (ClippingInfo &)
 
bool CanSaveDepthBuffer ()
 
bool CaptureFrameBuffer (bool bForce=false)
 
const CChannelAttributesChannelAttrs () const
 
unsigned int ClonedFrom () const
 
virtual void CloneFrom (const CRhinoDisplayPipeline &)
 
CRhinoDisplayPipelineClonePipeline (CRhinoViewport &)
 
CRhinoDisplayPipelineClonePipeline (CRhinoViewport &, HDC)
 
bool ClosePipeline ()
 
bool CopyBackBufferTo (CRhinoDib &)
 
bool CopyBackBufferTo (HDC)
 
void CopyBindingsFrom (const CRhinoDisplayPipeline &)
 
bool CopyDepthBufferTo (CRhinoDib &, bool bConvertToImage=false, bool bInvertDepthValues=false, CRhinoDib *pBackgroundImage=nullptr)
 
bool CopyDepthToBackBuffer ()
 
bool CopyFrameBufferTo (CRhinoDib &)
 
bool CopyFrameBufferTo (HDC)
 
bool CopyToBackBuffer (const CRhinoDib &)
 
bool CopyToFrameBuffer (const CRhinoDib &)
 
bool CreateSelectionMap (ObjectArray *=nullptr, CDisplayPipelineAttributes *=nullptr, HRGN=nullptr)
 
const ON_UUIDDeferredDisplayMode () const
 
EDepthMode DepthMode () const
 
void DisableChannel (UINT)
 
void DisableClippingPlanes ()
 
const CDisplayPipelineAttributesDisplayAttrs () const
 
float DpiScale () const
 
void Draw2dLine (const ON_2iPoint &, const ON_2iPoint &, HPEN, bool=true)
 
void Draw2dLine (float x0, float y0, float x1, float y1, ON_Color strokeColor, float strokeWidth, RhinoDashStyle style, bool xormode)
 
void Draw2dLine (int x0, int y0, int x1, int y1, ON_Color strokeColor, float strokeWidth, RhinoDashStyle style, bool xormode)
 
void Draw2dRectangle (const ON_4iRect &rect, HPEN, bool=true)
 
void Draw2dRectangle (float x0, float y0, float x1, float y1, ON_Color strokeColor, float strokeWidth, RhinoDashStyle style, bool xormode)
 
void Draw2dRectangle (int x0, int y0, int x1, int y1, ON_Color strokeColor, float strokeWidth, RhinoDashStyle style, bool xormode)
 
void DrawActivePoint (const ON_3dPoint &)
 
void DrawAnnotation (ON_Annotation &annotation, double dimscale, ON_DimStyle &dimstyle, ON_Color color, void *updater, CRhinoCacheHandle *cache)
 
void DrawAnnotation (ON_Annotation &annotation, ON_Color color, void *updater, CRhinoCacheHandle *cache)
 
void DrawAnnotationArrowhead (const ON_Arrowhead &arrowhead, ON_Xform xform, ON_Color color, CRhinoCacheHandle *cache)
 
void DrawArc (const ON_Arc &)
 
void DrawArc (const ON_Arc &, ON_Color Color, int nThickness=1, UINT nPattern=0xFFFFFFFF)
 
void DrawBezier (const ON_BezierCurve &bezier_curve)
 
void DrawBezier (int dim, BOOL bRational, int order, int cv_stride, const double *cv4d)
 
void DrawBezier (int order, const ON_3dPoint *cv)
 3d world coordinate CVs More...
 
void DrawBezierCage (const ON_BezierSurface &bezier_cage, int display_density=1)
 
void DrawBezierSurface (const ON_BezierSurface &bezier_surface, int display_density=1)
 
void DrawBitmap (const CRhinoDib &, int nX, int nY)
 
void DrawBox (const ON_3dPoint *box_corners, const ON_Color &colot, int thickness)
 
void DrawBox (const ON_BoundingBox &box, const ON_Color &color, int thickness)
 
void DrawBrep (const ON_Brep &brep, const ON_Color &wireColor=ON_Color::UnsetColor, int wireDensity=1)
 
void DrawBrep (const ON_Brep *brep, const ON_Color &wireColor, int wireDensity, bool edgeAnalysis, CRhinoCacheHandle *cache)
 
void DrawCircle (const ON_Circle &)
 
void DrawCircle (const ON_Circle &, ON_Color Color, int nThickness=1, UINT nPattern=0xFFFFFFFF)
 
void DrawCone (const ON_Cone &cone)
 
void DrawCone (const ON_Cone &cone, ON_Color Color, int nThickness=1, UINT nPattern=0xFFFFFFFF)
 
void DrawConstructionPlane (bool depthBuffered, int transparencyLevel)
 
void DrawConstructionPlane (const ON_3dmConstructionPlane &cplane, bool bShowConstructionGrid, bool bShowConstructionAxes, bool bShowConstructionZAxis, ON_Color thin_line_color=ON_Color::UnsetColor, ON_Color thick_line_color=ON_Color::UnsetColor, ON_Color grid_x_axis_color=ON_Color::UnsetColor, ON_Color grid_y_axis_color=ON_Color::UnsetColor, ON_Color grid_z_axis_color=ON_Color::UnsetColor)
 
void DrawCrossHairs (const ON_Plane &plane, const ON_Color &color)
 
void DrawCurvatureGraph (const ON_Curve &curve, const CRhinoCurvatureGraphSettings *hair_settings=nullptr)
 
void DrawCurve (const ON_Curve &curve, const ON_Color &color, float thickness, CRhinoCacheHandle *cache)
 
void DrawCurve (const ON_Curve &curve, const ON_Color &color=ON_Color::UnsetColor, int nThickness=0, UINT nPattern=0)
 
void DrawCylinder (const ON_Cylinder &cylinder)
 
void DrawCylinder (const ON_Cylinder &cylinder, ON_Color Color, int nThickness=1, UINT nPattern=0xFFFFFFFF)
 
void DrawDirectionArrow (const ON_3dPoint &tail_point, const ON_3dVector &direction_vector, ON_3dPoint *head_point=nullptr)
 
void DrawDot (const ON_3dPoint &point, const wchar_t *text, const wchar_t *fontFace, int fontHeight, ON_Color fillColor=ON_Color(0, 0, 0), ON_Color textColor=ON_Color::UnsetColor)
 
void DrawDot (const ON_3dPoint &point, const wchar_t *text, ON_Color fillColor=ON_Color(0, 0, 0), ON_Color textColor=ON_Color::UnsetColor)
 
void DrawDot (const ON_TextDot &dot, ON_Color fillColor, ON_Color textColor, ON_Color borderColor, CRhinoCacheHandle *cache)
 
void DrawDot (float screenX, float screenY, const wchar_t *text, ON_Color fillColor=ON_Color(0, 0, 0), ON_Color textColor=ON_Color::UnsetColor)
 
void DrawDottedLine (const ON_3dPoint &, const ON_3dPoint &)
 
bool DrawDynamicOverlays ()
 
void DrawEdges (const CRhinoObject &, int nThickness, UINT nPattern, bool bShowSeams)
 
void DrawExtrusion (const ON_Extrusion &extrusion)
 
void DrawExtrusion (const ON_Extrusion &extrusion, const ON_Color &wireColor, int wireDensity, bool edgeAnalysis, CRhinoCacheHandle *cache)
 
void DrawFace (const CRhinoObject *pObject, int face, const CDisplayPipelineAttributes *=nullptr)
 
void DrawFaces (const CRhinoObject *pObject, const ON_SimpleArray< int > &faces, const CDisplayPipelineAttributes *=nullptr)
 
bool DrawFrameBuffer (const CDisplayPipelineAttributes &attribs, const ON_Viewport &, bool updateContents, bool drawFeedback=true, UINT enabledConduits=CSupportChannels())
 
void DrawHatch (const ON_Hatch &hatch, float strokeWidth, const ON_Color &gradientColor1, const ON_Color &gradientColor2, const ON_3dPoint &gradientPoint1, const ON_3dPoint &gradientPoint2, bool linearGradient, const ON_Color &boundaryColor, CRhinoCacheHandle *cache)
 
void DrawHatch (const ON_Hatch &hatch, float strokeWidth, const ON_Color &hatchColor, ON_Color boundaryColor, CRhinoCacheHandle *cache)
 
void DrawHatch (const ON_Hatch &hatch, float strokeWidth, int colorCount, const ON_ColorStop *colorStops, const ON_3dPoint &gradientPoint1, const ON_3dPoint &gradientPoint2, ON_GradientType gradientType, float repeatFactor, const ON_Color &boundaryColor, CRhinoCacheHandle *cache)
 
void DrawInferenceLine (const ON_3dPoint &P, const ON_3dPoint &Q, ON_Color color=ON_Color::UnsetColor, int type=0)
 
void DrawInferencePoint (const ON_3dPoint &P, const ON_Color &color=ON_Color::UnsetColor)
 
bool DrawingGrips () const
 
bool DrawingSurfaces () const
 
bool DrawingWires () const
 
void DrawLight (const ON_Light &light, const ON_Color &wireframe_color)
 
void DrawLine (const ON_3dPoint &from, const ON_3dPoint &to, const ON_Color &color=ON_Color::UnsetColor, int thickness=0, UINT pattern=0xFFFFFFFF)
 
void DrawLines (int lineCount, const ON_Line *lines, float strokeWidth, int colorCount, const ON_ColorStop *colorStops, const ON_3dPoint &gradientPoint1, const ON_3dPoint &gradientPoint2, ON_GradientType gradientType, float repeatFactor, CRhinoCacheHandle *cache)
 
void DrawMesh (const ON_Mesh &mesh, bool wires, bool shaded, CRhinoCacheHandle *cache)
 Draw a mesh based on the current state of display attributes. More...
 
void DrawMesh (const ON_Mesh &mesh, int colorCount, const ON_ColorStop *colorStops, const ON_3dPoint &gradientPoint1, const ON_3dPoint &gradientPoint2, ON_GradientType gradientType, float repeatFactor, CRhinoCacheHandle *cache)
 
void DrawMeshes (const ON_Mesh **meshes, int count, bool wires, bool shaded, CRhinoCacheHandle *cache)
 
void DrawMeshVertices (const ON_Mesh &, const ON_Color &color)
 
bool DrawNestedFrame (CDisplayPipelineAttributes *da, CChannelAttributes *ca, CSupportChannels channels, int nest_level, bool activeViewport)
 
void DrawNormalCurvatureGraph (const ON_Surface &surface, int wire_density, const CRhinoCurvatureGraphSettings *hair_settings=nullptr)
 
void DrawNurbsCage (const ON_NurbsCage &nurbs_cage, int display_density=1)
 
void DrawNurbsCurve (const ON_NurbsCurve &nurbs_curve)
 
void DrawNurbsSurface (const ON_NurbsSurface &nurbs_surface, int display_density=1)
 
void DrawObject (const CRhinoInstanceDefinition *, const ON_Xform *=nullptr)
 
void DrawObject (const CRhinoObject *, const ON_Xform *=nullptr, ON_Color color=ON_UNSET_COLOR)
 
void DrawObject (int index, bool wires, bool surfaces)
 
void DrawObjects (const ObjectArray &, const ON_Xform *=nullptr)
 
void DrawObjects (const ON_SimpleArray< CRhinoObject * > &, const ON_Xform *=nullptr)
 
virtual void DrawOverlays ()
 
void DrawPoint (const ON_3dPoint &point)
 
void DrawPoint (const ON_3dPoint &point, ERhinoPointStyle style, const ON_Color &strokeColor, const ON_Color &fillColor, float diameter, float strokeWidth, float innerDiameter, float rotationRadians, bool diameterIsInPixels, bool autoScaleDpi)
 
void DrawPoint (const ON_3dPoint &point, int radius, ERhinoPointStyle style, const ON_Color &color)
 
void DrawPointCloud (const ON_PointCloud &cloud, float pixelSize, ERhinoPointStyle pointStyle, ON_Color colorOverride, CRhinoCacheHandle *cache)
 
void DrawPointCloud (const ON_PointCloud &cloud, float pixelSize, ERhinoPointStyle pointStyle, ON_Color colorOverride, int indexCount, const unsigned int *indices, CRhinoCacheHandle *cache)
 
void DrawPointCloud (int pointCount, const ON_3dPoint *points, ON_Color color=ON_Color::UnsetColor)
 
void DrawPoints (int count, const ON_3dPoint *points, ERhinoPointStyle style, const ON_Color &strokeColor, const ON_Color &fillColor, float diameter, float strokeWidth, float innerDiameter, float rotationRadians, bool diameterIsInPixels, bool autoScaleDpi)
 
void DrawPolygon (const ON_3dPoint *points, int count, const ON_Color &color, bool filled)
 
void DrawPolyline (const ON_Polyline &polyline, const ON_Color &color, int thickness, UINT pattern=0xFFFFFFFF)
 
void DrawRenderedMesh (const ON_Mesh *mesh, const CRhinoMaterial &render_material, bool bHighlighted)
 
void DrawRoundedRectangle (ON_2fPoint screenCenter, float pixelWidth, float pixelHeight, float cornerRadius, ON_Color strokeColor, float strokeWidth, ON_Color fillColor=ON_Color::UnsetColor)
 
void DrawShadedBrep (const ON_Brep *brep, const CDisplayPipelineMaterial *material, CRhinoCacheHandle *cache)
 
void DrawShadedBreps (const ON_SimpleArray< ON_Brep * > &breps, const CDisplayPipelineMaterial *=nullptr)
 
void DrawShadedMesh (const ON_Mesh &mesh, const CDisplayPipelineMaterial *=nullptr)
 
void DrawShadedMeshes (const ON_Mesh *const *meshes, int count, const CDisplayPipelineMaterial *material, CRhinoCacheHandle *const *caches)
 
void DrawSphere (const ON_Sphere &sphere)
 
void DrawSphere (const ON_Sphere &sphere, ON_Color Color, int nThickness=1, UINT nPattern=0xFFFFFFFF)
 
void DrawString (const ON_TextContent &text, const ON_Xform &textXform, ON_Color color, CRhinoCacheHandle *cache)
 
void DrawString (const ON_TextContent &text, double textScale, ON_Color color, bool drawforward, CRhinoCacheHandle *cache)
 void DrawString(const ON_TextContent& text, ON_Color color, bool drawforward, CRhinoCacheHandle* cache); More...
 
void DrawString (const wchar_t *string, const ON_3dPoint &point, bool bMiddle=false, int height=12, const wchar_t *fontface=L"Arial")
 
void DrawString (const wchar_t *string, ON_Color color, ON_2dPoint point, bool bMiddle=false, int height=12, const wchar_t *fontface=L"Arial")
 
void DrawString (const wchar_t *text, ON_Color color, const ON_Plane &plane, double height, const ON_Font *font, ON::TextHorizontalAlignment horizontalAlignment, ON::TextVerticalAlignment verticalAlignment)
 
void DrawSubD (const class CRhinoSubDDisplay &subd_display, const class CRhinoSubDDisplayAttributes &subd_display_attributes)
 
void DrawSubObject (const CRhinoObject *, ON_COMPONENT_INDEX, const ON_Xform *=nullptr)
 
void DrawSurface (const ON_Surface &surface, int display_density=1)
 
void DrawSurface (int)
 
void DrawTangentBar (const ON_3dPoint &mid_point, const ON_3dVector &direction_vector, ON_3dPoint *start_point=nullptr, ON_3dPoint *end_point=nullptr)
 
bool DrawToDC (HDC pDC, int width, int height, const CDisplayPipelineAttributes &attrib)
 
bool DrawToDib (CRhinoDib &dib, int width, int height, const CDisplayPipelineAttributes &attrib)
 
void DrawTorus (const ON_Torus &torus)
 
void DrawTorus (const ON_Torus &torus, ON_Color Color, int nThickness=1, UINT nPattern=0xFFFFFFFF)
 
bool DrawTraceImage ()
 
void DrawTriangle (const ON_3dPoint &p0, const ON_3dPoint &p1, const ON_3dPoint &p2)
 
void DrawTriangle (const ON_3dPoint &p0, const ON_3dPoint &p1, const ON_3dPoint &p2, ON_Color color)
 
void DrawTriangle (const ON_3dPoint corners[3])
 
void DrawTriangle (const ON_3dPoint corners[3], ON_Color color)
 
bool DrawWallpaper ()
 
void DrawWireframeMesh (const ON_Mesh &mesh, const ON_Color &color, CRhinoCacheHandle *cache=nullptr)
 
void DrawZebraPreview (const ON_Brep *brep, const CRhinoZebraAnalysisSettings &zas, const ON_MeshParameters &mp, const ON_Color &color, CRhinoCacheHandle *cache)
 
void DrawZebraPreview (const ON_Mesh *mesh, const CRhinoZebraAnalysisSettings &zas, const ON_Color &color, CRhinoCacheHandle *cache)
 
bool DynamicDisplayDowngradeEnabled () const
 Returns 'true' if display degradation is enabled, 'false' otherwise. More...
 
void EnableChannel (UINT)
 
bool EnableClippingPlanes (bool enable=true)
 
void EnableColorWriting (bool=true)
 
void EnableDepthTesting (bool=true)
 
void EnableDepthWriting (bool=true)
 
void EnableDrawGrayScale (bool=true)
 
void EnableDynamicDisplayDowngrade (bool bEnable)
 
bool EnableEnvironment (bool=true)
 
bool EnableShaders (bool=true) const
 Shader specifics... More...
 
CRhinoDisplayEngineEngine (bool bCreate=false) const
 
void FillSolidRect (int left, int top, int width, int height, COLORREF color, int transparency=0)
 
void FlushPipeline ()
 
void ForceFrameBufferUpdate ()
 
bool FreeResources ()
 
bool FreezeDrawing (bool)
 
bool GeneratingSelectionMap (void) const
 
const CRhinoDocGeometrySource () const
 Return the document that the pipeline uses to get geometry information from when drawing. More...
 
ConduitList GetBoundConduits ()
 
bool GetConduitViewExtents (ON_BoundingBox &)
 
bool GetDepthBuffer (float *zbuffer, int left, int top, int width, int height, float *fmin=nullptr, float *fmax=nullptr)
 
UINT GetDesiredSingleFrameRate () const
 
UINT GetFrameETA () const
 
const ON_2iSize GetFrameSize () const
 
UINT GetFramesPerSecond () const
 
UINT GetFrameTick () const
 
UINT GetFrameTickDelta () const
 
const CRhinoObjectGetObject (int index) const
 
const CRhinoObjectGetObjectAt (int X, int Y)
 
const CRhinoObjectGetObjectAt (int X, int Y, ON_COMPONENT_INDEX &ci)
 
int GetObjectCount () const
 
const CDisplayPipelineAttributesGetObjectDisplayAttrs (const CRhinoObject *pObject, const CRhinoObjectAttributes *pAttributes=nullptr) const
 
bool GetObjectsAlphaMask (CRhinoDib &dib, int nWidth, int nHeight, const CDisplayPipelineAttributes &, COLORREF MaskColorbg=RGB(255, 255, 255), COLORREF Background=RGB(0, 0, 0))
 
const ON_XformGetObjectTransform (int index) const
 
CRhinoViewGetRhinoView () const
 
CRhinoViewportGetRhinoVP () const
 
CRhinoDibGetSelectionMap ()
 
UINT GetSingleFrameRate () const
 
bool GetSpecularMask (CRhinoDib &dib, int nWidth, int nHeight, const CDisplayPipelineAttributes &, bool bIgnoreTransparency)
 
double GetStereoParallax () const
 
double GetStereoSeparation () const
 
void GetTiledFrameInfo (ON_2iSize &fullSize, ON_4iRect &currentTile) const
 
bool GetWiresAlphaMask (CRhinoDib &dib, int nWidth, int nHeight, const CDisplayPipelineAttributes &, int nScale=1, COLORREF MaskColorbg=RGB(255, 255, 255), COLORREF Background=RGB(0, 0, 0))
 
bool GetWiresMask (CRhinoDib &dib, int nWidth, int nHeight, const CDisplayPipelineAttributes &, int nScale=1, COLORREF Background=RGB(255, 255, 255))
 
HWND GetWnd () const
 
void IgnoreLockedState (bool)
 
const class CRhinoDetailViewObjectInDetailViewDraw () const
 
bool InFeedbackMode () const
 
bool InFeedbackMode (bool bIgnoreOverlay) const
 
bool InfiniteDepth () const
 
virtual bool InitFrameBuffer ()
 
bool InOverlayMode () const
 
bool InQuickDrawSurface () const
 
const ON_XformInstanceDefinitionTransform () const
 
bool InStereoMode () const
 
bool InterruptDrawing ()
 
bool InViewCapture () const
 
bool IsAccelerated () const
 
bool IsActive (const CRhinoObject *pObject) const
 
bool IsCloned () const
 
bool IsDisplayPrecisionErrorGreaterThan (double pixel_offset) const
 
bool IsEntireActiveInstanceVisible () const
 
bool IsPrinting () const
 
bool IsVisible (const CRhinoObject *pObject) const
 
bool IsVisible (const ON_3dPoint &world_coordinate) const
 
bool IsVisible (const ON_BoundingBox &bbox) const
 
const ON_XformModelTransform () const
 
bool ModelTransformIsIdentity () const
 
bool MultiplyObjectTransform (int index, const ON_Xform &xform, int side)
 
int NestLevel () const
 
virtual bool NotifyFrameSizeChanged (int nWidth, int nHeight)
 
virtual bool NotifyProjectionChanged ()
 
bool ObjectCastsShadows (const CRhinoObject *pObject, const ON_3dPoint &ReferencePoint, ON_BoundingBox *=nullptr) const
 
ON_Color ObjectColor () const
 
bool ObjectHasTransform (int index) const
 
bool ObjectsShouldDrawShadedMeshes () const
 
bool ObjectsShouldDrawWires () const
 
bool OpenPipeline ()
 
bool PipelineOpened () const
 
void PopDepthTesting ()
 
void PopDepthWriting ()
 
void PopModelTransform ()
 
void PopObjectColor () const
 
void PopProjection ()
 
virtual void PostConstructInitialize (const char *name)
 
virtual bool PostProcessFrameBuffer ()
 
void PreDrawSetup ()
 
void PreDrawSetup (const DisplayBucket &aDrawBucket)
 
void PushDepthTesting (bool)
 
void PushDepthWriting (bool)
 
void PushModelTransform (const ON_Xform &xform)
 
void PushObjectColor (const ON_Color &color) const
 
void PushProjection (const ON_Viewport &)
 
std::shared_ptr< RhRdk::Realtime::DisplayModeRealtimeDisplayMode () const
 
bool Redraw () const
 
int RenderPass () const
 
bool ResetLevelOfDetail ()
 
bool RestoreBackBuffer ()
 
bool RestoreDepthBuffer ()
 
unsigned int RuntimeSerialNumber () const
 
bool SaveBackBuffer ()
 
bool SaveDepthBuffer ()
 
void SetCapture (bool bEnable=true)
 
int SetCurveThickness (int)
 
void SetCustomDrawList (const ObjectArray &custom_list)
 
void SetDepthMode (EDepthMode)
 
bool SetDesiredFrameRate (double)
 
bool SetDisplayMode (const ON_UUID &)
 
void SetDpiScale (float scale)
 
PFDRAWOVERRIDEPROC SetDrawChannelsOverride (PFDRAWOVERRIDEPROC)
 
void SetFrameSize (int nWidth, int nHeight)
 
CRhinoDocSetGeometrySource (CRhinoDoc *pDoc)
 
bool SetInfiniteDepth (bool bInfiniteDepth)
 
void SetInstanceDefinitionTransform (const ON_Xform &xform)
 
bool SetLevelOfDetail (UINT nLOD)
 
UINT SetLinePattern (UINT)
 
void SetModelTransform (const ON_Xform &xform)
 
ON_Color SetObjectColor (const ON_Color &color)
 
bool SetObjectTransform (int index, const ON_Xform &xform)
 
void SetPrintingMode (bool bPrinting)
 
void SetRedraw (bool enable)
 
bool SetRenderTarget (CRhinoView &)
 
bool SetRenderTarget (HDC pDC)
 
void SetShadingRequired (bool bRequired=true)
 
bool SetStereoMode (bool bStereo)
 
void SetStereoParallax (float fPar)
 
void SetStereoSeparation (float fSep)
 
void SetTiledFrameInfo (const ON_2iSize &fullSize, const ON_4iRect &currentTile)
 
bool SetupDisplayMaterial (CDisplayPipelineMaterial &, COLORREF) const
 Description: More...
 
bool SetupDisplayMaterial (CDisplayPipelineMaterial &, const CRhinoDoc *, const CRhinoObject *, const CRhinoObjectAttributes *=nullptr, const ON_Xform *pOptionalBlockXform=nullptr) const
 
bool SetupDisplayMaterial (CDisplayPipelineMaterial &, const CRhinoObject *, const CRhinoObjectAttributes *=nullptr, const ON_Xform *pOptionalBlockXform=nullptr) const
 
virtual bool SetupLighting ()
 
void SetUseImageBasedLighting (bool b)
 
void SetZBiasMode (int)
 
bool ShadingRequired () const
 
virtual bool ShowFrameBuffer (HDC hDC)
 
bool SupportsShading () const
 
bool SupportsTiling () const
 
void UpdateClippingFrustum ()
 
bool UseImageBasedLighting () const
 
bool ViewInDynamicDisplay ()
 
ON_ViewportVP () const
 
int ZBiasMode () const
 
- Public Member Functions inherited from ON_Object
 ON_Object () ON_NOEXCEPT
 
 ON_Object (const ON_Object &)
 
virtual ~ON_Object ()
 
virtual ON_AggregateComponentStatus AggregateComponentStatus () const
 
bool AttachUserData (class ON_UserData *pUserData)
 
unsigned int ClearAllComponentStates () const
 
virtual unsigned int ClearComponentStates (ON_COMPONENT_INDEX component_index, ON_ComponentStatus states_to_clear) const
 
virtual unsigned int ClearComponentStates (ON_ComponentStatus states_to_clear) const
 
void CopyUserData (const ON_Object &source_object)
 
unsigned int CopyUserData (const ON_Object &source_object, ON_UUID source_userdata_item_id, ON_Object::UserDataConflictResolution userdata_conflict_resolution)
 
virtual ON__UINT32 DataCRC (ON__UINT32 current_remainder) const
 
virtual bool DeleteComponents (const ON_COMPONENT_INDEX *ci_list, size_t ci_count)
 
virtual void DestroyRuntimeCache (bool bDelete=true)
 
bool DetachUserData (class ON_UserData *pUserData)
 
virtual void Dump (ON_TextLog &) const
 
void EmergencyDestroy ()
 
class ON_UserDataFirstUserData () const
 
virtual unsigned int GetComponentsWithSetStates (ON_ComponentStatus states_filter, bool bAllEqualStates, ON_SimpleArray< ON_COMPONENT_INDEX > &components) const
 
class ON_UserDataGetUserData (const ON_UUID &userdata_uuid) const
 
bool GetUserString (const wchar_t *key, ON_wString &string_value) const
 
int GetUserStringKeys (ON_ClassArray< ON_wString > &user_string_keys) const
 
int GetUserStrings (ON_ClassArray< ON_UserString > &user_strings) const
 
bool IsCorrupt (bool bRepair, bool bSilentError, class ON_TextLog *text_log) const
 
bool IsKindOf (const ON_ClassId *pClassId) const
 
virtual bool IsValid (class ON_TextLog *text_log=nullptr) const
 
virtual void MarkAggregateComponentStatusAsNotCurrent () const
 
virtual void MemoryRelocate ()
 
virtual ON_UUID ModelObjectId () const
 
void MoveUserData (ON_Object &source_object)
 
unsigned int MoveUserData (ON_Object &source_object, ON_UUID source_userdata_item_id, ON_Object::UserDataConflictResolution userdata_conflict_resolution, bool bDeleteAllSourceItems)
 
virtual ON::object_type ObjectType () const
 
ON_Objectoperator= (const ON_Object &)
 
void PurgeUserData ()
 
virtual bool Read (ON_BinaryArchive &binary_archive)
 
virtual unsigned int SetComponentStates (ON_COMPONENT_INDEX component_index, ON_ComponentStatus states_to_set) const
 
virtual unsigned int SetComponentStatus (ON_COMPONENT_INDEX component_index, ON_ComponentStatus status_to_copy) const
 
bool SetUserString (const wchar_t *key, const wchar_t *string_value)
 
int SetUserStrings (int count, const ON_UserString *user_strings, bool bReplace)
 
virtual unsigned int SizeOf () const
 
bool ThisIsNullptr (bool bSilentError) const
 
void TransformUserData (const class ON_Xform &xform)
 
virtual bool UpdateReferencedComponents (const class ON_ComponentManifest &source_manifest, const class ON_ComponentManifest &destination_manifest, const class ON_ManifestMap &manifest_map)
 
int UserStringCount () const
 
virtual bool Write (ON_BinaryArchive &binary_archive) const
 

Friends

class CRhGdiPipelineExtension
 

Additional Inherited Members

- Public Types inherited from CRhinoDisplayPipeline
enum  DisplayTechnologies : int {
  DisplayTechnologies::None = 0, DisplayTechnologies::OpenGL = 1, DisplayTechnologies::Metal = 2, DisplayTechnologies::DirectX = 3,
  DisplayTechnologies::Software = 4, DisplayTechnologies::Vulkan = 5
}
 
- Public Types inherited from ON_Object
enum  UserDataConflictResolution : unsigned char {
  UserDataConflictResolution::destination_object = 0, UserDataConflictResolution::source_object = 1, UserDataConflictResolution::source_copycount_gt = 2, UserDataConflictResolution::source_copycount_ge = 3,
  UserDataConflictResolution::destination_copycount_gt = 4, UserDataConflictResolution::destination_copycount_ge = 5, UserDataConflictResolution::delete_item = 6
}
 
- Static Public Member Functions inherited from CRhinoDisplayPipeline
static void ClearAllBindings (const CRhinoViewport *pViewport)
 
static void EnableFeedbackProcessing (bool bEnable=true)
 Description: More...
 
static void EnableFrameBufferCapture (bool bEnable=true)
 Description: More...
 
static void EnableMeshGeneration (bool bEnable=true)
 
static bool FeedbackProcessingEnabled ()
 Returns: More...
 
static bool FrameBufferCaptureEnabled ()
 Returns: More...
 
static CRhinoDisplayPipelineFromRuntimeSerialNumber (unsigned int sn)
 
static bool IsValidPipelinePointer (const void *pipeline)
 
static bool MeasureString (ON_2dPoint &boundsMin, ON_2dPoint &boundMax, const wchar_t *text, ON_2dPoint point, bool middle, double heightPixels, const ON_Font *font)
 
static bool MeasureString (ON_2dPoint &boundsMin, ON_2dPoint &boundMax, const wchar_t *text, ON_2dPoint point, bool middle=false, double heightPixels=12, const wchar_t *fontface=L"Arial")
 
static bool MeasureString (ON_4iRect &rect, const wchar_t *text, ON_2dPoint point, bool middle=false, int heightPixels=12, const wchar_t *fontface=L"Arial")
 
static bool MeshGenerationEnabled ()
 
static double RelativeDepthBias ()
 
- Public Attributes inherited from CRhinoDisplayPipeline
bool m_bCaptureFrameBuffer
 
bool m_bDrawGrayScale
 
bool m_bEntireActiveInstanceVisible
 
bool m_bForceCompleteFrameUpdate
 
bool m_bForcedVisibility
 
bool m_bInOverlay
 
bool m_bInterrupted
 
bool m_bInZBufferCapture
 
bool m_bPipelineOpened
 
bool m_bShadingRequired
 
bool m_bSkipOrderedObjects
 
ON_Viewport m_Camera
 Set by DrawFramebuffer or SetCamera... More...
 
ClippingInfo m_Clipping
 
double m_dDesiredFrameRate
 
ON_4iRect m_layout_tile
 Tiled position on high-res display. More...
 
UINT m_nDegradeLevel
 
int m_nDisplayHeight
 
int m_nDisplayWidth
 
UINT m_nFrameStartTime
 
UINT m_nFrameTimeEstimate
 
int m_nInstanceNestLevel
 
int m_nLayoutHeight = -1
 Height of high-res display (-1 if not in high-res operation) More...
 
int m_nLayoutWidth = -1
 Width of high-res display (-1 if not in high-res operation) More...
 
UINT m_nLOD
 Level-Of-Detail... More...
 
int m_nOverlaySortIndex
 
CChannelAttributesm_pChannelAttrs
 
CDisplayPipelineAttributesm_pDisplayAttrs
 
CRhinoDocm_pDoc
 
CRhinoDibm_pFrameBuffer
 Buffer containing final rendered image... More...
 
CRhinoDibm_pOffscreenBuffer
 Buffer used to render frames offscreen... More...
 
ClippingInfo m_SavedClipping
 
- Protected Types inherited from CRhinoDisplayPipeline
typedef int(* ObjectSortFunc) (const int *, const int *)
 
- Protected Member Functions inherited from CRhinoDisplayPipeline
void AddObject (const CRhinoObject *, bool bColorOverride=false, ON_COMPONENT_INDEX=ON_COMPONENT_INDEX())
 
void AddObject (int dpo_index, bool bColorOverride, bool bForcedDeposit)
 (default should be false) Force the object to get drawn idependent of state... More...
 
void AddToBuckets (int dpo_index, int IsHighlighted, bool bColorOverride, bool bForceDeposit)
 
bool AttachEngine (CRhinoDisplayEngine *, bool bDeleteExisting=true)
 
CDisplayPipelineAttributesCachedAttributes ()
 
bool CachedAttributesValid () const
 
bool CheckForSubobjectTransparency (const CRhinoObject &, const CDisplayPipelineAttributes &, BYTE &)
 
void Construct (CRhinoDoc *pDoc)
 
CRhinoDisplayEngineCreateEngine ()
 
CRhinoDisplayEngineCreateEngine (HDC)
 
CRhinoDisplayEngineCreateEngine (HWND)
 
bool CreateFrameBuffer ()
 Frame buffer creation and manipulation routines... More...
 
bool CreateOnScreenBuffer (int nW, int nH)
 
CRhinoDisplayEngineDetachEngine ()
 
bool DoPostDrawObjects ()
 
bool DoPreDrawMiddleground ()
 
bool DoPreDrawObjects ()
 
bool DoPreDrawTransparentObjects ()
 
void DrawBackTrans (int, DisplayBucket *=nullptr)
 
void DrawClippingSections ()
 
void DrawCurveGrips ()
 
void DrawDetailObjects (bool drawActiveDetail, bool drawInactiveDetails)
 
void DrawFrontTrans (int, DisplayBucket *=nullptr)
 Low level object drawing routines... More...
 
void DrawGrips ()
 High level object drawing routines... More...
 
void DrawHighlightedObjects ()
 
void DrawHighlightedPointClouds ()
 
void DrawHighlightedSubWires ()
 
void DrawHighlightedSurfaces ()
 
void DrawHighlightedTextDots ()
 
void DrawHighlightedWires ()
 
void DrawLockedObjects ()
 
void DrawLockedSurfaces ()
 Mid level object drawing routines... More...
 
void DrawLockedTextDots ()
 
void DrawLockedWires ()
 
void DrawMappingWidgets ()
 
void DrawNormalObjects ()
 
void DrawNormalSurfaces ()
 
void DrawNormalTextDots ()
 
void DrawNormalWires ()
 
void DrawObjectBucket (const DisplayBucket &bucket, bool drawWires=true, bool drawSurfaces=false)
 
virtual bool DrawObjectFinal (const CRhinoObject &) const
 
void DrawObjectsAsTransparent (DisplayBucket &objects, DisplayBucket *hilights=nullptr)
 
void DrawOrderedObjects (bool back)
 
void DrawPointCloudGrips ()
 
void DrawSurfaceBucket (const DisplayBucket &bucket)
 
void DrawSurfaceGrips ()
 
void DrawTransparentObjects ()
 
void EnableMaterialCaching (bool bEnable)
 
ON_Color GetObjectWireColor (const CRhinoObject *, const CRhinoObjectAttributes &) const
 
bool iCalcBoundingBox ()
 
bool iCalcClippingPlanes ()
 
bool iDrawBackground ()
 
bool iDrawFeedback (bool bFrameBufferUpdated)
 
bool iDrawForeground ()
 
bool iDrawMiddleground ()
 
bool iDrawOverlays ()
 
bool iInitFrameBuffer ()
 
bool iMeshObjects ()
 
bool InitializeEngine ()
 
void InitializeEnvironments ()
 
void InitializeObjectLists ()
 
virtual bool InitializePipeline ()
 
bool InitTolerancesAndDetail ()
 
void InsertionSort (int a[], int lo0, int hi0, ObjectSortFunc fpSort)
 
bool iObjectCulling ()
 
bool iPostProcessFrameBuffer ()
 
bool iSetupFrustum ()
 
bool iSetupLighting ()
 
int IsTransparentMaterial (const CDisplayPipelineMaterial &) const
 
bool IsVisible (const class CDisplayPipelineObject &dpo) const
 
bool MaterialCachingEnabled (void) const
 
void NotifyConduits (EConduitNotifiers)
 
void PopDisplayAttrs () const
 
void PopDrawInterrupt ()
 
bool PopulateObjectsList ()
 
void PopulateRenderedAttrs (CDisplayPipelineAttributes *pAttrs) const
 
virtual void PostAttributesPass (const CRhinoObject &, CDisplayPipelineAttributes &) const
 
void PostObjectDrawing (int dpo_index)
 
virtual void PreAttributesPass (const CRhinoObject &, CDisplayPipelineAttributes &) const
 
bool PreObjectDrawing (int dpo_index, bool skipAttributeSetup=false)
 
bool ProcessConduits (ConduitList &list, UINT active_channel, bool *terminate=nullptr) const
 
bool ProcessConduits (ConduitList &list, UINT active_channel, int dpo_index) const
 
void ProcessShadedAnalysisMode (const CRhinoObject *pObject)
 
void PushDrawInterrupt ()
 
void PushPipelineObjectAttributes (int dpo_index) const
 This is an expensive function call and should be rarely called during a frame draw. More...
 
void QuickDrawRenderMeshes ()
 
void QuickDrawSolids ()
 
void QuickDrawSurface (int nObjIdx)
 
void QuickDrawSurfaceBucket (const DisplayBucket &bucket)
 
void QuickSort (int a[], int l, int r, ObjectSortFunc fpSort)
 
void RepurposeAlphaValues (CRhinoDib &dib, const CDisplayPipelineAttributes *)
 
void ResetClippingSections ()
 dynamic clipping section display... More...
 
void SetCachedAttributesValid (bool valid)
 
bool SetCamera (const ON_Viewport &)
 
void SortBucket (DisplayBucket &, ObjectSortFunc)
 
void SortHighlightedObjects (ObjectSortFunc=nullptr)
 
void SortHighlightedSubWires (ObjectSortFunc=nullptr)
 
void SortHighlightedSurfaces (ObjectSortFunc=nullptr)
 
void SortHighlightedTextDots (ObjectSortFunc=nullptr)
 
void SortLockedObjects (ObjectSortFunc=nullptr)
 
void SortLockedSurfaces (ObjectSortFunc=nullptr)
 object sorting... More...
 
void SortLockedTextDots (ObjectSortFunc=nullptr)
 
void SortNormalObjects (ObjectSortFunc=nullptr)
 
void SortNormalSurfaces (ObjectSortFunc=nullptr)
 
void SortNormalTextDots (ObjectSortFunc=nullptr)
 
void SortTransparentObjects (ObjectSortFunc=nullptr)
 
void UpdateClippingSections (const CRhinoObject *)
 
bool UpdateClippingSections (int)
 
void UpdateFrameBufferObjects ()
 
bool UpdateObjectLists ()
 
void UpdateOverlayBufferObject (const CRhinoObject *, bool, int)
 
- Static Protected Member Functions inherited from CRhinoDisplayPipeline
static int compareBackToFrontOrder (const int *nA, const int *nB)
 
static int compareDrawOrder (const int *nA, const int *nB)
 
static int compareFrontToBackOrder (const int *nA, const int *nB)
 
static int compareSurfaceOrder (const int *nA, const int *nB)
 
- Protected Attributes inherited from CRhinoDisplayPipeline
const CRhinoAppAppearanceSettingsAppearanceSettings
 
const CRhinoAppSettingsAppSettings
 
friend CRhinoObject
 
bool m_bBuildObjectLists
 
bool m_bDrawingGrips
 
bool m_bDrawingSurfaces
 
bool m_bDrawingWires
 
bool m_bEnvironmentEnabled
 
bool m_bFreezeDrawing
 
bool m_bIgnoreLockedState
 
bool m_bInQuickDrawSurface = false
 
bool m_bInSelectionMask
 
bool m_bIsOnScreenBuffer
 
bool m_bIsPrinting
 
bool m_bNeedsCapture
 
bool m_bRedraw
 Pipeline attributes... More...
 
bool m_bUseImageBasedLighting = false
 
ObjectArray m_CustomDrawList
 
ON_UUID m_DeferredDisplayMode
 
ON_ClassArray< CDisplayPipelineAttributesm_DisplayAttrsStack
 
EDepthMode m_eDepthMode
 
CSupportChannels m_EnabledChannels
 
EZBiasMode m_eZBiasMode
 
ON_SimpleArray< DrawInterruptItemm_InterruptStack
 
UINT m_nAverageFrameRate
 
UINT m_nDesiredSingleFrameRate
 
int m_nest_level
 
UINT m_nFrameCount
 
UINT m_nPrevFrameRate
 
int m_nRenderPass
 
UINT m_nSingleFrameRate
 
ON_SimpleArray< ON_Colorm_ObjectColorStack
 
ObjectArray m_ObjectMapList
 
const class CRhinoDetailViewObjectm_pCurrentDetailObject = nullptr
 
HDC m_pDC
 These are mutually exclusive... More...
 
class CDisplayPipelineDrawListm_pDrawList
 points to m_pFBDrawList or m_pOBDrawList More...
 
CRhinoDisplayEnginem_pEngine
 
class CDisplayPipelineDrawListm_pFBDrawList
 "frame buffer" draw list (main list all objects are in) More...
 
PFDRAWOVERRIDEPROC m_pfDrawChannelsOverride
 
class CDisplayPipelineDrawListm_pOBDrawList
 "overlay buffer" draw list (populated iDrawOverlays) More...
 
class CRhPerFrameCachem_pPerFrameCache = nullptr
 
ON_SimpleArray< class CDisplayMeshingObject > * m_pRenderMeshes
 
class CRhDisplayPipelinePrivatem_private = nullptr
 
ON_ClassArray< ON_Viewportm_ProjectionStack
 
CRhinoDibm_pSelectionMap
 
class CWnd * m_pWnd
 Different types of render targets... More...
 
- Static Protected Attributes inherited from CRhinoDisplayPipeline
static CRhinoDisplayPipelinem_pSortThis
 sorting and comparing routines... More...
 

Detailed Description

Copyright (c) 1993-2017 Robert McNeel & Associates. All rights reserved. Rhinoceros is a registered trademark of Robert McNeel & Associates.

THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR PURPOSE AND OF MERCHANTABILITY ARE HEREBY DISCLAIMED.

For complete Rhino SDK copyright information see http://www.rhino3d.com/developer.

Constructor & Destructor Documentation

◆ CRhinoDisplayPipeline_GDI() [1/4]

CRhinoDisplayPipeline_GDI::CRhinoDisplayPipeline_GDI ( )

◆ CRhinoDisplayPipeline_GDI() [2/4]

CRhinoDisplayPipeline_GDI::CRhinoDisplayPipeline_GDI ( class CRhVectorEngine *  ,
CRhinoViewport  
)

◆ CRhinoDisplayPipeline_GDI() [3/4]

CRhinoDisplayPipeline_GDI::CRhinoDisplayPipeline_GDI ( CRhinoView ,
CRhinoViewport  
)

◆ CRhinoDisplayPipeline_GDI() [4/4]

CRhinoDisplayPipeline_GDI::CRhinoDisplayPipeline_GDI ( HDC  ,
CRhinoViewport  
)

◆ ~CRhinoDisplayPipeline_GDI()

virtual CRhinoDisplayPipeline_GDI::~CRhinoDisplayPipeline_GDI ( )
virtual

Member Function Documentation

◆ DrawBackground()

bool CRhinoDisplayPipeline_GDI::DrawBackground ( void  )
overridevirtual

Reimplemented from CRhinoDisplayPipeline.

◆ DrawForeground()

bool CRhinoDisplayPipeline_GDI::DrawForeground ( void  )
overridevirtual

Reimplemented from CRhinoDisplayPipeline.

◆ DrawMiddleground()

bool CRhinoDisplayPipeline_GDI::DrawMiddleground ( void  )
overridevirtual

Reimplemented from CRhinoDisplayPipeline.

◆ DrawTexturedSurface()

void CRhinoDisplayPipeline_GDI::DrawTexturedSurface ( const CRhinoObject rhinoObject)

◆ EngineClass()

const ON_ClassId* CRhinoDisplayPipeline_GDI::EngineClass ( void  )
overridevirtual

Reimplemented from CRhinoDisplayPipeline.

◆ SetupFrustum()

bool CRhinoDisplayPipeline_GDI::SetupFrustum ( const ClippingInfo )
overridevirtual

Reimplemented from CRhinoDisplayPipeline.

Friends And Related Function Documentation

◆ CRhGdiPipelineExtension

friend class CRhGdiPipelineExtension
friend