Your post got stuck in a dark moderation corner it seems, but here it is…
The pcurve_p2p() calculates a particular spine, zero-width curve in (x, y), and adds a width to it via polyline2polygon() method in util.py. It is a parametric curve with position (x, y) as function of t and it needs to be defined how the width changes along the curve as w(t). The width could for example change with respect of t or with the geometrical distance along the spine, depending on your use case.
The pcurve has no width added to its call at the moment, and therefor you probably will find the viper() method in util.py useful. See this viper example. It allows full freedom in x, y and w as function of t. In a similar way a w(t) may be added to the pcurve.
There is a low-level function that will do it, but it is not yet available for the interconnections.
An example is given here:
import nazca as nd
x = (2 + 15 * t) * math.exp(t)
y = (2 + 20 * t) * math.cos(t * 5)
return (x, y)
xy = [testcurve(t / 200) for t in range(201)]
# The width will increase linearly in the given range, proportional to the
# length of the curve.
XY = nd.util.polyline2polygon(xy, width=0.5, width2=5)