API reference - Class Edge

Notation used in Ruby API documentation

Module: db

Description: An edge class

An edge is a connection between points, usually participating in a larger context such as a polygon. An edge has a defined direction (from p1 to p2). Edges play a role in the database as parts of polygons and to describe a line through both points. Although supported, edges are rarely used as individual database objects.

See The Database API for more details about the database objects like the Edge class.

Public constructors

new Edge ptrnew(const DEdge dedge)Creates an integer coordinate edge from a floating-point coordinate edge
new Edge ptrnewDefault constructor: creates a degenerated edge 0,0 to 0,0
new Edge ptrnew(int x1,
int y1,
int x2,
int y2)
Constructor with two coordinates given as single values
new Edge ptrnew(const Point p1,
const Point p2)
Constructor with two points

Public methods

[const]bool!=(const Edge e)Inequality test
[const]Edge*(double scale_factor)Scale edge
[const]bool<(const Edge e)Less operator
[const]bool==(const Edge e)Equality test
[const]Edge ptr_const_castReturns a non-const reference to self.
void_createEnsures the C++ object is created
void_destroyExplicitly destroys the object
[const]bool_destroyed?Returns a value indicating whether the object was already destroyed
[const]bool_is_const_object?Returns a value indicating whether the reference is a const reference
void_manageMarks the object as managed by the script side.
void_unmanageMarks the object as no longer owned by the script side.
voidassign(const Edge other)Assigns another object to self
[const]BoxbboxReturn the bounding box of the edge.
[const]variantclipped(const Box box)Returns the edge clipped at the given box
[const]variantclipped_line(const Box box)Returns the line through the edge clipped at the given box
[const]boolcoincident?(const Edge e)Coincidence check.
[const]boolcontains?(const Point p)Tests whether a point is on an edge.
[const]boolcontains_excl?(const Point p)Tests whether a point is on an edge excluding the endpoints.
[const]boolcrossed_by?(const Edge e)Checks, if the line given by self is crossed by the edge e
[const]Pointcrossing_point(const Edge e)Returns the crossing point on two edges.
[const]variantcut_point(const Edge e)Returns the intersection point of the lines through the two edges.
[const]VectordGets the edge extension as a vector.
[const]intdistance(const Point p)Gets the distance of the point from the line through the edge.
[const]unsigned intdistance_abs(const Point p)Absolute distance between the edge and a point.
[const]new Edge ptrdupCreates a copy of self
[const]intdxThe horizontal extend of the edge.
[const]unsigned intdx_absThe absolute value of the horizontal extend of the edge.
[const]intdyThe vertical extend of the edge.
[const]unsigned intdy_absThe absolute value of the vertical extend of the edge.
Edgeenlarge(const Vector p)Enlarges the edge.
[const]Edgeenlarged(const Vector p)Returns the enlarged edge (does not modify self)
unsigned inteuclidian_distance(const Point p)Gets the distance of the point from the the edge.
Edgeextend(int d)Extends the edge (modifies self)
[const]Edgeextended(int d)Returns the extended edge (does not modify self)
[const]unsigned longhashComputes a hash value
[const]variantintersection_point(const Edge e)Returns the intersection point of two edges.
[const]boolintersects?(const Edge e)Intersection test.
[const]boolis_degenerate?Test for degenerated edge
[const]boolis_parallel?(const Edge e)Test for being parallel
[const]unsigned intlengthThe length of the edge
Edgemove(const Vector p)Moves the edge.
Edgemove(int dx,
int dy)
Moves the edge.
[const]Edgemoved(const Vector p)Returns the moved edge (does not modify self)
[const]Edgemoved(int dx,
int dy)
Returns the moved edge (does not modify self)
[const]unsigned intortho_lengthThe orthogonal length of the edge ("manhattan-length")
[const]Pointp1The first point.
voidp1=(const Point point)Sets the first point.
[const]Pointp2The second point.
voidp2=(const Point point)Sets the second point.
Edgeshift(int d)Shifts the edge (modifies self)
[const]Edgeshifted(int d)Returns the shifted edge (does not modify self)
[const]intside_of(const Point p)Indicates at which side the point is located relative to the edge.
[const]longsq_lengthThe square of the length of the edge
Edgeswap_pointsSwap the points of the edge
[const]Edgeswapped_pointsReturns an edge in which both points are swapped
[const]DEdgeto_dtype(double dbu = 1)Converts the edge to a floating-point coordinate edge
[const]stringto_s(double dbu = 0)Returns a string representing the edge
[const]Edgetransformed(const ICplxTrans t)Transform the edge.
[const]Edgetransformed(const Trans t)Transform the edge.
[const]DEdgetransformed(const CplxTrans t)Transform the edge.
[const]intx1Shortcut for p1.x
voidx1=(int coord)Sets p1.x
[const]intx2Shortcut for p2.x
voidx2=(int coord)Sets p2.x
[const]inty1Shortcut for p1.y
voidy1=(int coord)Sets p1.y
[const]inty2Shortcut for p2.y
voidy2=(int coord)Sets p2.y

Public static methods and constants

new Edge ptrfrom_s(string s)Creates an object from a string

Deprecated methods (protected, public, static, non-static and constructors)

voidcreateUse of this method is deprecated. Use _create instead
voiddestroyUse of this method is deprecated. Use _destroy instead
[const]booldestroyed?Use of this method is deprecated. Use _destroyed? instead
[static]new Edge ptrfrom_dedge(const DEdge dedge)Use of this method is deprecated. Use new instead
[const]boolintersect?(const Edge e)Use of this method is deprecated. Use intersects? instead
[const]boolis_const_object?Use of this method is deprecated. Use _is_const_object? instead
[static]new Edge ptrnew_pp(const Point p1,
const Point p2)
Use of this method is deprecated. Use new instead
[static]new Edge ptrnew_xyxy(int x1,
int y1,
int x2,
int y2)
Use of this method is deprecated. Use new instead
[const]DEdgetransformed_cplx(const CplxTrans t)Use of this method is deprecated. Use transformed instead

Detailed description

!=

Signature: [const] bool != (const Edge e)

Description: Inequality test

e:The object to compare against

*

Signature: [const] Edge * (double scale_factor)

Description: Scale edge

scale_factor:The scaling factor
Returns:The scaled edge

The * operator scales self with the given factor.

This method has been introduced in version 0.22.

Python specific notes:
This method also implements '__rmul__'.

<

Signature: [const] bool < (const Edge e)

Description: Less operator

e:The object to compare against
Returns:True, if the edge is 'less' as the other edge with respect to first and second point

==

Signature: [const] bool == (const Edge e)

Description: Equality test

e:The object to compare against

_const_cast

Signature: [const] Edge ptr _const_cast

Description: Returns a non-const reference to self.

Basically, this method allows turning a const object reference to a non-const one. This method is provided as last resort to remove the constness from an object. Usually there is a good reason for a const object reference, so using this method may have undesired side effects.

This method has been introduced in version 0.29.6.

_create

Signature: void _create

Description: Ensures the C++ object is created

Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created.

_destroy

Signature: void _destroy

Description: Explicitly destroys the object

Explicitly destroys the object on C++ side if it was owned by the script interpreter. Subsequent access to this object will throw an exception. If the object is not owned by the script, this method will do nothing.

_destroyed?

Signature: [const] bool _destroyed?

Description: Returns a value indicating whether the object was already 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.

_is_const_object?

Signature: [const] bool _is_const_object?

Description: Returns a value indicating whether the reference is a const reference

This method returns true, if self is a const reference. In that case, only const methods may be called on self.

_manage

Signature: void _manage

Description: Marks the object as managed by the script side.

After calling this method on an object, the script side will be responsible for the management of the object. This method may be called if an object is returned from a C++ function and the object is known not to be owned by any C++ instance. If necessary, the script side may delete the object if the script's reference is no longer required.

Usually it's not required to call this method. It has been introduced in version 0.24.

_unmanage

Signature: void _unmanage

Description: Marks the object as no longer owned by the script side.

Calling this method will make this object no longer owned by the script's memory management. Instead, the object must be managed in some other way. Usually this method may be called if it is known that some C++ object holds and manages this object. Technically speaking, this method will turn the script's reference into a weak reference. After the script engine decides to delete the reference, the object itself will still exist. If the object is not managed otherwise, memory leaks will occur.

Usually it's not required to call this method. It has been introduced in version 0.24.

assign

Signature: void assign (const Edge other)

Description: Assigns another object to self

bbox

Signature: [const] Box bbox

Description: Return the bounding box of the edge.

clipped

Signature: [const] variant clipped (const Box box)

Description: Returns the edge clipped at the given box

box:The clip box.
Returns:The clipped edge or nil if the edge does not intersect with the box.

This method has been introduced in version 0.26.2.

clipped_line

Signature: [const] variant clipped_line (const Box box)

Description: Returns the line through the edge clipped at the given box

box:The clip box.
Returns:The part of the line through the box or nil if the line does not intersect with the box.

In contrast to clipped, this method will consider the edge extended infinitely (a "line"). The returned edge will be the part of this line going through the box.

This method has been introduced in version 0.26.2.

coincident?

Signature: [const] bool coincident? (const Edge e)

Description: Coincidence check.

e:the edge to test with
Returns:True if the edges are coincident.

Checks whether a edge is coincident with another edge. Coincidence is defined by being parallel and that at least one point of one edge is on the other edge.

contains?

Signature: [const] bool contains? (const Point p)

Description: Tests whether a point is on an edge.

p:The point to test with the edge.
Returns:True if the point is on the edge.

A point is on a edge if it is on (or at least closer than a grid point to) the edge.

contains_excl?

Signature: [const] bool contains_excl? (const Point p)

Description: Tests whether a point is on an edge excluding the endpoints.

p:The point to test with the edge.
Returns:True if the point is on the edge but not equal p1 or p2.

A point is on a edge if it is on (or at least closer than a grid point to) the edge.

create

Signature: void create

Description: Ensures the C++ object is created

Use of this method is deprecated. Use _create instead

Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created.

crossed_by?

Signature: [const] bool crossed_by? (const Edge e)

Description: Checks, if the line given by self is crossed by the edge e

e:The edge representing the line that the edge must be crossing.

self if considered an infinite line. This predicate renders true if the edge e is cut by this line. In other words: this method returns true if e.p1 is in one semispace of self while e.p2 is in the other or one of them is exactly on self.

crossing_point

Signature: [const] Point crossing_point (const Edge e)

Description: Returns the crossing point on two edges.

e:The edge representing the line that self must be crossing.
Returns:The point where self crosses the line given by "e".

This method delivers the point where the given line (self) crosses the edge given by the argument "e". self is considered infinitely long and is required to cut through the edge "e". If self does not cut this line, the result is undefined. See crossed_by? for a description of the crossing predicate.

This method has been introduced in version 0.19.

cut_point

Signature: [const] variant cut_point (const Edge e)

Description: Returns the intersection point of the lines through the two edges.

e:The edge to test.
Returns:The point where the lines intersect.

This method delivers the intersection point between the lines through the two edges. If the lines are parallel and do not intersect, the result will be nil. In contrast to intersection_point, this method will regard the edges as infinitely extended and intersection is not confined to the edge span.

This method has been introduced in version 0.27.1.

d

Signature: [const] Vector d

Description: Gets the edge extension as a vector.

This method is equivalent to p2 - p1. This method has been introduced in version 0.26.2.

destroy

Signature: void destroy

Description: Explicitly destroys the object

Use of this method is deprecated. Use _destroy instead

Explicitly destroys the object on C++ side if it was owned by the script interpreter. Subsequent access to this object will throw an exception. If the object is not owned by the script, this method will do nothing.

destroyed?

Signature: [const] bool destroyed?

Description: Returns a value indicating whether the object was already destroyed

Use of this method is deprecated. Use _destroyed? instead

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.

distance

Signature: [const] int distance (const Point p)

Description: Gets the distance of the point from the line through the edge.

p:The point to test.
Returns:The distance

Returns the distance between the edge and the point. The distance is signed which is negative if the point is to the "right" of the edge and positive if the point is to the "left". The distance is measured by projecting the point onto the line through the edge. If the edge is degenerated, the distance is not defined.

This method considers the edge to define an infinite line running through it. distance returns the distance of 'p' to this line. A similar method is euclidian_distance, but the latter regards the edge a finite set of points between the endpoints.

distance_abs

Signature: [const] unsigned int distance_abs (const Point p)

Description: Absolute distance between the edge and a point.

p:The point to test.
Returns:The distance

Returns the distance between the edge and the point.

dup

Signature: [const] new Edge ptr dup

Description: Creates a copy of self

Python specific notes:
This method also implements '__copy__' and '__deepcopy__'.

dx

Signature: [const] int dx

Description: The horizontal extend of the edge.

dx_abs

Signature: [const] unsigned int dx_abs

Description: The absolute value of the horizontal extend of the edge.

dy

Signature: [const] int dy

Description: The vertical extend of the edge.

dy_abs

Signature: [const] unsigned int dy_abs

Description: The absolute value of the vertical extend of the edge.

enlarge

Signature: Edge enlarge (const Vector p)

Description: Enlarges the edge.

p:The distance to move the edge points.
Returns:The enlarged edge.

Enlarges the edge by the given distance and returns the enlarged edge. The edge is overwritten. Enlargement means that the first point is shifted by -p, the second by p.

enlarged

Signature: [const] Edge enlarged (const Vector p)

Description: Returns the enlarged edge (does not modify self)

p:The distance to move the edge points.
Returns:The enlarged edge.

Enlarges the edge by the given offset and returns the enlarged edge. The edge is not modified. Enlargement means that the first point is shifted by -p, the second by p.

euclidian_distance

Signature: unsigned int euclidian_distance (const Point p)

Description: Gets the distance of the point from the the edge.

p:The point to test.
Returns:The distance

Returns the minimum distance of the point to any point on the edge. Unlike distance, the edge is considered a finite set of points between the endpoints. The result is also not signed like it is the case for distance.

This method has been introduced in version 0.28.14.

extend

Signature: Edge extend (int d)

Description: Extends the edge (modifies self)

d:The distance by which to shift the end points.
Returns:The extended edge (self).

Extends the edge by the given distance and returns the extended edge. The edge is not modified. Extending means that the first point is shifted by -d along the edge, the second by d. The length of the edge will increase by 2*d.

extended is a version that does not modify self but returns the extended edges.

This method has been introduced in version 0.23.

extended

Signature: [const] Edge extended (int d)

Description: Returns the extended edge (does not modify self)

d:The distance by which to shift the end points.
Returns:The extended edge.

Extends the edge by the given distance and returns the extended edge. The edge is not modified. Extending means that the first point is shifted by -d along the edge, the second by d. The length of the edge will increase by 2*d.

extend is a version that modifies self (in-place).

This method has been introduced in version 0.23.

from_dedge

Signature: [static] new Edge ptr from_dedge (const DEdge dedge)

Description: Creates an integer coordinate edge from a floating-point coordinate edge

Use of this method is deprecated. Use new instead

This constructor has been introduced in version 0.25 and replaces the previous static method 'from_dedge'.

Python specific notes:
This method is the default initializer of the object.

from_s

Signature: [static] new Edge ptr from_s (string s)

Description: Creates an object from a string

Creates the object from a string representation (as returned by to_s)

This method has been added in version 0.23.

hash

Signature: [const] unsigned long hash

Description: Computes a hash value

Returns a hash value for the given edge. This method enables edges as hash keys.

This method has been introduced in version 0.25.

Python specific notes:
This method is also available as 'hash(object)'.

intersect?

Signature: [const] bool intersect? (const Edge e)

Description: Intersection test.

e:The edge to test.

Use of this method is deprecated. Use intersects? instead

Returns true if the edges intersect. Two edges intersect if they share at least one point. If the edges coincide, they also intersect. If one of the edges is degenerate (both points are identical), that point is required to sit exaclty on the other edge. If both edges are degenerate, their points are required to be identical.

The 'intersects' (with an 's') synonym has been introduced in version 0.28.12.

intersection_point

Signature: [const] variant intersection_point (const Edge e)

Description: Returns the intersection point of two edges.

e:The edge to test.
Returns:The point where the edges intersect.

This method delivers the intersection point. If the edges do not intersect, the result will be nil.

This method has been introduced in version 0.19. From version 0.26.2, this method will return nil in case of non-intersection.

intersects?

Signature: [const] bool intersects? (const Edge e)

Description: Intersection test.

e:The edge to test.

Returns true if the edges intersect. Two edges intersect if they share at least one point. If the edges coincide, they also intersect. If one of the edges is degenerate (both points are identical), that point is required to sit exaclty on the other edge. If both edges are degenerate, their points are required to be identical.

The 'intersects' (with an 's') synonym has been introduced in version 0.28.12.

is_const_object?

Signature: [const] bool is_const_object?

Description: Returns a value indicating whether the reference is a const reference

Use of this method is deprecated. Use _is_const_object? instead

This method returns true, if self is a const reference. In that case, only const methods may be called on self.

is_degenerate?

Signature: [const] bool is_degenerate?

Description: Test for degenerated edge

An edge is degenerate, if both end and start point are identical.

is_parallel?

Signature: [const] bool is_parallel? (const Edge e)

Description: Test for being parallel

e:The edge to test against
Returns:True if both edges are parallel

length

Signature: [const] unsigned int length

Description: The length of the edge

move

(1) Signature: Edge move (const Vector p)

Description: Moves the edge.

p:The distance to move the edge.
Returns:The moved edge.

Moves the edge by the given offset and returns the moved edge. The edge is overwritten.

(2) Signature: Edge move (int dx, int dy)

Description: Moves the edge.

dx:The x distance to move the edge.
dy:The y distance to move the edge.
Returns:The moved edge.

Moves the edge by the given offset and returns the moved edge. The edge is overwritten.

This version has been added in version 0.23.

moved

(1) Signature: [const] Edge moved (const Vector p)

Description: Returns the moved edge (does not modify self)

p:The distance to move the edge.
Returns:The moved edge.

Moves the edge by the given offset and returns the moved edge. The edge is not modified.

(2) Signature: [const] Edge moved (int dx, int dy)

Description: Returns the moved edge (does not modify self)

dx:The x distance to move the edge.
dy:The y distance to move the edge.
Returns:The moved edge.

Moves the edge by the given offset and returns the moved edge. The edge is not modified.

This version has been added in version 0.23.

new

(1) Signature: [static] new Edge ptr new (const DEdge dedge)

Description: Creates an integer coordinate edge from a floating-point coordinate edge

This constructor has been introduced in version 0.25 and replaces the previous static method 'from_dedge'.

Python specific notes:
This method is the default initializer of the object.

(2) Signature: [static] new Edge ptr new

Description: Default constructor: creates a degenerated edge 0,0 to 0,0

Python specific notes:
This method is the default initializer of the object.

(3) Signature: [static] new Edge ptr new (int x1, int y1, int x2, int y2)

Description: Constructor with two coordinates given as single values

Two points are given to create a new edge.

Python specific notes:
This method is the default initializer of the object.

(4) Signature: [static] new Edge ptr new (const Point p1, const Point p2)

Description: Constructor with two points

Two points are given to create a new edge.

Python specific notes:
This method is the default initializer of the object.

new_pp

Signature: [static] new Edge ptr new_pp (const Point p1, const Point p2)

Description: Constructor with two points

Use of this method is deprecated. Use new instead

Two points are given to create a new edge.

Python specific notes:
This method is the default initializer of the object.

new_xyxy

Signature: [static] new Edge ptr new_xyxy (int x1, int y1, int x2, int y2)

Description: Constructor with two coordinates given as single values

Use of this method is deprecated. Use new instead

Two points are given to create a new edge.

Python specific notes:
This method is the default initializer of the object.

ortho_length

Signature: [const] unsigned int ortho_length

Description: The orthogonal length of the edge ("manhattan-length")

Returns:The orthogonal length (abs(dx)+abs(dy))

p1

Signature: [const] Point p1

Description: The first point.

Python specific notes:
The object exposes a readable attribute 'p1'. This is the getter.

p1=

Signature: void p1= (const Point point)

Description: Sets the first point.

This method has been added in version 0.23.

Python specific notes:
The object exposes a writable attribute 'p1'. This is the setter.

p2

Signature: [const] Point p2

Description: The second point.

Python specific notes:
The object exposes a readable attribute 'p2'. This is the getter.

p2=

Signature: void p2= (const Point point)

Description: Sets the second point.

This method has been added in version 0.23.

Python specific notes:
The object exposes a writable attribute 'p2'. This is the setter.

shift

Signature: Edge shift (int d)

Description: Shifts the edge (modifies self)

d:The distance by which to shift the edge.
Returns:The shifted edge (self).

Shifts the edge by the given distance and returns the shifted edge. The edge is not modified. Shifting by a positive value will produce an edge which is shifted by d to the left. Shifting by a negative value will produce an edge which is shifted by d to the right.

shifted is a version that does not modify self but returns the extended edges.

This method has been introduced in version 0.23.

shifted

Signature: [const] Edge shifted (int d)

Description: Returns the shifted edge (does not modify self)

d:The distance by which to shift the edge.
Returns:The shifted edge.

Shifts the edge by the given distance and returns the shifted edge. The edge is not modified. Shifting by a positive value will produce an edge which is shifted by d to the left. Shifting by a negative value will produce an edge which is shifted by d to the right.

shift is a version that modifies self (in-place).

This method has been introduced in version 0.23.

side_of

Signature: [const] int side_of (const Point p)

Description: Indicates at which side the point is located relative to the edge.

p:The point to test.
Returns:The side value

Returns 1 if the point is "left" of the edge, 0 if on and -1 if the point is "right" of the edge.

sq_length

Signature: [const] long sq_length

Description: The square of the length of the edge

swap_points

Signature: Edge swap_points

Description: Swap the points of the edge

This version modifies self. A version that does not modify self is swapped_points. Swapping the points basically reverses the direction of the edge.

This method has been introduced in version 0.23.

swapped_points

Signature: [const] Edge swapped_points

Description: Returns an edge in which both points are swapped

Swapping the points basically reverses the direction of the edge.

This method has been introduced in version 0.23.

to_dtype

Signature: [const] DEdge to_dtype (double dbu = 1)

Description: Converts the edge to a floating-point coordinate edge

The database unit can be specified to translate the integer-coordinate edge into a floating-point coordinate edge in micron units. The database unit is basically a scaling factor.

This method has been introduced in version 0.25.

to_s

Signature: [const] string to_s (double dbu = 0)

Description: Returns a string representing the edge

If a DBU is given, the output units will be micrometers.

The DBU argument has been added in version 0.27.6.

Python specific notes:
This method is also available as 'str(object)'.

transformed

(1) Signature: [const] Edge transformed (const ICplxTrans t)

Description: Transform the edge.

t:The transformation to apply.
Returns:The transformed edge (in this case an integer coordinate edge).

Transforms the edge with the given complex transformation. Does not modify the edge but returns the transformed edge.

This method has been introduced in version 0.18.

(2) Signature: [const] Edge transformed (const Trans t)

Description: Transform the edge.

t:The transformation to apply.
Returns:The transformed edge.

Transforms the edge with the given transformation. Does not modify the edge but returns the transformed edge.

(3) Signature: [const] DEdge transformed (const CplxTrans t)

Description: Transform the edge.

t:The transformation to apply.
Returns:The transformed edge.

Transforms the edge with the given complex transformation. Does not modify the edge but returns the transformed edge.

transformed_cplx

Signature: [const] DEdge transformed_cplx (const CplxTrans t)

Description: Transform the edge.

t:The transformation to apply.
Returns:The transformed edge.

Use of this method is deprecated. Use transformed instead

Transforms the edge with the given complex transformation. Does not modify the edge but returns the transformed edge.

x1

Signature: [const] int x1

Description: Shortcut for p1.x

Python specific notes:
The object exposes a readable attribute 'x1'. This is the getter.

x1=

Signature: void x1= (int coord)

Description: Sets p1.x

This method has been added in version 0.23.

Python specific notes:
The object exposes a writable attribute 'x1'. This is the setter.

x2

Signature: [const] int x2

Description: Shortcut for p2.x

Python specific notes:
The object exposes a readable attribute 'x2'. This is the getter.

x2=

Signature: void x2= (int coord)

Description: Sets p2.x

This method has been added in version 0.23.

Python specific notes:
The object exposes a writable attribute 'x2'. This is the setter.

y1

Signature: [const] int y1

Description: Shortcut for p1.y

Python specific notes:
The object exposes a readable attribute 'y1'. This is the getter.

y1=

Signature: void y1= (int coord)

Description: Sets p1.y

This method has been added in version 0.23.

Python specific notes:
The object exposes a writable attribute 'y1'. This is the setter.

y2

Signature: [const] int y2

Description: Shortcut for p2.y

Python specific notes:
The object exposes a readable attribute 'y2'. This is the getter.

y2=

Signature: void y2= (int coord)

Description: Sets p2.y

This method has been added in version 0.23.

Python specific notes:
The object exposes a writable attribute 'y2'. This is the setter.