← Inbox

C3D-0314 · 260714 Huckaby: transmission line geometry + linetypes done

READ-ONLY. Transmission/power entities with their linetypes and scales, those layers settings, all loaded linetypes, and LTSCALE/CELTSCALE/PSLTSCALE.

Script file
C3D-0314.cs
Target
260714 - 285 Huckaby Rd R2.dwg · model space
Author
claude
Approved
yes · auto-auth
Timeout
60s

C# payload

// READ-ONLY: the transmission line entities + every linetype available, to match the PDF's
// ---w---w--- power line symbology.
Log("drawing: " + Db.Filename);
var ms = (BlockTableRecord)Tx.GetObject(SymbolUtilityServices.GetBlockModelSpaceId(Db), OpenMode.ForRead);
Log("=== TRANSMISSION / POWER ENTITIES ===");
foreach (ObjectId id in ms) {
    var ent = Tx.GetObject(id, OpenMode.ForRead) as Autodesk.AutoCAD.DatabaseServices.Entity;
    if (ent == null) continue;
    string L = ent.Layer.ToUpper();
    if (L.IndexOf("TRANSMISSION") < 0 && L.IndexOf("POWER") < 0 && L.IndexOf("OHP") < 0 && L.IndexOf("ELEC") < 0) continue;
    var ln = ent as Line;
    var pl = ent as Polyline;
    string geom = "";
    if (ln != null) geom = string.Format("({0:F2},{1:F2})->({2:F2},{3:F2}) len={4:F2}",
        ln.StartPoint.X, ln.StartPoint.Y, ln.EndPoint.X, ln.EndPoint.Y, ln.Length);
    if (pl != null) geom = string.Format("verts={0} len={1:F2} closed={2}", pl.NumberOfVertices, pl.Length, pl.Closed);
    var lt0 = (LinetypeTableRecord)Tx.GetObject(ent.LinetypeId, OpenMode.ForRead);
    Log(string.Format("[{0}] {1,-10} layer={2,-32} ltype={3,-16} ltscale={4:F3} {5}",
        ent.Handle, ent.GetType().Name, ent.Layer, lt0.Name, ent.LinetypeScale, geom));
    if (pl != null) for (int i=0;i<pl.NumberOfVertices;i++){var v=pl.GetPoint2dAt(i);Log(string.Format("     v{0} ({1:F2},{2:F2})",i,v.X,v.Y));}
}
Log("");
Log("=== LAYER SETTINGS for those layers ===");
var lt = (LayerTable)Tx.GetObject(Db.LayerTableId, OpenMode.ForRead);
foreach (ObjectId id in lt) {
    var ltr = (LayerTableRecord)Tx.GetObject(id, OpenMode.ForRead);
    string L = ltr.Name.ToUpper();
    if (L.IndexOf("TRANSMISSION") < 0 && L.IndexOf("POWER") < 0 && L.IndexOf("OHP") < 0 && L.IndexOf("ELEC") < 0) continue;
    var lts = (LinetypeTableRecord)Tx.GetObject(ltr.LinetypeObjectId, OpenMode.ForRead);
    Log(string.Format("{0,-34} ltype={1,-16} color={2} lw={3} frozen={4} off={5}",
        ltr.Name, lts.Name, ltr.Color.ColorIndex, ltr.LineWeight, ltr.IsFrozen, ltr.IsOff));
}
Log("");
Log("=== LINETYPES LOADED ===");
var ltt = (LinetypeTable)Tx.GetObject(Db.LinetypeTableId, OpenMode.ForRead);
foreach (ObjectId id in ltt) {
    var r = (LinetypeTableRecord)Tx.GetObject(id, OpenMode.ForRead);
    Log(string.Format("{0,-22} dashes={1} \"{2}\"", r.Name, r.NumDashes, r.Comments));
}
Log("");
Log("LTSCALE=" + Db.Ltscale + "  CELTSCALE=" + Db.Celtscale + "  PSLTSCALE=" + Db.Psltscale);

Result

Status
success
Drawing file
C:\Users\sanja\Downloads\mike_ACAD-260714 - 285 Huckaby Rd R142.dwg
Message
Executed C3D-0314 (0 entities touched).
Entities
Duration
788 ms
Civil 3D
25.0.0.0

Log

drawing: C:\Users\sanja\Downloads\mike_ACAD-260714 - 285 Huckaby Rd R142.dwg
=== TRANSMISSION / POWER ENTITIES ===
[28] Line       layer=SS-V-TRANSMISSION CENTER LINE    ltype=ByLayer          ltscale=1.000 (2204430.19,1206715.28)->(2203658.52,1207011.55) len=828.76
[2A] Line       layer=SS-V-TRANSMISSION CENTER LINE    ltype=ByLayer          ltscale=1.000 (2203443.93,1207051.59)->(2203658.52,1207011.55) len=218.39
[2E] Line       layer=SS-V-TRANSMISSION CENTER LINE    ltype=ByLayer          ltscale=1.000 (2206388.89,1207398.33)->(2204867.83,1207381.50) len=1521.66
[2F] Line       layer=SS-V-TRANSMISSION CENTER LINE    ltype=ByLayer          ltscale=1.000 (2204867.83,1207381.50)->(2203403.96,1207371.06) len=1464.02

=== LAYER SETTINGS for those layers ===
SS-V-TRANSMISSION CENTER LINE      ltype=Continuous       color=1 lw=ByLineWeightDefault frozen=False off=False

=== LINETYPES LOADED ===
ByBlock                dashes=0 ""
ByLayer                dashes=0 ""
Continuous             dashes=0 "Solid line"
DASHED                 dashes=2 "Dashed __ __ __ __ __ __ __ __ __ __ __ __ __ _"
CENTER                 dashes=4 "Center ____ _ ____ _ ____ _ ____ _ ____ _ ____"
FENCELINE2             dashes=4 "Fenceline square ----[]-----[]----[]-----[]----"
GAS_LINE               dashes=3 "Gas line ----GAS----GAS----GAS----GAS----GAS---"
DASHED4                dashes=2 "_ _ _ _ _ _ _ _ (1/2 of Dashed2)_ _ _ _ _ _ _ _"
ACAD_ISO05W100         dashes=6 "ISO long-dash double-dot ____ .. ____ .. ____ ."
Dash                   dashes=2 "Dash LINE"
FENCELINEX             dashes=3 "Fenceline X ----X-----X----X-----X----X-----X--"
FENCE                  dashes=3 "FENCELINE ---- X ---- X ---- X ----"
DASHED2                dashes=2 "_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _"

LTSCALE=40  CELTSCALE=1  PSLTSCALE=True

Notes

What worked, what didn't, job-specific gotchas — flagged notes feed the recipes.

No notes yet.