All Frameworks  Class Hierarchy  This Framework  Next  Indexes

SPAheal Class ATTRIB_HH_AGGR_ANALYTIC

SPAbase.ACIS_OBJECT
  |
  +---SPAkern.ENTITY
    |
    +---SPAkern.ATTRIB
      |
      +---SPAstitch.ATTRIB_HH
        |
        +---SPAstitch.ATTRIB_HH_AGGR
          |
          +---SPAheal.ATTRIB_HH_AGGR_GEOMBUILD_BASE
            |
            +---ATTRIB_HH_AGGR_ANALYTIC
 

Usage: you must use this class as is. You should never derive it.


public class ATTRIB_HH_AGGR_ANALYTIC


Deprecated:
Obsolete: This class has been deprecated. For healing, use API interfaces and not Direct Interface.

Aggregate healing attribute class for the analytic solver subphase of geometry building.
Role: The ATTRIB_HH_AGGR_ANALYTIC class is attached to the body to be healed. It is used by the analytic solver subphase of the geometry building healing phase. The analytic solver subphase attempts to heal all edges and vertices shared by analytic surfaces.


Constructor and Destructor Index


o ATTRIB_HH_AGGR_ANALYTIC(BODY*)
C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments.

Method Index


o analyze()
Performs the analyze stage of the analytic solver subphase of geometry building.
o calculate()
Performs the calculate stage of the analytic solver subphase of geometry building.
o calculation_results()
Returns the results of the analytic solver subphase.
o calculation_results_for_change()
Fills in the calculate results structure.
o do_analytic()
Returns FALSE if the analytic solver subphase has been turned off, otherwise, returns TRUE.
o fill_results(bhl_analytic_solver_results&,bhl_geombld_options&)
Gathers various healing results from globals and options into the results structure.
o geombld_results_for_change()
Returns analytic solver results.
o get_rot_tol()
Returns the rotation tolerance value.
o get_scale_tol()
Returns the scale tolerance value.
o is_analytic_geom_worsened()
Checks the geometry of the body.
o is_analytic_tangency_good()
Checks analytic tangencies of body.
o is_unstable_vertex_good()
Checks unstable vertices of body.
o log_analytic_details()
Allows additions to the log list.
o pattern_compatible()
Returns TRUE if this is pattern compatible.
o print(FILE*)
Prints statistics of the results of the analytic solver subphase to the specified file.
o print_calculate(FILE*)
Prints statistics of the results of the calculate stage of the analytic solver subphase to the specified file.
o set_do_analytic(logical)
Sets a flag indicating whether or not the analytic solver subphase needs to be used.
o set_globals()
Initializes various global variables to zero.
o set_rot_tol(double)
Sets the rotation tolerance to the specified value.
o set_scale_tol(double)
Sets the scale tolerance to the specified value.
o set_tol(double)
Sets the tolerance used by the analytic solver subphase.
o set_tolerances()
Sets the tolerance used by the analytic solver subphase.
o sprint(char*)
Prints statistics of the results of the analytic solver subphase to the specified string.
o sprint_calculate(char*)
Prints statistics of the results of the calculate stage of the analytic solver subphase to the specified string.
o tol()
Gets the current value of the analytic solver subphase tolerance.

Data Member Index


o HH_SurfSnap_Type
Identifies node of type HH_SurfSnap.
o HH_Unstable_Snap_Type
Identifies node of type HH_Unstable_SurfSnap.
o anal_options
A Structure which contains options and tolerances for their analytic solver module.
o bhl_anal_sol_coin_resolved
Number of coincident faces resolved.
o bhl_anal_sol_coin_unresolved
Number of coincident faces unresolved.
o bhl_anal_sol_degree
The degree of the analytic tangency graph.
o bhl_anal_sol_tang_resolved
Number of analytic tangencies resolved.
o bhl_anal_sol_tang_unresolved
Number of analytic tangencies un-resolved.
o bhl_anal_sol_unst_vert
Number of unstable vertices fixed.
o bhl_anal_solver_stage
A flag to denote the current stage of the analytic solver.
o bhl_do_uv_tan_graph
Option for setting uv_tan_grph solver.
o bhl_snap_check
Option to denote if the simple snap correction at the end of the analytic solver is on or off.
o bhl_snap_doub_tol
The maximum tolerance for scaling beyond which no analytic face is scaled.
o bhl_snap_main
Option to denote if the main part of the analytic solver is on/off.
o bhl_snap_pos_tol
The maximum tolerance for translation beyond which no analytic face is translated.
o bhl_unstable_vert
Option to denote if the unstable vertex part of the analytic solver is on or off.
o bhlabs
Minimum translation deviation for the analytic solver.
o bhlmch
Minimum scale deviation for the analytic solver.
o bhlnor
Minimum rotation deviation for the analytic solver.
o m_analytic_geom_worsened
Option to denote if the geometry has worsened.

Constructor and Destructor


o ATTRIB_HH_AGGR_ANALYTIC
public ATTRIB_HH_AGGR_ANALYTIC(BODY* b= NULL )
C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments.

Role: Applications should call this constructor only with the overloaded new operator inherited from the ENTITY class (for example, x=new ATTRIB_HH_AGGR_ANALYTIC(...)), because this reserves the memory on the heap, a requirement to support roll back and history management.

Parameters:
b
owning body.

Methods


o analyze
public virtual void analyze()
Performs the analyze stage of the analytic solver subphase of geometry building.

Role: Analyzes the body and computes the best options and tolerances for the analytic solver subphase.
o calculate
public virtual void calculate()
Performs the calculate stage of the analytic solver subphase of geometry building.

Role: Stores all the recommended changes in individual attributes. This method finds how each face should be snapped so as to make all the tangencies valid, and stores the results in the attributes.
o calculation_results
public const bhl_analytic_solver_results & calculation_results()
Returns the results of the analytic solver subphase.
o calculation_results_for_change
public bhl_analytic_solver_results * calculation_results_for_change()
Fills in the calculate results structure.
o do_analytic
public logical do_analytic()
Returns FALSE if the analytic solver subphase has been turned off, otherwise, returns TRUE.
o fill_results
public void fill_results(bhl_analytic_solver_results& results,
bhl_geombld_options& opts)
Gathers various healing results from globals and options into the results structure.

Parameters:
results
results.
opts
options.
o geombld_results_for_change
public bhl_geombld_options * geombld_results_for_change()
Returns analytic solver results.
o get_rot_tol
public double get_rot_tol()
Returns the rotation tolerance value.
o get_scale_tol
public double get_scale_tol()
Returns the scale tolerance value.
o is_analytic_geom_worsened
public logical is_analytic_geom_worsened()
Checks the geometry of the body.

Role: Returns TRUE if the geometry has worsened.
o is_analytic_tangency_good
public logical is_analytic_tangency_good()
Checks analytic tangencies of body.

Role: Returns TRUE if all analytic tangencies are good.
o is_unstable_vertex_good
public logical is_unstable_vertex_good()
Checks unstable vertices of body.

Role: Returns TRUE if all unstable vertices are good.
o log_analytic_details
public void log_analytic_details()
Allows additions to the log list.
o pattern_compatible
public virtual logical pattern_compatible()const
Returns TRUE if this is pattern compatible.
o print
public void print(FILE* fp)
Prints statistics of the results of the analytic solver subphase to the specified file.

Parameters:
fp
file pointer.
o print_calculate
public void print_calculate(FILE* fp)
Prints statistics of the results of the calculate stage of the analytic solver subphase to the specified file.

Parameters:
fp
file pointer.
o set_do_analytic
public void set_do_analytic(logical use)
Sets a flag indicating whether or not the analytic solver subphase needs to be used.

Role: If TRUE, the analytic solver subphase is used; otherwise, it is not used.

Parameters:
use
use this subphase flag.
o set_globals
public void set_globals()
Initializes various global variables to zero.
o set_rot_tol
public void set_rot_tol(double r)
Sets the rotation tolerance to the specified value.

Parameters:
r
tolerance value to set (radians).
o set_scale_tol
public void set_scale_tol(double s)
Sets the scale tolerance to the specified value.

Parameters:
s
tolerance to use (radians).
o set_tol
public void set_tol(double t)
Sets the tolerance used by the analytic solver subphase.

Parameters:
t
tolerance to use (radians).
o set_tolerances
public void set_tolerances()
Sets the tolerance used by the analytic solver subphase.
o sprint
public void sprint(char* str)
Prints statistics of the results of the analytic solver subphase to the specified string.

Parameters:
str
character string.
o sprint_calculate
public void sprint_calculate(char* str)
Prints statistics of the results of the calculate stage of the analytic solver subphase to the specified string.

Parameters:
str
character string.
o tol
public double tol()
Gets the current value of the analytic solver subphase tolerance.

Data Members


o HH_SurfSnap_Type
  public HH_SurfSnap_Node_Type HH_SurfSnap_Type
Identifies node of type HH_SurfSnap.
o HH_Unstable_Snap_Type
  public HH_SurfSnap_Node_Type HH_Unstable_Snap_Type
Identifies node of type HH_Unstable_SurfSnap.
o anal_options
  public hh_anal_solv_options anal_options
A Structure which contains options and tolerances for their analytic solver module.
o bhl_anal_sol_coin_resolved
  public int bhl_anal_sol_coin_resolved
Number of coincident faces resolved.
o bhl_anal_sol_coin_unresolved
  public int bhl_anal_sol_coin_unresolved
Number of coincident faces unresolved.
o bhl_anal_sol_degree
  public int bhl_anal_sol_degree
The degree of the analytic tangency graph.
o bhl_anal_sol_tang_resolved
  public int bhl_anal_sol_tang_resolved
Number of analytic tangencies resolved.
o bhl_anal_sol_tang_unresolved
  public int bhl_anal_sol_tang_unresolved
Number of analytic tangencies un-resolved.
o bhl_anal_sol_unst_vert
  public int bhl_anal_sol_unst_vert
Number of unstable vertices fixed.
o bhl_anal_solver_stage
  public int bhl_anal_solver_stage
A flag to denote the current stage of the analytic solver.
o bhl_do_uv_tan_graph
  public logical bhl_do_uv_tan_graph
Option for setting uv_tan_grph solver.
o bhl_snap_check
  public logical bhl_snap_check
Option to denote if the simple snap correction at the end of the analytic solver is on or off.
o bhl_snap_doub_tol
  public double bhl_snap_doub_tol
The maximum tolerance for scaling beyond which no analytic face is scaled.
o bhl_snap_main
  public logical bhl_snap_main
Option to denote if the main part of the analytic solver is on/off.
o bhl_snap_pos_tol
  public double bhl_snap_pos_tol
The maximum tolerance for translation beyond which no analytic face is translated.
o bhl_unstable_vert
  public logical bhl_unstable_vert
Option to denote if the unstable vertex part of the analytic solver is on or off.
o bhlabs
  public double bhlabs
Minimum translation deviation for the analytic solver.
o bhlmch
  public double bhlmch
Minimum scale deviation for the analytic solver.
o bhlnor
  public double bhlnor
Minimum rotation deviation for the analytic solver.
o m_analytic_geom_worsened
  public int m_analytic_geom_worsened
Option to denote if the geometry has worsened.

This object is included in the file: hanalsol.hxx

Copyright (c) 1989-2007 by Spatial Corp. All rights reserved.