Glade Reference


VSeg class

A VSeg represents a wiring segment for place&route data. It is a 2 vertex vertical path. A VSeg is normally created by the cellView::dbCreateVSeg() function.

 

VSeg::setPoints(int32_t x1, int32_t y1, int32_t x2, int32_t y2)

Sets the vertices of the VSeg

 

int32_t VSeg::left()

Gets the leftmost X coordinate of a VSeg.

 

int32_t VSeg::right()

Gets the rightmost X coordinate of a VSeg.

 

int32_t VSeg::bottom()

Gets the lowest Y coordinate of a VSeg.

 

int32_t VSeg::top()

Gets the highest Y coordinate of a VSeg.

 

int32_t VSeg::width()

Gets the VSeg width.

 

VSeg::setStyle(int32_t s)

Sets the VSeg style, i.e. the type of the path end. The style can be one of: 0 - truncate, 1 - round, 2 - extend, 4 - varextend, 8 - octagonal. Python global variables TRUNCATE, ROUND, EXTEND, VAREXTEND, OCTAGONAL are defined to these values.

 

int32_t VSeg::getStyle()

Gets the VSeg style.

 

VSeg::setSpecial(bool val)

Sets the VSeg specialNet status

 

VSeg::isSpecial()

Returns true is the VSeg is a specialNet.

 

VSeg::setNet(net *n)

Sets the VSeg net.

 

VSeg::getNet()

Returns the VSeg net.

 

Rect VSeg::bBox()

Get the bounding box of this VSeg.

 

dbtype_t VSeg::objType()

Returns the object type of this VSeg as HSEG.

 

const char * VSeg::objName()

Returns the object name of this VSeg as "HSEG".

 

int32_t VSeg::nPoints()

Returns the number of points of the VSeg (2).

 

Point * VSeg::ptlist()

Returns the point list of this VSeg as a C array of Points.

 

float64_t VSeg::area()

Get the area of this VSeg.

 

int VSeg::.perimeter()

Get the perimeter of this VSeg.

 

Point VSeg::origin()

Returns the origin point of a VSeg

 

VSeg::setOrigin(const Point &p)

Sets the origin of a VSeg.

 

int32_t VSeg::extent()

Returns the extent, i.e. the length of the VSeg.

 

VSeg::setExtent(int32_t e)

Sets the extent of the VSeg.

 

Point VSeg::getFirstVertex()

Gets the first vertex of this VSeg

 

Point VSeg::getLastVertex()

Gets the last vertex of this VSeg.

 

bool VSeg::ptInPoly(const Point &p)

Returns true if the Point p is contained in the VSeg or on its edges.

 

VSeg::Move(cellView dest, Point delta, bool opt = true)

Move this VSeg by distance delta. If opt is true then the database is re-optimised for the new VSeg position. If there are a lot of objects to move it makes sense to turn this off and instead use the cellView update() function after moving them all.

 

dbObj * VSeg::Copy(cellView *dest, Point delta, int layerNum = -1)

Copy this VSeg to cellView dest, with offset delta. If layer is a positive integer the VSeg will be copied to the new layer number.

 

dbObj * VSeg::Flatten(cellView *dest, transform trans)

Flatten this VSeg into cellView dest with transformation trans.

 

int32_t VSeg::getNearestEdge(Point p, segment &edge, bool centreLine=true, bool outLine=true)

Gets the nearest segment edge to the VSeg from the Point p and returns the distance. If centreline is true, the centre line of the VSeg is considered. If outLine is true, the outline edges of the VSeg are considered.

 

int32_t VSeg::getNearestVertex(Point p, vertex> &vert)

Gets the nearest vertex vert to the VSeg from the Point p and returns the distance.

 

const char * VSeg::getNetName()

Returns the VSeg net name as a string.

 

bool VSeg::offGrid(int32_t grid)

Returns true if the VSeg is offgrid.

 

 

Contents|Index

Copyright © Peardrop Design 2024.