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

pcStepAlongShape

pcStepAlongShape(
d_shape1Id
l_stepDetails(
l_shape2Points
)
=> t / nil

Description

Replicates a shape (d_shape1Id) along a second shape (l_shape2Points) by specifying a disembodied property list to define the stepping distance, gap between successive replications, starting offset, ending offset, and object type. The pitch is determined by the offset of the origin of d_shape1Id from the point 0:0. You specify the second shape (l_shape2Points) with a list of coordinates.

Arguments

d_shape1

The database ID of the shape to be replicated.

l_stepDetails

Disembodied property list, which is a list that starts with a SKILL data object, in this case, nil, followed by alternating symbol name/value pairs, and is not attached to a specific object or symbol. The attributes contained in the list are:
nil
'step   xf_stepValue
'gap   xf_gapValue
'startOffset   xf_startValue
'endOffset   xf_endValue
'objType   t_objTypeValue
l_shape2Points

List of coordinates specifying the second shape, in one of the following formats:
list( '( x1 y1 ) '( x2 y2 ) ... '( xn yn ) )
'( x1:y1 x2:y2 ... xn:yn )

Value Returned

t

The shape, d_shape1Id, was replicated successfully.

nil

The shape, d_shape1Id, was not replicated successfully.

Examples

shape1 = '( ( -2 0 ( ( -2 2 ) ( -1 2 ) ( -1 1 ) ( 0 1 ) ( 0 0 ) )
shape2 = '( ( -14.0 7.5 ) ( 18.5 18.0 ) ) 
pcStepAlongShape( shape1 
    list( 
      nil 
'step 4.5
'gap 1.5
'startOffset 0
'endOffset 0
'objType shape2~>objType
)
shape2~>bBox
)     => t

Replicates shape1, a polygon, along shape2, a rectangle, with a stepping distance of 1.5, gap of 2, starting offset of 0, and ending offset of 2.


Return to top
 ⠀
X