Cannot create a clothoid segment in an Alignment using the Python Script node in Dynamo

Hello everyone,
I’m new to the forum and I would really appreciate any help with an issue I’m currently facing.

I am working on a Dynamo workflow using a Python Script node to automatically create an Alignment in Civil 3D 2025 based on input parameters such as point coordinates, radii, etc.
I am testing with the input data shown in the Excel screenshot.(This alignment includes line, clothoid, and circular curve segments.)

I am using the Python code included in the attachment, but I have not been able to successfully create the clothoid segment.
I have tried using the methods AddFixedSpiral, AddFloatSpiral, and AddFreeSpiral, but none of them worked in my case.

Here is the reference link for the methods I have tried to use:

https://help.autodesk.com/view/CIV3D/2025/JPN/?guid=90669160-1fe2-7af6-eec0-a47a55c1ca50

If anyone has experience or advice regarding creating spiral (clothoid) segments using Civil 3D API within Dynamo, I would really appreciate learning from you.

Thank you very much for your time!

Python Script:

import sys
import clr

clr.AddReference('AcMgd')
clr.AddReference('AcCoreMgd')
clr.AddReference('AcDbMgd')
clr.AddReference('AecBaseMgd')
clr.AddReference('AecPropDataMgd')
clr.AddReference('AeccDbMgd')

import Autodesk.AutoCAD.ApplicationServices as appsvc
import Autodesk.AutoCAD.DatabaseServices as dbsvc
import Autodesk.AutoCAD.Geometry as geom
import Autodesk.Civil.ApplicationServices as c3dappsvc
import Autodesk.Civil.DatabaseServices as c3ddbsvc

fW = dbsvc.OpenMode.ForWrite
adoc = appsvc.Core.Application.DocumentManager.MdiActiveDocument
cdoc = c3dappsvc.CivilApplication.ActiveDocument

doc_lock = adoc.LockDocument()
try:
tr = adoc.Database.TransactionManager.StartTransaction()

label_set_name = 'MLIT_20-線形ラベル セット'
style_name = 'MLIT-線形スタイル'
layer_name = '0'

# Alignment Creating
ID_align = c3ddbsvc.Alignment.Create(cdoc, 'Alignment', '', layer_name, style_name, label_set_name)
align = tr.GetObject(ID_align, fW)

# Points Creating
P0_EP = geom.Point3d(-17.0440, 17.6170, 0)
P1_TS = geom.Point3d(14.2350, -28.3090, 0)
P2_SC = geom.Point3d(44.0580, -68.3980, 0)
P3_CS = geom.Point3d(90.9220, -107.4540, 0)
#P4_ST = geom.Point3d(135.7310, -129.5600, 0)
#P5_TS = geom.Point3d(168.3160, -143.9810, 0)
#P6_SC = geom.Point3d(213.1250, -166.0880, 0)
#P7_CS = geom.Point3d(262.4570, -207.9940, 0)
#P8_ST = geom.Point3d(291.5180, -248.6380, 0)
#P9_EP = geom.Point3d(316.1330, -286.2840, 0)

# Segments Creating
sm0 = align.Entities.AddFixedLine(P0_EP, P1_TS)
sm1 = align.Entities.AddFixedCurve(sm0.EntityId, P1_TS, P2_SC, 200.0, False, False)
sm2 = align.Entities.AddFreeSpiral(sm0.EntityId, sm1.EntityId, 100, SpiralParamType.AValue, SpiralCurveType.InCurve, SpiralType.Clothoid)

tr.Commit()
finally:

doc_lock.Dispose()

OUT = align.Name

1128_Test.dwg (993.1 KB)