FRX SDK Documentation 2025 SP0
Loading...
Searching...
No Matches
AcGiDrawable.h
Go to the documentation of this file.
1#pragma once
2
3//
4// (C) Copyright 2005-2024 by Graebert GmbH.
5//
6// Permission to use, copy, modify, and distribute this software in
7// object code form for any purpose and without fee is hereby granted,
8// provided that the above copyright notice appears in all copies and
9// that both that copyright notice and the limited warranty and
10// restricted rights notice below appear in all supporting
11// documentation.
12//
13// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
14// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
15// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
16// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
17// UNINTERRUPTED OR ERROR FREE.
18
20#include "..\addStruct.h"
21
22class AcRxClass;
25class AcDbExtents;
26class AcGiDrawStream;
27
29{
30public:
31
33 {
34 kGeometry = 0,
35 kDistantLight = 1,
36 kPointLight = 2,
37 kSpotLight = 3,
45 kSkyBackground
46 };
47
49 {
50 kDrawableNone = 0,
51 kDrawableIsAnEntity = 1,
52 kDrawableUsesNesting = 2,
53 kDrawableIsCompoundObject = 4,
54 kDrawableViewIndependentViewportDraw = 8,
55 kDrawableIsInvisible = 16,
56 kDrawableHasAttributes = 32,
57 kDrawableRegenTypeDependentGeometry = 64,
58 kDrawableIsDimension = (kDrawableIsAnEntity + kDrawableIsCompoundObject + 128),
59 kDrawableRegenDraw = 256,
60 kDrawableViewDependentViewportDraw = 2048
61 };
62public:
64
66 virtual void subViewportDraw( AcGiViewportDraw *) = 0;
68 virtual bool bounds( AcDbExtents& ) const;
69 virtual unsigned long setAttributes(AcGiDrawableTraits *);
74 virtual AcGiDrawStream * drawStream(void)const;
75 virtual void setGsNode(AcGsNode *);
76 virtual AcGsNode * gsNode(void)const;
77 virtual AcDbObjectId id(void) const;
80
81 virtual ~AcGiDrawable(void);
82};
virtual AcDbObjectId id(void) const
virtual Adesk::UInt32 subViewportDrawLogicalFlags(AcGiViewportDraw *)
virtual void subViewportDraw(AcGiViewportDraw *)=0
virtual AcGsNode * gsNode(void) const
virtual ~AcGiDrawable(void)
virtual AcGiDrawStream * drawStream(void) const
virtual unsigned long setAttributes(AcGiDrawableTraits *)
virtual void setDrawStream(AcGiDrawStream *)
virtual Adesk::Boolean isPersistent() const
virtual Adesk::Boolean subWorldDraw(AcGiWorldDraw *)
virtual void viewportDraw(AcGiViewportDraw *)
virtual void setGsNode(AcGsNode *)
virtual bool bounds(AcDbExtents &) const
virtual Adesk::Boolean worldDraw(AcGiWorldDraw *)
ACRX_DECLARE_MEMBERS(AcGiDrawable)
virtual unsigned long viewportDrawLogicalFlags(AcGiViewportDraw *)
virtual Adesk::UInt32 subSetAttributes(AcGiDrawableTraits *)=0