libslic3r
Library for generating gcode from 3d models
Public Member Functions | Public Attributes | List of all members
Slic3r::Line Class Reference

#include <Line.hpp>

Inheritance diagram for Slic3r::Line:
Slic3r::IntersectionLine Slic3r::ThickLine

Public Member Functions

 Line ()
 
 Line (Point _a, Point _b)
 
std::string wkt () const
 
 operator Lines () const
 
 operator Polyline () const
 
void scale (double factor)
 
void translate (double x, double y)
 
void rotate (double angle, const Point &center)
 
void reverse ()
 
double length () const
 
Point midpoint () const
 
void point_at (double distance, Point *point) const
 
Point point_at (double distance) const
 
bool intersection_infinite (const Line &other, Point *point) const
 
bool coincides_with (const Line &line) const
 
double distance_to (const Point &point) const
 
bool parallel_to (double angle) const
 
bool parallel_to (const Line &line) const
 
double atan2_ () const
 
double orientation () const
 
double direction () const
 
Vector vector () const
 
Vector normal () const
 
void extend_end (double distance)
 
void extend_start (double distance)
 
bool intersection (const Line &line, Point *intersection) const
 
double ccw (const Point &point) const
 

Public Attributes

Point a
 
Point b
 

Constructor & Destructor Documentation

◆ Line() [1/2]

Slic3r::Line::Line ( )
inline

◆ Line() [2/2]

Slic3r::Line::Line ( Point  _a,
Point  _b 
)
inlineexplicit

Member Function Documentation

◆ atan2_()

double Slic3r::Line::atan2_ ( ) const

◆ ccw()

double Slic3r::Line::ccw ( const Point point) const

◆ coincides_with()

bool Slic3r::Line::coincides_with ( const Line line) const

◆ direction()

double Slic3r::Line::direction ( ) const

◆ distance_to()

double Slic3r::Line::distance_to ( const Point point) const

◆ extend_end()

void Slic3r::Line::extend_end ( double  distance)

◆ extend_start()

void Slic3r::Line::extend_start ( double  distance)

◆ intersection()

bool Slic3r::Line::intersection ( const Line line,
Point intersection 
) const

◆ intersection_infinite()

bool Slic3r::Line::intersection_infinite ( const Line other,
Point point 
) const

◆ length()

double Slic3r::Line::length ( ) const

◆ midpoint()

Point Slic3r::Line::midpoint ( ) const

◆ normal()

Vector Slic3r::Line::normal ( ) const

◆ operator Lines()

Slic3r::Line::operator Lines ( ) const

◆ operator Polyline()

Slic3r::Line::operator Polyline ( ) const

◆ orientation()

double Slic3r::Line::orientation ( ) const

◆ parallel_to() [1/2]

bool Slic3r::Line::parallel_to ( double  angle) const

◆ parallel_to() [2/2]

bool Slic3r::Line::parallel_to ( const Line line) const

◆ point_at() [1/2]

void Slic3r::Line::point_at ( double  distance,
Point point 
) const

◆ point_at() [2/2]

Point Slic3r::Line::point_at ( double  distance) const

◆ reverse()

void Slic3r::Line::reverse ( )

◆ rotate()

void Slic3r::Line::rotate ( double  angle,
const Point center 
)

◆ scale()

void Slic3r::Line::scale ( double  factor)

◆ translate()

void Slic3r::Line::translate ( double  x,
double  y 
)

◆ vector()

Vector Slic3r::Line::vector ( ) const

◆ wkt()

std::string Slic3r::Line::wkt ( ) const

Member Data Documentation

◆ a

Point Slic3r::Line::a

◆ b

Point Slic3r::Line::b

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