Home

phlv5_options Class Reference
[Precise Hidden Line Removal V5]

Specifies options for hidden line removal. More...

#include <phlv5_opts.hxx>

Inheritance diagram for phlv5_options:

Inheritance graph
[legend]
Collaboration diagram for phlv5_options:

Collaboration graph
[legend]

List of all members.

Public Member Functions

phlv5_hidden_line_style get_hidden_line_style ()
 Gets the current hidden line style.
double get_resolution ()
 Gets the resolution.
double get_sag_resolution ()
 Gets the sag resolution.
logical get_self_calibrate ()
 Gets the self-calibration option.
double get_smooth_cosine ()
 Gets the cosine of the angle between the two edges.
logical get_use_approx_surface ()
 Gets the surface approximation option.
 phlv5_options ()
 C++ initialize constructor.
void set_hidden_line_style (phlv5_hidden_line_style _in_style)
 Sets the hidden line style.
void set_resolution (double in_resolution)
 Sets the resolution.
void set_sag_resolution (double in_resolution)
 Sets the sag resolution.
void set_self_approx_surface (logical in_use_approx_surface)
 Sets the surface approximation flag.
void set_self_calibrate (logical in_self_calibrate)
 Sets the self-calibration option.
void set_smooth_cosine (double smooth_angle)
 Sets the cosine of the angle at which two faces can meet and still be considered tangentially smooth.
 ~phlv5_options ()
 C++ destructor.


Detailed Description

Specifies options for hidden line removal.


Role: Options for hidden line removal are supplied to APIs via this class. Use the "set" and "get" methods to build the object with the desired option settings, then pass this as the last argument to api_phlv5_compute.

The options that may be set are:

Resolution The smallest meaningful quantity in PHLV5. Reduce this value if you are viewing parts modeled in very small coordinates. The default is 0.001.
Sag Resolution The resolution used to determine if two lines are occluding each other or not. The default is 0.02.
Self-Calibration If this is TRUE, PHLV5 computes its own resolution values based on the model size. This is highly recommended. The default is TRUE.
smooth_cosine Sets the cosine of the angle at which two faces can meet and still be considered tangentially smooth. A value of 1.0 will produce no smooth edges and essentially turns the option off (default). A value of 0.95 will trap reasonably smooth edges.
Surface Approximation If this is TRUE, PHLV5 uses the approximations of the surface instead of the actual procedural surface. The default is TRUE.

The hidden line style can also be set in phlv5_options. However, it is used in the Scheme interface; it is ignored by api_phlv5_compute.


Constructor & Destructor Documentation

phlv5_options::phlv5_options (  ) 

C++ initialize constructor.

phlv5_options::~phlv5_options (  ) 

C++ destructor.


Member Function Documentation

phlv5_hidden_line_style phlv5_options::get_hidden_line_style (  )  [inline]

Gets the current hidden line style.



Role: The hidden line style is used in the Scheme interface; it is ignored by api_phlv5_compute.

double phlv5_options::get_resolution (  )  [inline]

Gets the resolution.

double phlv5_options::get_sag_resolution (  )  [inline]

Gets the sag resolution.

logical phlv5_options::get_self_calibrate (  )  [inline]

Gets the self-calibration option.

double phlv5_options::get_smooth_cosine (  )  [inline]

Gets the cosine of the angle between the two edges.

logical phlv5_options::get_use_approx_surface (  )  [inline]

Gets the surface approximation option.

void phlv5_options::set_hidden_line_style ( phlv5_hidden_line_style  _in_style  )  [inline]

Sets the hidden line style.



Role: The hidden line style is used in the Scheme interface; it is ignored by api_phlv5_compute.

Parameters:
_in_style style to use.

void phlv5_options::set_resolution ( double  in_resolution  )  [inline]

Sets the resolution.



Parameters:
in_resolution resolution.

void phlv5_options::set_sag_resolution ( double  in_resolution  )  [inline]

Sets the sag resolution.



Parameters:
in_resolution sag resolution.

void phlv5_options::set_self_approx_surface ( logical  in_use_approx_surface  )  [inline]

Sets the surface approximation flag.



Parameters:
in_use_approx_surface surface approx flag.

void phlv5_options::set_self_calibrate ( logical  in_self_calibrate  )  [inline]

Sets the self-calibration option.



Parameters:
in_self_calibrate self-cal flag.

void phlv5_options::set_smooth_cosine ( double  smooth_angle  )  [inline]

Sets the cosine of the angle at which two faces can meet and still be considered tangentially smooth.



Parameters:
smooth_angle cosine of the angle between the two edges.