KiCad PCB EDA Suite
Loading...
Searching...
No Matches
oval.h
Go to the documentation of this file.
1/*
2 * This program source code file is part of KiCad, a free EDA CAD application.
3 *
4 * Copyright The KiCad Developers, see AUTHORS.txt for contributors.
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2
9 * of the License, or (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <https://www.gnu.org/licenses/>.
18 */
19
20#pragma once
21
22#include <vector>
23
26
33
35
36namespace KIGEOM
37{
38
39SHAPE_LINE_CHAIN ConvertToChain( const SHAPE_SEGMENT& aOval );
40
41
52
53using OVAL_KEY_POINT_FLAGS = unsigned int;
54
69std::vector<TYPED_POINT2I> GetOvalKeyPoints( const SHAPE_SEGMENT& aOval, OVAL_KEY_POINT_FLAGS aFlags );
70
71} // namespace KIGEOM
Represent a polyline containing arcs as well as line segments: A chain of connected line and/or arc s...
std::vector< TYPED_POINT2I > GetOvalKeyPoints(const SHAPE_SEGMENT &aOval, OVAL_KEY_POINT_FLAGS aFlags)
Get a list of interesting points on an oval (rectangle with semicircular end caps)
Definition oval.cpp:46
SHAPE_LINE_CHAIN ConvertToChain(const SHAPE_SEGMENT &aOval)
Definition oval.cpp:31
OVAL_KEY_POINTS
Definition oval.h:43
@ OVAL_SIDE_ENDS
Definition oval.h:48
@ OVAL_CAP_TIPS
Definition oval.h:45
@ OVAL_SIDE_MIDPOINTS
Definition oval.h:47
@ OVAL_ALL_KEY_POINTS
Definition oval.h:50
@ OVAL_CARDINAL_EXTREMES
Definition oval.h:49
@ OVAL_CENTER
Definition oval.h:44
@ OVAL_CAP_CENTERS
Definition oval.h:46
unsigned int OVAL_KEY_POINT_FLAGS
Definition oval.h:53