Product Documentation
Virtuoso Studio Design Environment SKILL Reference
Product Version IC23.1, November 2023

ccCreatePolygon

ccCreatePolygon(
d_cellview
l_lpp
l_points
?offset l_offset  
?rotation n_rotation
?genFigs g_genFigs
?tolerance n_tolerance 
) 
=> o_surface | nil

Description

(Virtuoso Photonics Option) Creates a polygon with the specified vertices as the ccSurface in the specified cellview and on the specified layer-purpose pair. The polygon is transformed according to the specified offset and rotation. Optionally, OpenAccess figures (polygons) are created.

Arguments

d_cellViewId

Database ID of a cellview.

l_lpp

A layer or a layer-purpose pair.

tx_layer |  (tx_layer tx_purpose)

l_points

List of points.

list(n_x n_y)

If the list of points do not close the polygon, it is closed automatically.

?offset l_offset

Offset value for the surface.

list(n_lhs n_rhs)

The default is (0,0).

?rotation n_rotation

Rotation angle for the surface.

The default is (0,0).

?genFigs g_genFigs

Specifies whether OpenAccess figures are generated.

The default is t, which means that figures are generated.

?tolerance n_tolerance

Tolerance for the removal of input points. Point will be removed if its distance from the line connecting its two neighboring points is less than n_tolerance. The default is 0.

Value Returned

o_surface

ID of the resulting ccSurface. The polygon is the boundary of the surface.

nil

An error occurred.

Example

cv = geGetEditCellView()
Polygon1 = ccCreatePolygon( cv list("waveguide" "drawing") list( 0:0 10:0 15:5 10:20 5:10 0:5))
cc:0x257b2970
Polygon2 = ccCreatePolygon( cv list("waveguide" "drawing") list( 0:0 10:0 15:5 10:20 5:10 0:5) ?offset 30:30 ?rotation 20.0)
cc:0x30225850

Two polygons are created as shown below:

Related Topics

Curvy Core Shape Creation Functions


Return to top
 ⠀
X