pcDraw
pcDraw(
g_device
)
=> t / nil
Description
Creates database objects for the specified SKILL++ Pcell class. This method is implemented for each SKILL++ Pcell class. pcDraw is called by the Pcell source code in pcDefinePCell for the associated Pcell.
Arguments
|
A SKILL++ Pcell class object that is inherited from class |
Value Returned
|
If the database objects are created for a specified SKILL++ Pcell class. |
|
Examples
defmethod( pcDraw ((device RING)) let((cv ringS ringW coreBBox llx lly urx ury pts ring) ringS = pcGetParamSlotValue(device 'ringS)
ringW = pcGetParamSlotValue(device 'ringW)
coreBBox = getCoreBBox(device)
llx = xCoord( lowerLeft(coreBBox))
lly = yCoord( lowerLeft(coreBBox))
urx = xCoord( upperRight(coreBBox))
ury = yCoord( upperRight(coreBBox))
pts = list(
llx-ringS:lly-ringS ; points on inner edges
urx+ringS:lly-ringS
urx+ringS:ury+ringS
llx-ringS:ury+ringS
llx-ringS:lly-ringS-ringW ; extending to outer edge
llx-ringS-ringW:lly-ringS-ringW ; points on outer edges
llx-ringS-ringW:ury+ringS+ringW
urx+ringS+ringW:ury+ringS+ringW
urx+ringS+ringW:lly-ringS-ringW
llx-ringS:lly-ringS-ringW)
; layer is chosen for its color's visibility
cv = slotValue(device 'cvId)
ring = dbCreatePolygon( cv list("Via2" "drawing") pts)
callNextMethod()
)
)
Creates the database objects from SKILL++ Pcell class object, RING.
Return to top