Page 2 of 2 FirstFirst 12
Results 11 to 18 of 18

Thread: Add Boundary to TIN Surface

  1. #11
    Administrator BlackBox's Avatar
    Join Date
    2009-11
    Posts
    5,719
    Login to Give a bone
    0

    Default Re: Add Boundary to TIN Surface

    Likewise!

    I'm (slowly?) building the routine, piece by piece, right now.

    I tested the elapsed time from building a single floodplain (flat) surface manually, and compared that against my *current* piece-meal automation, and the routine was +/-1 minute to +/-6.4 seconds, respectively. (approx 10 times faster!)

    The performance gains (so far) were even better when stepping through a selection set (thank you vla-zoom*!) of the 16 individual basins (each at a different elevation) for my current sub-phase of work (of 3 phases). Whew! lol

    Again, many thanks!
    "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

  2. #12
    Administrator BlackBox's Avatar
    Join Date
    2009-11
    Posts
    5,719
    Login to Give a bone
    0

    Default Re: Add Boundary to TIN Surface

    Quote Originally Posted by alanjt View Post
    Actually, this will keep you from having to append the point lists.


    Code:
    (defun AT:VertexPointsForArray (e / p l)
      ;; Return point at each vertex of LWPolyline or Polyline (in single list)
      ;; e - LWPolyline, 2DPolyline, 3DPolyline
      ;; Alan J. Thompson, 09.24.10
      (if e
        (repeat (setq p (1+ (fix (vlax-curve-getEndParam e))))
          (setq l (append l (vlax-curve-getPointAtParam e (setq p (1- p)))))
        )
      )
    )
    This too is very helpful.

    Note - I just need to precede this function with (vla-put-elevation lineObj basnElev), otherwise the resulting point list includes 0.0 as the elevation.
    "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

  3. #13
    AUGI Addict
    Join Date
    2008-02
    Posts
    1,141
    Login to Give a bone
    0

    Default Re: Add Boundary to TIN Surface

    Quote Originally Posted by RenderMan View Post
    This too is very helpful.

    Note - I just need to precede this function with (vla-put-elevation lineObj basnElev), otherwise the resulting point list includes 0.0 as the elevation.
    That's odd, it shouldn't. It will report the correct Z for each vertex on my end.

  4. #14
    Administrator BlackBox's Avatar
    Join Date
    2009-11
    Posts
    5,719
    Login to Give a bone
    0

    Default Re: Add Boundary to TIN Surface

    Quote Originally Posted by alanjt View Post
    That's odd, it shouldn't. It will report the correct Z for each vertex on my end.
    Exactly. The polyline I am selecting has a 0.0 elevation, hence the need to use (vla-put-elevation lineObj basnElev) prior to (AT:PointList->Array (AT:VertexPointsForArray eName)).

    No biggie.. it's just a 'lil error checking, or an additional mapcar on my end. I mean, I *could* just leave the basins at their Z-values...?

    Curious. It's Friday, and I am leaning toward the path of least resistance. Shocking. lol
    "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

  5. #15
    AUGI Addict
    Join Date
    2008-02
    Posts
    1,141
    Login to Give a bone
    0

    Default Re: Add Boundary to TIN Surface

    Quote Originally Posted by RenderMan View Post
    Exactly. The polyline I am selecting has a 0.0 elevation, hence the need to use (vla-put-elevation lineObj basnElev) prior to (AT:PointList->Array (AT:VertexPointsForArray eName)).
    Oh OK. I didn't realize your curve was at a zero elevation, to begin with.

  6. #16
    Administrator BlackBox's Avatar
    Join Date
    2009-11
    Posts
    5,719
    Login to Give a bone
    0

    Default Re: Add Boundary to TIN Surface

    Quote Originally Posted by alanjt View Post
    Oh OK. I didn't realize your curve was at a zero elevation, to begin with.
    You'd laugh....

    My drainage Engineers use GIS & ACAD to produce shapefiles for me to import for drainage basins, etc..

    I use ._mapimport to bring in the line work with Object Data (OD), and I have some schnazzy routines to check for discrepancies between the OD area value vs. the calculated areas of the closed polylines imported, extract and label the catchment names, etc. (Hooray, ade_od* functions!) .

    My drainage engineers don't even have MAP... They're relegated to using vanilla ACAD, so they cannot even see the OD (once I've saved the shapefile import to .dwg) in the drawings I create to verify, etc.

    Edit: The polylines are at 0.0 because they came from my drainage engineer.

    Oh, well... at least there's job security. lol
    "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

  7. #17
    Administrator BlackBox's Avatar
    Join Date
    2009-11
    Posts
    5,719
    Login to Give a bone
    0

    Default Re: Add Boundary to TIN Surface

    Quote Originally Posted by alanjt View Post
    Good deal. Can't wait to see the finished product.
    Unless I can find a programmatic means of closing a surface once it has been opened, there will not be any finished product to speak of.

    Each time a surface is built, the surface is opened. This also applies to the resulting volume surfaces (DifferenceGrid in this case).

    Without being able to close the surface once the required tasks are complete, the Page File usage continues to grow, until AutoCAD's memory is used up, resulting in a terminal failure (crash).
    "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

  8. #18
    Woo! Hoo! my 1st post
    Join Date
    2015-03
    Posts
    1
    Login to Give a bone
    0

    Default Re: Add Boundary to TIN Surface

    Hi!
    Tell me please, how to get the coordinates of the boundaries?

    Found how to extract the border, in principle it is possible, then from the resulting 3D polylines get the coordinates, but why the extra traffic?
    Code:
    (vlax-invoke-method surf_object 'ExtractBorder 1)

Page 2 of 2 FirstFirst 12

Similar Threads

  1. Better Surface Boundary
    By Wish List System in forum Civil 3D Wish List
    Replies: 2
    Last Post: 2013-10-24, 08:26 PM
  2. 2013: Label a surface boundary
    By WScottAllenPE in forum AutoCAD Civil 3D - Surfaces
    Replies: 3
    Last Post: 2013-04-11, 02:06 PM
  3. Surface boundary causes surface errors
    By cblendermann.91943 in forum AutoCAD Civil 3D - Surfaces
    Replies: 3
    Last Post: 2007-02-23, 12:57 PM
  4. Topography Surface Boundary
    By Batman in forum Revit Architecture - Wish List
    Replies: 0
    Last Post: 2005-05-31, 09:56 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •