Board  0.9.4
Functions
PathBoundaries.cpp File Reference

@copyright This source code is part of the Board project, a C++ library whose purpose is to allow simple drawings in EPS, FIG or SVG files. Copyright (C) 2007 Sebastien Fourey http://foureys.users.greyc.fr/ More...

#include "BoardConfig.h"
#include "board/PathBoundaries.h"
#include "board/Shapes.h"

Functions

bool LibBoard::Tools::isASharpCorner (Point p1, Point p2, Point p3)
 
double LibBoard::Tools::sharpCornerAngle (Point p1, Point p2, Point p3)
 
Point LibBoard::Tools::intersection (EuclideanLine l1, EuclideanLine l2)
 
Point LibBoard::Tools::exteriorMiterIntersection (Point p1, Point p2, Point p3, double strokeWidth)
 
Point LibBoard::Tools::interiorMiterIntersection (Point p1, Point p2, Point p3, double strokeWidth)
 
void LibBoard::Tools::exteriorBevelIntersection (Point p1, Point p2, Point p3, double strokeWidth, Point &a, Point &b)
 
std::vector< Point > LibBoard::Tools::exteriorRoundIntersection (Point p1, Point p2, Point p3, double strokeWidth)
 
void LibBoard::Tools::butCapExtremities (Point p1, Point p2, double strokeWidth, Point &a, Point &b)
 
void LibBoard::Tools::squareCapExtremities (Point p1, Point p2, double strokeWidth, Point &a, Point &b)
 
std::vector< Point > LibBoard::Tools::roundCapExtremities (Point p1, Point p2, double strokeWidth)
 
std::vector< Point > LibBoard::Tools::pathBoundaryPoints (const Path &path, double strokeWidth, Shape::LineCap lineCap, Shape::LineJoin lineJoin, double miterLimit=4.0)
 
Rect LibBoard::Tools::pathBoundingBox (const Path &path, double strokeWidth, Shape::LineCap lineCap, Shape::LineJoin lineJoin, double miterLimit=4.0)
 

Detailed Description

@copyright This source code is part of the Board project, a C++ library whose purpose is to allow simple drawings in EPS, FIG or SVG files. Copyright (C) 2007 Sebastien Fourey http://foureys.users.greyc.fr/

Author
Sebastien Fourey (GREYC)
Date
Nov 2008

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/.