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

ccCreateLine

ccCreateLine(
d_cellViewId
l_lpp
g_polyCurveSegments
)
=> o_line / nil

Description

(Virtuoso Photonics Option) Creates a ccLine object at the specified layer-purpose pair of the given cellview from either a ccPolyCurve object or a list of polyCurve segments forming a polyCurve. When list of polyCurve segments is specified the resulting polyCurve should be of class G2, otherwise, the function terminates with an error.

Arguments

d_cellViewId

Database ID of cellview.

l_lpp

tx_layer |  (tx_layer tx_purpose)

A layer or a layer-purpose pair.

g_polyCurveSegmen

o_polyCurve | (l_polyCurveSegment...)

ID of an originating ccPolyCurve (o_polyCurve) or a list of polyCurve segments (l_polyCurveSegment) as specified in ccCreatePolyCurve.

Value Returned

o_line

ID of the resulting ccLine.

nil

An error occurred.

Examples

ccCreateLine(cv "waveguide"
               ccCreatePolyCurve(list(list(ccCreateCurve("cos(t)" "sin(t)"
                -3.14159265:3.14159265)list(0:0 0)))))
=> cc@0x269c83f0
ccCreateLine(cv "waveguide" list(list(ccCreateCurve("t" "1" 0:1) list(0:0 0))
                                 list(ccCreateCurve("t" "1" 2:3) list(0:0 0))))
\e *Error* (CC-200014): Cannot create PolyCurve: required smoothness is G2, but smoothness between segments 0 and 1 is discontinuous: point (1, 1) != (2, 1).

Related Topics

ccCreatePolyCurve

Curvy Core Shape Creation Functions


Return to top
 ⠀
X