Logo Search packages:      
Sourcecode: inkscape version File versions

sbasis-geometric.h File Reference


Detailed Description

two-dimensional geometric operators.

Copyright 2007, JFBarraud Copyright 2007, njh

These operators are built on a more 'polynomially robust' transformation to map a function that takes a [0,1] parameter to a 2d vector into a function that takes the same [0,1] parameter to a unit vector with the same direction.

Rather that using (X/sqrt(X))(t) which involves two unstable operations, sqrt and divide, this approach forms a curve directly from the various tangent directions at each end (angular jet). As a result, the final path has a convergence behaviour derived from that of the sin and cos series. -- njh

Definition in file sbasis-geometric.h.

#include <2geom/d2.h>
#include <2geom/piecewise.h>
#include <vector>

Go to the source code of this file.

Namespaces

namespace  Geom

Functions

Piecewise< D2< SBasis > > Geom::arc_length_parametrization (Piecewise< D2< SBasis > > const &M, unsigned order, double tol)
Piecewise< D2< SBasis > > Geom::arc_length_parametrization (D2< SBasis > const &M, unsigned order, double tol)
Piecewise< SBasis > Geom::arcLengthSb (Piecewise< D2< SBasis > > const &M, double tol)
Piecewise< SBasis > Geom::arcLengthSb (D2< SBasis > const &M, double tol)
Piecewise< SBasis > Geom::atan2 (Piecewise< D2< SBasis > > const &vect, double tol, unsigned order)
Piecewise< SBasis > Geom::atan2 (D2< SBasis > const &vect, double tol, unsigned order)
unsigned Geom::centroid (Piecewise< D2< SBasis > > const &p, Point &centroid, double &area)
std::vector< D2< SBasis > > Geom::cubics_fitting_curvature (Point const &M0, Point const &M1, Point const &dM0, Point const &dM1, Point const &d2M0, Point const &d2M1, int insist_on_speed_signs, double epsilon)
std::vector< D2< SBasis > > Geom::cubics_fitting_curvature (Point const &M0, Point const &M1, Point const &dM0, Point const &dM1, double d2M0xdM0, double d2M1xdM1, int insist_on_speed_signs, double epsilon)
 returns the cubics fitting direction and curvature of a given input curve at two points.
std::vector< D2< SBasis > > Geom::cubics_with_prescribed_curvature (Point const &M0, Point const &M1, Point const &dM0, Point const &dM1, double k0, double k1, int insist_on_speed_signs, double epsilon)
Piecewise< SBasis > Geom::curvature (Piecewise< D2< SBasis > > const &V, double tol)
Piecewise< SBasis > Geom::curvature (D2< SBasis > const &M, double tol)
Piecewise< D2< SBasis > > Geom::cutAtRoots (Piecewise< D2< SBasis > > const &M, double ZERO)
std::vector< double > Geom::find_tangents (Point P, D2< SBasis > const &A)
 returns all the parameter values of A whose tangent passes through P.
double Geom::length (Piecewise< D2< SBasis > > const &s, double tol)
double Geom::length (D2< SBasis > const &s, double tol)
void Geom::length_integrating (D2< SBasis > const &B, double &result, double &abs_error, double tol)
D2< Piecewise< SBasis > > Geom::tan2 (Piecewise< SBasis > const &angle, double tol, unsigned order)
D2< Piecewise< SBasis > > Geom::tan2 (SBasis const &angle, double tol, unsigned order)
Piecewise< D2< SBasis > > Geom::unitVector (Piecewise< D2< SBasis > > const &V, double tol, unsigned order)
Piecewise< D2< SBasis > > Geom::unitVector (D2< SBasis > const &V_in, double tol, unsigned order)


Generated by  Doxygen 1.6.0   Back to index