Class RecursiveShapeIterator (version 0.20)Description: An iterator delivering shapes that touch or overlap the given region recursively
The iterator can be obtained from a layout, specifying a starting cell, a layer and optionally a region.
It simplifies retrieval of shapes from a geometrical region while considering
subcells as well.
Some options can be specified, i.e. the level to which to look into or
shape classes and shape properties. The shapes are retrieved by using the shape method,
next moves to the next shape and at_end tells, if the iterator has move shapes to deliver. Layout offers three methods to get these iterators: begin_shapes, begin_shapes_touching and begin_shapes_overlapping. This class has been introduced in version 0.18.
Class overview
Index
Method Overview
Description: Comparison of iterators - inequality
Two iterators are not equal if they do not point to the same shape.
Description: Comparison of iterators - equality
Two iterators are equal if they point to the same shape.
Description: Assign the contents of another object to self This method assigns the contents of another object to self. This is a deep copy that does not only copy the reference but the actual content.
Description: End of iterator predicate
Returns true, if the iterator is at the end of the sequence
Description: Get the current cell's index
Description: Explicitly destroy the object Explicitly destroy the object on C++ side if it was owned by the Ruby interpreter. Subsequent access to this object will throw an exception.
If the object is not owned by Ruby, this method will do nothing.
Description: Tell, if the object was destroyed This method returns true, if the object was destroyed, either explicitly or by the C++ side.
The latter may happen, if the object is owned by a C++ object which got destroyed itself.
Description: Creates a copy of self.
Description: Get the current transformation by which the shapes must be transformed into the initial cell
The shapes delivered are not transformed. Instead, this transformation must be applied to
get the shape in the coordinate system of the top cell.
This method delivers the integer version which is not accurate in the strict sense but delivers
integer coordinate shapes. This method is somewhat slower than the 'trans' method.
Description: Specify the maximum hierarchy depth to look into
A depth of 0 instructs the iterator to deliver only shapes from the initial cell.
The depth must be specified before the shapes are being retrieved.
Description: Increment the iterator This moves the iterator to the next shape inside the search scope.
[const] Shape shape
Description: Get the current shape
Returns the shape currently referred to by the recursive iterator.
This shape is not transformed yet and is located in the current cell.
Description: Specify the shape selection flags
The flags are the same then being defined in Shapes (the default is Shapes.s_all).
The flags must be specified before the shapes are being retrieved.
Description: Get the current transformation by which the shapes must be transformed into the initial cell
The shapes delivered are not transformed. Instead, this transformation must be applied to
get the shape in the coordinate system of the top cell.
|