Camber Feedback Thread

get_plines_from_xref.dyn (20.8 KB)
Check this.

6 Likes

Is there a way to import a point group into a camber created tin surface? I have the breaklines worked out and most of the other settings that we are looking for, but Iā€™m having difficulty figuring out how to import our point groups.

Have you tried using TinSurface.ByCogoPointGroup and then adding the breaklines after?

Is there a way to set the style of the surface if I use that node?

You should be able to use CivilObject.SetStyle at any point once you have a TinSurface to work with.

2 Likes

Thanks!

Paul P any chance were you able to find a way around creating data references using the desktop connector in Dynamo? I am running into the same issue.

Hi, unfortunately not. I have only been able to work with data shortcuts which are saved locally.

Hi Friends,
I was looking at a solution in the following thread (link below) and this showed up. What does the box represent?

Iā€™m having the same issue with Corridor.AddCorridorSurface as the OP. My corridor does not have any FeatureLineCodes.

Thanks in advance.

That is the forum converting [ ] to for display purposes.

2 Likes

Going through this entire thread gave quite a lot of Insights. :face_with_peeking_eye:

1 Like

HI there. I am fairly new to dynamo and Iā€™m trying to create an automated way to change Profile1 in the profile view to a profile that i have created. I have all the correct nodes leading up to the profile view but I canā€™t seem to change Profile1. Could you help with this?

Hi @Mish-al.Masoet
This is a thread for feedback for Camber package. Most about issue or bugs in nodes.
If you need help, please create a new thread and add info about your progress, your graph. Also, check the thread about how to get help on the forum.

Hi Zach,

How are you doing?

Any progress on how to set station equations?

I found this on the internet:
https://help.autodesk.com/view/CIV3D/2024/ENU/?guid=dc5ceff9-3365-3945-eb90-9ee4655045a1
But I can not make anything of it how to set it.

(You could help me on the way how to do this in C# or Python. So I can use that in a Python node :wink: )

Thanks.

@mzjensen I have figured it out already.
For adding or deleting StationEquations to your alignment I need to make use of the Add and Del method.

# Load the Python Standard and DesignScript Libraries
import sys
import clr

# Add Assemblies for AutoCAD and Civil3D
clr.AddReference('AcMgd')
clr.AddReference('AcCoreMgd')
clr.AddReference('AcDbMgd')
clr.AddReference('AecBaseMgd')
clr.AddReference('AecPropDataMgd')
clr.AddReference('AeccDbMgd')

# Import references from AutoCAD
from Autodesk.AutoCAD.Runtime import *
from Autodesk.AutoCAD.ApplicationServices import *
from Autodesk.AutoCAD.EditorInput import *
from Autodesk.AutoCAD.DatabaseServices import *
from Autodesk.AutoCAD.Geometry import *

# Import references from Civil3D
from Autodesk.Civil.ApplicationServices import *
from Autodesk.Civil.DatabaseServices import *

# Create an alias to the Autodesk.AutoCAD.ApplicationServices.Application class
#import Autodesk.AutoCAD.ApplicationServices.Application as acapp

# Import references from AutoCAD
from Autodesk.AutoCAD.ApplicationServices import *
from Autodesk.AutoCAD.DatabaseServices import *

# Import references for Civil 3D
from Autodesk.Civil.ApplicationServices import *
from Autodesk.Civil.DatabaseServices import *

adoc = Application.DocumentManager.MdiActiveDocument

def add_sta_eqns(dyn_align, sta_equ_lst, sta_from_lst):
        global adoc

        output = []
        i = 0

        # Get the active document in the AutoCAD session:
        with adoc.LockDocument():
                with adoc.Database as db:
                        with db.TransactionManager.StartTransaction() as t:
                                alignId = dyn_align.InternalObjectId
                                align = t.GetObject(alignId, OpenMode.ForRead)
                                try:
                                        for sta_equ in sta_equ_lst:
                                            stneqn = align.StationEquations.Add(sta_equ, sta_from_lst[i], StationEquationType.Increasing)
                                            i = i + 1
                                            rawBack = stneqn.RawStationBack
                                            back = stneqn.StationBack
                                            ahead = stneqn.StationAhead
                                            output.append({"Raw Station Back": rawBack,"Station Back": back,"Station Ahead": ahead})
                                except Exception() as ex:
                                        MessageBox.Show(ex.message)
        return output


alignment = IN[0]
sta_offset_lst = IN[1]
sta_ahead_lst = IN[2]

OUT = add_sta_eqns(alignment, sta_offset_lst, sta_ahead_lst)

4 Likes

Great to hear! Sorry I couldnā€™t help you out sooner.

No problem at all. Couldnā€™t find it first after a time searching for it. So I dropped it over here. :wink:
And a moment later I found the solution myself :grin:

Hi Zachri, these two External Layout nodes donā€™t seem to be working for me. Everything looks good inside Dynamo, but no actual change in the external drawing. Iā€™m working in C3D 2024.3 with Dynamo v.2.19.4.

Possible API change since these were released?
02

Are you saving at the end?

Just tried again. Saved the .dyn at end of process. Node results look good. Closed the .dyn, opened the external .dwg, no new layout.