Type difference (Surface, Tinsurface)

Hello,
I used Camber’s node to create a TIN volume surface and converted the TIN volume surface to a surface.
When I used Civil3DToolkit’s “TinSurfaceExtensions.ExtractContoursByElevationsInterval” to create contours from this surface, I got an error that the input type of surface was wrong.
Please tell me how to resolve.

Interesting, can you extract contours before the volume surface? Perhaps make a new list that includes base surface and comparison surface (and perhaps flatten and unique items it) then feed that into the extract contours by interval?

1 Like

Thanks, @KirkWM

I could extract contours before the volume surface.

Also, that method is not the output I’m looking for.
The output I want from the TIN volume surface is the contours at 0 elevation on the volume surface.
(Contour at 0 elevation on volume surface = line of intersection between two surfaces)

I’m aiming to program with Dynamo based on the flow of the post below, but I want to omit 1, 2, and 4.
⇒「Surface Analysis User Defined Contour Data Constructor - ValueError: lineTypeId - #5 by mzjensen

Do you have any suggestions?
By the way, the Civil3D command MINIMUMDISTANCEBETWEENSURFACES cannot be used because it is not implemented in the Civil3D API.

Hi @oh_ruki,

Sorry for the delay, I didn’t see this one come up earlier.

The issue here is that a TIN Volume Surface is actually not a subset of a TIN Surface, which is a little confusing. So even though both of them are subsets of the more-generic “Surface” category, a node that is specific to a TIN Surface cannot be used with a TIN Volume Surface and vice versa. A diagram might help:

Any any nodes for the top box could be used with any of the boxes below it, but nodes that are specific to one of the 4 bottom boxes can only be used within that box. This is how inheritance works in object-oriented programming.

So if the Toolkit node was SurfaceExtensions.ExtractContoursByElevationsInterval, then the approach you mentioned would work. Does that make sense?

2 Likes

Thank you, @mzjensen
I have a good understanding of surface types.

If not using the approach I had in mind, is there a nice way to extract contours from a TIN volume surface?

I don’t know if you need a volume surface to find the intersecting line between two tinn surfaces. Have you tried turning them into dynamo geometry and using geometry.intersect?

@WrightEngineering
Geometry.intersect takes a long time because of the large surface area.
I want to extract intersection lines in a TIN surface in a way that does not make it a geometry.