31.01.2014 Views

Version 5.0 The LEDA User Manual

Version 5.0 The LEDA User Manual

Version 5.0 The LEDA User Manual

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

14.28 Segment of Rational Circle ( r circle segment<br />

)<br />

1. Definition<br />

An instance cs of type r circle segment is a segment of a rational circle (see Section 14.14),<br />

i.e. a circular arc. A segment is called trivial if it consists of a single point. A non-trivial<br />

instance cs is defined by two points s and t (of type r circle point) and an oriented circle<br />

c (of type rat circle) such that c contains both s and t. We call s and t the source and<br />

the target of cs, and c is called its supporting circle. We want to point out that the circle<br />

may be a line, which means that cs is a straight line segment. An instance cs is called<br />

degenerate, if it is trivial or a straight line segment.<br />

#include < <strong>LEDA</strong>/geo/r circle segment.h ><br />

2. Creation<br />

r circle segment cs;<br />

creates a trivial instance cs with source and target equal to the<br />

point (0, 0).<br />

r circle segment cs(const r circle point& src, const r circle point& tgt,<br />

const rat circle& c);<br />

creates an instance cs with source src, target tgt and supporting<br />

circle c.<br />

Precondition: src ≠ tgt, c is not trivial and contains src and tgt.<br />

r circle segment cs(const r circle point& src, const r circle point& tgt,<br />

const rat line& l);<br />

creates an instance cs with source src, target tgt and supporting<br />

line l.<br />

Precondition: src ≠ tgt, l contains src and tgt.<br />

r circle segment cs(const rat point& src, const rat point& middle, const rat point& tgt);<br />

creates an instance cs with source src and target tgt which passes<br />

through middle.<br />

Precondition: the three points are distinct.<br />

r circle segment cs(const r circle point& p);<br />

creates a trivial instance cs with source and target equal to p.<br />

r circle segment cs(const rat point& rat pnt);<br />

creates a trivial instance cs with source and target equal to rat pnt.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!