Developer documentation | Axl-2.5.1

axlCurveOnParamSurface Class Reference

#include <axlCurveOnParamSurface.h>

Inheritance diagram for axlCurveOnParamSurface:
axlAbstractCurveParametric axlAbstractCurve axlAbstractData

Public Member Functions

 axlCurveOnParamSurface (QObject *parent=0)
 
 ~axlCurveOnParamSurface ()
 
int get_way_create_curve () const
 
void set_way_create_curve (int way)
 
int get_way_present_curve () const
 
void set_way_present_curve (int way)
 
axlAbstractSurfaceParametricget_main_surface () const
 
void set_main_surface (axlAbstractSurfaceParametric *surface)
 
axlAbstractSurfaceParametricget_support_surface () const
 
void set_support_surface (axlAbstractSurfaceParametric *surface)
 
axlAbstractCurveget_support_curve () const
 
axlAbstractCurveget_support_curve ()
 
void set_support_curve (axlAbstractCurve *curve)
 
axlPointget_direction () const
 
axlPointget_direction ()
 
void set_direction (axlPoint *point)
 
void set_direction (const axlPoint &point)
 
axlAbstractCurveget_support_curve_param_domain () const
 
axlAbstractCurveget_support_curve_param_domain ()
 
void set_support_curve_param_domain (axlAbstractCurve *curve)
 
void CreateCurveObject ()
 
virtual QString description (void) const
 
virtual QString identifier (void) const
 
axlCurveOnParamSurfaceoperator= (const axlCurveOnParamSurface &other)
 
- Public Member Functions inherited from axlAbstractCurveParametric
 axlAbstractCurveParametric (void)
 
virtual ~axlAbstractCurveParametric (void)
 
virtual double startParam (void)
 
virtual double endParam (void)
 
virtual axlPoint eval (double u)
 
virtual void eval (axlPoint *point, double u)
 
virtual axlMesh eval (double u, int derivs, bool from_right=true)
 
double parameterOf (const axlPoint &p)
 
virtual double length (double tolerance)
 
virtual int numSamples (void)
 
virtual void setNumSamples (int numSamples)
 
const int & samples (void) const
 
- Public Member Functions inherited from axlAbstractCurve
 axlAbstractCurve (void)
 
virtual ~axlAbstractCurve (void)
 
virtual int dimension (void) const
 
virtual bool isPlanar (void) const
 
virtual void * curve (void)
 
- Public Member Functions inherited from axlAbstractData
 axlAbstractData (axlAbstractData *parent=NULL)
 
 axlAbstractData (const axlAbstractData &data)
 
virtual ~axlAbstractData (void)
 
const QColor & color (void) const
 
const double & opacity (void) const
 
const double & size (void) const
 
const QString & shader (void) const
 
const bool & editable (void)
 
const bool & updateView (void)
 
void setColor (double r, double g, double b)
 
void addField (axlAbstractField *field)
 Add a field to the field list of the object. More...
 
bool updateFieldList (QString nameField)
 Check if a field with the same name is already applied on the object. More...
 
QString changeFieldName (QString fieldName)
 
axlMeshmesh (void)
 Return the mesh of that object is computed. More...
 
void setMesh (axlMesh *mesh)
 Set a corresponding mesh for that object. More...
 
virtual QVariantList convertDataToQVariant (void) const
 Convert an axlAbstractData into a QVariantList that specifies all properties of the axlAbstractData. More...
 
virtual int convertQVariantToData (const QVariantList &data)
 Modify properties and geometry variables of the axlAbstractData. Return 1 if the modification was sucessfully made. Otherwise return 0. More...
 
void setUpdateView (bool updateView)
 
QList< axlAbstractField * > fields (void)
 

Additional Inherited Members

- Public Slots inherited from axlAbstractCurveParametric
virtual void onDirectChanged (bool direct)
 
void setSamples (const int &color)
 
- Public Slots inherited from axlAbstractData
void touchGeometry (void)
 
void touchProperty (void)
 
void touchStructure (void)
 
virtual void touchField (void)
 
void setColor (const QColor &color)
 
void setOpacity (const double &opacity)
 
void setSize (const double &size)
 
void setShader (const QString &shader)
 
void setEditable (bool edit)
 
- Signals inherited from axlAbstractData
void modifiedGeometry (void)
 
void modifiedStructure (void)
 
void modifiedField (void)
 
void modifiedProperty (void)
 
- Properties inherited from axlAbstractCurveParametric
int samples
 
- Properties inherited from axlAbstractData
QColor color
 
double opacity
 
double size
 
QString shader
 

Detailed Description

=========================================================================================================

Author
: Hung NGUYEN , INRIA 2013 - 2014.

: From IGES - page 191 (this number is in pdf file, NOT the page in book):

  • The Curve on a Parametric Surface Entity associates a given curve with a surface and identifies the curve as lying on the surface. If S is a regular parameterized surface whose domain is a rectangle defined by D = {( u,v )| u1 <= u <= u2 and v1 <= v <= v2 )} Let B = B(t) be a curve defined by B(t) = (u(t), v(t)) for a <= t <= b, taking its values in D. A curve Cc(t) on the surface S(u, v) is the composition of two mappings, S and B, defined as: Cc(t) = S o B(t) = (x(u(t),v(t)),y(u(t),v(t)),z(u(t),v(t))) : A curve on a surface may have been created in one of a number of various ways: " 1. as the projection on the surface of a given curve in model space in a prescribed way, for example, parallel to a given fixed vector

    1. as the intersection of two given surfaces
    2. by a prescribed functional relation between the surface parameters u and v
    3. by a special curve, such as a geodesic, emanating from a given point in a certain direction, a principal curve (line of curvature) emanating from a certain point, an asymptotic curve emanating from a certain point, an isoparametric curve for a given value, or any other kind of

      special curve. " (IGES - page 191).


    There are an important variable in this class, way_create_curve. So, be careful when use the methods set_way_create_curve(). Because it will decide what data will be used. See this information below:

value of way_create_curve | Methods | Variable will be used 0 | Unspecified | None of them 1 | Projection of a givencurve on the surface | sup_dir, sup_curve 2 | Intersection of two surfaces | sup_surface

3 | Isoparametric curve | value_u,value_v

Note:

  • in the column 3, others var will be set NULL.
  • sup_dir = support direction, sup_curve = support curve, sup_surface = support surface.
    NOTE:
  • Read carefully about the definition to understand well.
  • When you want to change the way to describe the curve, I recommend to create the new object.
  • At the moment (when I write this line), there are no way to exchange between the way of describing the

    curve.

Definition at line 58 of file axlCurveOnParamSurface.h.

Constructor & Destructor Documentation

axlCurveOnParamSurface::axlCurveOnParamSurface ( QObject *  parent = 0)

Definition at line 30 of file axlCurveOnParamSurface.cpp.

axlCurveOnParamSurface::~axlCurveOnParamSurface ( )

Definition at line 44 of file axlCurveOnParamSurface.cpp.

Member Function Documentation

void axlCurveOnParamSurface::CreateCurveObject ( )

Definition at line 91 of file axlCurveOnParamSurface.cpp.

QString axlCurveOnParamSurface::description ( void  ) const
virtual

Definition at line 162 of file axlCurveOnParamSurface.cpp.

axlPoint & axlCurveOnParamSurface::get_direction ( ) const

Definition at line 61 of file axlCurveOnParamSurface.cpp.

axlPoint* axlCurveOnParamSurface::get_direction ( )
axlAbstractSurfaceParametric & axlCurveOnParamSurface::get_main_surface ( ) const

Definition at line 66 of file axlCurveOnParamSurface.cpp.

axlAbstractCurve & axlCurveOnParamSurface::get_support_curve ( ) const

Definition at line 71 of file axlCurveOnParamSurface.cpp.

axlAbstractCurve * axlCurveOnParamSurface::get_support_curve ( )

Definition at line 76 of file axlCurveOnParamSurface.cpp.

axlAbstractCurve & axlCurveOnParamSurface::get_support_curve_param_domain ( ) const

Definition at line 86 of file axlCurveOnParamSurface.cpp.

axlAbstractCurve * axlCurveOnParamSurface::get_support_curve_param_domain ( )

Definition at line 81 of file axlCurveOnParamSurface.cpp.

axlAbstractSurfaceParametric* axlCurveOnParamSurface::get_support_surface ( ) const
int axlCurveOnParamSurface::get_way_create_curve ( ) const

Definition at line 51 of file axlCurveOnParamSurface.cpp.

int axlCurveOnParamSurface::get_way_present_curve ( ) const

Definition at line 56 of file axlCurveOnParamSurface.cpp.

QString axlCurveOnParamSurface::identifier ( void  ) const
virtual

Definition at line 168 of file axlCurveOnParamSurface.cpp.

axlCurveOnParamSurface & axlCurveOnParamSurface::operator= ( const axlCurveOnParamSurface other)

Definition at line 146 of file axlCurveOnParamSurface.cpp.

void axlCurveOnParamSurface::set_direction ( axlPoint point)

Definition at line 120 of file axlCurveOnParamSurface.cpp.

void axlCurveOnParamSurface::set_direction ( const axlPoint point)

Definition at line 125 of file axlCurveOnParamSurface.cpp.

void axlCurveOnParamSurface::set_main_surface ( axlAbstractSurfaceParametric surface)

Definition at line 115 of file axlCurveOnParamSurface.cpp.

void axlCurveOnParamSurface::set_support_curve ( axlAbstractCurve curve)

Definition at line 130 of file axlCurveOnParamSurface.cpp.

void axlCurveOnParamSurface::set_support_curve_param_domain ( axlAbstractCurve curve)

Definition at line 135 of file axlCurveOnParamSurface.cpp.

void axlCurveOnParamSurface::set_support_surface ( axlAbstractSurfaceParametric surface)

Definition at line 140 of file axlCurveOnParamSurface.cpp.

void axlCurveOnParamSurface::set_way_create_curve ( int  way)

Definition at line 105 of file axlCurveOnParamSurface.cpp.

void axlCurveOnParamSurface::set_way_present_curve ( int  way)

Definition at line 110 of file axlCurveOnParamSurface.cpp.


The documentation for this class was generated from the following files: