Inheritance diagram for oaShape:
Public Methods | |
oaLPPHeader * | getHeader () const |
oaLayerNum | getLayerNum () const |
oaPurposeNum | getPurposeNum () const |
oaRouteStatus | getRouteStatus () const |
oaBitNet * | getShieldedNet1 () const |
oaBitNet * | getShieldedNet2 () const |
oaBoolean | isUnShielded () const |
void | setLPP (oaLayerNum layerNum, oaPurposeNum purposeNum) |
void | setLayerNum (oaLayerNum layerNum) |
void | setPurposeNum (oaPurposeNum purposeNum) |
void | setRouteStatus (const oaRouteStatus &routeStatus) |
void | setShieldedNet1 (oaBitNet *net) |
void | setShieldedNet2 (oaBitNet *net) |
void | setUnShielded (oaBoolean unShielded) |
void | transform (oaDouble scale, oaDouble angle) |
oaCollection< oaRoute, oaShape > | getConnRoutes () const |
Public Types | |
enum | { dtIndex = oacShapeDataType } |
All shapes are placed on an oaLayer and an oaPurpose. The design API identifies these by the layer and purpose numbers. The corresponding names are found in the technology database.
Optionally, shapes can also belong to either an oaNet or an oaPin to provide part of the physical implementation of that object.
The oaShape class can be observed by deriving from oaObserver<oaShape>.
|
This function returns a collection of routes that are connected to this shape. Each route in the collection has this shape as either its startConn, endConn, or both. |
|
This function returns the layer/purpose pair header associated with this shape.
|
|
This function returns the layer number associated with this shape.
|
|
This function returns the purpose number associated with this shape.
|
|
This function returns the route status of this shape.
|
|
This function returns the first net that this shape is shielding. A shape may shield up to two nets. |
|
This function returns the second net that this shape is shielding. A shape may shield up to two nets. |
|
This function returns true if this shape is not shielded. |
|
This function moves this shape to the specified layer number. The new layer/purpose pair is created if it does not exist. The old layer/purpose pair is deleted if it becomes empty.
|
|
This function moves this shape to the specified layer/purpose pair. The new layer/purpose pair is created if it does not exist. The old layer/purpose pair is deleted if it becomes empty.
|
|
This function moves this shape to the specified purpose number. The new layer/purpose pair is created if it does not exist. The old layer/purpose pair is deleted if it becomes empty.
|
|
This function sets the route status attribute of this shape to the specified oaRouteStatus value.
|
|
This function sets the first shielded net for this shape to the specified bit net. A shape may shield up to two nets. A NULL pointer resets the attribute. Exceptions are thrown if the net is not in the same database as this shape.
|
|
This function sets the second shielded net for this shape to the specified bit net. A shape may shield up to two nets. A NULL pointer resets the attribute. Exceptions are thrown if the net is not in the same database as this shape.
|
|
This function sets the unShielded attribute of this shape to the specified value.
|
|
This function transforms this shape by the specified scale factor and rotation angle. The rotation angle is specified in radians. When the angle is not a multiple of Pi/2, rectangles are converted to polygons. PathSegs have a more specilized nature and can only be rotated by angles that are a multiple of Pi/2 to ensure that the orthogonal/diagonal nature of the pathSeg is preserved. For ellipses and arcs, the transform is applied to their control points, and for both, their control points are based upon the bounding box. When a non-90-degree transform is applied to a box, it is applied to each corner of the box. The bounding box from the resulting points is then applied to the ellipse or the arc. It is the caller's responsibility to scale and rotate instances. |
|
|
Copyright © 2002 - 2010 Cadence Design Systems, Inc.
All Rights Reserved.