Taxonomy Categories:
Member Functions:
Interface Category:
API.
Inherits From:
TLocalAttribute3DState
Inherited By:
None.
Purpose:
TFrameBundle3D is a bundle class that is used for polygon frames. This bundle contains a collection of attributes that contain imaging information for the rendering device. A TFrameBundle3D collects together the attributes needed to render the frame for a particular 3-D graphic object, just as a TGrafBundle is used for 2-D. The MGraphic3D class associates a TFrameBundle3D with a 3-D geometry, in order to define the attributes needed for rendering the outer edge of the geometry--color, frame width, shader, balance, and so on.
Instantiation:
Allocate on the heap or the stack.
Deriving Classes:
None.
Concurrency:
Not multithread safe.
Resource Use:
No special requirements.
Other Considerations:
When thick pen widths are used for 3-D polygon frames, the final rendering may appear unnatural. This is because perspective computations do not apply to frames. Therefore, if a framed edge is receding from the camera, the frame will not diminish in width. If a true wire frame is desired, consider using a hairline frame.
- TFrameBundle3D ()
- TFrameBundle3D (const TFrameBundle3D &)
- TFrameBundle3D (const TColor & frameColor, GCoordinate penWidth =1, TPen :: EPenBalance balance =TPen :: kCenterFrame)
Interface Category:
API.
Purpose:
- Default constructor.
- Copy constructor.
- A constructor used when certain parameters are desired, such as pen width.
Calling Context:
- Called by the stream-in operators and can be called directly.
- Called to copy an object.
- Called when a non-default frame bundle object is desired.
Parameters:
- Takes no parameters.
- const TFrameBundle3D & -The object to be copied.
- const TColor & frameColor -The color for the frame.
- GCoordinate penWidth =1 -The width, in pixels, of the frame.
- TPen :: EPenBalance balance =TPen :: kCenterFrame -The frame balance information.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
virtual ~ TFrameBundle3D ()
Interface Category:
API.
Purpose:
Destructor.
Calling Context:
Called to destroy an object.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
TFrameBundle3D & operator =(const TFrameBundle3D &)
Interface Category:
API.
Purpose:
Assignment operator.
Calling Context:
Called when an object is assigned to another compatible object.
Parameters:
Return Value:
A non-const reference to the left-hand side object.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TFrameBundle3D::SetFrameColor
void SetFrameColor (const TColor & frameColor)
Interface Category:
API.
Purpose:
Sets the color to be used when rendering the frame.
Calling Context:
Call this function directly.
Parameters:
- const TColor & frameColor -The color to be used for the frame.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TFrameBundle3D::SetPenWidth
void SetPenWidth (GCoordinate penWidth)
Interface Category:
API.
Purpose:
Sets the pixel width of the frame.
Calling Context:
Call this function directly.
Parameters:
- GCoordinate penWidth -The width, in pixels, of the frame.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TFrameBundle3D::SetPenBalance
void SetPenBalance (TPen :: EPenBalance balance)
Interface Category:
API.
Purpose:
Sets the pen balance for the frame. This specifies where, in relation to the edge of the rendered geometry, to render the frame. It can be drawn on the inside or outside of the geometry, or straddle the edge (when a value of kCenterFrame is used).
Calling Context:
Call this function directly.
Parameters:
- TPen :: EPenBalance balance -The enumeration tag that corresponds to the desired frame balance.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TFrameBundle3D::GetOutsideColor
virtual const TColor * GetOutsideColor () const
Interface Category:
API.
Purpose:
Returns the outside color being used for this frame.
Calling Context:
Call this function directly.
Parameters:
Return Value:
Pointer to the outside color object being used.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TFrameBundle3D::GetFramePen
virtual const TPen * GetFramePen () const
Interface Category:
API.
Purpose:
Gets the TPen object that is used for the rendering of the frame.
Calling Context:
Call this function directly.
Parameters:
Return Value:
A pointer to this frame's TPen.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TFrameBundle3D::GetDrawingOperation
virtual TAttributeState :: EDrawOperation GetDrawingOperation () const
Interface Category:
API.
Purpose:
Returns the EDrawOperation that contains the rendering information.
Calling Context:
Call this function directly.
Parameters:
Return Value:
The EDrawingOperation value of the frame bundle.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TFrameBundle3D::operator>>=
virtual TStream & operator >>=(TStream &) const
Interface Category:
API.
Purpose:
Stream-out operator.
Calling Context:
Called to stream out data.
Parameters:
- TStream & -The stream that the object streams itself out to.
Return Value:
Returns a reference to the stream the object streams itself out to.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TFrameBundle3D::operator<<=
virtual TStream & operator <<= (TStream &)
Interface Category:
API.
Purpose:
Stream-in operator.
Calling Context:
Called to stream in data.
Parameters:
- TStream & -The stream that the object streams itself in from.
Return Value:
Returns a reference to the stream the object streams itself in from.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.