when using the "spot elevation on grid" annotate tool, is there a way to convert those elevations to cogo points
to be used in making a surface?
![]() |
|
![]() |
|
![]() |
|
![]() |
when using the "spot elevation on grid" annotate tool, is there a way to convert those elevations to cogo points
to be used in making a surface?
It would be a process to do such, but it could be done.
You should save your drawing if you need the labels to remain as labels after you are done.
This is also a partial workflow. You will need to determine some steps as you go along.
If you have markers on your labels, you might explode the labels. Then make a selection set using the SELECT command using the "P"revious option. This should select all of the entities created from the EXPLODE command, which if I recall are now blocks. You could then WBLOCK this selection set to a new drawing.
Using this new drawing, you would need to explode the blocks created from the EXPLODE command to get to the simple AutoCAD entities (i.e.: non-Civil 3D entities). Hopefully, you have an AutoCAD Point as part of your label marker. This point should be at the elevation you need to create a new surface.
Another option may be to create a grid based surface and paste the triangle based surface into it. I don't know on this one, but throwing it out there for consideration.
If you have a technical question, please find the appropriate forum and ask it there.
You will get a quicker response from your fellow AUGI members than if you sent it to me via a PM or email.
jUSt
Changing the Surface Elevation Label Style and a manual explode/wblock or export C3D drawing is the simplest thing to get what you need to build a Surface.
From a code standpoint, while Autodesk conveniently provides a Surface property for Surface Elevation Labels, they fail to expose the .NET Location property which would make it easier to extract the Surface's elevation at that point easily with LISP using FindElevationAtXY method... Unless you can create a .NET LispFunction or two to help with that (@RK
).
Without that, you either need .NET API which is rumored to be jumping from .NET Framework 4.8 to .NET 8, or you'd (even in LISP) need to programmatically explode each Surface Elevation Label in memory to either obtain the Text entity value for the elevation, or extract the marker Block's insertion point to extract from Surface with FindElevationAtXY method.
Last edited by BlackBox; 2023-07-17 at 07:27 PM.
"How we think determines what we do, and what we do determines what we get."
Sincpac C3D ~ Autodesk Exchange Apps
Computer Specs:
Dell Precision 3660, Core i9-12900K 5.2GHz, 64GB DDR5 RAM, PCIe 4.0 M.2 SSD (RAID 0), 16GB NVIDIA RTX A4000
Here is a video showing the steps I would use that is similar to Opie's description of workflow: https://youtu.be/HnviYLTnblM I included the step to create COGO Points, but as Opie indicated it is not required.