PCB Environment 2
Loading...
Searching...
No Matches
IsoRectEx Class Reference
Inheritance diagram for IsoRectEx:
AShape

Public Member Functions

 IsoRectEx (const Iso_rectangle_2 &base)
 IsoRectEx (Iso_rectangle_2 &&base)
 IsoRectEx (const Bbox_2 &bbox)
AShapeclone () const override
uint vertexCount () const override
Real unsignedArea () const override
Bbox_2 bbox () const override
bool transformPreservesType (const CGAL::Aff_transformation_2< Kernel > &) const override
void transform (const CGAL::Aff_transformation_2< Kernel > &) override
void translate (const ::Vector_2 &) override
AShapetransformType (const CGAL::Aff_transformation_2< Kernel > &) override
bool contains (const ::Point_2 &) const override
Real squared_distance (const AShape &S) const override
Real squared_distance (const ::Point_2 &) const override
Real squared_distance (const Segment_2 &) const override
Real squared_distance (const Circle_2 &C) const override
Real squared_distance (const Triangle_2 &T) const override
Real squared_distance (const Iso_rectangle_2 &) const override
Real squared_distance (const Polygon_2 &) const override
Real squared_distance (const WideSegment_25 &) const override
bool intersects (const AShape &S) const override
bool intersects (const Circle_2 &C) const override
bool intersects (const Triangle_2 &T) const override
bool intersects (const Iso_rectangle_2 &) const override
bool intersects (const Polygon_2 &) const override
bool intersects (const WideSegment_25 &) const override
Real lengthOutside (const Segment_2 &) const
::Point_2 centroid () const override
std::string str () const override
PyObject * getPy () const override
Public Member Functions inherited from AShape
template<typename T>
T * as ()
template<typename T>
const T * as () const
virtual uint indexCountWithRestart () const
virtual bool canDrawAsTriFan () const
virtual bool isRound () const
Real boundingRadius () const
virtual void translate (const Vector_2 &)=0
virtual bool contains (const Point_2 &) const =0
Real squared_distance (const Bbox_2 &) const
bool intersects (const Bbox_2 &) const

Member Function Documentation

◆ bbox()

Bbox_2 IsoRectEx::bbox ( ) const
inlineoverridevirtual

Implements AShape.

◆ centroid()

::Point_2 IsoRectEx::centroid ( ) const
overridevirtual

Implements AShape.

◆ clone()

AShape * IsoRectEx::clone ( ) const
inlineoverridevirtual

Implements AShape.

◆ getPy()

PyObject * IsoRectEx::getPy ( ) const
overridevirtual

Return a Python representation of this object. Formats:

  • ('circle', radius, x, y)
  • ('triangle', v0, v1, v2) where v is (x,y,z)
  • ('rect_iso', xmin, ymin, xmax, ymax)
  • ('wide_segment', x0, y0, x1, y1, z, width)
  • ('polygon', [v0, v1, v2, v3, ...]) where v is (x,y,z)

Implements AShape.

◆ intersects() [1/6]

bool IsoRectEx::intersects ( const AShape & S) const
inlineoverridevirtual

Implements AShape.

◆ intersects() [2/6]

bool IsoRectEx::intersects ( const Circle_2 & C) const
overridevirtual

Implements AShape.

◆ intersects() [3/6]

bool IsoRectEx::intersects ( const Iso_rectangle_2 & ) const
overridevirtual

Implements AShape.

◆ intersects() [4/6]

bool IsoRectEx::intersects ( const Polygon_2 & ) const
overridevirtual

Implements AShape.

◆ intersects() [5/6]

bool IsoRectEx::intersects ( const Triangle_2 & T) const
overridevirtual

Implements AShape.

◆ intersects() [6/6]

bool IsoRectEx::intersects ( const WideSegment_25 & ) const
overridevirtual

Implements AShape.

◆ lengthOutside()

Real IsoRectEx::lengthOutside ( const Segment_2 & ) const

Return the length of the part of the segment outside of this rectangle.

◆ squared_distance() [1/8]

Real IsoRectEx::squared_distance ( const ::Point_2 & ) const
overridevirtual

Implements AShape.

◆ squared_distance() [2/8]

Real IsoRectEx::squared_distance ( const AShape & S) const
inlineoverridevirtual

Implements AShape.

◆ squared_distance() [3/8]

Real IsoRectEx::squared_distance ( const Circle_2 & C) const
overridevirtual

Implements AShape.

◆ squared_distance() [4/8]

Real IsoRectEx::squared_distance ( const Iso_rectangle_2 & ) const
overridevirtual

Implements AShape.

◆ squared_distance() [5/8]

Real IsoRectEx::squared_distance ( const Polygon_2 & ) const
overridevirtual

Implements AShape.

◆ squared_distance() [6/8]

Real IsoRectEx::squared_distance ( const Segment_2 & ) const
overridevirtual

Implements AShape.

◆ squared_distance() [7/8]

Real IsoRectEx::squared_distance ( const Triangle_2 & T) const
overridevirtual

Implements AShape.

◆ squared_distance() [8/8]

Real IsoRectEx::squared_distance ( const WideSegment_25 & ) const
overridevirtual

Implements AShape.

◆ str()

std::string IsoRectEx::str ( ) const
overridevirtual

Implements AShape.

◆ transform()

void IsoRectEx::transform ( const CGAL::Aff_transformation_2< Kernel > & )
overridevirtual

Use transformType() if you are not sure whether the transformation preserves the shape type.

Implements AShape.

◆ transformPreservesType()

bool IsoRectEx::transformPreservesType ( const CGAL::Aff_transformation_2< Kernel > & ) const
overridevirtual

Check whether the transformation would change the shape's underlying type (sorry).

  • Iso_rectangle_2 may become a Polygon_2 when (angle % 90) != 0
  • Circle_2 may become an ellipse when scaled (this is not supported)

Reimplemented from AShape.

◆ transformType()

AShape * IsoRectEx::transformType ( const CGAL::Aff_transformation_2< Kernel > & )
overridevirtual

Transform this shape without restrictions.

Returns
@this or a new AShape.

Reimplemented from AShape.

◆ unsignedArea()

Real IsoRectEx::unsignedArea ( ) const
inlineoverridevirtual

Implements AShape.

◆ vertexCount()

uint IsoRectEx::vertexCount ( ) const
inlineoverridevirtual

For rendering:

Implements AShape.


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