File indexing completed on 2026-07-30 09:15:18
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _TPrsStd_AISPresentation_HeaderFile
0018 #define _TPrsStd_AISPresentation_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_Type.hxx>
0022
0023 #include <Quantity_NameOfColor.hxx>
0024 #include <Graphic3d_NameOfMaterial.hxx>
0025 #include <Standard_Integer.hxx>
0026 #include <TDF_Attribute.hxx>
0027 #include <TDataXtd_Presentation.hxx>
0028 #include <AIS_InteractiveContext.hxx>
0029
0030 class AIS_InteractiveObject;
0031 class Standard_GUID;
0032 class TDF_Label;
0033 class TDF_RelocationTable;
0034 class TDF_AttributeDelta;
0035
0036 class TPrsStd_AISPresentation;
0037 DEFINE_STANDARD_HANDLE(TPrsStd_AISPresentation, TDF_Attribute)
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047 class TPrsStd_AISPresentation : public TDF_Attribute
0048 {
0049
0050 public:
0051
0052 Standard_EXPORT static const Standard_GUID& GetID();
0053
0054
0055
0056 Standard_EXPORT static Handle(TPrsStd_AISPresentation) Set(const TDF_Label& L,
0057 const Standard_GUID& driver);
0058
0059
0060 Standard_EXPORT static void Unset(const TDF_Label& L);
0061
0062
0063
0064
0065
0066 Standard_EXPORT static Handle(TPrsStd_AISPresentation) Set(const Handle(TDF_Attribute)& master);
0067
0068 Standard_EXPORT TPrsStd_AISPresentation();
0069
0070 Standard_EXPORT void SetDisplayed(const Standard_Boolean B);
0071
0072
0073
0074
0075 Standard_EXPORT void Display(const Standard_Boolean update = Standard_False);
0076
0077
0078
0079
0080
0081 Standard_EXPORT void Erase(const Standard_Boolean remove = Standard_False);
0082
0083
0084 Standard_EXPORT void Update();
0085
0086 Standard_EXPORT Standard_GUID GetDriverGUID() const;
0087
0088 Standard_EXPORT void SetDriverGUID(const Standard_GUID& guid);
0089
0090
0091 Standard_EXPORT Standard_Boolean IsDisplayed() const;
0092
0093
0094 Standard_EXPORT Handle(AIS_InteractiveObject) GetAIS() const;
0095
0096
0097 Standard_EXPORT Graphic3d_NameOfMaterial Material() const;
0098
0099
0100 Standard_EXPORT void SetMaterial(const Graphic3d_NameOfMaterial aName);
0101
0102
0103 Standard_EXPORT Standard_Boolean HasOwnMaterial() const;
0104
0105
0106 Standard_EXPORT void UnsetMaterial();
0107
0108
0109
0110
0111 Standard_EXPORT void SetTransparency(const Standard_Real aValue = 0.6);
0112
0113 Standard_EXPORT Standard_Real Transparency() const;
0114
0115
0116 Standard_EXPORT Standard_Boolean HasOwnTransparency() const;
0117
0118
0119 Standard_EXPORT void UnsetTransparency();
0120
0121 Standard_EXPORT Quantity_NameOfColor Color() const;
0122
0123
0124 Standard_EXPORT void SetColor(const Quantity_NameOfColor aColor);
0125
0126
0127 Standard_EXPORT Standard_Boolean HasOwnColor() const;
0128
0129
0130 Standard_EXPORT void UnsetColor();
0131
0132 Standard_EXPORT Standard_Real Width() const;
0133
0134
0135 Standard_EXPORT void SetWidth(const Standard_Real aWidth);
0136
0137
0138 Standard_EXPORT Standard_Boolean HasOwnWidth() const;
0139
0140
0141 Standard_EXPORT void UnsetWidth();
0142
0143 Standard_EXPORT Standard_Integer Mode() const;
0144
0145 Standard_EXPORT void SetMode(const Standard_Integer theMode);
0146
0147 Standard_EXPORT Standard_Boolean HasOwnMode() const;
0148
0149 Standard_EXPORT void UnsetMode();
0150
0151
0152
0153 Standard_EXPORT Standard_Integer GetNbSelectionModes() const;
0154 Standard_EXPORT Standard_Integer SelectionMode(const int index = 1) const;
0155
0156
0157
0158
0159
0160
0161 Standard_EXPORT void SetSelectionMode(const Standard_Integer theSelectionMode,
0162 const Standard_Boolean theTransaction = Standard_True);
0163 Standard_EXPORT void AddSelectionMode(const Standard_Integer theSelectionMode,
0164 const Standard_Boolean theTransaction = Standard_True);
0165
0166 Standard_EXPORT Standard_Boolean HasOwnSelectionMode() const;
0167
0168
0169 Standard_EXPORT void UnsetSelectionMode();
0170
0171 Standard_EXPORT const Standard_GUID& ID() const Standard_OVERRIDE;
0172
0173 Standard_EXPORT Handle(TDF_Attribute) NewEmpty() const Standard_OVERRIDE;
0174
0175 Standard_EXPORT void Restore(const Handle(TDF_Attribute)& with) Standard_OVERRIDE;
0176
0177 Standard_EXPORT void Paste(const Handle(TDF_Attribute)& into,
0178 const Handle(TDF_RelocationTable)& RT) const Standard_OVERRIDE;
0179
0180 Standard_EXPORT virtual Handle(TDF_Attribute) BackupCopy() const Standard_OVERRIDE;
0181
0182 Standard_EXPORT virtual void AfterAddition() Standard_OVERRIDE;
0183
0184 Standard_EXPORT virtual void BeforeRemoval() Standard_OVERRIDE;
0185
0186 Standard_EXPORT virtual void BeforeForget() Standard_OVERRIDE;
0187
0188 Standard_EXPORT virtual void AfterResume() Standard_OVERRIDE;
0189
0190 Standard_EXPORT virtual Standard_Boolean BeforeUndo(
0191 const Handle(TDF_AttributeDelta)& anAttDelta,
0192 const Standard_Boolean forceIt = Standard_False) Standard_OVERRIDE;
0193
0194
0195 Standard_EXPORT virtual Standard_Boolean AfterUndo(
0196 const Handle(TDF_AttributeDelta)& anAttDelta,
0197 const Standard_Boolean forceIt = Standard_False) Standard_OVERRIDE;
0198
0199
0200 Standard_EXPORT virtual void DumpJson(Standard_OStream& theOStream,
0201 Standard_Integer theDepth = -1) const Standard_OVERRIDE;
0202
0203 DEFINE_STANDARD_RTTIEXT(TPrsStd_AISPresentation, TDF_Attribute)
0204
0205 protected:
0206
0207 Standard_EXPORT virtual Handle(TDataXtd_Presentation) getData() const;
0208
0209 private:
0210 Handle(AIS_InteractiveContext) getAISContext() const;
0211
0212
0213
0214 void ActivateSelectionMode();
0215
0216
0217
0218 Standard_EXPORT void AISUpdate();
0219
0220
0221 Standard_EXPORT void AISDisplay();
0222
0223
0224
0225
0226 Standard_EXPORT void AISErase(const Standard_Boolean remove = Standard_False);
0227
0228 private:
0229 Handle(AIS_InteractiveObject) myAIS;
0230 };
0231
0232 #endif