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

ccGenOffsetFig

ccGenOffsetFig(
o_path
g_lpp
?side t_side
[ ?inner n_value | ?outer n_value | ?inner n_value | ?outer n_value ]
)
=> o_shape / nil

Description

(Virtuoso Photonics Option) Creates a new ccShape in the same cellview as the specified path on the specified layer-purpose pair. This shape is constructed by connecting two offsets of the edge of the specified path by using the inner and outer values, respectively, with two facets. The origins of these facets are the same as the origins of the facets of the specified path.

Arguments

o_path

ID of a ccPath object.

The edges and facets of this path are used to generate an offset ccShape.

g_lpp

A layer or a layer-purpose pair in the specified cellview in the following format:

tx_layer | (tx_layer tx_purpose)

?side t_side

Defines the edge and offset direction.

Valid values: "left", "right"

?inner n_value | ?outer n_value | ?inner n_value | ?outer n_value

The inner and outer offset values.

The values for the offset can be both negative and positive. The default is 0.

A positive offset value implies that the offset direction of the specified side is to the right, and a negative value implies that it is to the left.

This is an optional value, however, the value for the inner offset should be less than the value of the outer offset. Therefore, one of these values need to be specified.

Value Returned

o_shape

ID of the created ccShape.

nil

An error occurred.

Example

Creates a ccPath with a varying discontinuous width.

path = ccCreatePath(
  deGetCellView()
  "y0"
  list(
    list(ccCreateCurve("t" "0" -1:0) list(0:0 0) 0.2)
    list(ccCreateCurve("t" "0"  0:2) list(0:0 0) "0.2+t/10")
    list(ccCreateCurve("t" "0"  0:1) list(2:0 0) 0.3)
  )
)

Creates a shape from the left edge of the path offset by 0.1 to the left and the left edge of the path connected with facets:

ccGenFigs(ccGenOffsetFig(path "y1" ?side "left" ?outer 0.1))

Creates a shape from the right edge of the path offset by 0.2 to the left and the right edge of the path offset by 0.3 to the right connected with facets:

ccGenFigs(ccGenOffsetFig(path "y2" ?side "right" ?inner -0.2 ?outer 0.3))

Related Topics

Curvy Core Shape Geometry Functions


Return to top
 ⠀
X