Taxonomy Categories:
Member Functions:
Interface Category:
API.
Inherits From:
TGrafAttribute
Inherited By:
None.
Purpose:
TSurfaceIsolines is a concrete class derived from TGrafAttribute. It represents an attribute that tells the renderer how densely to draw isolines on a 3-D surface (a TGSurface3D). Isolines (also known as isoparametric lines) are quasi-parallel curves that run along a curved surface in one parametric direction. A surface has two parametric directions that are roughly perpendicular, so the isolines along one direction cross the isolines along the other, dividing the surface into four-sided pieces.
The TSurfaceIsolines attribute is needed only when the surface is being rendered in frame mode (in other words, when the draw type is eFrame); in fill mode, the surface is tessellated instead of being drawn with isolines. The attribute specifies the number of isolines to draw. If the number of lines is set to zero, only the edges of the surface are drawn.
By default, the number of lines refers to the number of isolines per span. A span is the region between two control points along one parametric direction of the TGSurface3D. You can instead make the number refer to the number of isolines on the entire surface, by passing false to TSurfaceIsolines::SetLinesPerSpan (or by using the corresponding constructor argument).
Instantiation:
Allocate on the heap or the stack.
Deriving Classes:
None.
Concurrency:
Not multithread safe.
Resource Use:
No special requirements.
- TSurfaceIsolines ()
- TSurfaceIsolines (const TSurfaceIsolines &)
- TSurfaceIsolines (GCoordinate numLines, bool perSpan =true, bool drawCtlMesh =false)
Interface Category:
API.
Purpose:
- Default constructor.
- Copy constructor.
- Constructor that constructs the surface isolines attribute.
Calling Context:
- Called by the stream-in operators . You can also call this function directly.
- Called to copy an object. You can also call this function directly.
- Call this function directly.
Parameters:
- Takes no parameters.
- const TSurfaceIsolines & -The TSurfaceIsolines to be copied.
- GCoordinate numLines -The number of lines in the isolines.
- bool perSpan =true -The default is true if the previous number is per span.
- bool drawCtrlMesh =false -
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
virtual ~ TSurfaceIsolines ()
Interface Category:
API.
Purpose:
Destructor.
Calling Context:
Called to destroy an object. You can also call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TSurfaceIsolines::GetSurfaceIsolines
virtual GCoordinate GetSurfaceIsolines () const
Interface Category:
API.
Purpose:
Returns the number of lines in TSurfaceIsolines.
Calling Context:
Call this function directly.
Parameters:
Return Value:
The number of TSurfaceIsolines per Span.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TSurfaceIsolines::SetSurfaceIsolines
virtual void SetSurfaceIsolines (GCoordinate numLines)
Interface Category:
API.
Purpose:
Sets the total number of surface isolines.
Calling Context:
Call this function directly.
Parameters:
- GCoordinate numLines -The total number of isolines.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TSurfaceIsolines::GetLinesPerSpan
virtual bool GetLinesPerSpan () const
Interface Category:
API.
Purpose:
Determines whether the number of lines in GetSurfaceIsolines is per span.
Calling Context:
Call this function directly.
Parameters:
Return Value:
Returns true if the number of lines is per span.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TSurfaceIsolines::SetLinesPerSpan
virtual void SetLinesPerSpan (bool perSpan)
Interface Category:
API.
Purpose:
Sets whether the number of isolines is per span or not.
Calling Context:
Call this function directly.
Parameters:
- bool perSpan -true if the number of isolines is per span.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TSurfaceIsolines::GetDrawControlMesh
virtual bool GetDrawControlMesh () const
Interface Category:
API.
Purpose:
Determines whether or not the drawing of the surface's control mesh is enabled.
Calling Context:
Call this function directly.
Parameters:
Return Value:
Returns true if drawing of the control mesh is enabled.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
Member Function: TSurfaceIsolines::SetDrawControlMesh
virtual void SetDrawControlMesh (bool perSpan)
Interface Category:
API.
Purpose:
Sets whether or not the drawing of the surface's control mesh is enabled.
Calling Context:
Call this function directly.
Parameters:
- bool perSpan -Set to true to enable drawing of the control mesh.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
virtual TToken GetName () const
Interface Category:
API.
Purpose:
Gets the name of this TSurfaceIsolines as a TToken. This is used to place and retrieve the attribute as its key.
Calling Context:
Call this function directly.
Parameters:
Return Value:
Returns the name as a TToken.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
TSurfaceIsolines & operator =(const TSurfaceIsolines & source)
Interface Category:
API.
Purpose:
Assignment operator.
Calling Context:
Called when an object is assigned to another compatible object. You can also call this function directly.
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.
virtual TStream & operator >>=(TStream & towhere) const
Interface Category:
API.
Purpose:
Stream-out operator.
Calling Context:
Called to stream out data. You can also call this function directly.
Parameters:
- TStream & towhere -The stream to which the object streams itself out.
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.
virtual TStream & operator <<= (TStream & fromwhere)
Interface Category:
API.
Purpose:
Stream-in operator.
Calling Context:
Called to stream out data. You can also call this function directly.
Parameters:
- TStream & fromwhere -The stream from which the object streams itself in.
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.