Purpose:
|
Internal to
ACIS and not intended for direct usage.
|
|
Derivation:
|
TEDGE : EDGE : ENTITY : ACIS_OBJECT : -
|
|
SAT Identifier:
|
"tedge"
|
|
Filename:
|
kern/kernel/kerndata/top/tedge.hxx
|
|
Description:
|
Although this
internal class is intended strictly forACIS usage, a minimal amount of information about this class is provided for the sole purpose of being able to understand and trace restoration from a SAT file.
|
|
|
The tolerant edge class is a derived class of
EDGE with a tolerance value. Unlike an edge, whose 3D representation is provided by its underlying curve, the 3D representation of a
TEDGE is defined by the 3D geometry of its associated
TCOEDGEs. The curve underlying a tolerant edge is used purely for graphic visualization.
|
|
|
The tolerance value of a tolerant edge indicates the maximum distance between any two equiparametric positions on any of its tolerant coedges. Two tolerant edges are coincident over an interval if the maximum of the minimum distance between the portion of their point sets bounded by the interval is less than the maximum of the tolerant edge's tolerance values. If the tolerance value is less than
SPAresabs, then
SPAresabs is used for coincidence checking.
|
|
|
A tolerant edge and an edge are coincident over an interval if the maximum of the minimum distance between the portion of their point sets bounded by the interval is less than the maximum of the tolerant edge's tolerance value and
SPAresabs.
|
|
|
A tolerant edge with a single tolerant coedge will have a zero tolerance value. A tolerant edge may only be associated with tolerant coedges.
|
|
|
This class is used as part of the tolerant modeling technology. It is not intended to be created directly. Instead, it could be created as part of model translation and healing. It permits an edge to be created and supported by
ACIS when the original data from translation or a corrupted model did not meet the tighter tolerances of
ACIS.
|
|
Constructor:
|
public: TEDGE::TEDGE
();
|
|
|
C++ allocation constructor requests memory for this object but does not populate it. The allocation constructor is used primarily by restore. Applications should call this constructor only with the overloaded
new operator, because this reserves the memory on the heap, a requirement to support roll back and history management.
|
|
|
|
|
|
|
public: TEDGE::TEDGE
(
|
|
|
VERTEX*,
|
// start pointer
|
|
|
VERTEX*,
|
// end pointer
|
|
|
CURVE*,
|
// curve on which
|
|
|
|
|
// edge lies
|
|
|
REVBIT,
|
// edge sense
|
|
|
EDGE_cvty,
|
// edge convexity
|
|
|
double
|
// tolerance
|
|
|
);
|
|
|
C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments. Applications should call this constructor only with the overloaded
new operator, because this reserves the memory on the heap, a requirement to support roll back and history management.
|
|
|
|
|
Destructor:
|
public: virtual void TEDGE::lose
();
|
|
|
Posts a delete bulletin to the bulletin board indicating the instance is no longer used in the active model. The
lose methods for attached attributes are also called.
|
|
|
|
|
|
|
protected: virtual TEDGE::~TEDGE
();
|
|
|
This
C++ destructor should never be called directly. Instead, applications should use the overloaded
lose method inherited from the
ENTITY class, because this supports history management. (For example,
x=new TEDGE(...) then later
x->lose.)
|
|
|
|
Methods:
|
protected: virtual logical
|
|
|
TEDGE::bulletin_no_change_vf (
|
|
|
ENTITY const* other,
|
|
// other entity
|
|
|
logical identical_comparator
|
// comparator
|
|
|
) const;
|
|
|
Virtual function for comparing subclass data - called by
bulletin_no_change. For identical_comparator to be
TRUE requires an exact match when comparing doubles, and returns the result of
memcmp as a default (for non-overridden subclasses).
FALSE indicates tolerant compares and returns
FALSE as a default.
|
|
|
|
|
|
|
public: logical TEDGE::get_update
() const;
|
|
|
Update the tolerance on any version 5.0 part.
|
|
|
|
|
|
|
public: virtual logical TEDGE::is_deepcopyable
(
|
|
|
) const;
|
|
|
Returns
TRUE if this can be deep copied.
|
|
|
|
|
|
|
public: void TEDGE::mark_to_update
();
|
|
|
Calls the
set_update routine.
|
|
|
|
|
|
|
public: void TEDGE::restore_common
();
|
|
|
The
RESTORE_DEF macro expands to the
restore_common method, which is used in reading information from a SAT file. This method is never called directly. It is called by a higher hierarchical function if an item in the SAT file is determined to be of this class type. An instance of this class will already have been created through the allocation constructor. This method then populates the class instance with the appropriate data from the SAT file.
|
|
|
read_real
|
|
|
|
Tolerance value
|
|
|
|
|
|
|
public: void TEDGE::set_update
(
|
|
|
logical
|
// update flag
|
|
|
|
= TRUE
|
|
|
);
|
|
|
Indicates that the tolerance needs to be recalculated. Checks that the record has been posted on the bulletin board before performing the change. If not, the routine provokes an error, so that the omission (forgetting to call backup() first) can be rectified in the program. In production versions of the program, these checks may be disabled, to improve efficiency.
|
|
Internal Use:
|
debug_ent, get_3D_curve, get_tolerance, identity, save, save_common, set_tolerance, type_name
|
|
|
|
|
Related Fncs:
|
is_TEDGE
|