Product Documentation
Virtuoso Parameterized Cell SKILL Reference
Product Version IC23.1, August 2023

pcGetOffsetPolygon

pcGetOffsetPolygon(
d_cvId
l_vertex_points
n_offset
)
=> l_vertex_points / nil

Description

Applies the offset to each edge of the polygon to create a list of the vertices for an oversized or undersized version of the polygon. Returns a list of points for the vertices of the offset version of the polygon. This function does not change the original polygon and does not create the offset version of the polygon

Arguments

d_cvId

The database ID of the cellview containing the polygon.

l_vertex_points

A list of lists identifying a polygon in the cellview, where each sublist specifies the coordinates for one vertex. Use the following format: list( '( x y ) '( x y ) ... '( x y ) )

n_offset

An integer or floating-point number; a positive number specifies an oversized polygon, a negative number specifies an undersized polygon.

Value Returned

l_vertex_points

A list of lists specifying the vertices of an oversized or undersized version of the polygon after the offset has been applied. The list is in the following format: ((x y) (x y) ... (x y))

nil

The polygon was not found or the offset was not applied successfully.

Examples

pcGetOffsetPolygon( cv list( '(2.7 2.4) '(8.0 2.4) '(8.0 7.1) '(6.4 7.1) 
'(6.4 4.3) '(2.7 4.3) ) 3.0 )

Oversize the polygon specified in the list by adding 3.0 to every edge, and returns the following points for the un-created oversized polygon:

((-0.3 -0.6)
(11.0 -0.6)
(11.0 10.1
(3.4 10.1)
(3.4 7.3)
(-0.3 7.3)
)

Return to top
 ⠀
X