Back to index

texmacs  1.0.7.15
Public Member Functions | Public Attributes
transformed_curve_rep Struct Reference
Inheritance diagram for transformed_curve_rep:
Inheritance graph
[legend]
Collaboration diagram for transformed_curve_rep:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 transformed_curve_rep (frame f2, curve c2)
int nr_components ()
point evaluate (double t)
void rectify_cumul (array< point > &a, double eps)
double bound (double t, double eps)
point grad (double t, bool &error)
double curvature (double t1, double t2)
int get_control_points (array< double > &abs, array< point > &pts, array< path > &cip)
array< pointrectify (double eps)
virtual array< double > find_closest_points (double t1, double t2, point p, double eps)
virtual double find_closest_point (double t1, double t2, point p, double eps, bool &found)

Public Attributes

frame f
curve c
int n
int ref_count

Detailed Description

Definition at line 891 of file curve.cpp.


Constructor & Destructor Documentation

Definition at line 895 of file curve.cpp.

                                            :
    f (f2), c (c2), n (c->nr_components()) {}

Member Function Documentation

double transformed_curve_rep::bound ( double  t,
double  eps 
) [inline, virtual]

Implements curve_rep.

Definition at line 900 of file curve.cpp.

                                      {
    return curve_rep::bound (t, eps);
  }
double transformed_curve_rep::curvature ( double  t1,
double  t2 
) [inline, virtual]

Implements curve_rep.

Definition at line 904 of file curve.cpp.

                                          {
    (void) t1; (void) t2;
    FAILED ("not yet implemented");
    return 0.0;
  }
point transformed_curve_rep::evaluate ( double  t) [inline, virtual]

Implements curve_rep.

Definition at line 898 of file curve.cpp.

{ return f (c (t)); }
double curve_rep::find_closest_point ( double  t1,
double  t2,
point  p,
double  eps,
bool &  found 
) [virtual, inherited]

Definition at line 138 of file curve.cpp.

{
  array<double> res= find_closest_points (t1, t2, p, eps);
  found= N(res)>0;
  if (found)
    return res[0];
  else
    return -1;
}

Here is the call graph for this function:

array< double > curve_rep::find_closest_points ( double  t1,
double  t2,
point  p,
double  eps 
) [virtual, inherited]

Definition at line 125 of file curve.cpp.

{
  array<curvet> res= curvet_closest_points (curve (this), t1, t2, p, eps);
  merge_sort_leq <curvet, less_eq_curvet> (res);
  array<double> rest= array<double> (N(res));
  int i;
  for (i=0; i<N(res); i++)
    rest[i]= res[i].t;
  return rest;
}

Here is the call graph for this function:

Here is the caller graph for this function:

int transformed_curve_rep::get_control_points ( array< double > &  abs,
array< point > &  pts,
array< path > &  cip 
) [virtual]

Reimplemented from curve_rep.

Definition at line 934 of file curve.cpp.

{
  int res= c->get_control_points (abs, pts, cip);
  int i;
  pts= copy (pts);
  for (i=0; i<N(pts); i++)
    pts[i]= f (pts[i]);
  return res;
}

Here is the call graph for this function:

point transformed_curve_rep::grad ( double  t,
bool &  error 
) [virtual]

Implements curve_rep.

Definition at line 925 of file curve.cpp.

                                                  {
  bool error2;
  point w2= c->grad (t, error2);
  point w1= f->jacobian (c(t), w2, error);
  error |= error2;
  return w1;
}
int transformed_curve_rep::nr_components ( ) [inline, virtual]

Reimplemented from curve_rep.

Definition at line 897 of file curve.cpp.

{ return n; }
array< point > curve_rep::rectify ( double  eps) [inherited]

Definition at line 25 of file curve.cpp.

                              {
  array<point> a (1);
  a[0]= evaluate (0.0);
  rectify_cumul (a, eps);
  return a;
}

Here is the call graph for this function:

void transformed_curve_rep::rectify_cumul ( array< point > &  a,
double  eps 
) [virtual]

Implements curve_rep.

Definition at line 914 of file curve.cpp.

                                                                 {
  if (f->linear) {
    double delta= f->direct_bound (c(0.0), eps);
    array<point> b= c->rectify (delta);
    int i, k= N(b);
    for (i=0; i<k; i++) a << f(b[i]);
  }
  else FAILED ("not yet implemented");
}

Here is the call graph for this function:


Member Data Documentation

Definition at line 893 of file curve.cpp.

Definition at line 892 of file curve.cpp.

Definition at line 894 of file curve.cpp.

int abstract_struct::ref_count [inherited]

Definition at line 142 of file basic.hpp.


The documentation for this struct was generated from the following file: