Create surface from text points

Hi all,

I’m trying to create a surface or cross-sectional curve from a set of text objects, but I’m not sure the best way to go about it. The file is a .dng file that was created from soundings of a navigable waterway, created by the Army Corps of Engineers. The text indicates the depth of water at a certain position, but it’s also positioned at the appropriate height to match the depth. If I can create a point at the center of each text object, and then create a surface and/or cross-sectional curve to represent those points in 3D space, I can create visualizations of the bottom profile, which is my end goal. However, I’m struggling with getting a point cloud from the text objects. I’m also not sure of how best to create a 3D surface from said point cloud, or create cross-sectional curves… though I see there’s a “Section Point Cloud” command that may work for my purposes there?

Any help would be appreciated. Thanks in advance!

livingstone.dgn (7.2 MB)

Did you try to use Command: _SrfPtGrid ?

Hello - here’s a python that will add a point cloud with a point at the center of the bounding box of each selected object - in your example, you might run SelText and then run the script. It will take a while as there are thousands of text objects… then with the points, do what you need - Patch them for example to get a surface.
It looks like in your file there is a compact area with some stuff - I assume that is what you care about the most, then a bunch of stuff including text, spread out all over very far from what I take the be the area of interest - so you’ll need to organize and make sure you only select the texts you care about - looks like selecting by layer may be the way to go. It looks like it will be a little unwieldy making a surface but it should be possible yo get something usable - you may end up trimming the patch surface with some curves from the other layers. Here’s what I came up with, no idea if that is actually the goal …

Livingstone_maybe.3dm (3.2 MB)

If you want the points and not the point cloud, Explode the point cloud.

BBCenter.py (410 Bytes)

To use the Python script use RunPythonScript, or a macro:

_-RunPythonScript "Full path to py file inside double-quotes"

-Pascal