OCC.Aspect module¶
-Version:This package contains the group of graphic elements commonto different types of visualisers. It allows the descriptionof a screen background, a window, an edge, and groups ofgraphic attributes that can be used in describing 2Dand 3D objects.-Keywords: Window, Aspect, FillArea, Line, Marker, EdgeHighlight, Hatch, Background, GradientBackground, Color map,Type map, Width map, Font map-Warning:-References:
-
class
Aspect_AspectFillArea
(*args, **kwargs)¶ Bases:
OCC.MMgt.MMgt_TShared
-
GetHandle
()¶
-
HatchStyle
()¶ - Returns the hatch type used when InteriorStyle is IS_HATCH
Return type: Aspect_HatchStyle
-
SetBackInteriorColor
()¶ - Modifies the colour of the interior of the back face
Parameters: color (Quantity_Color &) – Return type: None
-
SetEdgeColor
()¶ - Modifies the colour of the edge of the face
Parameters: AColor (Quantity_Color &) – Return type: None
-
SetEdgeLineType
()¶ - Modifies the edge line type
Parameters: AType (Aspect_TypeOfLine) – Return type: None
-
SetEdgeWidth
()¶ - Modifies the edge thickness //! Category: Methods to modify the class definition //! Warning: Raises AspectFillAreaDefinitionError if the width is a negative value.
Parameters: AWidth (float) – Return type: None
-
SetHatchStyle
()¶ - Modifies the hatch type used when InteriorStyle is IS_HATCH
Parameters: AStyle (Aspect_HatchStyle) – Return type: None
-
SetInteriorColor
()¶ - Modifies the colour of the interior of the face
Parameters: AColor (Quantity_Color &) – Return type: None
-
SetInteriorStyle
()¶ - Modifies the interior type used for rendering //! InteriorStyle : IS_EMPTY no interior IS_HOLLOW display the boundaries of the surface IS_HATCH display hatching IS_SOLID display interior entirely filled
Parameters: AStyle (Aspect_InteriorStyle) – Return type: None
-
Values
()¶ Parameters: - AStyle (Aspect_InteriorStyle &) –
- AIntColor (Quantity_Color &) –
- AEdgeColor (Quantity_Color &) –
- AType (Aspect_TypeOfLine &) –
- AWidth (float &) –
Return type: - Returns the current values of the <self> group.
Parameters: - AStyle (Aspect_InteriorStyle &) –
- AIntColor (Quantity_Color &) –
- BackIntColor (Quantity_Color &) –
- AEdgeColor (Quantity_Color &) –
- AType (Aspect_TypeOfLine &) –
- AWidth (float &) –
Return type:
-
thisown
¶ The membership flag
-
-
class
Aspect_AspectLine
(*args, **kwargs)¶ Bases:
OCC.MMgt.MMgt_TShared
-
GetHandle
()¶
-
SetWidth
()¶ - Modifies the thickness of <self>. Category: Methods to modify the class definition Warning: Raises AspectLineDefinitionError if the width is a negative value.
Parameters: AWidth (float) – Return type: None
-
Values
()¶ - Returns the current values of the group <self>.
Parameters: - AColor (Quantity_Color &) –
- AType (Aspect_TypeOfLine &) –
- AWidth (float &) –
Return type:
-
thisown
¶ The membership flag
-
-
class
Aspect_AspectMarker
(*args, **kwargs)¶ Bases:
OCC.MMgt.MMgt_TShared
-
GetHandle
()¶
-
SetScale
()¶ - Modifies the scale factor of <self>. Marker type Aspect_TOM_POINT is not affected by the marker size scale factor. It is always the smallest displayable dot. Warning: Raises AspectMarkerDefinitionError if the scale is a negative value.
Parameters: AScale (float) – Return type: None
-
SetType
()¶ - Modifies the type of marker <self>.
Parameters: AType (Aspect_TypeOfMarker) – Return type: None
-
Values
()¶ - Returns the current values of the group <self>.
Parameters: - AColor (Quantity_Color &) –
- AType (Aspect_TypeOfMarker &) –
- AScale (float &) –
Return type:
-
thisown
¶ The membership flag
-
-
class
Aspect_Background
(*args)¶ Bases:
object
- Creates a window background. Default color : NOC_MATRAGRAY.
Return type: None - Creates a window background with the colour <AColor>.
Parameters: AColor (Quantity_Color &) – Return type: None -
Color
()¶ - Returns the colour of the window background <self>.
Return type: Quantity_Color
-
SetColor
()¶ - Modifies the colour of the window background <self>.
Parameters: AColor (Quantity_Color &) – Return type: None
-
thisown
¶ The membership flag
-
class
Aspect_CircularGrid
(*args)¶ Bases:
OCC.Aspect.Aspect_Grid
- creates a new grid. By default this grid is not active.
Parameters: - aRadiusStep (Quantity_Length) –
- aDivisionNumber (int) –
- XOrigin (Quantity_Length) – default value is 0
- anYOrigin (Quantity_Length) – default value is 0
- aRotationAngle (Quantity_PlaneAngle) – default value is 0
Return type: -
GetHandle
()¶
-
RadiusStep
()¶ - returns the x step of the grid.
Return type: Quantity_Length
-
SetGridValues
()¶ Parameters: - XOrigin (Quantity_Length) –
- YOrigin (Quantity_Length) –
- RadiusStep (Quantity_Length) –
- DivisionNumber (int) –
- RotationAngle (Quantity_PlaneAngle) –
Return type:
-
SetRadiusStep
()¶ - defines the x step of the grid.
Parameters: aStep (Quantity_Length) – Return type: None
-
thisown
¶ The membership flag
-
class
Aspect_ColorScale
(*args, **kwargs)¶ Bases:
OCC.MMgt.MMgt_TShared
-
static
FindColor
()¶ - Calculate color according passed value; returns true if value is in range or false, if isn’t
Parameters: Return type: Return type:
-
GetColor
()¶ - Returns the user specified color from color map with index <anIndex>. Returns default color if index out of range in color map.
Parameters: theIndex (int) – Return type: Quantity_Color
-
GetColorType
()¶ - Returns the type of colors; Aspect_TOCSD_AUTO - value between Red and Blue Aspect_TOCSD_USER - user specified color from color map
Return type: Aspect_TypeOfColorScaleData
-
GetColors
()¶ - Returns the user specified colors.
Parameters: theColors (Aspect_SequenceOfColor &) – Return type: None
-
GetFormat
()¶ - Returns the format for numbers. The same like format for function printf(). Used if GetLabelType() is TOCSD_AUTO;
Return type: TCollection_AsciiString
-
GetHandle
()¶
-
GetLabel
()¶ - Returns the user specified label with index <anIndex>. Returns empty string if label not defined.
Parameters: theIndex (int) – Return type: TCollection_ExtendedString
-
GetLabelPosition
()¶ - Returns the position of labels concerning color filled rectangles.
Return type: Aspect_TypeOfColorScalePosition
-
GetLabelType
()¶ - Returns the type of labels; Aspect_TOCSD_AUTO - labels as boundary values for intervals Aspect_TOCSD_USER - user specified label is used
Return type: Aspect_TypeOfColorScaleData
-
GetLabels
()¶ - Returns the user specified labels.
Parameters: theLabels (TColStd_SequenceOfExtendedString &) – Return type: None
-
GetPosition
()¶ - Returns the position of color scale.
Parameters: - theX (float &) –
- theY (float &) –
Return type:
-
GetRange
()¶ - Returns minimal and maximal values of color scale;
Parameters: - theMin (float &) –
- theMax (float &) –
Return type:
-
GetSize
()¶ - Returns the size of color scale.
Parameters: - theWidth (float &) –
- theHeight (float &) –
Return type:
-
GetTitle
()¶ - Returns the color scale title string;
Return type: TCollection_ExtendedString
-
GetTitlePosition
()¶ - Returns the position of color scale title.
Return type: Aspect_TypeOfColorScalePosition
-
IsLabelAtBorder
()¶ - Returns true if the labels placed at border of color filled rectangles.
Return type: bool
-
PaintRect
()¶ - Draws a rectangle. @param theX [in] the X coordinate of rectangle position. @param theY [in] the Y coordinate of rectangle position. @param theWidth [in] the width of rectangle. @param theHeight [in] the height of rectangle. @param theColor [in] the color of rectangle. @param theFilled [in] defines if rectangle must be filled.
Parameters: Return type: void
-
PaintText
()¶ - Draws a text. @param theText [in] the text to draw. @param theX [in] the X coordinate of text position. @param theY [in] the Y coordinate of text position. @param theColor [in] the color of text.
Parameters: Return type: void
-
SetColor
()¶ - Sets the color scale color at index. Index started from 1.
Parameters: - theColor (Quantity_Color &) –
- theIndex (int) – default value is -1
Return type:
-
SetColorType
()¶ - Sets the type of colors. Aspect_TOCSD_AUTO - value between Red and Blue Aspect_TOCSD_USER - user specified color from color map
Parameters: theType (Aspect_TypeOfColorScaleData) – Return type: None
-
SetColors
()¶ - Sets the color scale colors.
Parameters: theSeq (Aspect_SequenceOfColor &) – Return type: None
-
SetFormat
()¶ - Sets the color scale auto label format specification.
Parameters: theFormat (TCollection_AsciiString &) – Return type: None
-
SetLabel
()¶ - Sets the color scale label at index. Index started from 1.
Parameters: - theLabel (TCollection_ExtendedString &) –
- anIndex (int) – default value is -1
Return type:
-
SetLabelAtBorder
()¶ - Sets true if the labels placed at border of color filled rectangles.
Parameters: theOn (bool) – Return type: None
-
SetLabelPosition
()¶ - Sets the color scale labels position concerning color filled rectangles.
Parameters: thePos (Aspect_TypeOfColorScalePosition) – Return type: None
-
SetLabelType
()¶ - Sets the type of labels. Aspect_TOCSD_AUTO - labels as boundary values for intervals Aspect_TOCSD_USER - user specified label is used
Parameters: theType (Aspect_TypeOfColorScaleData) – Return type: None
-
SetLabels
()¶ - Sets the color scale labels.
Parameters: theSeq (TColStd_SequenceOfExtendedString &) – Return type: None
-
SetNumberOfIntervals
()¶ - Sets the number of color scale intervals.
Parameters: theNum (int) – Return type: None
-
SetPosition
()¶ - Sets the position of color scale.
Parameters: Return type:
-
SetRange
()¶ - Sets the minimal and maximal value of color scale.
Parameters: Return type:
-
SetReversed
()¶ - Sets true if the labels and colors used in reversed order.
Parameters: theReverse (bool) – Return type: None
-
SetSize
()¶ - Sets the size of color scale.
Parameters: Return type:
-
SetTextHeight
()¶ - Sets the height of text of color scale.
Parameters: theHeight (int) – Return type: None
-
SetTitle
()¶ - Sets the color scale title string.
Parameters: theTitle (TCollection_ExtendedString &) – Return type: None
-
SetTitlePosition
()¶ - Sets the color scale title position.
Parameters: thePos (Aspect_TypeOfColorScalePosition) – Return type: None
-
TextHeight
()¶ - Returns the height of text. @param theText [in] the text of which to calculate height.
Parameters: theText (TCollection_ExtendedString &) – Return type: int
-
TextWidth
()¶ - Returns the width of text. @param theText [in] the text of which to calculate width.
Parameters: theText (TCollection_ExtendedString &) – Return type: int
-
thisown
¶ The membership flag
-
static
-
Aspect_ColorScale_FindColor
()¶ - Calculate color according passed value; returns true if value is in range or false, if isn’t
Parameters: Return type: Return type:
-
class
Aspect_GenId
(*args)¶ Bases:
object
- Creates an available set of identifiers with the lower bound 0 and the upper bound INT_MAX / 2.
Return type: None - Creates an available set of identifiers with specified range. Raises IdentDefinitionError if theUpper is less than theLow.
Parameters: Return type: -
Free
()¶ - Free all identifiers - make the whole range available again.
Return type: None - Free specified identifier. Warning - method has no protection against double-freeing!
Parameters: theId (int) – Return type: None
-
Next
()¶ - Returns the next available identifier. Warning: Raises IdentDefinitionError if all identifiers are busy.
Return type: int
-
thisown
¶ The membership flag
-
class
Aspect_GradientBackground
(*args)¶ Bases:
OCC.Aspect.Aspect_Background
- Creates a window gradient background. Default colors : Quantity_NOC_BLACK. Default fill method : Aspect_GFM_NONE
Return type: None - Creates a window gradient background with colours <AColor1, AColor2>.
Parameters: - AColor1 (Quantity_Color &) –
- AColor2 (Quantity_Color &) –
- AMethod (Aspect_GradientFillMethod) – default value is Aspect_GFM_HOR
Return type: -
BgGradientFillMethod
()¶ - Returns the current gradient background fill mode.
Return type: Aspect_GradientFillMethod
-
Colors
()¶ - Returns colours of the window gradient background <self>.
Parameters: - AColor1 (Quantity_Color &) –
- AColor2 (Quantity_Color &) –
Return type:
-
SetColors
()¶ - Modifies the colours of the window gradient background <self>.
Parameters: - AColor1 (Quantity_Color &) –
- AColor2 (Quantity_Color &) –
- AMethod (Aspect_GradientFillMethod) – default value is Aspect_GFM_HOR
Return type:
-
thisown
¶ The membership flag
-
class
Aspect_GraphicCallbackStruct
(*args, **kwargs)¶ Bases:
object
-
IsCoreProfile
¶
-
glContext
¶
-
reason
¶
-
thisown
¶ The membership flag
-
viewID
¶
-
wsID
¶
-
-
class
Aspect_Grid
(*args, **kwargs)¶ Bases:
OCC.MMgt.MMgt_TShared
-
Activate
()¶ - activates the grid. The Hit method will return gridx and gridx computed according to the steps of the grid.
Return type: None
-
Colors
()¶ - Returns the colors of the grid.
Parameters: - aColor (Quantity_Color &) –
- aTenthColor (Quantity_Color &) –
Return type:
-
Compute
()¶ - returns the point of the grid the closest to the point X,Y
Parameters: - X (Quantity_Length) –
- Y (Quantity_Length) –
- gridX (Quantity_Length &) –
- gridY (Quantity_Length &) –
Return type: void
-
Deactivate
()¶ - deactivates the grid. The hit method will return gridx and gridx as the enter value X & Y.
Return type: None
-
Display
()¶ - Display the grid at screen.
Return type: void
-
DrawMode
()¶ - Returns the grid aspect.
Return type: Aspect_GridDrawMode
-
Erase
()¶ - Erase the grid from screen.
Return type: void
-
GetHandle
()¶
-
Hit
()¶ - returns the point of the grid the closest to the point X,Y if the grid is active. If the grid is not active returns X,Y.
Parameters: - X (Quantity_Length) –
- Y (Quantity_Length) –
- gridX (Quantity_Length &) –
- gridY (Quantity_Length &) –
Return type:
-
Init
()¶ Return type: void
-
Rotate
()¶ - Rotate the grid from a relative angle.
Parameters: anAngle (Quantity_PlaneAngle) – Return type: None
-
RotationAngle
()¶ - returns the x Angle of the grid.
Return type: Quantity_PlaneAngle
-
SetColors
()¶ - Change the colors of the grid
Parameters: - aColor (Quantity_Color &) –
- aTenthColor (Quantity_Color &) –
Return type: void
-
SetDrawMode
()¶ - Change the grid aspect.
Parameters: aDrawMode (Aspect_GridDrawMode) – Return type: None
-
SetRotationAngle
()¶ - defines the orientation of the the grid.
Parameters: anAngle (Quantity_PlaneAngle) – Return type: None
-
SetXOrigin
()¶ - defines the x Origin of the grid.
Parameters: anOrigin (Quantity_Length) – Return type: None
-
SetYOrigin
()¶ - defines the y Origin of the grid.
Parameters: anOrigin (Quantity_Length) – Return type: None
-
Translate
()¶ - Translate the grid from a relative distance.
Parameters: - aDx (Quantity_Length) –
- aDy (Quantity_Length) –
Return type:
-
XOrigin
()¶ - returns the x Origin of the grid.
Return type: Quantity_Length
-
YOrigin
()¶ - returns the x Origin of the grid.
Return type: Quantity_Length
-
thisown
¶ The membership flag
-
-
class
Aspect_RectangularGrid
(*args)¶ Bases:
OCC.Aspect.Aspect_Grid
- creates a new grid. By default this grid is not active. The first angle is given relatively to the horizontal. The second angle is given relatively to the vertical.
Parameters: - aXStep (Quantity_Length) –
- aYStep (Quantity_Length) –
- anXOrigin (Quantity_Length) – default value is 0
- anYOrigin (Quantity_Length) – default value is 0
- aFirstAngle (Quantity_PlaneAngle) – default value is 0
- aSecondAngle (Quantity_PlaneAngle) – default value is 0
- aRotationAngle (Quantity_PlaneAngle) – default value is 0
Return type: -
FirstAngle
()¶ - returns the x Angle of the grid, relatively to the horizontal.
Return type: Quantity_PlaneAngle
-
GetHandle
()¶
-
SecondAngle
()¶ - returns the y Angle of the grid, relatively to the vertical.
Return type: Quantity_PlaneAngle
-
SetAngle
()¶ - defines the angle of the second network the fist angle is given relatively to the horizontal. the second angle is given relatively to the vertical.
Parameters: - anAngle1 (Quantity_PlaneAngle) –
- anAngle2 (Quantity_PlaneAngle) –
Return type:
-
SetGridValues
()¶ Parameters: - XOrigin (Quantity_Length) –
- YOrigin (Quantity_Length) –
- XStep (Quantity_Length) –
- YStep (Quantity_Length) –
- RotationAngle (Quantity_PlaneAngle) –
Return type:
-
XStep
()¶ - returns the x step of the grid.
Return type: Quantity_Length
-
YStep
()¶ - returns the x step of the grid.
Return type: Quantity_Length
-
thisown
¶ The membership flag
-
class
Aspect_SequenceNodeOfSequenceOfColor
(*args)¶ Bases:
OCC.TCollection.TCollection_SeqNode
Parameters: - I (Quantity_Color &) –
- n (TCollection_SeqNodePtr &) –
- p (TCollection_SeqNodePtr &) –
Return type: -
GetHandle
()¶
-
Value
()¶ Return type: Quantity_Color
-
thisown
¶ The membership flag
-
class
Aspect_SequenceOfColor
(*args)¶ Bases:
OCC.TCollection.TCollection_BaseSequence
Return type: None Parameters: Other (Aspect_SequenceOfColor &) – Return type: None -
Append
()¶ Parameters: - T (Quantity_Color &) –
- S (Aspect_SequenceOfColor &) –
Return type: Return type:
-
Assign
()¶ Parameters: Other (Aspect_SequenceOfColor &) – Return type: Aspect_SequenceOfColor
-
ChangeValue
()¶ Parameters: Index (int) – Return type: Quantity_Color
-
First
()¶ Return type: Quantity_Color
-
InsertAfter
()¶ Parameters: - Index (int) –
- T (Quantity_Color &) –
- Index –
- S (Aspect_SequenceOfColor &) –
Return type: Return type:
-
InsertBefore
()¶ Parameters: - Index (int) –
- T (Quantity_Color &) –
- Index –
- S (Aspect_SequenceOfColor &) –
Return type: Return type:
-
Last
()¶ Return type: Quantity_Color
-
Prepend
()¶ Parameters: - T (Quantity_Color &) –
- S (Aspect_SequenceOfColor &) –
Return type: Return type:
-
Remove
()¶ Parameters: Return type: Return type:
-
Set
()¶ Parameters: Other (Aspect_SequenceOfColor &) – Return type: Aspect_SequenceOfColor
-
Value
()¶ Parameters: Index (int) – Return type: Quantity_Color
-
thisown
¶ The membership flag
-
-
class
Aspect_Window
(*args, **kwargs)¶ Bases:
OCC.MMgt.MMgt_TShared
-
Background
()¶ - Returns the window background.
Return type: Aspect_Background
-
BackgroundFillMethod
()¶ - Returns the current image background fill mode.
Return type: Aspect_FillMethod
-
Destroy
()¶ - Destroy the Window
Return type: void
-
DoMapping
()¶ - Apply the mapping change to the window <self>. and returns True if the window is mapped at screen.
Return type: bool
-
DoResize
()¶ - Apply the resizing to the window <self>.
Return type: Aspect_TypeOfResize
-
GetHandle
()¶
-
GradientBackground
()¶ - Returns the window gradient background.
Return type: Aspect_GradientBackground
-
IsMapped
()¶ - Returns True if the window <self> is opened and False if the window is closed.
Return type: bool
-
Map
()¶ - Opens the window <self>.
Return type: void
-
Position
()¶ - Returns The Window POSITION in PIXEL
Parameters: - X1 (int &) –
- Y1 (int &) –
- X2 (int &) –
- Y2 (int &) –
Return type: void
-
Ratio
()¶ - Returns The Window RATIO equal to the physical WIDTH/HEIGHT dimensions
Return type: Quantity_Ratio
-
SetBackground
()¶ - Modifies the window background.
Parameters: ABack (Aspect_Background &) – Return type: None - Modifies the window background from a Named Color.
Parameters: theNameOfColor (Quantity_NameOfColor) – Return type: None - Modifies the window background.
Parameters: color (Quantity_Color &) – Return type: None - Modifies the window gradient background.
Parameters: ABackground (Aspect_GradientBackground &) – Return type: None - Modifies the window gradient background.
Parameters: - theFirstColor (Quantity_Color &) –
- theSecondColor (Quantity_Color &) –
- theFillMethod (Aspect_GradientFillMethod) –
Return type:
-
Size
()¶ - Returns The Window SIZE in PIXEL
Parameters: - Width (int &) –
- Height (int &) –
Return type: void
-
Unmap
()¶ - Closes the window <self>.
Return type: void
-
thisown
¶ The membership flag
-
-
class
Handle_Aspect_AspectFillArea
(*args)¶ Bases:
OCC.MMgt.Handle_MMgt_TShared
-
static
DownCast
()¶
-
GetObject
()¶
-
IsNull
()¶
-
Nullify
()¶
-
thisown
¶ The membership flag
-
static
-
class
Handle_Aspect_AspectLine
(*args)¶ Bases:
OCC.MMgt.Handle_MMgt_TShared
-
static
DownCast
()¶
-
GetObject
()¶
-
IsNull
()¶
-
Nullify
()¶
-
thisown
¶ The membership flag
-
static
-
class
Handle_Aspect_AspectMarker
(*args)¶ Bases:
OCC.MMgt.Handle_MMgt_TShared
-
static
DownCast
()¶
-
GetObject
()¶
-
IsNull
()¶
-
Nullify
()¶
-
thisown
¶ The membership flag
-
static
-
class
Handle_Aspect_CircularGrid
(*args)¶ Bases:
OCC.Aspect.Handle_Aspect_Grid
-
static
DownCast
()¶
-
GetObject
()¶
-
IsNull
()¶
-
Nullify
()¶
-
thisown
¶ The membership flag
-
static
-
class
Handle_Aspect_ColorScale
(*args)¶ Bases:
OCC.MMgt.Handle_MMgt_TShared
-
static
DownCast
()¶
-
GetObject
()¶
-
IsNull
()¶
-
Nullify
()¶
-
thisown
¶ The membership flag
-
static
-
class
Handle_Aspect_Grid
(*args)¶ Bases:
OCC.MMgt.Handle_MMgt_TShared
-
static
DownCast
()¶
-
GetObject
()¶
-
IsNull
()¶
-
Nullify
()¶
-
thisown
¶ The membership flag
-
static
-
class
Handle_Aspect_RectangularGrid
(*args)¶ Bases:
OCC.Aspect.Handle_Aspect_Grid
-
static
DownCast
()¶
-
GetObject
()¶
-
IsNull
()¶
-
Nullify
()¶
-
thisown
¶ The membership flag
-
static
-
class
Handle_Aspect_SequenceNodeOfSequenceOfColor
(*args)¶ Bases:
OCC.TCollection.Handle_TCollection_SeqNode
-
static
DownCast
()¶
-
GetObject
()¶
-
IsNull
()¶
-
Nullify
()¶
-
thisown
¶ The membership flag
-
static
-
class
Handle_Aspect_Window
(*args)¶ Bases:
OCC.MMgt.Handle_MMgt_TShared
-
static
DownCast
()¶
-
GetObject
()¶
-
IsNull
()¶
-
Nullify
()¶
-
thisown
¶ The membership flag
-
static
-
class
SwigPyIterator
(*args, **kwargs)¶ Bases:
object
-
advance
()¶
-
copy
()¶
-
decr
()¶
-
distance
()¶
-
equal
()¶
-
incr
()¶
-
next
()¶
-
previous
()¶
-
thisown
¶ The membership flag
-
value
()¶
-
-
new_instancemethod
(func, inst, cls)¶
-
register_handle
(handle, base_object)¶ Inserts the handle into the base object to prevent memory corruption in certain cases